pm.h 987 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. * AT91 Power Management
  4. *
  5. * Copyright (C) 2005 David Brownell
  6. */
  7. #ifndef __ARCH_ARM_MACH_AT91_PM
  8. #define __ARCH_ARM_MACH_AT91_PM
  9. #include <asm/proc-fns.h>
  10. #include <linux/mfd/syscon/atmel-mc.h>
  11. #include <soc/at91/at91sam9_ddrsdr.h>
  12. #include <soc/at91/at91sam9_sdramc.h>
  13. #include <soc/at91/sama7-ddr.h>
  14. #include <soc/at91/sama7-sfrbu.h>
  15. #define AT91_MEMCTRL_MC 0
  16. #define AT91_MEMCTRL_SDRAMC 1
  17. #define AT91_MEMCTRL_DDRSDR 2
  18. #define AT91_PM_STANDBY 0x00
  19. #define AT91_PM_ULP0 0x01
  20. #define AT91_PM_ULP0_FAST 0x02
  21. #define AT91_PM_ULP1 0x03
  22. #define AT91_PM_BACKUP 0x04
  23. #ifndef __ASSEMBLY__
  24. struct at91_pm_data {
  25. void __iomem *pmc;
  26. void __iomem *ramc[2];
  27. void __iomem *ramc_phy;
  28. unsigned long uhp_udp_mask;
  29. unsigned int memctrl;
  30. unsigned int mode;
  31. void __iomem *shdwc;
  32. void __iomem *sfrbu;
  33. unsigned int standby_mode;
  34. unsigned int suspend_mode;
  35. unsigned int pmc_mckr_offset;
  36. unsigned int pmc_version;
  37. };
  38. #endif
  39. #endif