static void at91x40_idle(void) { /* * Disable the processor clock. The processor will be automatically * re-enabled by an interrupt or by a reset. */ __raw_writel(AT91_PS_CR_CPU, AT91_IO_P2V(AT91_PS_CR)); cpu_do_idle(); }
u32 asr; /* A-periph */ u32 bsr; u32 absr; u32 __reserved5; u32 __reserved6[0x20]; u32 ower; /* output write */ u32 owdr; u32 owsr; u32 __reserved7; }; static const u32 pio_virt[4] = { AT91_IO_P2V(0xfffff400), AT91_IO_P2V(0xfffff600), AT91_IO_P2V(0xfffff800), AT91_IO_P2V(0xfffffa00), }; static inline struct pio_controller __iomem *pin_to_controller(unsigned pin) { pin -= PIN_BASE; pin /= 32; if (likely(pin < BGA_GPIO_BANKS)) return (struct pio_controller __iomem *) pio_virt[pin]; return NULL; } static inline unsigned pin_to_mask(unsigned pin)