| /* |
| * SoC-specific lowlevel code for DA850 |
| * |
| * Copyright (C) 2011 |
| * Heiko Schocher, DENX Software Engineering, hs@denx.de. |
| * |
| * SPDX-License-Identifier: GPL-2.0+ |
| */ |
| #ifndef __DA850_LOWLEVEL_H |
| #define __DA850_LOWLEVEL_H |
| |
| #include <asm/arch/pinmux_defs.h> |
| |
| /* pinmux_resource[] vector is defined in the board specific file */ |
| extern const struct pinmux_resource pinmuxes[]; |
| extern const int pinmuxes_size; |
| |
| extern const struct lpsc_resource lpsc[]; |
| extern const int lpsc_size; |
| |
| /* NOR Boot Configuration Word Field Descriptions */ |
| #define DA850_NORBOOT_COPY_XK(X) ((X - 1) << 8) |
| #define DA850_NORBOOT_METHOD_DIRECT (1 << 4) |
| #define DA850_NORBOOT_16BIT (1 << 0) |
| |
| #define dv_maskbits(addr, val) \ |
| writel((readl(addr) & val), addr) |
| |
| void da850_waitloop(unsigned long loopcnt); |
| int da850_pll_init(struct davinci_pllc_regs *reg, unsigned long pllmult); |
| void da850_lpc_transition(unsigned char pscnum, unsigned char module, |
| unsigned char domain, unsigned char state); |
| int da850_ddr_setup(void); |
| void da850_psc_init(void); |
| void da850_pinmux_ctl(unsigned long offset, unsigned long mask, |
| unsigned long value); |
| |
| #endif /* #ifndef __DA850_LOWLEVEL_H */ |