spitz.c (251f39fe42dae863bd24e30864e6b66076ba076d) spitz.c (271a74fc875210d3dfcc03d557fb5d86d3990a0f)
1/*
2 * Support for Sharp SL-Cxx00 Series of PDAs
3 * Models: SL-C3000 (Spitz), SL-C1000 (Akita) and SL-C3100 (Borzoi)
4 *
5 * Copyright (c) 2005 Richard Purdie
6 *
7 * Based on Sharp's 2.4 kernel patches/lubbock.c
8 *

--- 912 unchanged lines hidden (view full) ---

921static inline void spitz_i2c_init(void) {}
922#endif
923
924/******************************************************************************
925 * Machine init
926 ******************************************************************************/
927static void spitz_poweroff(void)
928{
1/*
2 * Support for Sharp SL-Cxx00 Series of PDAs
3 * Models: SL-C3000 (Spitz), SL-C1000 (Akita) and SL-C3100 (Borzoi)
4 *
5 * Copyright (c) 2005 Richard Purdie
6 *
7 * Based on Sharp's 2.4 kernel patches/lubbock.c
8 *

--- 912 unchanged lines hidden (view full) ---

921static inline void spitz_i2c_init(void) {}
922#endif
923
924/******************************************************************************
925 * Machine init
926 ******************************************************************************/
927static void spitz_poweroff(void)
928{
929 arm_machine_restart('g', NULL);
929 pxa_restart('g', NULL);
930}
931
932static void spitz_restart(char mode, const char *cmd)
933{
934 uint32_t msc0 = __raw_readl(MSC0);
935 /* Bootloader magic for a reboot */
936 if ((msc0 & 0xffff0000) == 0x7ff00000)
937 __raw_writel((msc0 & 0xffff) | 0x7ee00000, MSC0);
938
939 spitz_poweroff();
940}
941
942static void __init spitz_init(void)
943{
944 init_gpio_reset(SPITZ_GPIO_ON_RESET, 1, 0);
945 pm_power_off = spitz_poweroff;
930}
931
932static void spitz_restart(char mode, const char *cmd)
933{
934 uint32_t msc0 = __raw_readl(MSC0);
935 /* Bootloader magic for a reboot */
936 if ((msc0 & 0xffff0000) == 0x7ff00000)
937 __raw_writel((msc0 & 0xffff) | 0x7ee00000, MSC0);
938
939 spitz_poweroff();
940}
941
942static void __init spitz_init(void)
943{
944 init_gpio_reset(SPITZ_GPIO_ON_RESET, 1, 0);
945 pm_power_off = spitz_poweroff;
946 arm_pm_restart = spitz_restart;
947
948 PMCR = 0x00;
949
950 /* Stop 3.6MHz and drive HIGH to PCMCIA and CS */
951 PCFR |= PCFR_OPDE;
952
953 pxa2xx_mfp_config(ARRAY_AND_SIZE(spitz_pin_config));
954

--- 22 unchanged lines hidden (view full) ---

977 sharpsl_save_param();
978 mi->nr_banks = 1;
979 mi->bank[0].start = 0xa0000000;
980 mi->bank[0].size = (64*1024*1024);
981}
982
983#ifdef CONFIG_MACH_SPITZ
984MACHINE_START(SPITZ, "SHARP Spitz")
946
947 PMCR = 0x00;
948
949 /* Stop 3.6MHz and drive HIGH to PCMCIA and CS */
950 PCFR |= PCFR_OPDE;
951
952 pxa2xx_mfp_config(ARRAY_AND_SIZE(spitz_pin_config));
953

--- 22 unchanged lines hidden (view full) ---

976 sharpsl_save_param();
977 mi->nr_banks = 1;
978 mi->bank[0].start = 0xa0000000;
979 mi->bank[0].size = (64*1024*1024);
980}
981
982#ifdef CONFIG_MACH_SPITZ
983MACHINE_START(SPITZ, "SHARP Spitz")
984 .restart_mode = 'g',
985 .fixup = spitz_fixup,
986 .map_io = pxa27x_map_io,
987 .init_irq = pxa27x_init_irq,
988 .handle_irq = pxa27x_handle_irq,
989 .init_machine = spitz_init,
990 .timer = &pxa_timer,
985 .fixup = spitz_fixup,
986 .map_io = pxa27x_map_io,
987 .init_irq = pxa27x_init_irq,
988 .handle_irq = pxa27x_handle_irq,
989 .init_machine = spitz_init,
990 .timer = &pxa_timer,
991 .restart = spitz_restart,
991MACHINE_END
992#endif
993
994#ifdef CONFIG_MACH_BORZOI
995MACHINE_START(BORZOI, "SHARP Borzoi")
992MACHINE_END
993#endif
994
995#ifdef CONFIG_MACH_BORZOI
996MACHINE_START(BORZOI, "SHARP Borzoi")
997 .restart_mode = 'g',
996 .fixup = spitz_fixup,
997 .map_io = pxa27x_map_io,
998 .init_irq = pxa27x_init_irq,
999 .handle_irq = pxa27x_handle_irq,
1000 .init_machine = spitz_init,
1001 .timer = &pxa_timer,
998 .fixup = spitz_fixup,
999 .map_io = pxa27x_map_io,
1000 .init_irq = pxa27x_init_irq,
1001 .handle_irq = pxa27x_handle_irq,
1002 .init_machine = spitz_init,
1003 .timer = &pxa_timer,
1004 .restart = spitz_restart,
1002MACHINE_END
1003#endif
1004
1005#ifdef CONFIG_MACH_AKITA
1006MACHINE_START(AKITA, "SHARP Akita")
1005MACHINE_END
1006#endif
1007
1008#ifdef CONFIG_MACH_AKITA
1009MACHINE_START(AKITA, "SHARP Akita")
1010 .restart_mode = 'g',
1007 .fixup = spitz_fixup,
1008 .map_io = pxa27x_map_io,
1009 .init_irq = pxa27x_init_irq,
1010 .handle_irq = pxa27x_handle_irq,
1011 .init_machine = spitz_init,
1012 .timer = &pxa_timer,
1011 .fixup = spitz_fixup,
1012 .map_io = pxa27x_map_io,
1013 .init_irq = pxa27x_init_irq,
1014 .handle_irq = pxa27x_handle_irq,
1015 .init_machine = spitz_init,
1016 .timer = &pxa_timer,
1017 .restart = spitz_restart,
1013MACHINE_END
1014#endif
1018MACHINE_END
1019#endif