Commit b44c350d authored by Russell King's avatar Russell King

ARM: restart: allow platforms more flexibility specifying restart mode

Change 'soft_reboot' into a more generic 'restart_mode' variable,
allowing the default restart mode to be specified.
Acked-by: default avatarNicolas Pitre <nico@linaro.org>
Acked-by: default avatarWill Deacon <will.deacon@arm.com>
Acked-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent a528721d
...@@ -30,10 +30,10 @@ struct machine_desc { ...@@ -30,10 +30,10 @@ struct machine_desc {
unsigned int video_start; /* start of video RAM */ unsigned int video_start; /* start of video RAM */
unsigned int video_end; /* end of video RAM */ unsigned int video_end; /* end of video RAM */
unsigned int reserve_lp0 :1; /* never has lp0 */ unsigned char reserve_lp0 :1; /* never has lp0 */
unsigned int reserve_lp1 :1; /* never has lp1 */ unsigned char reserve_lp1 :1; /* never has lp1 */
unsigned int reserve_lp2 :1; /* never has lp2 */ unsigned char reserve_lp2 :1; /* never has lp2 */
unsigned int soft_reboot :1; /* soft reboot */ char restart_mode; /* default restart mode */
void (*fixup)(struct tag *, char **, void (*fixup)(struct tag *, char **,
struct meminfo *); struct meminfo *);
void (*reserve)(void);/* reserve mem blocks */ void (*reserve)(void);/* reserve mem blocks */
......
...@@ -902,8 +902,8 @@ void __init setup_arch(char **cmdline_p) ...@@ -902,8 +902,8 @@ void __init setup_arch(char **cmdline_p)
machine_desc = mdesc; machine_desc = mdesc;
machine_name = mdesc->name; machine_name = mdesc->name;
if (mdesc->soft_reboot) if (mdesc->restart_mode)
reboot_setup("s"); reboot_setup(&mdesc->restart_mode);
init_mm.start_code = (unsigned long) _text; init_mm.start_code = (unsigned long) _text;
init_mm.end_code = (unsigned long) _etext; init_mm.end_code = (unsigned long) _etext;
......
...@@ -283,7 +283,7 @@ MACHINE_START(EBSA110, "EBSA110") ...@@ -283,7 +283,7 @@ MACHINE_START(EBSA110, "EBSA110")
.atag_offset = 0x400, .atag_offset = 0x400,
.reserve_lp0 = 1, .reserve_lp0 = 1,
.reserve_lp2 = 1, .reserve_lp2 = 1,
.soft_reboot = 1, .restart_mode = 's',
.map_io = ebsa110_map_io, .map_io = ebsa110_map_io,
.init_irq = ebsa110_init_irq, .init_irq = ebsa110_init_irq,
.timer = &ebsa110_timer, .timer = &ebsa110_timer,
......
...@@ -86,7 +86,7 @@ fixup_cats(struct tag *tags, char **cmdline, struct meminfo *mi) ...@@ -86,7 +86,7 @@ fixup_cats(struct tag *tags, char **cmdline, struct meminfo *mi)
MACHINE_START(CATS, "Chalice-CATS") MACHINE_START(CATS, "Chalice-CATS")
/* Maintainer: Philip Blundell */ /* Maintainer: Philip Blundell */
.atag_offset = 0x100, .atag_offset = 0x100,
.soft_reboot = 1, .restart_mode = 's',
.fixup = fixup_cats, .fixup = fixup_cats,
.map_io = footbridge_map_io, .map_io = footbridge_map_io,
.init_irq = footbridge_init_irq, .init_irq = footbridge_init_irq,
......
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