diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-arm/arch-ixp2000/platform.h | 1 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/board-h2.h | 5 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/board-h3.h | 5 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/board-osk.h | 5 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/board.h | 12 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/common.h | 36 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/dma.h | 1 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/hardware.h | 24 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/irqs.h | 3 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/mux.h | 28 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/omap16xx.h | 32 | ||||
| -rw-r--r-- | include/asm-arm/arch-omap/system.h | 21 | ||||
| -rw-r--r-- | include/asm-xtensa/ipc.h | 16 |
13 files changed, 136 insertions, 53 deletions
diff --git a/include/asm-arm/arch-ixp2000/platform.h b/include/asm-arm/arch-ixp2000/platform.h index 52ded516ea5c..c0caf3e3e6fd 100644 --- a/include/asm-arm/arch-ixp2000/platform.h +++ b/include/asm-arm/arch-ixp2000/platform.h | |||
| @@ -115,6 +115,7 @@ static inline unsigned int ixp2000_is_pcimaster(void) | |||
| 115 | } | 115 | } |
| 116 | 116 | ||
| 117 | void ixp2000_map_io(void); | 117 | void ixp2000_map_io(void); |
| 118 | void ixp2000_uart_init(void); | ||
| 118 | void ixp2000_init_irq(void); | 119 | void ixp2000_init_irq(void); |
| 119 | void ixp2000_init_time(unsigned long); | 120 | void ixp2000_init_time(unsigned long); |
| 120 | unsigned long ixp2000_gettimeoffset(void); | 121 | unsigned long ixp2000_gettimeoffset(void); |
diff --git a/include/asm-arm/arch-omap/board-h2.h b/include/asm-arm/arch-omap/board-h2.h index 60f002b72983..39ca5a31aeea 100644 --- a/include/asm-arm/arch-omap/board-h2.h +++ b/include/asm-arm/arch-omap/board-h2.h | |||
| @@ -34,11 +34,6 @@ | |||
| 34 | /* At OMAP1610 Innovator the Ethernet is directly connected to CS1 */ | 34 | /* At OMAP1610 Innovator the Ethernet is directly connected to CS1 */ |
| 35 | #define OMAP1610_ETHR_START 0x04000300 | 35 | #define OMAP1610_ETHR_START 0x04000300 |
| 36 | 36 | ||
| 37 | /* Intel STRATA NOR flash at CS3 or CS2B(NAND Boot) */ | ||
| 38 | #define OMAP_NOR_FLASH_SIZE SZ_32M | ||
| 39 | #define OMAP_NOR_FLASH_START1 0x0C000000 /* CS3 */ | ||
| 40 | #define OMAP_NOR_FLASH_START2 0x0A000000 /* CS2B */ | ||
| 41 | |||
| 42 | /* Samsung NAND flash at CS2B or CS3(NAND Boot) */ | 37 | /* Samsung NAND flash at CS2B or CS3(NAND Boot) */ |
| 43 | #define OMAP_NAND_FLASH_START1 0x0A000000 /* CS2B */ | 38 | #define OMAP_NAND_FLASH_START1 0x0A000000 /* CS2B */ |
| 44 | #define OMAP_NAND_FLASH_START2 0x0C000000 /* CS3 */ | 39 | #define OMAP_NAND_FLASH_START2 0x0C000000 /* CS3 */ |
diff --git a/include/asm-arm/arch-omap/board-h3.h b/include/asm-arm/arch-omap/board-h3.h index e4d1cd231731..1b12c1dcc2fa 100644 --- a/include/asm-arm/arch-omap/board-h3.h +++ b/include/asm-arm/arch-omap/board-h3.h | |||
| @@ -30,11 +30,6 @@ | |||
| 30 | /* In OMAP1710 H3 the Ethernet is directly connected to CS1 */ | 30 | /* In OMAP1710 H3 the Ethernet is directly connected to CS1 */ |
| 31 | #define OMAP1710_ETHR_START 0x04000300 | 31 | #define OMAP1710_ETHR_START 0x04000300 |
| 32 | 32 | ||
| 33 | /* Intel STRATA NOR flash at CS3 or CS2B(NAND Boot) */ | ||
| 34 | #define OMAP_NOR_FLASH_SIZE SZ_32M | ||
| 35 | #define OMAP_NOR_FLASH_START1 0x0C000000 /* CS3 */ | ||
| 36 | #define OMAP_NOR_FLASH_START2 0x0A000000 /* CS2B */ | ||
| 37 | |||
| 38 | /* Samsung NAND flash at CS2B or CS3(NAND Boot) */ | 33 | /* Samsung NAND flash at CS2B or CS3(NAND Boot) */ |
| 39 | #define OMAP_NAND_FLASH_START1 0x0A000000 /* CS2B */ | 34 | #define OMAP_NAND_FLASH_START1 0x0A000000 /* CS2B */ |
| 40 | #define OMAP_NAND_FLASH_START2 0x0C000000 /* CS3 */ | 35 | #define OMAP_NAND_FLASH_START2 0x0C000000 /* CS3 */ |
diff --git a/include/asm-arm/arch-omap/board-osk.h b/include/asm-arm/arch-omap/board-osk.h index aaa49a0fbd21..2b1a8a4fe44e 100644 --- a/include/asm-arm/arch-omap/board-osk.h +++ b/include/asm-arm/arch-omap/board-osk.h | |||
| @@ -32,10 +32,5 @@ | |||
| 32 | /* At OMAP5912 OSK the Ethernet is directly connected to CS1 */ | 32 | /* At OMAP5912 OSK the Ethernet is directly connected to CS1 */ |
| 33 | #define OMAP_OSK_ETHR_START 0x04800300 | 33 | #define OMAP_OSK_ETHR_START 0x04800300 |
| 34 | 34 | ||
| 35 | /* Micron NOR flash at CS3 mapped to address 0x0 if BM bit is 1 */ | ||
| 36 | #define OMAP_OSK_NOR_FLASH_BASE 0xD8000000 | ||
| 37 | #define OMAP_OSK_NOR_FLASH_SIZE SZ_32M | ||
| 38 | #define OMAP_OSK_NOR_FLASH_START 0x00000000 | ||
| 39 | |||
| 40 | #endif /* __ASM_ARCH_OMAP_OSK_H */ | 35 | #endif /* __ASM_ARCH_OMAP_OSK_H */ |
| 41 | 36 | ||
diff --git a/include/asm-arm/arch-omap/board.h b/include/asm-arm/arch-omap/board.h index 1cefd60b6f2a..95bd625480c1 100644 --- a/include/asm-arm/arch-omap/board.h +++ b/include/asm-arm/arch-omap/board.h | |||
| @@ -16,10 +16,11 @@ | |||
| 16 | /* Different peripheral ids */ | 16 | /* Different peripheral ids */ |
| 17 | #define OMAP_TAG_CLOCK 0x4f01 | 17 | #define OMAP_TAG_CLOCK 0x4f01 |
| 18 | #define OMAP_TAG_MMC 0x4f02 | 18 | #define OMAP_TAG_MMC 0x4f02 |
| 19 | #define OMAP_TAG_UART 0x4f03 | 19 | #define OMAP_TAG_SERIAL_CONSOLE 0x4f03 |
| 20 | #define OMAP_TAG_USB 0x4f04 | 20 | #define OMAP_TAG_USB 0x4f04 |
| 21 | #define OMAP_TAG_LCD 0x4f05 | 21 | #define OMAP_TAG_LCD 0x4f05 |
| 22 | #define OMAP_TAG_GPIO_SWITCH 0x4f06 | 22 | #define OMAP_TAG_GPIO_SWITCH 0x4f06 |
| 23 | #define OMAP_TAG_UART 0x4f07 | ||
| 23 | 24 | ||
| 24 | #define OMAP_TAG_BOOT_REASON 0x4f80 | 25 | #define OMAP_TAG_BOOT_REASON 0x4f80 |
| 25 | #define OMAP_TAG_FLASH_PART 0x4f81 | 26 | #define OMAP_TAG_FLASH_PART 0x4f81 |
| @@ -35,7 +36,7 @@ struct omap_mmc_config { | |||
| 35 | s16 mmc1_switch_pin, mmc2_switch_pin; | 36 | s16 mmc1_switch_pin, mmc2_switch_pin; |
| 36 | }; | 37 | }; |
| 37 | 38 | ||
| 38 | struct omap_uart_config { | 39 | struct omap_serial_console_config { |
| 39 | u8 console_uart; | 40 | u8 console_uart; |
| 40 | u32 console_speed; | 41 | u32 console_speed; |
| 41 | }; | 42 | }; |
| @@ -82,7 +83,8 @@ struct omap_lcd_config { | |||
| 82 | */ | 83 | */ |
| 83 | #define OMAP_GPIO_SWITCH_TYPE_COVER 0x0000 | 84 | #define OMAP_GPIO_SWITCH_TYPE_COVER 0x0000 |
| 84 | #define OMAP_GPIO_SWITCH_TYPE_CONNECTION 0x0001 | 85 | #define OMAP_GPIO_SWITCH_TYPE_CONNECTION 0x0001 |
| 85 | #define OMAP_GPIO_SWITCH_FLAG_INVERTED 0x0001 | 86 | #define OMAP_GPIO_SWITCH_FLAG_INVERTED 0x0001 |
| 87 | #define OMAP_GPIO_SWITCH_FLAG_OUTPUT 0x0002 | ||
| 86 | struct omap_gpio_switch_config { | 88 | struct omap_gpio_switch_config { |
| 87 | char name[12]; | 89 | char name[12]; |
| 88 | u16 gpio; | 90 | u16 gpio; |
| @@ -99,6 +101,10 @@ struct omap_boot_reason_config { | |||
| 99 | char reason_str[12]; | 101 | char reason_str[12]; |
| 100 | }; | 102 | }; |
| 101 | 103 | ||
| 104 | struct omap_uart_config { | ||
| 105 | /* Bit field of UARTs present; bit 0 --> UART1 */ | ||
| 106 | unsigned int enabled_uarts; | ||
| 107 | }; | ||
| 102 | 108 | ||
| 103 | struct omap_board_config_entry { | 109 | struct omap_board_config_entry { |
| 104 | u16 tag; | 110 | u16 tag; |
diff --git a/include/asm-arm/arch-omap/common.h b/include/asm-arm/arch-omap/common.h new file mode 100644 index 000000000000..2a676b4f13b5 --- /dev/null +++ b/include/asm-arm/arch-omap/common.h | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-omap/common.h | ||
| 3 | * | ||
| 4 | * Header for code common to all OMAP machines. | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or modify it | ||
| 7 | * under the terms of the GNU General Public License as published by the | ||
| 8 | * Free Software Foundation; either version 2 of the License, or (at your | ||
| 9 | * option) any later version. | ||
| 10 | * | ||
| 11 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 12 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 13 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
| 14 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
| 15 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
| 16 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
| 17 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
| 18 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
| 19 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
| 20 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 21 | * | ||
| 22 | * You should have received a copy of the GNU General Public License along | ||
| 23 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
| 24 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
| 25 | */ | ||
| 26 | |||
| 27 | #ifndef __ARCH_ARM_MACH_OMAP_COMMON_H | ||
| 28 | #define __ARCH_ARM_MACH_OMAP_COMMON_H | ||
| 29 | |||
| 30 | struct sys_timer; | ||
| 31 | |||
| 32 | extern void omap_map_common_io(void); | ||
| 33 | extern struct sys_timer omap_timer; | ||
| 34 | extern void omap_serial_init(int ports[]); | ||
| 35 | |||
| 36 | #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */ | ||
diff --git a/include/asm-arm/arch-omap/dma.h b/include/asm-arm/arch-omap/dma.h index d785248377db..ce114ce5af5d 100644 --- a/include/asm-arm/arch-omap/dma.h +++ b/include/asm-arm/arch-omap/dma.h | |||
| @@ -241,6 +241,7 @@ extern void omap_dma_unlink_lch (int lch_head, int lch_queue); | |||
| 241 | extern dma_addr_t omap_get_dma_src_pos(int lch); | 241 | extern dma_addr_t omap_get_dma_src_pos(int lch); |
| 242 | extern dma_addr_t omap_get_dma_dst_pos(int lch); | 242 | extern dma_addr_t omap_get_dma_dst_pos(int lch); |
| 243 | extern void omap_clear_dma(int lch); | 243 | extern void omap_clear_dma(int lch); |
| 244 | extern int omap_dma_running(void); | ||
| 244 | 245 | ||
| 245 | /* Returns 1 if the DMA module is in OMAP1510-compatible mode, 0 otherwise */ | 246 | /* Returns 1 if the DMA module is in OMAP1510-compatible mode, 0 otherwise */ |
| 246 | extern int omap_dma_in_1510_mode(void); | 247 | extern int omap_dma_in_1510_mode(void); |
diff --git a/include/asm-arm/arch-omap/hardware.h b/include/asm-arm/arch-omap/hardware.h index 37e06c782bdf..48258c7f6541 100644 --- a/include/asm-arm/arch-omap/hardware.h +++ b/include/asm-arm/arch-omap/hardware.h | |||
| @@ -54,6 +54,19 @@ | |||
| 54 | 54 | ||
| 55 | /* | 55 | /* |
| 56 | * ---------------------------------------------------------------------------- | 56 | * ---------------------------------------------------------------------------- |
| 57 | * Timers | ||
| 58 | * ---------------------------------------------------------------------------- | ||
| 59 | */ | ||
| 60 | #define OMAP_MPU_TIMER1_BASE (0xfffec500) | ||
| 61 | #define OMAP_MPU_TIMER2_BASE (0xfffec600) | ||
| 62 | #define OMAP_MPU_TIMER3_BASE (0xfffec700) | ||
| 63 | #define MPU_TIMER_FREE (1 << 6) | ||
| 64 | #define MPU_TIMER_CLOCK_ENABLE (1 << 5) | ||
| 65 | #define MPU_TIMER_AR (1 << 1) | ||
| 66 | #define MPU_TIMER_ST (1 << 0) | ||
| 67 | |||
| 68 | /* | ||
| 69 | * ---------------------------------------------------------------------------- | ||
| 57 | * Clocks | 70 | * Clocks |
| 58 | * ---------------------------------------------------------------------------- | 71 | * ---------------------------------------------------------------------------- |
| 59 | */ | 72 | */ |
| @@ -78,6 +91,7 @@ | |||
| 78 | 91 | ||
| 79 | /* DSP clock control */ | 92 | /* DSP clock control */ |
| 80 | #define DSP_CONFIG_REG_BASE (0xe1008000) | 93 | #define DSP_CONFIG_REG_BASE (0xe1008000) |
| 94 | #define DSP_CKCTL (DSP_CONFIG_REG_BASE + 0x0) | ||
| 81 | #define DSP_IDLECT1 (DSP_CONFIG_REG_BASE + 0x4) | 95 | #define DSP_IDLECT1 (DSP_CONFIG_REG_BASE + 0x4) |
| 82 | #define DSP_IDLECT2 (DSP_CONFIG_REG_BASE + 0x8) | 96 | #define DSP_IDLECT2 (DSP_CONFIG_REG_BASE + 0x8) |
| 83 | 97 | ||
| @@ -88,6 +102,7 @@ | |||
| 88 | */ | 102 | */ |
| 89 | #define ULPD_REG_BASE (0xfffe0800) | 103 | #define ULPD_REG_BASE (0xfffe0800) |
| 90 | #define ULPD_IT_STATUS (ULPD_REG_BASE + 0x14) | 104 | #define ULPD_IT_STATUS (ULPD_REG_BASE + 0x14) |
| 105 | #define ULPD_SETUP_ANALOG_CELL_3 (ULPD_REG_BASE + 0x24) | ||
| 91 | #define ULPD_CLOCK_CTRL (ULPD_REG_BASE + 0x30) | 106 | #define ULPD_CLOCK_CTRL (ULPD_REG_BASE + 0x30) |
| 92 | # define DIS_USB_PVCI_CLK (1 << 5) /* no USB/FAC synch */ | 107 | # define DIS_USB_PVCI_CLK (1 << 5) /* no USB/FAC synch */ |
| 93 | # define USB_MCLK_EN (1 << 4) /* enable W4_USB_CLKO */ | 108 | # define USB_MCLK_EN (1 << 4) /* enable W4_USB_CLKO */ |
| @@ -268,17 +283,10 @@ | |||
| 268 | * Processor specific defines | 283 | * Processor specific defines |
| 269 | * --------------------------------------------------------------------------- | 284 | * --------------------------------------------------------------------------- |
| 270 | */ | 285 | */ |
| 271 | #ifdef CONFIG_ARCH_OMAP730 | ||
| 272 | #include "omap730.h" | ||
| 273 | #endif | ||
| 274 | 286 | ||
| 275 | #ifdef CONFIG_ARCH_OMAP1510 | 287 | #include "omap730.h" |
| 276 | #include "omap1510.h" | 288 | #include "omap1510.h" |
| 277 | #endif | ||
| 278 | |||
| 279 | #ifdef CONFIG_ARCH_OMAP16XX | ||
| 280 | #include "omap16xx.h" | 289 | #include "omap16xx.h" |
| 281 | #endif | ||
| 282 | 290 | ||
| 283 | /* | 291 | /* |
| 284 | * --------------------------------------------------------------------------- | 292 | * --------------------------------------------------------------------------- |
diff --git a/include/asm-arm/arch-omap/irqs.h b/include/asm-arm/arch-omap/irqs.h index 6701fd9e5f9b..0d05a7c957d1 100644 --- a/include/asm-arm/arch-omap/irqs.h +++ b/include/asm-arm/arch-omap/irqs.h | |||
| @@ -159,6 +159,7 @@ | |||
| 159 | #define INT_1610_GPIO_BANK3 (41 + IH2_BASE) | 159 | #define INT_1610_GPIO_BANK3 (41 + IH2_BASE) |
| 160 | #define INT_1610_MMC2 (42 + IH2_BASE) | 160 | #define INT_1610_MMC2 (42 + IH2_BASE) |
| 161 | #define INT_1610_CF (43 + IH2_BASE) | 161 | #define INT_1610_CF (43 + IH2_BASE) |
| 162 | #define INT_1610_WAKE_UP_REQ (46 + IH2_BASE) | ||
| 162 | #define INT_1610_GPIO_BANK4 (48 + IH2_BASE) | 163 | #define INT_1610_GPIO_BANK4 (48 + IH2_BASE) |
| 163 | #define INT_1610_SPI (49 + IH2_BASE) | 164 | #define INT_1610_SPI (49 + IH2_BASE) |
| 164 | #define INT_1610_DMA_CH6 (53 + IH2_BASE) | 165 | #define INT_1610_DMA_CH6 (53 + IH2_BASE) |
| @@ -238,6 +239,8 @@ | |||
| 238 | #define IH_MPUIO_BASE (OMAP_MAX_GPIO_LINES + IH_GPIO_BASE) | 239 | #define IH_MPUIO_BASE (OMAP_MAX_GPIO_LINES + IH_GPIO_BASE) |
| 239 | #define IH_BOARD_BASE (16 + IH_MPUIO_BASE) | 240 | #define IH_BOARD_BASE (16 + IH_MPUIO_BASE) |
| 240 | 241 | ||
| 242 | #define OMAP_IRQ_BIT(irq) (1 << ((irq) % 32)) | ||
| 243 | |||
| 241 | #ifndef __ASSEMBLY__ | 244 | #ifndef __ASSEMBLY__ |
| 242 | extern void omap_init_irq(void); | 245 | extern void omap_init_irq(void); |
| 243 | #endif | 246 | #endif |
diff --git a/include/asm-arm/arch-omap/mux.h b/include/asm-arm/arch-omap/mux.h index 39f99decbb7b..5bd3f0097fc6 100644 --- a/include/asm-arm/arch-omap/mux.h +++ b/include/asm-arm/arch-omap/mux.h | |||
| @@ -231,7 +231,7 @@ typedef enum { | |||
| 231 | J19_1610_ETM_D6, | 231 | J19_1610_ETM_D6, |
| 232 | J18_1610_ETM_D7, | 232 | J18_1610_ETM_D7, |
| 233 | 233 | ||
| 234 | /* OMAP-1610 GPIO */ | 234 | /* OMAP16XX GPIO */ |
| 235 | P20_1610_GPIO4, | 235 | P20_1610_GPIO4, |
| 236 | V9_1610_GPIO7, | 236 | V9_1610_GPIO7, |
| 237 | W8_1610_GPIO9, | 237 | W8_1610_GPIO9, |
| @@ -241,6 +241,9 @@ typedef enum { | |||
| 241 | AA20_1610_GPIO_41, | 241 | AA20_1610_GPIO_41, |
| 242 | W19_1610_GPIO48, | 242 | W19_1610_GPIO48, |
| 243 | M7_1610_GPIO62, | 243 | M7_1610_GPIO62, |
| 244 | V14_16XX_GPIO37, | ||
| 245 | R9_16XX_GPIO18, | ||
| 246 | L14_16XX_GPIO49, | ||
| 244 | 247 | ||
| 245 | /* OMAP-1610 uWire */ | 248 | /* OMAP-1610 uWire */ |
| 246 | V19_1610_UWIRE_SCLK, | 249 | V19_1610_UWIRE_SCLK, |
| @@ -285,12 +288,13 @@ typedef enum { | |||
| 285 | V6_USB2_TXD, | 288 | V6_USB2_TXD, |
| 286 | W5_USB2_SE0, | 289 | W5_USB2_SE0, |
| 287 | 290 | ||
| 288 | /* UART1 1610 */ | 291 | /* 16XX UART */ |
| 289 | |||
| 290 | R13_1610_UART1_TX, | 292 | R13_1610_UART1_TX, |
| 291 | V14_1610_UART1_RX, | 293 | V14_16XX_UART1_RX, |
| 292 | R14_1610_UART1_CTS, | 294 | R14_1610_UART1_CTS, |
| 293 | AA15_1610_UART1_RTS, | 295 | AA15_1610_UART1_RTS, |
| 296 | R9_16XX_UART2_RX, | ||
| 297 | L14_16XX_UART3_RX, | ||
| 294 | 298 | ||
| 295 | /* I2C OMAP-1610 */ | 299 | /* I2C OMAP-1610 */ |
| 296 | I2C_SCL, | 300 | I2C_SCL, |
| @@ -332,7 +336,7 @@ typedef enum { | |||
| 332 | * Table of various FUNC_MUX and PULL_DWN combinations for each device. | 336 | * Table of various FUNC_MUX and PULL_DWN combinations for each device. |
| 333 | * See also reg_cfg_t above for the lookup table. | 337 | * See also reg_cfg_t above for the lookup table. |
| 334 | */ | 338 | */ |
| 335 | static reg_cfg_set __initdata_or_module | 339 | static const reg_cfg_set __initdata_or_module |
| 336 | reg_cfg_table[] = { | 340 | reg_cfg_table[] = { |
| 337 | /* | 341 | /* |
| 338 | * description mux mode mux pull pull pull pu_pd pu dbg | 342 | * description mux mode mux pull pull pull pu_pd pu dbg |
| @@ -455,7 +459,7 @@ MUX_CFG("L19_1610_ETM_D0", 5, 18, 1, 0, 26, 0, 0, 0, 1) | |||
| 455 | MUX_CFG("J19_1610_ETM_D6", 5, 0, 1, 0, 20, 0, 0, 0, 1) | 459 | MUX_CFG("J19_1610_ETM_D6", 5, 0, 1, 0, 20, 0, 0, 0, 1) |
| 456 | MUX_CFG("J18_1610_ETM_D7", 5, 27, 1, 0, 19, 0, 0, 0, 1) | 460 | MUX_CFG("J18_1610_ETM_D7", 5, 27, 1, 0, 19, 0, 0, 0, 1) |
| 457 | 461 | ||
| 458 | /* OMAP-1610 GPIO */ | 462 | /* OMAP16XX GPIO */ |
| 459 | MUX_CFG("P20_1610_GPIO4", 6, 27, 0, 1, 7, 0, 1, 1, 1) | 463 | MUX_CFG("P20_1610_GPIO4", 6, 27, 0, 1, 7, 0, 1, 1, 1) |
| 460 | MUX_CFG("V9_1610_GPIO7", B, 12, 1, 2, 20, 0, 2, 1, 1) | 464 | MUX_CFG("V9_1610_GPIO7", B, 12, 1, 2, 20, 0, 2, 1, 1) |
| 461 | MUX_CFG("W8_1610_GPIO9", B, 21, 0, 2, 23, 0, 2, 1, 1) | 465 | MUX_CFG("W8_1610_GPIO9", B, 21, 0, 2, 23, 0, 2, 1, 1) |
| @@ -465,6 +469,9 @@ MUX_CFG("V5_1610_GPIO24", B, 15, 7, 2, 21, 0, 2, 1, 1) | |||
| 465 | MUX_CFG("AA20_1610_GPIO_41", 9, 9, 7, 1, 31, 0, 1, 1, 1) | 469 | MUX_CFG("AA20_1610_GPIO_41", 9, 9, 7, 1, 31, 0, 1, 1, 1) |
| 466 | MUX_CFG("W19_1610_GPIO48", 8, 15, 7, 1, 23, 1, 1, 0, 1) | 470 | MUX_CFG("W19_1610_GPIO48", 8, 15, 7, 1, 23, 1, 1, 0, 1) |
| 467 | MUX_CFG("M7_1610_GPIO62", 10, 0, 0, 4, 24, 0, 4, 0, 1) | 471 | MUX_CFG("M7_1610_GPIO62", 10, 0, 0, 4, 24, 0, 4, 0, 1) |
| 472 | MUX_CFG("V14_16XX_GPIO37", 9, 18, 7, 2, 2, 0, 2, 2, 0) | ||
| 473 | MUX_CFG("R9_16XX_GPIO18", C, 18, 7, 3, 0, 0, 3, 0, 0) | ||
| 474 | MUX_CFG("L14_16XX_GPIO49", 6, 3, 7, 0, 31, 0, 0, 31, 0) | ||
| 468 | 475 | ||
| 469 | /* OMAP-1610 uWire */ | 476 | /* OMAP-1610 uWire */ |
| 470 | MUX_CFG("V19_1610_UWIRE_SCLK", 8, 6, 0, 1, 20, 0, 1, 1, 1) | 477 | MUX_CFG("V19_1610_UWIRE_SCLK", 8, 6, 0, 1, 20, 0, 1, 1, 1) |
| @@ -503,16 +510,17 @@ MUX_CFG("Y10_USB0_SUSP", B, 3, 5, 2, 17, 0, 2, 0, 1) | |||
| 503 | MUX_CFG("W9_USB2_TXEN", B, 9, 1, NA, 0, 0, NA, 0, 1) | 510 | MUX_CFG("W9_USB2_TXEN", B, 9, 1, NA, 0, 0, NA, 0, 1) |
| 504 | MUX_CFG("AA9_USB2_VP", B, 6, 1, NA, 0, 0, NA, 0, 1) | 511 | MUX_CFG("AA9_USB2_VP", B, 6, 1, NA, 0, 0, NA, 0, 1) |
| 505 | MUX_CFG("Y5_USB2_RCV", C, 21, 1, NA, 0, 0, NA, 0, 1) | 512 | MUX_CFG("Y5_USB2_RCV", C, 21, 1, NA, 0, 0, NA, 0, 1) |
| 506 | MUX_CFG("R8_USB2_VM", C, 18, 1, NA, 0, 0, NA, 0, 1) | 513 | MUX_CFG("R9_USB2_VM", C, 18, 1, NA, 0, 0, NA, 0, 1) |
| 507 | MUX_CFG("V6_USB2_TXD", C, 27, 2, NA, 0, 0, NA, 0, 1) | 514 | MUX_CFG("V6_USB2_TXD", C, 27, 2, NA, 0, 0, NA, 0, 1) |
| 508 | MUX_CFG("W5_USB2_SE0", C, 24, 2, NA, 0, 0, NA, 0, 1) | 515 | MUX_CFG("W5_USB2_SE0", C, 24, 2, NA, 0, 0, NA, 0, 1) |
| 509 | 516 | ||
| 510 | 517 | /* 16XX UART */ | |
| 511 | /* UART1 */ | ||
| 512 | MUX_CFG("R13_1610_UART1_TX", A, 12, 6, 2, 10, 0, 2, 10, 1) | 518 | MUX_CFG("R13_1610_UART1_TX", A, 12, 6, 2, 10, 0, 2, 10, 1) |
| 513 | MUX_CFG("V14_1610_UART1_RX", 9, 18, 0, 2, 2, 0, 2, 2, 1) | 519 | MUX_CFG("V14_16XX_UART1_RX", 9, 18, 0, 2, 2, 0, 2, 2, 1) |
| 514 | MUX_CFG("R14_1610_UART1_CTS", 9, 15, 0, 2, 1, 0, 2, 1, 1) | 520 | MUX_CFG("R14_1610_UART1_CTS", 9, 15, 0, 2, 1, 0, 2, 1, 1) |
| 515 | MUX_CFG("AA15_1610_UART1_RTS", 9, 12, 1, 2, 0, 0, 2, 0, 1) | 521 | MUX_CFG("AA15_1610_UART1_RTS", 9, 12, 1, 2, 0, 0, 2, 0, 1) |
| 522 | MUX_CFG("R9_16XX_UART2_RX", C, 18, 0, 3, 0, 0, 3, 0, 1) | ||
| 523 | MUX_CFG("L14_16XX_UART3_RX", 6, 3, 0, 0, 31, 0, 0, 31, 1) | ||
| 516 | 524 | ||
| 517 | /* I2C interface */ | 525 | /* I2C interface */ |
| 518 | MUX_CFG("I2C_SCL", 7, 24, 0, NA, 0, 0, NA, 0, 0) | 526 | MUX_CFG("I2C_SCL", 7, 24, 0, NA, 0, 0, NA, 0, 0) |
diff --git a/include/asm-arm/arch-omap/omap16xx.h b/include/asm-arm/arch-omap/omap16xx.h index 88b1fe43ae9e..38a9b95e6a33 100644 --- a/include/asm-arm/arch-omap/omap16xx.h +++ b/include/asm-arm/arch-omap/omap16xx.h | |||
| @@ -183,5 +183,37 @@ | |||
| 183 | #define OMAP16XX_PWL_ENABLE (OMAP16XX_PWL_BASE + 0x00) | 183 | #define OMAP16XX_PWL_ENABLE (OMAP16XX_PWL_BASE + 0x00) |
| 184 | #define OMAP16XX_PWL_CLK_ENABLE (OMAP16XX_PWL_BASE + 0x04) | 184 | #define OMAP16XX_PWL_CLK_ENABLE (OMAP16XX_PWL_BASE + 0x04) |
| 185 | 185 | ||
| 186 | /* | ||
| 187 | * --------------------------------------------------------------------------- | ||
| 188 | * Watchdog timer | ||
| 189 | * --------------------------------------------------------------------------- | ||
| 190 | */ | ||
| 191 | |||
| 192 | /* 32-bit Watchdog timer in OMAP 16XX */ | ||
| 193 | #define OMAP_16XX_WATCHDOG_BASE (0xfffeb000) | ||
| 194 | #define OMAP_16XX_WIDR (OMAP_16XX_WATCHDOG_BASE + 0x00) | ||
| 195 | #define OMAP_16XX_WD_SYSCONFIG (OMAP_16XX_WATCHDOG_BASE + 0x10) | ||
| 196 | #define OMAP_16XX_WD_SYSSTATUS (OMAP_16XX_WATCHDOG_BASE + 0x14) | ||
| 197 | #define OMAP_16XX_WCLR (OMAP_16XX_WATCHDOG_BASE + 0x24) | ||
| 198 | #define OMAP_16XX_WCRR (OMAP_16XX_WATCHDOG_BASE + 0x28) | ||
| 199 | #define OMAP_16XX_WLDR (OMAP_16XX_WATCHDOG_BASE + 0x2c) | ||
| 200 | #define OMAP_16XX_WTGR (OMAP_16XX_WATCHDOG_BASE + 0x30) | ||
| 201 | #define OMAP_16XX_WWPS (OMAP_16XX_WATCHDOG_BASE + 0x34) | ||
| 202 | #define OMAP_16XX_WSPR (OMAP_16XX_WATCHDOG_BASE + 0x48) | ||
| 203 | |||
| 204 | #define WCLR_PRE_SHIFT 5 | ||
| 205 | #define WCLR_PTV_SHIFT 2 | ||
| 206 | |||
| 207 | #define WWPS_W_PEND_WSPR (1 << 4) | ||
| 208 | #define WWPS_W_PEND_WTGR (1 << 3) | ||
| 209 | #define WWPS_W_PEND_WLDR (1 << 2) | ||
| 210 | #define WWPS_W_PEND_WCRR (1 << 1) | ||
| 211 | #define WWPS_W_PEND_WCLR (1 << 0) | ||
| 212 | |||
| 213 | #define WSPR_ENABLE_0 (0x0000bbbb) | ||
| 214 | #define WSPR_ENABLE_1 (0x00004444) | ||
| 215 | #define WSPR_DISABLE_0 (0x0000aaaa) | ||
| 216 | #define WSPR_DISABLE_1 (0x00005555) | ||
| 217 | |||
| 186 | #endif /* __ASM_ARCH_OMAP16XX_H */ | 218 | #endif /* __ASM_ARCH_OMAP16XX_H */ |
| 187 | 219 | ||
diff --git a/include/asm-arm/arch-omap/system.h b/include/asm-arm/arch-omap/system.h index 17a2c4825f07..ff37bc27e603 100644 --- a/include/asm-arm/arch-omap/system.h +++ b/include/asm-arm/arch-omap/system.h | |||
| @@ -5,7 +5,9 @@ | |||
| 5 | #ifndef __ASM_ARCH_SYSTEM_H | 5 | #ifndef __ASM_ARCH_SYSTEM_H |
| 6 | #define __ASM_ARCH_SYSTEM_H | 6 | #define __ASM_ARCH_SYSTEM_H |
| 7 | #include <linux/config.h> | 7 | #include <linux/config.h> |
| 8 | #include <asm/mach-types.h> | ||
| 8 | #include <asm/arch/hardware.h> | 9 | #include <asm/arch/hardware.h> |
| 10 | #include <asm/mach-types.h> | ||
| 9 | 11 | ||
| 10 | static inline void arch_idle(void) | 12 | static inline void arch_idle(void) |
| 11 | { | 13 | { |
| @@ -14,7 +16,24 @@ static inline void arch_idle(void) | |||
| 14 | 16 | ||
| 15 | static inline void arch_reset(char mode) | 17 | static inline void arch_reset(char mode) |
| 16 | { | 18 | { |
| 17 | omap_writew(1, ARM_RSTCT1); | 19 | |
| 20 | #ifdef CONFIG_ARCH_OMAP16XX | ||
| 21 | /* | ||
| 22 | * Workaround for 5912/1611b bug mentioned in sprz209d.pdf p. 28 | ||
| 23 | * "Global Software Reset Affects Traffic Controller Frequency". | ||
| 24 | */ | ||
| 25 | if (cpu_is_omap5912()) { | ||
| 26 | omap_writew(omap_readw(DPLL_CTL) & ~(1 << 4), | ||
| 27 | DPLL_CTL); | ||
| 28 | omap_writew(0x8, ARM_RSTCT1); | ||
| 29 | } | ||
| 30 | #endif | ||
| 31 | #ifdef CONFIG_MACH_VOICEBLUE | ||
| 32 | if (machine_is_voiceblue()) | ||
| 33 | voiceblue_reset(); | ||
| 34 | else | ||
| 35 | #endif | ||
| 36 | omap_writew(1, ARM_RSTCT1); | ||
| 18 | } | 37 | } |
| 19 | 38 | ||
| 20 | #endif | 39 | #endif |
diff --git a/include/asm-xtensa/ipc.h b/include/asm-xtensa/ipc.h deleted file mode 100644 index a9eed4e21cb9..000000000000 --- a/include/asm-xtensa/ipc.h +++ /dev/null | |||
| @@ -1,16 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * include/asm-xtensa/ipc.h | ||
| 3 | * | ||
| 4 | * This file is subject to the terms and conditions of the GNU General | ||
| 5 | * Public License. See the file "COPYING" in the main directory of | ||
| 6 | * this archive for more details. | ||
| 7 | * | ||
| 8 | * Copyright (C) 2001 - 2005 Tensilica Inc. | ||
| 9 | */ | ||
| 10 | |||
| 11 | #ifndef _XTENSA_IPC_H | ||
| 12 | #define _XTENSA_IPC_H | ||
| 13 | |||
| 14 | #include <asm-generic/ipc.h> | ||
| 15 | |||
| 16 | #endif /* _XTENSA_IPC_H */ | ||
