summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@armlinux.org.uk>2016-08-21 00:09:10 +0100
committerRussell King <rmk+kernel@armlinux.org.uk>2020-10-12 21:53:19 +0100
commit5d855a627de59e8a1cce8735d964c004a9cf81b6 (patch)
tree62e9d1300e962cd35feed7a0538fd9b1bde65871
parent736263d8aa20c99d5f40f129e4c9c28ddb3f95ef (diff)
assabet hack
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
-rw-r--r--arch/arm/mach-sa1100/assabet.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/arch/arm/mach-sa1100/assabet.c b/arch/arm/mach-sa1100/assabet.c
index 118b23d524b2..c261ff2d1cd3 100644
--- a/arch/arm/mach-sa1100/assabet.c
+++ b/arch/arm/mach-sa1100/assabet.c
@@ -374,7 +374,7 @@ static void assabet_lcd_set_visual(u32 visual)
#ifndef ASSABET_PAL_VIDEO
static void assabet_lcd_backlight_power(int on)
{
- if (on)
+ if (on && 0)
ASSABET_BCR_set(ASSABET_BCR_LIGHT_ON);
else
ASSABET_BCR_clear(ASSABET_BCR_LIGHT_ON);
@@ -387,9 +387,10 @@ static void assabet_lcd_backlight_power(int on)
*/
static void assabet_lcd_power(int on)
{
- if (on) {
+ if (on && 0) {
+ msleep(500);
ASSABET_BCR_set(ASSABET_BCR_LCD_ON);
- udelay(500);
+ msleep(500);
} else
ASSABET_BCR_clear(ASSABET_BCR_LCD_ON);
}
@@ -580,8 +581,8 @@ static void __init assabet_init(void)
* Set up registers for sleep mode.
*/
PWER = PWER_GPIO0;
- PGSR = 0;
- PCFR = 0;
+ PGSR = GPIO_GPIO(17);
+ PCFR = PCFR_OPDE | PCFR_FP;
PSDR = 0;
PPDR |= PPC_TXD3 | PPC_TXD1;
PPSR |= PPC_TXD3 | PPC_TXD1;
@@ -674,6 +675,11 @@ static void __init get_assabet_scr(void)
SCR_value = scr;
}
+static char neponset_cmdline[] __initdata = "console=ttySA0 "
+"cpufreq=221200 rw root=/dev/mtdblock2 "
+"mtdparts=sa1100:512K(boot),1M(kernel),2560K(initrd),4M(root) "
+"load_ramdisk=1 prompt_ramdisk=0 mem=32M noinitrd initrd=0xc0800000,3M profile=2";
+
static void __init
fixup_assabet(struct tag *tags, char **cmdline)
{
@@ -681,8 +687,10 @@ fixup_assabet(struct tag *tags, char **cmdline)
map_sa1100_gpio_regs();
get_assabet_scr();
- if (machine_has_neponset())
+ if (machine_has_neponset()) {
printk("Neponset expansion board detected\n");
+ *cmdline = neponset_cmdline;
+ }
}