ARM: orion: move watchdog setup to mach-orion5x
The watchdog device node is created in plat-orion/common.c but depends on the bridge address that is platform specific, so as a preparation for orion multiplatform support, we move it out of the common code into orion5x and dove. At the moment, dove does not use the watchdog, so I'm marking the function as __maybe_unused for the moment. The compiler will be able to compile out the device definition this way, and we can easily add it later. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
This commit is contained in:
parent
8005c49d9a
commit
06f3008a6a
|
@ -375,6 +375,23 @@ void __init dove_setup_cpu_wins(void)
|
||||||
DOVE_SCRATCHPAD_SIZE);
|
DOVE_SCRATCHPAD_SIZE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static struct resource orion_wdt_resource[] = {
|
||||||
|
DEFINE_RES_MEM(TIMER_PHYS_BASE, 0x04),
|
||||||
|
DEFINE_RES_MEM(RSTOUTn_MASK_PHYS, 0x04),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device orion_wdt_device = {
|
||||||
|
.name = "orion_wdt",
|
||||||
|
.id = -1,
|
||||||
|
.num_resources = ARRAY_SIZE(orion_wdt_resource),
|
||||||
|
.resource = orion_wdt_resource,
|
||||||
|
};
|
||||||
|
|
||||||
|
static void __init __maybe_unused orion_wdt_init(void)
|
||||||
|
{
|
||||||
|
platform_device_register(&orion_wdt_device);
|
||||||
|
}
|
||||||
|
|
||||||
void __init dove_init(void)
|
void __init dove_init(void)
|
||||||
{
|
{
|
||||||
pr_info("Dove 88AP510 SoC, TCLK = %d MHz.\n",
|
pr_info("Dove 88AP510 SoC, TCLK = %d MHz.\n",
|
||||||
|
|
|
@ -184,9 +184,21 @@ static void __init orion5x_crypto_init(void)
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
* Watchdog
|
* Watchdog
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
static struct resource orion_wdt_resource[] = {
|
||||||
|
DEFINE_RES_MEM(TIMER_PHYS_BASE, 0x04),
|
||||||
|
DEFINE_RES_MEM(RSTOUTn_MASK_PHYS, 0x04),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device orion_wdt_device = {
|
||||||
|
.name = "orion_wdt",
|
||||||
|
.id = -1,
|
||||||
|
.num_resources = ARRAY_SIZE(orion_wdt_resource),
|
||||||
|
.resource = orion_wdt_resource,
|
||||||
|
};
|
||||||
|
|
||||||
static void __init orion5x_wdt_init(void)
|
static void __init orion5x_wdt_init(void)
|
||||||
{
|
{
|
||||||
orion_wdt_init();
|
platform_device_register(&orion_wdt_device);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
#include <net/dsa.h>
|
#include <net/dsa.h>
|
||||||
#include <linux/platform_data/dma-mv_xor.h>
|
#include <linux/platform_data/dma-mv_xor.h>
|
||||||
#include <linux/platform_data/usb-ehci-orion.h>
|
#include <linux/platform_data/usb-ehci-orion.h>
|
||||||
#include <mach/bridge-regs.h>
|
|
||||||
#include <plat/common.h>
|
#include <plat/common.h>
|
||||||
|
|
||||||
/* Create a clkdev entry for a given device/clk */
|
/* Create a clkdev entry for a given device/clk */
|
||||||
|
@ -588,26 +587,6 @@ void __init orion_spi_1_init(unsigned long mapbase)
|
||||||
platform_device_register(&orion_spi_1);
|
platform_device_register(&orion_spi_1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************
|
|
||||||
* Watchdog
|
|
||||||
****************************************************************************/
|
|
||||||
static struct resource orion_wdt_resource[] = {
|
|
||||||
DEFINE_RES_MEM(TIMER_PHYS_BASE, 0x04),
|
|
||||||
DEFINE_RES_MEM(RSTOUTn_MASK_PHYS, 0x04),
|
|
||||||
};
|
|
||||||
|
|
||||||
static struct platform_device orion_wdt_device = {
|
|
||||||
.name = "orion_wdt",
|
|
||||||
.id = -1,
|
|
||||||
.num_resources = ARRAY_SIZE(orion_wdt_resource),
|
|
||||||
.resource = orion_wdt_resource,
|
|
||||||
};
|
|
||||||
|
|
||||||
void __init orion_wdt_init(void)
|
|
||||||
{
|
|
||||||
platform_device_register(&orion_wdt_device);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
* XOR
|
* XOR
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
|
@ -75,8 +75,6 @@ void __init orion_spi_init(unsigned long mapbase);
|
||||||
|
|
||||||
void __init orion_spi_1_init(unsigned long mapbase);
|
void __init orion_spi_1_init(unsigned long mapbase);
|
||||||
|
|
||||||
void __init orion_wdt_init(void);
|
|
||||||
|
|
||||||
void __init orion_xor0_init(unsigned long mapbase_low,
|
void __init orion_xor0_init(unsigned long mapbase_low,
|
||||||
unsigned long mapbase_high,
|
unsigned long mapbase_high,
|
||||||
unsigned long irq_0,
|
unsigned long irq_0,
|
||||||
|
|
Loading…
Reference in New Issue