Commit 70bfdcec authored by Paul Burton's avatar Paul Burton Committed by Ralf Baechle

MIPS: SEAD3: Reset via generic syscon-reboot driver & DT

Remove the SEAD3 implementation of _machine_restart & instead make use
of the generic syscon-reboot driver probed via device tree.
Signed-off-by: default avatarPaul Burton <paul.burton@imgtec.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: linux-mips@linux-mips.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14056/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent c764583f
...@@ -93,6 +93,18 @@ board-config@3e0000 { ...@@ -93,6 +93,18 @@ board-config@3e0000 {
}; };
}; };
fpga_regs: system-controller@1f000000 {
compatible = "mti,sead3-fpga", "syscon", "simple-mfd";
reg = <0x1f000000 0x200>;
reboot {
compatible = "syscon-reboot";
regmap = <&fpga_regs>;
offset = <0x50>;
mask = <0x4d>;
};
};
system-controller@1f000200 { system-controller@1f000200 {
compatible = "mti,sead3-cpld", "syscon", "simple-mfd"; compatible = "mti,sead3-cpld", "syscon", "simple-mfd";
reg = <0x1f000200 0x300>; reg = <0x1f000200 0x300>;
......
...@@ -80,8 +80,9 @@ CONFIG_I2C=y ...@@ -80,8 +80,9 @@ CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y CONFIG_I2C_CHARDEV=y
# CONFIG_I2C_HELPER_AUTO is not set # CONFIG_I2C_HELPER_AUTO is not set
CONFIG_SPI=y CONFIG_SPI=y
CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_SYSCON=y
CONFIG_SENSORS_ADT7475=y CONFIG_SENSORS_ADT7475=y
CONFIG_MFD_SYSCON=y
CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=y CONFIG_LCD_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y CONFIG_BACKLIGHT_CLASS_DEVICE=y
......
...@@ -13,14 +13,6 @@ ...@@ -13,14 +13,6 @@
#define SOFTRES_REG 0x1f000050 #define SOFTRES_REG 0x1f000050
#define GORESET 0x4d #define GORESET 0x4d
static void mips_machine_restart(char *command)
{
unsigned int __iomem *softres_reg =
ioremap(SOFTRES_REG, sizeof(unsigned int));
__raw_writel(GORESET, softres_reg);
}
static void mips_machine_halt(void) static void mips_machine_halt(void)
{ {
unsigned int __iomem *softres_reg = unsigned int __iomem *softres_reg =
...@@ -31,7 +23,6 @@ static void mips_machine_halt(void) ...@@ -31,7 +23,6 @@ static void mips_machine_halt(void)
static int __init mips_reboot_setup(void) static int __init mips_reboot_setup(void)
{ {
_machine_restart = mips_machine_restart;
_machine_halt = mips_machine_halt; _machine_halt = mips_machine_halt;
pm_power_off = mips_machine_halt; pm_power_off = mips_machine_halt;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment