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 10 #include <asm/proc-fns.h> 11 12 #include <linux/mfd/syscon/atmel-mc.h> 13 #include <soc/at91/at91sam9_ddrsdr.h> 14 #include <soc/at91/at91sam9_sdramc.h> 15 16 #define AT91_MEMCTRL_MC 0 17 #define AT91_MEMCTRL_SDRAMC 1 18 #define AT91_MEMCTRL_DDRSDR 2 19 20 #define AT91_PM_STANDBY 0x00 21 #define AT91_PM_ULP0 0x01 22 #define AT91_PM_ULP1 0x02 23 #define AT91_PM_BACKUP 0x03 24 25 #ifndef __ASSEMBLY__ 26 struct at91_pm_data { 27 void __iomem *pmc; 28 void __iomem *ramc[2]; 29 unsigned long uhp_udp_mask; 30 unsigned int memctrl; 31 unsigned int mode; 32 void __iomem *shdwc; 33 void __iomem *sfrbu; 34 unsigned int standby_mode; 35 unsigned int suspend_mode; 36 unsigned int pmc_mckr_offset; 37 unsigned int pmc_version; 38 }; 39 #endif 40 41 #endif 42