aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ep93xx
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2009-09-12 07:04:37 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-09-12 07:04:37 -0400
commit87d721ad7a37b7650dd710c88dd5c6a5bf9fe996 (patch)
tree869d633803eb7c429624d3bd16a6117816849763 /arch/arm/mach-ep93xx
parentddd559b13f6d2fe3ad68c4b3f5235fd3c2eae4e3 (diff)
parentb7cfda9fc3d7aa60cffab5367f2a72a4a70060cd (diff)
Merge branch 'master' into devel
Diffstat (limited to 'arch/arm/mach-ep93xx')
-rw-r--r--arch/arm/mach-ep93xx/include/mach/ts72xx.h3
-rw-r--r--arch/arm/mach-ep93xx/ts72xx.c18
2 files changed, 13 insertions, 8 deletions
diff --git a/arch/arm/mach-ep93xx/include/mach/ts72xx.h b/arch/arm/mach-ep93xx/include/mach/ts72xx.h
index 2737666e800e..3bd934e9a7f1 100644
--- a/arch/arm/mach-ep93xx/include/mach/ts72xx.h
+++ b/arch/arm/mach-ep93xx/include/mach/ts72xx.h
@@ -41,9 +41,6 @@
41#define TS72XX_OPTIONS2_TS9420_BOOT 0x02 41#define TS72XX_OPTIONS2_TS9420_BOOT 0x02
42 42
43 43
44#define TS72XX_NOR_PHYS_BASE 0x60000000
45#define TS72XX_NOR2_PHYS_BASE 0x62000000
46
47#define TS72XX_NAND1_DATA_PHYS_BASE 0x60000000 44#define TS72XX_NAND1_DATA_PHYS_BASE 0x60000000
48#define TS72XX_NAND2_DATA_PHYS_BASE 0x70000000 45#define TS72XX_NAND2_DATA_PHYS_BASE 0x70000000
49#define TS72XX_NAND_DATA_VIRT_BASE 0xfebfc000 46#define TS72XX_NAND_DATA_VIRT_BASE 0xfebfc000
diff --git a/arch/arm/mach-ep93xx/ts72xx.c b/arch/arm/mach-ep93xx/ts72xx.c
index 5255dddd3067..259f7822ba52 100644
--- a/arch/arm/mach-ep93xx/ts72xx.c
+++ b/arch/arm/mach-ep93xx/ts72xx.c
@@ -111,13 +111,16 @@ static void __init ts72xx_map_io(void)
111 } 111 }
112} 112}
113 113
114/*************************************************************************
115 * NOR flash (TS-7200 only)
116 *************************************************************************/
114static struct physmap_flash_data ts72xx_flash_data = { 117static struct physmap_flash_data ts72xx_flash_data = {
115 .width = 1, 118 .width = 2,
116}; 119};
117 120
118static struct resource ts72xx_flash_resource = { 121static struct resource ts72xx_flash_resource = {
119 .start = TS72XX_NOR_PHYS_BASE, 122 .start = EP93XX_CS6_PHYS_BASE,
120 .end = TS72XX_NOR_PHYS_BASE + SZ_16M - 1, 123 .end = EP93XX_CS6_PHYS_BASE + SZ_16M - 1,
121 .flags = IORESOURCE_MEM, 124 .flags = IORESOURCE_MEM,
122}; 125};
123 126
@@ -131,6 +134,12 @@ static struct platform_device ts72xx_flash = {
131 .resource = &ts72xx_flash_resource, 134 .resource = &ts72xx_flash_resource,
132}; 135};
133 136
137static void __init ts72xx_register_flash(void)
138{
139 if (board_is_ts7200())
140 platform_device_register(&ts72xx_flash);
141}
142
134static unsigned char ts72xx_rtc_readbyte(unsigned long addr) 143static unsigned char ts72xx_rtc_readbyte(unsigned long addr)
135{ 144{
136 __raw_writeb(addr, TS72XX_RTC_INDEX_VIRT_BASE); 145 __raw_writeb(addr, TS72XX_RTC_INDEX_VIRT_BASE);
@@ -164,8 +173,7 @@ static struct ep93xx_eth_data ts72xx_eth_data = {
164static void __init ts72xx_init_machine(void) 173static void __init ts72xx_init_machine(void)
165{ 174{
166 ep93xx_init_devices(); 175 ep93xx_init_devices();
167 if (board_is_ts7200()) 176 ts72xx_register_flash();
168 platform_device_register(&ts72xx_flash);
169 platform_device_register(&ts72xx_rtc_device); 177 platform_device_register(&ts72xx_rtc_device);
170 178
171 ep93xx_register_eth(&ts72xx_eth_data, 1); 179 ep93xx_register_eth(&ts72xx_eth_data, 1);