Skip to content

Commit

Permalink
ARM: restart: remove s3c24xx restart handler
Browse files Browse the repository at this point in the history
Remove the s3c24xx restart handler, which is trying to work around
a chip bug by keeping caches on but flushed.  As we now only disable
caches when performing a soft reboot, there doesn't need to be a
work-around to do that.

Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Russell King committed Jan 5, 2012
1 parent 4045407 commit 8390918
Showing 1 changed file with 0 additions and 23 deletions.
23 changes: 0 additions & 23 deletions arch/arm/plat-s3c24xx/cpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -192,27 +192,6 @@ static unsigned long s3c24xx_read_idcode_v4(void)
return __raw_readl(S3C2410_GSTATUS1);
}

/* Hook for arm_pm_restart to ensure we execute the reset code
* with the caches enabled. It seems at least the S3C2440 has a problem
* resetting if there is bus activity interrupted by the reset.
*/
static void s3c24xx_pm_restart(char mode, const char *cmd)
{
if (mode != 's') {
unsigned long flags;

local_irq_save(flags);
__cpuc_flush_kern_all();
__cpuc_flush_user_all();

arch_reset(mode, cmd);
local_irq_restore(flags);
}

/* fallback, or unhandled */
arm_machine_restart(mode, cmd);
}

void __init s3c24xx_init_io(struct map_desc *mach_desc, int size)
{
/* initialise the io descriptors we need for initialisation */
Expand All @@ -226,7 +205,5 @@ void __init s3c24xx_init_io(struct map_desc *mach_desc, int size)
}
s3c24xx_init_cpu();

arm_pm_restart = s3c24xx_pm_restart;

s3c_init_cpu(samsung_cpu_id, cpu_ids, ARRAY_SIZE(cpu_ids));
}

0 comments on commit 8390918

Please sign in to comment.