diff options
| author | Atsushi Nemoto <anemo@mba.ocn.ne.jp> | 2008-07-23 11:25:18 -0400 |
|---|---|---|
| committer | Ralf Baechle <ralf@linux-mips.org> | 2008-07-30 16:54:39 -0400 |
| commit | 683147254ef7e69ebbbe55280ba6a3c5ae2325d8 (patch) | |
| tree | 4f242b09bcd54ab4563e9c6201dc0c8ded351fdc | |
| parent | a49297e8fc8a9a835ac4ec124aa83028abdcc7d5 (diff) | |
[MIPS] TXx9: Cleanup watchdog
Unify registration of txx9wdt platform device.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| -rw-r--r-- | arch/mips/txx9/generic/setup.c | 12 | ||||
| -rw-r--r-- | arch/mips/txx9/generic/setup_tx4927.c | 7 | ||||
| -rw-r--r-- | arch/mips/txx9/generic/setup_tx4938.c | 7 | ||||
| -rw-r--r-- | arch/mips/txx9/jmr3927/setup.c | 20 | ||||
| -rw-r--r-- | arch/mips/txx9/rbtx4927/setup.c | 21 | ||||
| -rw-r--r-- | arch/mips/txx9/rbtx4938/setup.c | 21 | ||||
| -rw-r--r-- | include/asm-mips/txx9/generic.h | 1 | ||||
| -rw-r--r-- | include/asm-mips/txx9/tx4927.h | 2 | ||||
| -rw-r--r-- | include/asm-mips/txx9/tx4938.h | 2 |
9 files changed, 32 insertions, 61 deletions
diff --git a/arch/mips/txx9/generic/setup.c b/arch/mips/txx9/generic/setup.c index 82272e85a042..7b5705d18deb 100644 --- a/arch/mips/txx9/generic/setup.c +++ b/arch/mips/txx9/generic/setup.c | |||
| @@ -20,6 +20,7 @@ | |||
| 20 | #include <linux/clk.h> | 20 | #include <linux/clk.h> |
| 21 | #include <linux/err.h> | 21 | #include <linux/err.h> |
| 22 | #include <linux/gpio.h> | 22 | #include <linux/gpio.h> |
| 23 | #include <linux/platform_device.h> | ||
| 23 | #include <asm/bootinfo.h> | 24 | #include <asm/bootinfo.h> |
| 24 | #include <asm/time.h> | 25 | #include <asm/time.h> |
| 25 | #include <asm/reboot.h> | 26 | #include <asm/reboot.h> |
| @@ -208,6 +209,17 @@ static void __noreturn txx9_machine_halt(void) | |||
| 208 | } | 209 | } |
| 209 | } | 210 | } |
| 210 | 211 | ||
| 212 | /* Watchdog support */ | ||
| 213 | void __init txx9_wdt_init(unsigned long base) | ||
| 214 | { | ||
| 215 | struct resource res = { | ||
| 216 | .start = base, | ||
| 217 | .end = base + 0x100 - 1, | ||
| 218 | .flags = IORESOURCE_MEM, | ||
| 219 | }; | ||
| 220 | platform_device_register_simple("txx9wdt", -1, &res, 1); | ||
| 221 | } | ||
| 222 | |||
| 211 | /* wrappers */ | 223 | /* wrappers */ |
| 212 | void __init plat_mem_setup(void) | 224 | void __init plat_mem_setup(void) |
| 213 | { | 225 | { |
diff --git a/arch/mips/txx9/generic/setup_tx4927.c b/arch/mips/txx9/generic/setup_tx4927.c index 89d6e28add93..b42c85573d0d 100644 --- a/arch/mips/txx9/generic/setup_tx4927.c +++ b/arch/mips/txx9/generic/setup_tx4927.c | |||
| @@ -21,7 +21,7 @@ | |||
| 21 | #include <asm/txx9/generic.h> | 21 | #include <asm/txx9/generic.h> |
| 22 | #include <asm/txx9/tx4927.h> | 22 | #include <asm/txx9/tx4927.h> |
| 23 | 23 | ||
| 24 | void __init tx4927_wdr_init(void) | 24 | static void __init tx4927_wdr_init(void) |
| 25 | { | 25 | { |
| 26 | /* clear WatchDogReset (W1C) */ | 26 | /* clear WatchDogReset (W1C) */ |
| 27 | tx4927_ccfg_set(TX4927_CCFG_WDRST); | 27 | tx4927_ccfg_set(TX4927_CCFG_WDRST); |
| @@ -29,6 +29,11 @@ void __init tx4927_wdr_init(void) | |||
| 29 | tx4927_ccfg_set(TX4927_CCFG_WR); | 29 | tx4927_ccfg_set(TX4927_CCFG_WR); |
| 30 | } | 30 | } |
| 31 | 31 | ||
| 32 | void __init tx4927_wdt_init(void) | ||
| 33 | { | ||
| 34 | txx9_wdt_init(TX4927_TMR_REG(2) & 0xfffffffffULL); | ||
| 35 | } | ||
| 36 | |||
| 32 | static struct resource tx4927_sdram_resource[4]; | 37 | static struct resource tx4927_sdram_resource[4]; |
| 33 | 38 | ||
| 34 | void __init tx4927_setup(void) | 39 | void __init tx4927_setup(void) |
diff --git a/arch/mips/txx9/generic/setup_tx4938.c b/arch/mips/txx9/generic/setup_tx4938.c index 317378d8579d..b0a3dc8863fd 100644 --- a/arch/mips/txx9/generic/setup_tx4938.c +++ b/arch/mips/txx9/generic/setup_tx4938.c | |||
| @@ -21,7 +21,7 @@ | |||
| 21 | #include <asm/txx9/generic.h> | 21 | #include <asm/txx9/generic.h> |
| 22 | #include <asm/txx9/tx4938.h> | 22 | #include <asm/txx9/tx4938.h> |
| 23 | 23 | ||
| 24 | void __init tx4938_wdr_init(void) | 24 | static void __init tx4938_wdr_init(void) |
| 25 | { | 25 | { |
| 26 | /* clear WatchDogReset (W1C) */ | 26 | /* clear WatchDogReset (W1C) */ |
| 27 | tx4938_ccfg_set(TX4938_CCFG_WDRST); | 27 | tx4938_ccfg_set(TX4938_CCFG_WDRST); |
| @@ -29,6 +29,11 @@ void __init tx4938_wdr_init(void) | |||
| 29 | tx4938_ccfg_set(TX4938_CCFG_WR); | 29 | tx4938_ccfg_set(TX4938_CCFG_WR); |
| 30 | } | 30 | } |
| 31 | 31 | ||
| 32 | void __init tx4938_wdt_init(void) | ||
| 33 | { | ||
| 34 | txx9_wdt_init(TX4938_TMR_REG(2) & 0xfffffffffULL); | ||
| 35 | } | ||
| 36 | |||
| 32 | static struct resource tx4938_sdram_resource[4]; | 37 | static struct resource tx4938_sdram_resource[4]; |
| 33 | static struct resource tx4938_sram_resource; | 38 | static struct resource tx4938_sram_resource; |
| 34 | 39 | ||
diff --git a/arch/mips/txx9/jmr3927/setup.c b/arch/mips/txx9/jmr3927/setup.c index fa0503efc840..ae34e9a4a8ac 100644 --- a/arch/mips/txx9/jmr3927/setup.c +++ b/arch/mips/txx9/jmr3927/setup.c | |||
| @@ -308,30 +308,16 @@ static int __init jmr3927_rtc_init(void) | |||
| 308 | return IS_ERR(dev) ? PTR_ERR(dev) : 0; | 308 | return IS_ERR(dev) ? PTR_ERR(dev) : 0; |
| 309 | } | 309 | } |
| 310 | 310 | ||
| 311 | /* Watchdog support */ | 311 | static void __init tx3927_wdt_init(void) |
| 312 | |||
| 313 | static int __init txx9_wdt_init(unsigned long base) | ||
| 314 | { | ||
| 315 | struct resource res = { | ||
| 316 | .start = base, | ||
| 317 | .end = base + 0x100 - 1, | ||
| 318 | .flags = IORESOURCE_MEM, | ||
| 319 | }; | ||
| 320 | struct platform_device *dev = | ||
| 321 | platform_device_register_simple("txx9wdt", -1, &res, 1); | ||
| 322 | return IS_ERR(dev) ? PTR_ERR(dev) : 0; | ||
| 323 | } | ||
| 324 | |||
| 325 | static int __init jmr3927_wdt_init(void) | ||
| 326 | { | 312 | { |
| 327 | return txx9_wdt_init(TX3927_TMR_REG(2)); | 313 | txx9_wdt_init(TX3927_TMR_REG(2)); |
| 328 | } | 314 | } |
| 329 | 315 | ||
| 330 | static void __init jmr3927_device_init(void) | 316 | static void __init jmr3927_device_init(void) |
| 331 | { | 317 | { |
| 332 | __swizzle_addr_b = jmr3927_swizzle_addr_b; | 318 | __swizzle_addr_b = jmr3927_swizzle_addr_b; |
| 333 | jmr3927_rtc_init(); | 319 | jmr3927_rtc_init(); |
| 334 | jmr3927_wdt_init(); | 320 | tx3927_wdt_init(); |
| 335 | } | 321 | } |
| 336 | 322 | ||
| 337 | struct txx9_board_vec jmr3927_vec __initdata = { | 323 | struct txx9_board_vec jmr3927_vec __initdata = { |
diff --git a/arch/mips/txx9/rbtx4927/setup.c b/arch/mips/txx9/rbtx4927/setup.c index 54c33c3e9f7d..f01af382e9a8 100644 --- a/arch/mips/txx9/rbtx4927/setup.c +++ b/arch/mips/txx9/rbtx4927/setup.c | |||
| @@ -328,30 +328,11 @@ static int __init rbtx4927_ne_init(void) | |||
| 328 | return IS_ERR(dev) ? PTR_ERR(dev) : 0; | 328 | return IS_ERR(dev) ? PTR_ERR(dev) : 0; |
| 329 | } | 329 | } |
| 330 | 330 | ||
| 331 | /* Watchdog support */ | ||
| 332 | |||
| 333 | static int __init txx9_wdt_init(unsigned long base) | ||
| 334 | { | ||
| 335 | struct resource res = { | ||
| 336 | .start = base, | ||
| 337 | .end = base + 0x100 - 1, | ||
| 338 | .flags = IORESOURCE_MEM, | ||
| 339 | }; | ||
| 340 | struct platform_device *dev = | ||
| 341 | platform_device_register_simple("txx9wdt", -1, &res, 1); | ||
| 342 | return IS_ERR(dev) ? PTR_ERR(dev) : 0; | ||
| 343 | } | ||
| 344 | |||
| 345 | static int __init rbtx4927_wdt_init(void) | ||
| 346 | { | ||
| 347 | return txx9_wdt_init(TX4927_TMR_REG(2) & 0xfffffffffULL); | ||
| 348 | } | ||
| 349 | |||
| 350 | static void __init rbtx4927_device_init(void) | 331 | static void __init rbtx4927_device_init(void) |
| 351 | { | 332 | { |
| 352 | toshiba_rbtx4927_rtc_init(); | 333 | toshiba_rbtx4927_rtc_init(); |
| 353 | rbtx4927_ne_init(); | 334 | rbtx4927_ne_init(); |
| 354 | rbtx4927_wdt_init(); | 335 | tx4927_wdt_init(); |
| 355 | } | 336 | } |
| 356 | 337 | ||
| 357 | struct txx9_board_vec rbtx4927_vec __initdata = { | 338 | struct txx9_board_vec rbtx4927_vec __initdata = { |
diff --git a/arch/mips/txx9/rbtx4938/setup.c b/arch/mips/txx9/rbtx4938/setup.c index e1177b3b9103..ff5fda2151f2 100644 --- a/arch/mips/txx9/rbtx4938/setup.c +++ b/arch/mips/txx9/rbtx4938/setup.c | |||
| @@ -352,30 +352,11 @@ static void __init rbtx4938_arch_init(void) | |||
| 352 | rbtx4938_spi_init(); | 352 | rbtx4938_spi_init(); |
| 353 | } | 353 | } |
| 354 | 354 | ||
| 355 | /* Watchdog support */ | ||
| 356 | |||
| 357 | static int __init txx9_wdt_init(unsigned long base) | ||
| 358 | { | ||
| 359 | struct resource res = { | ||
| 360 | .start = base, | ||
| 361 | .end = base + 0x100 - 1, | ||
| 362 | .flags = IORESOURCE_MEM, | ||
| 363 | }; | ||
