da850_lowlevel.h 1006 B

12345678910111213141516171819202122232425262728293031323334
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * SoC-specific lowlevel code for DA850
  4. *
  5. * Copyright (C) 2011
  6. * Heiko Schocher, DENX Software Engineering, hs@denx.de.
  7. */
  8. #ifndef __DA850_LOWLEVEL_H
  9. #define __DA850_LOWLEVEL_H
  10. #include <asm/arch/pinmux_defs.h>
  11. /* pinmux_resource[] vector is defined in the board specific file */
  12. extern const struct pinmux_resource pinmuxes[];
  13. extern const int pinmuxes_size;
  14. extern const struct lpsc_resource lpsc[];
  15. extern const int lpsc_size;
  16. /* NOR Boot Configuration Word Field Descriptions */
  17. #define DA850_NORBOOT_COPY_XK(X) ((X - 1) << 8)
  18. #define DA850_NORBOOT_METHOD_DIRECT (1 << 4)
  19. #define DA850_NORBOOT_16BIT (1 << 0)
  20. #define dv_maskbits(addr, val) \
  21. writel((readl(addr) & val), addr)
  22. void da850_lpc_transition(unsigned char pscnum, unsigned char module,
  23. unsigned char domain, unsigned char state);
  24. void da850_psc_init(void);
  25. void da850_pinmux_ctl(unsigned long offset, unsigned long mask,
  26. unsigned long value);
  27. #endif /* #ifndef __DA850_LOWLEVEL_H */