forked from luck/tmp_suning_uos_patched
[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>
This commit is contained in:
parent
a49297e8fc
commit
683147254e
@ -20,6 +20,7 @@
|
|||||||
#include <linux/clk.h>
|
#include <linux/clk.h>
|
||||||
#include <linux/err.h>
|
#include <linux/err.h>
|
||||||
#include <linux/gpio.h>
|
#include <linux/gpio.h>
|
||||||
|
#include <linux/platform_device.h>
|
||||||
#include <asm/bootinfo.h>
|
#include <asm/bootinfo.h>
|
||||||
#include <asm/time.h>
|
#include <asm/time.h>
|
||||||
#include <asm/reboot.h>
|
#include <asm/reboot.h>
|
||||||
@ -208,6 +209,17 @@ static void __noreturn txx9_machine_halt(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Watchdog support */
|
||||||
|
void __init txx9_wdt_init(unsigned long base)
|
||||||
|
{
|
||||||
|
struct resource res = {
|
||||||
|
.start = base,
|
||||||
|
.end = base + 0x100 - 1,
|
||||||
|
.flags = IORESOURCE_MEM,
|
||||||
|
};
|
||||||
|
platform_device_register_simple("txx9wdt", -1, &res, 1);
|
||||||
|
}
|
||||||
|
|
||||||
/* wrappers */
|
/* wrappers */
|
||||||
void __init plat_mem_setup(void)
|
void __init plat_mem_setup(void)
|
||||||
{
|
{
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
#include <asm/txx9/generic.h>
|
#include <asm/txx9/generic.h>
|
||||||
#include <asm/txx9/tx4927.h>
|
#include <asm/txx9/tx4927.h>
|
||||||
|
|
||||||
void __init tx4927_wdr_init(void)
|
static void __init tx4927_wdr_init(void)
|
||||||
{
|
{
|
||||||
/* clear WatchDogReset (W1C) */
|
/* clear WatchDogReset (W1C) */
|
||||||
tx4927_ccfg_set(TX4927_CCFG_WDRST);
|
tx4927_ccfg_set(TX4927_CCFG_WDRST);
|
||||||
@ -29,6 +29,11 @@ void __init tx4927_wdr_init(void)
|
|||||||
tx4927_ccfg_set(TX4927_CCFG_WR);
|
tx4927_ccfg_set(TX4927_CCFG_WR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void __init tx4927_wdt_init(void)
|
||||||
|
{
|
||||||
|
txx9_wdt_init(TX4927_TMR_REG(2) & 0xfffffffffULL);
|
||||||
|
}
|
||||||
|
|
||||||
static struct resource tx4927_sdram_resource[4];
|
static struct resource tx4927_sdram_resource[4];
|
||||||
|
|
||||||
void __init tx4927_setup(void)
|
void __init tx4927_setup(void)
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
#include <asm/txx9/generic.h>
|
#include <asm/txx9/generic.h>
|
||||||
#include <asm/txx9/tx4938.h>
|
#include <asm/txx9/tx4938.h>
|
||||||
|
|
||||||
void __init tx4938_wdr_init(void)
|
static void __init tx4938_wdr_init(void)
|
||||||
{
|
{
|
||||||
/* clear WatchDogReset (W1C) */
|
/* clear WatchDogReset (W1C) */
|
||||||
tx4938_ccfg_set(TX4938_CCFG_WDRST);
|
tx4938_ccfg_set(TX4938_CCFG_WDRST);
|
||||||
@ -29,6 +29,11 @@ void __init tx4938_wdr_init(void)
|
|||||||
tx4938_ccfg_set(TX4938_CCFG_WR);
|
tx4938_ccfg_set(TX4938_CCFG_WR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void __init tx4938_wdt_init(void)
|
||||||
|
{
|
||||||
|
txx9_wdt_init(TX4938_TMR_REG(2) & 0xfffffffffULL);
|
||||||
|
}
|
||||||
|
|
||||||
static struct resource tx4938_sdram_resource[4];
|
static struct resource tx4938_sdram_resource[4];
|
||||||
static struct resource tx4938_sram_resource;
|
static struct resource tx4938_sram_resource;
|
||||||
|
|
||||||
|
@ -308,30 +308,16 @@ static int __init jmr3927_rtc_init(void)
|
|||||||
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Watchdog support */
|
static void __init tx3927_wdt_init(void)
|
||||||
|
|
||||||
static int __init txx9_wdt_init(unsigned long base)
|
|
||||||
{
|
{
|
||||||
struct resource res = {
|
txx9_wdt_init(TX3927_TMR_REG(2));
|
||||||
.start = base,
|
|
||||||
.end = base + 0x100 - 1,
|
|
||||||
.flags = IORESOURCE_MEM,
|
|
||||||
};
|
|
||||||
struct platform_device *dev =
|
|
||||||
platform_device_register_simple("txx9wdt", -1, &res, 1);
|
|
||||||
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int __init jmr3927_wdt_init(void)
|
|
||||||
{
|
|
||||||
return txx9_wdt_init(TX3927_TMR_REG(2));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __init jmr3927_device_init(void)
|
static void __init jmr3927_device_init(void)
|
||||||
{
|
{
|
||||||
__swizzle_addr_b = jmr3927_swizzle_addr_b;
|
__swizzle_addr_b = jmr3927_swizzle_addr_b;
|
||||||
jmr3927_rtc_init();
|
jmr3927_rtc_init();
|
||||||
jmr3927_wdt_init();
|
tx3927_wdt_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
struct txx9_board_vec jmr3927_vec __initdata = {
|
struct txx9_board_vec jmr3927_vec __initdata = {
|
||||||
|
@ -328,30 +328,11 @@ static int __init rbtx4927_ne_init(void)
|
|||||||
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Watchdog support */
|
|
||||||
|
|
||||||
static int __init txx9_wdt_init(unsigned long base)
|
|
||||||
{
|
|
||||||
struct resource res = {
|
|
||||||
.start = base,
|
|
||||||
.end = base + 0x100 - 1,
|
|
||||||
.flags = IORESOURCE_MEM,
|
|
||||||
};
|
|
||||||
struct platform_device *dev =
|
|
||||||
platform_device_register_simple("txx9wdt", -1, &res, 1);
|
|
||||||
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int __init rbtx4927_wdt_init(void)
|
|
||||||
{
|
|
||||||
return txx9_wdt_init(TX4927_TMR_REG(2) & 0xfffffffffULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void __init rbtx4927_device_init(void)
|
static void __init rbtx4927_device_init(void)
|
||||||
{
|
{
|
||||||
toshiba_rbtx4927_rtc_init();
|
toshiba_rbtx4927_rtc_init();
|
||||||
rbtx4927_ne_init();
|
rbtx4927_ne_init();
|
||||||
rbtx4927_wdt_init();
|
tx4927_wdt_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
struct txx9_board_vec rbtx4927_vec __initdata = {
|
struct txx9_board_vec rbtx4927_vec __initdata = {
|
||||||
|
@ -352,30 +352,11 @@ static void __init rbtx4938_arch_init(void)
|
|||||||
rbtx4938_spi_init();
|
rbtx4938_spi_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Watchdog support */
|
|
||||||
|
|
||||||
static int __init txx9_wdt_init(unsigned long base)
|
|
||||||
{
|
|
||||||
struct resource res = {
|
|
||||||
.start = base,
|
|
||||||
.end = base + 0x100 - 1,
|
|
||||||
.flags = IORESOURCE_MEM,
|
|
||||||
};
|
|
||||||
struct platform_device *dev =
|
|
||||||
platform_device_register_simple("txx9wdt", -1, &res, 1);
|
|
||||||
return IS_ERR(dev) ? PTR_ERR(dev) : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int __init rbtx4938_wdt_init(void)
|
|
||||||
{
|
|
||||||
return txx9_wdt_init(TX4938_TMR_REG(2) & 0xfffffffffULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void __init rbtx4938_device_init(void)
|
static void __init rbtx4938_device_init(void)
|
||||||
{
|
{
|
||||||
rbtx4938_ethaddr_init();
|
rbtx4938_ethaddr_init();
|
||||||
rbtx4938_ne_init();
|
rbtx4938_ne_init();
|
||||||
rbtx4938_wdt_init();
|
tx4938_wdt_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
struct txx9_board_vec rbtx4938_vec __initdata = {
|
struct txx9_board_vec rbtx4938_vec __initdata = {
|
||||||
|
@ -44,5 +44,6 @@ extern struct txx9_board_vec *txx9_board_vec;
|
|||||||
extern int (*txx9_irq_dispatch)(int pending);
|
extern int (*txx9_irq_dispatch)(int pending);
|
||||||
void prom_init_cmdline(void);
|
void prom_init_cmdline(void);
|
||||||
char *prom_getcmdline(void);
|
char *prom_getcmdline(void);
|
||||||
|
void txx9_wdt_init(unsigned long base);
|
||||||
|
|
||||||
#endif /* __ASM_TXX9_GENERIC_H */
|
#endif /* __ASM_TXX9_GENERIC_H */
|
||||||
|
@ -243,7 +243,7 @@ static inline void tx4927_ccfg_change(__u64 change, __u64 new)
|
|||||||
}
|
}
|
||||||
|
|
||||||
unsigned int tx4927_get_mem_size(void);
|
unsigned int tx4927_get_mem_size(void);
|
||||||
void tx4927_wdr_init(void);
|
void tx4927_wdt_init(void);
|
||||||
void tx4927_setup(void);
|
void tx4927_setup(void);
|
||||||
void tx4927_time_init(unsigned int tmrnr);
|
void tx4927_time_init(unsigned int tmrnr);
|
||||||
void tx4927_setup_serial(void);
|
void tx4927_setup_serial(void);
|
||||||
|
@ -276,7 +276,7 @@ struct tx4938_ccfg_reg {
|
|||||||
#define TX4938_EBUSC_SIZE(ch) TX4927_EBUSC_SIZE(ch)
|
#define TX4938_EBUSC_SIZE(ch) TX4927_EBUSC_SIZE(ch)
|
||||||
|
|
||||||
#define tx4938_get_mem_size() tx4927_get_mem_size()
|
#define tx4938_get_mem_size() tx4927_get_mem_size()
|
||||||
void tx4938_wdr_init(void);
|
void tx4938_wdt_init(void);
|
||||||
void tx4938_setup(void);
|
void tx4938_setup(void);
|
||||||
void tx4938_time_init(unsigned int tmrnr);
|
void tx4938_time_init(unsigned int tmrnr);
|
||||||
void tx4938_setup_serial(void);
|
void tx4938_setup_serial(void);
|
||||||
|
Loading…
Reference in New Issue
Block a user