Skip to content

Commit

Permalink
ARM: davinci: da850 DT: add support for machine reboot
Browse files Browse the repository at this point in the history
Update the da8xx_restart() function to support machine reboot
when booting using DT. Have the function search for the watchdog
platform device instead of always using "da8xx_wdt_device" which
is never registered in DT case.

While at it, also make da8xx_wdt_device static since there is no need
for it to be globally visible.

Tested machine reboot with both DT and non-DT boot on DA850 EVM.

Signed-off-by: Kumar, Anil <anilkumar.v@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
  • Loading branch information
Kumar, Anil authored and Sekhar Nori committed Feb 9, 2013
1 parent 518f97d commit 19c7c0d
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
12 changes: 10 additions & 2 deletions arch/arm/mach-davinci/devices-da8xx.c
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ static struct resource da8xx_watchdog_resources[] = {
},
};

struct platform_device da8xx_wdt_device = {
static struct platform_device da8xx_wdt_device = {
.name = "watchdog",
.id = -1,
.num_resources = ARRAY_SIZE(da8xx_watchdog_resources),
Expand All @@ -368,7 +368,15 @@ struct platform_device da8xx_wdt_device = {

void da8xx_restart(char mode, const char *cmd)
{
davinci_watchdog_reset(&da8xx_wdt_device);
struct device *dev;

dev = bus_find_device_by_name(&platform_bus_type, NULL, "watchdog");
if (!dev) {
pr_err("%s: failed to find watchdog device\n", __func__);
return;
}

davinci_watchdog_reset(to_platform_device(dev));
}

int __init da8xx_register_watchdog(void)
Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-davinci/include/mach/da8xx.h
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@ extern struct da8xx_lcdc_platform_data sharp_lcd035q3dg01_pdata;
extern struct da8xx_lcdc_platform_data sharp_lk043t1dg01_pdata;
extern struct davinci_spi_platform_data da8xx_spi_pdata[];

extern struct platform_device da8xx_wdt_device;

extern const short da830_emif25_pins[];
extern const short da830_spi0_pins[];
Expand Down

0 comments on commit 19c7c0d

Please sign in to comment.