diff options
author | Sekhar Nori <nsekhar@ti.com> | 2011-12-05 05:29:46 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-05 07:57:09 -0500 |
commit | c6121ddd1f75278ab77504af2914d07831558672 (patch) | |
tree | c286a1854d96375e2c3e968301087461e12d2138 /arch/arm | |
parent | 3921470527fa2800f575dee376712f2a6584db91 (diff) |
ARM: 7190/1: restart: davinci: use new restart hook
Rather than using DaVinci specific davinci_soc_info based
restart hook, use the restart hook available in the machine
descriptor instead.
Tested on DM365 and AM18x EVMs.
v2:
Changed to use restart hook in machine descriptor
per Russell's comment.
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
26 files changed, 31 insertions, 15 deletions
diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c index 11c3db985285..dc1afe5be20c 100644 --- a/arch/arm/mach-davinci/board-da830-evm.c +++ b/arch/arm/mach-davinci/board-da830-evm.c | |||
@@ -682,4 +682,5 @@ MACHINE_START(DAVINCI_DA830_EVM, "DaVinci DA830/OMAP-L137/AM17x EVM") | |||
682 | .timer = &davinci_timer, | 682 | .timer = &davinci_timer, |
683 | .init_machine = da830_evm_init, | 683 | .init_machine = da830_evm_init, |
684 | .dma_zone_size = SZ_128M, | 684 | .dma_zone_size = SZ_128M, |
685 | .restart = da8xx_restart, | ||
685 | MACHINE_END | 686 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c index 6659a90dbcad..f8a682f60a42 100644 --- a/arch/arm/mach-davinci/board-da850-evm.c +++ b/arch/arm/mach-davinci/board-da850-evm.c | |||
@@ -1411,4 +1411,5 @@ MACHINE_START(DAVINCI_DA850_EVM, "DaVinci DA850/OMAP-L138/AM18x EVM") | |||
1411 | .timer = &davinci_timer, | 1411 | .timer = &davinci_timer, |
1412 | .init_machine = da850_evm_init, | 1412 | .init_machine = da850_evm_init, |
1413 | .dma_zone_size = SZ_128M, | 1413 | .dma_zone_size = SZ_128M, |
1414 | .restart = da8xx_restart, | ||
1414 | MACHINE_END | 1415 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-davinci/board-dm355-evm.c index 4e0e707c313d..275341f159fb 100644 --- a/arch/arm/mach-davinci/board-dm355-evm.c +++ b/arch/arm/mach-davinci/board-dm355-evm.c | |||
@@ -357,4 +357,5 @@ MACHINE_START(DAVINCI_DM355_EVM, "DaVinci DM355 EVM") | |||
357 | .timer = &davinci_timer, | 357 | .timer = &davinci_timer, |
358 | .init_machine = dm355_evm_init, | 358 | .init_machine = dm355_evm_init, |
359 | .dma_zone_size = SZ_128M, | 359 | .dma_zone_size = SZ_128M, |
360 | .restart = davinci_restart, | ||
360 | MACHINE_END | 361 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-dm355-leopard.c b/arch/arm/mach-davinci/board-dm355-leopard.c index ff2d2413279a..e99db28181ae 100644 --- a/arch/arm/mach-davinci/board-dm355-leopard.c +++ b/arch/arm/mach-davinci/board-dm355-leopard.c | |||
@@ -276,4 +276,5 @@ MACHINE_START(DM355_LEOPARD, "DaVinci DM355 leopard") | |||
276 | .timer = &davinci_timer, | 276 | .timer = &davinci_timer, |
277 | .init_machine = dm355_leopard_init, | 277 | .init_machine = dm355_leopard_init, |
278 | .dma_zone_size = SZ_128M, | 278 | .dma_zone_size = SZ_128M, |
279 | .restart = davinci_restart, | ||
279 | MACHINE_END | 280 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-dm365-evm.c b/arch/arm/mach-davinci/board-dm365-evm.c index 46e1f4173b97..346e1de2f5a8 100644 --- a/arch/arm/mach-davinci/board-dm365-evm.c +++ b/arch/arm/mach-davinci/board-dm365-evm.c | |||
@@ -618,5 +618,6 @@ MACHINE_START(DAVINCI_DM365_EVM, "DaVinci DM365 EVM") | |||
618 | .timer = &davinci_timer, | 618 | .timer = &davinci_timer, |
619 | .init_machine = dm365_evm_init, | 619 | .init_machine = dm365_evm_init, |
620 | .dma_zone_size = SZ_128M, | 620 | .dma_zone_size = SZ_128M, |
621 | .restart = davinci_restart, | ||
621 | MACHINE_END | 622 | MACHINE_END |
622 | 623 | ||
diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c index 0cf8abf78d33..a64b49cfedca 100644 --- a/arch/arm/mach-davinci/board-dm644x-evm.c +++ b/arch/arm/mach-davinci/board-dm644x-evm.c | |||
@@ -719,4 +719,5 @@ MACHINE_START(DAVINCI_EVM, "DaVinci DM644x EVM") | |||
719 | .timer = &davinci_timer, | 719 | .timer = &davinci_timer, |
720 | .init_machine = davinci_evm_init, | 720 | .init_machine = davinci_evm_init, |
721 | .dma_zone_size = SZ_128M, | 721 | .dma_zone_size = SZ_128M, |
722 | .restart = davinci_restart, | ||
722 | MACHINE_END | 723 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 635bf7740157..64017558860b 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c | |||
@@ -799,6 +799,7 @@ MACHINE_START(DAVINCI_DM6467_EVM, "DaVinci DM646x EVM") | |||
799 | .timer = &davinci_timer, | 799 | .timer = &davinci_timer, |
800 | .init_machine = evm_init, | 800 | .init_machine = evm_init, |
801 | .dma_zone_size = SZ_128M, | 801 | .dma_zone_size = SZ_128M, |
802 | .restart = davinci_restart, | ||
802 | MACHINE_END | 803 | MACHINE_END |
803 | 804 | ||
804 | MACHINE_START(DAVINCI_DM6467TEVM, "DaVinci DM6467T EVM") | 805 | MACHINE_START(DAVINCI_DM6467TEVM, "DaVinci DM6467T EVM") |
@@ -808,5 +809,6 @@ MACHINE_START(DAVINCI_DM6467TEVM, "DaVinci DM6467T EVM") | |||
808 | .timer = &davinci_timer, | 809 | .timer = &davinci_timer, |
809 | .init_machine = evm_init, | 810 | .init_machine = evm_init, |
810 | .dma_zone_size = SZ_128M, | 811 | .dma_zone_size = SZ_128M, |
812 | .restart = davinci_restart, | ||
811 | MACHINE_END | 813 | MACHINE_END |
812 | 814 | ||
diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c index 3cfff555e8f2..672d820e2aa4 100644 --- a/arch/arm/mach-davinci/board-mityomapl138.c +++ b/arch/arm/mach-davinci/board-mityomapl138.c | |||
@@ -573,4 +573,5 @@ MACHINE_START(MITYOMAPL138, "MityDSP-L138/MityARM-1808") | |||
573 | .timer = &davinci_timer, | 573 | .timer = &davinci_timer, |
574 | .init_machine = mityomapl138_init, | 574 | .init_machine = mityomapl138_init, |
575 | .dma_zone_size = SZ_128M, | 575 | .dma_zone_size = SZ_128M, |
576 | .restart = da8xx_restart, | ||
576 | MACHINE_END | 577 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-neuros-osd2.c b/arch/arm/mach-davinci/board-neuros-osd2.c index e5f231aefee4..6c4a16415d47 100644 --- a/arch/arm/mach-davinci/board-neuros-osd2.c +++ b/arch/arm/mach-davinci/board-neuros-osd2.c | |||
@@ -278,4 +278,5 @@ MACHINE_START(NEUROS_OSD2, "Neuros OSD2") | |||
278 | .timer = &davinci_timer, | 278 | .timer = &davinci_timer, |
279 | .init_machine = davinci_ntosd2_init, | 279 | .init_machine = davinci_ntosd2_init, |
280 | .dma_zone_size = SZ_128M, | 280 | .dma_zone_size = SZ_128M, |
281 | .restart = davinci_restart, | ||
281 | MACHINE_END | 282 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-omapl138-hawk.c b/arch/arm/mach-davinci/board-omapl138-hawk.c index c6701e4a795c..e7c0c7c53493 100644 --- a/arch/arm/mach-davinci/board-omapl138-hawk.c +++ b/arch/arm/mach-davinci/board-omapl138-hawk.c | |||
@@ -344,4 +344,5 @@ MACHINE_START(OMAPL138_HAWKBOARD, "AM18x/OMAP-L138 Hawkboard") | |||
344 | .timer = &davinci_timer, | 344 | .timer = &davinci_timer, |
345 | .init_machine = omapl138_hawk_init, | 345 | .init_machine = omapl138_hawk_init, |
346 | .dma_zone_size = SZ_128M, | 346 | .dma_zone_size = SZ_128M, |
347 | .restart = da8xx_restart, | ||
347 | MACHINE_END | 348 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-sffsdr.c b/arch/arm/mach-davinci/board-sffsdr.c index 5dd4da9d2308..0b136a831c59 100644 --- a/arch/arm/mach-davinci/board-sffsdr.c +++ b/arch/arm/mach-davinci/board-sffsdr.c | |||
@@ -157,4 +157,5 @@ MACHINE_START(SFFSDR, "Lyrtech SFFSDR") | |||
157 | .timer = &davinci_timer, | 157 | .timer = &davinci_timer, |
158 | .init_machine = davinci_sffsdr_init, | 158 | .init_machine = davinci_sffsdr_init, |
159 | .dma_zone_size = SZ_128M, | 159 | .dma_zone_size = SZ_128M, |
160 | .restart = davinci_restart, | ||
160 | MACHINE_END | 161 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/board-tnetv107x-evm.c b/arch/arm/mach-davinci/board-tnetv107x-evm.c index f69e40a29e02..5f14e30b00d8 100644 --- a/arch/arm/mach-davinci/board-tnetv107x-evm.c +++ b/arch/arm/mach-davinci/board-tnetv107x-evm.c | |||
@@ -283,4 +283,5 @@ MACHINE_START(TNETV107X, "TNETV107X EVM") | |||
283 | .timer = &davinci_timer, | 283 | .timer = &davinci_timer, |
284 | .init_machine = tnetv107x_evm_board_init, | 284 | .init_machine = tnetv107x_evm_board_init, |
285 | .dma_zone_size = SZ_128M, | 285 | .dma_zone_size = SZ_128M, |
286 | .restart = tnetv107x_restart, | ||
286 | MACHINE_END | 287 | MACHINE_END |
diff --git a/arch/arm/mach-davinci/common.c b/arch/arm/mach-davinci/common.c index 865ffe5899ac..cb9b2e47510c 100644 --- a/arch/arm/mach-davinci/common.c +++ b/arch/arm/mach-davinci/common.c | |||
@@ -97,9 +97,6 @@ void __init davinci_common_init(struct davinci_soc_info *soc_info) | |||
97 | local_flush_tlb_all(); | 97 | local_flush_tlb_all(); |
98 | flush_cache_all(); | 98 | flush_cache_all(); |
99 | 99 | ||
100 | if (!davinci_soc_info.reset) | ||
101 | davinci_soc_info.reset = davinci_watchdog_reset; | ||
102 | |||
103 | /* | 100 | /* |
104 | * We want to check CPU revision early for cpu_is_xxxx() macros. | 101 | * We want to check CPU revision early for cpu_is_xxxx() macros. |
105 | * IO space mapping must be initialized before we can do that. | 102 | * IO space mapping must be initialized before we can do that. |
diff --git a/arch/arm/mach-davinci/da830.c b/arch/arm/mach-davinci/da830.c index a6bf5dcaef13..deee5c2da754 100644 --- a/arch/arm/mach-davinci/da830.c +++ b/arch/arm/mach-davinci/da830.c | |||
@@ -1201,7 +1201,6 @@ static struct davinci_soc_info davinci_soc_info_da830 = { | |||
1201 | .gpio_irq = IRQ_DA8XX_GPIO0, | 1201 | .gpio_irq = IRQ_DA8XX_GPIO0, |
1202 | .serial_dev = &da8xx_serial_device, | 1202 | .serial_dev = &da8xx_serial_device, |
1203 | .emac_pdata = &da8xx_emac_pdata, | 1203 | .emac_pdata = &da8xx_emac_pdata, |
1204 | .reset_device = &da8xx_wdt_device, | ||
1205 | }; | 1204 | }; |
1206 | 1205 | ||
1207 | void __init da830_init(void) | 1206 | void __init da830_init(void) |
diff --git a/arch/arm/mach-davinci/da850.c b/arch/arm/mach-davinci/da850.c index b047f8702278..0ed7fdb64efb 100644 --- a/arch/arm/mach-davinci/da850.c +++ b/arch/arm/mach-davinci/da850.c | |||
@@ -1121,7 +1121,6 @@ static struct davinci_soc_info davinci_soc_info_da850 = { | |||
1121 | .emac_pdata = &da8xx_emac_pdata, | 1121 | .emac_pdata = &da8xx_emac_pdata, |
1122 | .sram_dma = DA8XX_ARM_RAM_BASE, | 1122 | .sram_dma = DA8XX_ARM_RAM_BASE, |
1123 | .sram_len = SZ_8K, | 1123 | .sram_len = SZ_8K, |
1124 | .reset_device = &da8xx_wdt_device, | ||
1125 | }; | 1124 | }; |
1126 | 1125 | ||
1127 | void __init da850_init(void) | 1126 | void __init da850_init(void) |
diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c index 68def7188868..42dbf3dc11ab 100644 --- a/arch/arm/mach-davinci/devices-da8xx.c +++ b/arch/arm/mach-davinci/devices-da8xx.c | |||
@@ -363,6 +363,11 @@ struct platform_device da8xx_wdt_device = { | |||
363 | .resource = da8xx_watchdog_resources, | 363 | .resource = da8xx_watchdog_resources, |
364 | }; | 364 | }; |
365 | 365 | ||
366 | void da8xx_restart(char mode, const char *cmd) | ||
367 | { | ||
368 | davinci_watchdog_reset(&da8xx_wdt_device); | ||
369 | } | ||
370 | |||
366 | int __init da8xx_register_watchdog(void) | 371 | int __init da8xx_register_watchdog(void) |
367 | { | 372 | { |
368 | return platform_device_register(&da8xx_wdt_device); | 373 | return platform_device_register(&da8xx_wdt_device); |
diff --git a/arch/arm/mach-davinci/devices.c b/arch/arm/mach-davinci/devices.c index 806a2f02b980..50c0156b4262 100644 --- a/arch/arm/mach-davinci/devices.c +++ b/arch/arm/mach-davinci/devices.c | |||
@@ -291,6 +291,11 @@ struct platform_device davinci_wdt_device = { | |||
291 | .resource = wdt_resources, | 291 | .resource = wdt_resources, |
292 | }; | 292 | }; |
293 | 293 | ||
294 | void davinci_restart(char mode, const char *cmd) | ||
295 | { | ||
296 | davinci_watchdog_reset(&davinci_wdt_device); | ||
297 | } | ||
298 | |||
294 | static void davinci_init_wdt(void) | 299 | static void davinci_init_wdt(void) |
295 | { | 300 | { |
296 | platform_device_register(&davinci_wdt_device); | 301 | platform_device_register(&davinci_wdt_device); |
diff --git a/arch/arm/mach-davinci/dm355.c b/arch/arm/mach-davinci/dm355.c index fe520d4167a2..19667cfc5de0 100644 --- a/arch/arm/mach-davinci/dm355.c +++ b/arch/arm/mach-davinci/dm355.c | |||
@@ -853,7 +853,6 @@ static struct davinci_soc_info davinci_soc_info_dm355 = { | |||
853 | .serial_dev = &dm355_serial_device, | 853 | .serial_dev = &dm355_serial_device, |
854 | .sram_dma = 0x00010000, | 854 | .sram_dma = 0x00010000, |
855 | .sram_len = SZ_32K, | 855 | .sram_len = SZ_32K, |
856 | .reset_device = &davinci_wdt_device, | ||
857 | }; | 856 | }; |
858 | 857 | ||
859 | void __init dm355_init_asp1(u32 evt_enable, struct snd_platform_data *pdata) | 858 | void __init dm355_init_asp1(u32 evt_enable, struct snd_platform_data *pdata) |
diff --git a/arch/arm/mach-davinci/dm365.c b/arch/arm/mach-davinci/dm365.c index 679e168dce34..f15b435cc655 100644 --- a/arch/arm/mach-davinci/dm365.c +++ b/arch/arm/mach-davinci/dm365.c | |||
@@ -1083,7 +1083,6 @@ static struct davinci_soc_info davinci_soc_info_dm365 = { | |||
1083 | .emac_pdata = &dm365_emac_pdata, | 1083 | .emac_pdata = &dm365_emac_pdata, |
1084 | .sram_dma = 0x00010000, | 1084 | .sram_dma = 0x00010000, |
1085 | .sram_len = SZ_32K, | 1085 | .sram_len = SZ_32K, |
1086 | .reset_device = &davinci_wdt_device, | ||
1087 | }; | 1086 | }; |
1088 | 1087 | ||
1089 | void __init dm365_init_asp(struct snd_platform_data *pdata) | 1088 | void __init dm365_init_asp(struct snd_platform_data *pdata) |
diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c index 3470983aa343..0800f9cf33bb 100644 --- a/arch/arm/mach-davinci/dm644x.c +++ b/arch/arm/mach-davinci/dm644x.c | |||
@@ -767,7 +767,6 @@ static struct davinci_soc_info davinci_soc_info_dm644x = { | |||
767 | .emac_pdata = &dm644x_emac_pdata, | 767 | .emac_pdata = &dm644x_emac_pdata, |
768 | .sram_dma = 0x00008000, | 768 | .sram_dma = 0x00008000, |
769 | .sram_len = SZ_16K, | 769 | .sram_len = SZ_16K, |
770 | .reset_device = &davinci_wdt_device, | ||
771 | }; | 770 | }; |
772 | 771 | ||
773 | void __init dm644x_init_asp(struct snd_platform_data *pdata) | 772 | void __init dm644x_init_asp(struct snd_platform_data *pdata) |
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c index af27c130595f..00f774394b16 100644 --- a/arch/arm/mach-davinci/dm646x.c +++ b/arch/arm/mach-davinci/dm646x.c | |||
@@ -854,7 +854,6 @@ static struct davinci_soc_info davinci_soc_info_dm646x = { | |||
854 | .emac_pdata = &dm646x_emac_pdata, | 854 | .emac_pdata = &dm646x_emac_pdata, |
855 | .sram_dma = 0x10010000, | 855 | .sram_dma = 0x10010000, |
856 | .sram_len = SZ_32K, | 856 | .sram_len = SZ_32K, |
857 | .reset_device = &davinci_wdt_device, | ||
858 | }; | 857 | }; |
859 | 858 | ||
860 | void __init dm646x_init_mcasp0(struct snd_platform_data *pdata) | 859 | void __init dm646x_init_mcasp0(struct snd_platform_data *pdata) |
diff --git a/arch/arm/mach-davinci/include/mach/common.h b/arch/arm/mach-davinci/include/mach/common.h index a57cba21e21e..5cd39a4e0c96 100644 --- a/arch/arm/mach-davinci/include/mach/common.h +++ b/arch/arm/mach-davinci/include/mach/common.h | |||
@@ -77,14 +77,13 @@ struct davinci_soc_info { | |||
77 | struct emac_platform_data *emac_pdata; | 77 | struct emac_platform_data *emac_pdata; |
78 | dma_addr_t sram_dma; | 78 | dma_addr_t sram_dma; |
79 | unsigned sram_len; | 79 | unsigned sram_len; |
80 | struct platform_device *reset_device; | ||
81 | void (*reset)(struct platform_device *); | ||
82 | }; | 80 | }; |
83 | 81 | ||
84 | extern struct davinci_soc_info davinci_soc_info; | 82 | extern struct davinci_soc_info davinci_soc_info; |
85 | 83 | ||
86 | extern void davinci_common_init(struct davinci_soc_info *soc_info); | 84 | extern void davinci_common_init(struct davinci_soc_info *soc_info); |
87 | extern void davinci_init_ide(void); | 85 | extern void davinci_init_ide(void); |
86 | void davinci_restart(char mode, const char *cmd); | ||
88 | 87 | ||
89 | /* standard place to map on-chip SRAMs; they *may* support DMA */ | 88 | /* standard place to map on-chip SRAMs; they *may* support DMA */ |
90 | #define SRAM_VIRT 0xfffe0000 | 89 | #define SRAM_VIRT 0xfffe0000 |
diff --git a/arch/arm/mach-davinci/include/mach/da8xx.h b/arch/arm/mach-davinci/include/mach/da8xx.h index eaca7d8b9d68..ee3461d7ec1b 100644 --- a/arch/arm/mach-davinci/include/mach/da8xx.h +++ b/arch/arm/mach-davinci/include/mach/da8xx.h | |||
@@ -91,6 +91,7 @@ int da8xx_register_cpuidle(void); | |||
91 | void __iomem * __init da8xx_get_mem_ctlr(void); | 91 | void __iomem * __init da8xx_get_mem_ctlr(void); |
92 | int da850_register_pm(struct platform_device *pdev); | 92 | int da850_register_pm(struct platform_device *pdev); |
93 | int __init da850_register_sata(unsigned long refclkpn); | 93 | int __init da850_register_sata(unsigned long refclkpn); |
94 | void da8xx_restart(char mode, const char *cmd); | ||
94 | 95 | ||
95 | extern struct platform_device da8xx_serial_device; | 96 | extern struct platform_device da8xx_serial_device; |
96 | extern struct emac_platform_data da8xx_emac_pdata; | 97 | extern struct emac_platform_data da8xx_emac_pdata; |
diff --git a/arch/arm/mach-davinci/include/mach/system.h b/arch/arm/mach-davinci/include/mach/system.h index e65629c20769..6bd1dc06db27 100644 --- a/arch/arm/mach-davinci/include/mach/system.h +++ b/arch/arm/mach-davinci/include/mach/system.h | |||
@@ -20,8 +20,6 @@ static inline void arch_idle(void) | |||
20 | 20 | ||
21 | static inline void arch_reset(char mode, const char *cmd) | 21 | static inline void arch_reset(char mode, const char *cmd) |
22 | { | 22 | { |
23 | if (davinci_soc_info.reset) | ||
24 | davinci_soc_info.reset(davinci_soc_info.reset_device); | ||
25 | } | 23 | } |
26 | 24 | ||
27 | #endif /* __ASM_ARCH_SYSTEM_H */ | 25 | #endif /* __ASM_ARCH_SYSTEM_H */ |
diff --git a/arch/arm/mach-davinci/include/mach/tnetv107x.h b/arch/arm/mach-davinci/include/mach/tnetv107x.h index 89c1fdc63c0b..83e5926f3c46 100644 --- a/arch/arm/mach-davinci/include/mach/tnetv107x.h +++ b/arch/arm/mach-davinci/include/mach/tnetv107x.h | |||
@@ -54,6 +54,7 @@ extern struct platform_device tnetv107x_serial_device; | |||
54 | extern void __init tnetv107x_init(void); | 54 | extern void __init tnetv107x_init(void); |
55 | extern void __init tnetv107x_devices_init(struct tnetv107x_device_info *); | 55 | extern void __init tnetv107x_devices_init(struct tnetv107x_device_info *); |
56 | extern void __init tnetv107x_irq_init(void); | 56 | extern void __init tnetv107x_irq_init(void); |
57 | void tnetv107x_restart(char mode, const char *cmd); | ||
57 | 58 | ||
58 | #endif | 59 | #endif |
59 | 60 | ||
diff --git a/arch/arm/mach-davinci/tnetv107x.c b/arch/arm/mach-davinci/tnetv107x.c index 409bb869c7c7..dc1a209b9b66 100644 --- a/arch/arm/mach-davinci/tnetv107x.c +++ b/arch/arm/mach-davinci/tnetv107x.c | |||
@@ -730,6 +730,11 @@ static void tnetv107x_watchdog_reset(struct platform_device *pdev) | |||
730 | __raw_writel(1, ®s->kick); | 730 | __raw_writel(1, ®s->kick); |
731 | } | 731 | } |
732 | 732 | ||
733 | void tnetv107x_restart(char mode, const char *cmd) | ||
734 | { | ||
735 | tnetv107x_watchdog_reset(&tnetv107x_wdt_device); | ||
736 | } | ||
737 | |||
733 | static struct davinci_soc_info tnetv107x_soc_info = { | 738 | static struct davinci_soc_info tnetv107x_soc_info = { |
734 | .io_desc = io_desc, | 739 | .io_desc = io_desc, |
735 | .io_desc_num = ARRAY_SIZE(io_desc), | 740 | .io_desc_num = ARRAY_SIZE(io_desc), |
@@ -752,8 +757,6 @@ static struct davinci_soc_info tnetv107x_soc_info = { | |||
752 | .gpio_num = TNETV107X_N_GPIO, | 757 | .gpio_num = TNETV107X_N_GPIO, |
753 | .timer_info = &timer_info, | 758 | .timer_info = &timer_info, |
754 | .serial_dev = &tnetv107x_serial_device, | 759 | .serial_dev = &tnetv107x_serial_device, |
755 | .reset = tnetv107x_watchdog_reset, | ||
756 | .reset_device = &tnetv107x_wdt_device, | ||
757 | }; | 760 | }; |
758 | 761 | ||
759 | void __init tnetv107x_init(void) | 762 | void __init tnetv107x_init(void) |