Commit 5c105f7d authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://bk.arm.linux.org.uk

into home.transmeta.com:/home/torvalds/v2.5/linux
parents 37d33e67 4ae2eb60
......@@ -22,7 +22,6 @@ unsigned int __machine_arch_type;
#include <asm/uaccess.h>
#include <asm/arch/uncompress.h>
#include <asm/proc/uncompress.h>
#ifdef STANDALONE_DEBUG
#define puts printf
......@@ -291,7 +290,6 @@ decompress_kernel(ulg output_start, ulg free_mem_ptr_p, ulg free_mem_ptr_end_p,
free_mem_ptr_end = free_mem_ptr_end_p;
__machine_arch_type = arch_id;
proc_decomp_setup();
arch_decomp_setup();
makecrc();
......
......@@ -63,11 +63,6 @@ dep_bool ' ADS Bitsy' CONFIG_SA1100_ADSBITSY $CONFIG_ARCH_SA1100
dep_bool ' Brutus' CONFIG_SA1100_BRUTUS $CONFIG_ARCH_SA1100
dep_bool ' CerfBoard' CONFIG_SA1100_CERF $CONFIG_ARCH_SA1100
if [ "$CONFIG_SA1100_CERF" = "y" ]; then
choice 'Cerf RAM available' \
"8MB CONFIG_SA1100_CERF_8MB \
16MB CONFIG_SA1100_CERF_16MB \
32MB CONFIG_SA1100_CERF_32MB \
64MB CONFIG_SA1100_CERF_64MB" CerfRam
choice 'Cerf Flash available' \
"8MB CONFIG_SA1100_CERF_FLASH_8MB \
16MB CONFIG_SA1100_CERF_FLASH_16MB \
......@@ -453,7 +448,9 @@ else
fi
comment 'At least one math emulation must be selected'
tristate 'NWFPE math emulation' CONFIG_FPE_NWFPE
dep_tristate 'FastFPE math emulation (experimental)' CONFIG_FPE_FASTFPE $CONFIG_EXPERIMENTAL
if [ "$CONFIG_CPU_26" = "n" -a "$CONFIG_CPU_32v3" = "n" ]; then
dep_tristate 'FastFPE math emulation (experimental)' CONFIG_FPE_FASTFPE $CONFIG_EXPERIMENTAL
fi
choice 'Kernel core (/proc/kcore) format' \
"ELF CONFIG_KCORE_ELF \
A.OUT CONFIG_KCORE_AOUT" ELF
......@@ -494,15 +491,10 @@ if [ "$CONFIG_ARCH_NETWINDER" = "y" -o \
fi
fi
if [ "$CONFIG_ARCH_SA1100" = "y" ]; then
if [ "$CONFIG_CPU_32" = "y" ]; then
define_bool CONFIG_ALIGNMENT_TRAP y
else
if [ "$CONFIG_CPU_32" = "y" -a \
"$CONFIG_ARCH_EBSA110" != "y" ]; then
bool 'Mis-alignment trap handler' CONFIG_ALIGNMENT_TRAP
else
define_bool CONFIG_ALIGNMENT_TRAP n
fi
define_bool CONFIG_ALIGNMENT_TRAP n
fi
endmenu
......@@ -510,6 +502,8 @@ source drivers/parport/Config.in
if [ "$CONFIG_ALIGNMENT_TRAP" = "y" ]; then
source drivers/mtd/Config.in
else
define_bool CONFIG_MTD n
fi
source drivers/pnp/Config.in
......
......@@ -147,7 +147,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/mtdblock1"
CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/mtdblock1 mem=32M initrd=0xc0800000,3M"
CONFIG_ALIGNMENT_TRAP=y
#
......@@ -236,7 +236,7 @@ CONFIG_MTD_ADI_EVB=y
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4192
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
#
......
......@@ -139,7 +139,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="ip=off"
CONFIG_CMDLINE="ip=off mem=32M root=/dev/ram ramdisk=8192 initrd=0xc0800000,4M"
# CONFIG_PFS168_CMDLINE is not set
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......
This diff is collapsed.
......@@ -157,7 +157,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_PM=y
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE=""
CONFIG_CMDLINE="mem=32M console=ttySA0,38400n8 initrd=0xc0800000,3M root=/dev/ram"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......@@ -834,6 +834,13 @@ CONFIG_MCP_UCB1200=y
CONFIG_MCP_UCB1200_AUDIO=m
CONFIG_MCP_UCB1200_TS=y
#
# Console Switches
#
CONFIG_SWITCHES=y
CONFIG_SWITCHES_SA1100=y
CONFIG_SWITCHES_UCB1X00=y
#
# USB support
#
......
......@@ -527,7 +527,6 @@ CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set
CONFIG_BLK_DEV_IDEFLOPPY=m
CONFIG_BLK_DEV_IDESCSI=m
# CONFIG_IDE_TASK_IOCTL is not set
#
# IDE chipset support/bugfixes
......
......@@ -76,7 +76,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="keepinitrd"
CONFIG_CMDLINE="mem=4M@0xc0000000 mem=4M@0xc8000000 mem=4M@0xd0000000 mem=4M@0xd8000000 keepinitrd root=/dev/ram ramdisk=8192 initrd=0xd8000000,3M"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......
......@@ -65,10 +65,6 @@ CONFIG_ARCH_SA1100=y
# CONFIG_SA1100_ADSBITSY is not set
# CONFIG_SA1100_BRUTUS is not set
CONFIG_SA1100_CERF=y
# CONFIG_SA1100_CERF_8MB is not set
# CONFIG_SA1100_CERF_16MB is not set
CONFIG_SA1100_CERF_32MB=y
# CONFIG_SA1100_CERF_64MB is not set
# CONFIG_SA1100_CERF_FLASH_8MB is not set
CONFIG_SA1100_CERF_FLASH_16MB=y
# CONFIG_SA1100_CERF_FLASH_32MB is not set
......@@ -163,7 +159,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttySA0 root=1f03 rw"
CONFIG_CMDLINE="console=ttySA0 root=/dev/mtdblock3 rw mem=32M"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
......
......@@ -65,10 +65,6 @@ CONFIG_ARCH_SA1100=y
# CONFIG_SA1100_ADSBITSY is not set
# CONFIG_SA1100_BRUTUS is not set
CONFIG_SA1100_CERF=y
# CONFIG_SA1100_CERF_8MB is not set
# CONFIG_SA1100_CERF_16MB is not set
# CONFIG_SA1100_CERF_32MB is not set
CONFIG_SA1100_CERF_64MB=y
# CONFIG_SA1100_CERF_FLASH_8MB is not set
# CONFIG_SA1100_CERF_FLASH_16MB is not set
CONFIG_SA1100_CERF_FLASH_32MB=y
......@@ -163,7 +159,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttySA0 cpufreq_max=221200 root=1f03 rw"
CONFIG_CMDLINE="console=ttySA0 cpufreq_max=221200 root=/dev/mtdblock3 rw mem=64M"
# CONFIG_PFS168_CMDLINE is not set
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......
......@@ -65,10 +65,6 @@ CONFIG_ARCH_SA1100=y
# CONFIG_SA1100_ADSBITSY is not set
# CONFIG_SA1100_BRUTUS is not set
CONFIG_SA1100_CERF=y
# CONFIG_SA1100_CERF_8MB is not set
# CONFIG_SA1100_CERF_16MB is not set
CONFIG_SA1100_CERF_32MB=y
# CONFIG_SA1100_CERF_64MB is not set
# CONFIG_SA1100_CERF_FLASH_8MB is not set
CONFIG_SA1100_CERF_FLASH_16MB=y
# CONFIG_SA1100_CERF_FLASH_32MB is not set
......@@ -163,7 +159,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttySA0 root=1f03 rw"
CONFIG_CMDLINE="console=ttySA0 root=/dev/mtdblock3 rw mem=32M"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
......
......@@ -56,7 +56,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_ARTHUR is not set
# CONFIG_PARPORT is not set
CONFIG_CMDLINE=""
CONFIG_CMDLINE="mem=4M@0xc0000000 mem=4M@0xc8000000 root=/dev/hda1 initrd=0xd00b0000,320K"
#
# Plug and Play support
......
......@@ -156,7 +156,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttyUA0,38400 root=/dev/mtdblock0 rw"
CONFIG_CMDLINE="mem=32M console=ttyUA0,38400 root=/dev/mtdblock0 rw"
CONFIG_ALIGNMENT_TRAP=y
#
......
......@@ -162,7 +162,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_PM=y
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE=""
CONFIG_CMDLINE="mem=64M root=/dev/ram initrd=0xc0800000,3M"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......@@ -263,7 +263,7 @@ CONFIG_MTD_SA1100=y
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
#
......
......@@ -131,7 +131,7 @@ CONFIG_BINFMT_MISC=m
CONFIG_PM=y
CONFIG_APM=y
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="mem=32M"
CONFIG_CMDLINE="mem=32M root=/dev/ram initrd=0xc0800000,3M"
# CONFIG_PFS168_CMDLINE is not set
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......@@ -202,7 +202,7 @@ CONFIG_MTD_BLOCK=y
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
#
......
......@@ -131,7 +131,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_PM=y
CONFIG_APM=y
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="noinitrd console=ttySA0 init=/linuxrc root=1f04 mem=32m"
CONFIG_CMDLINE="noinitrd console=ttySA0 init=/linuxrc root=/dev/mtdblock4 mem=32m"
# CONFIG_PFS168_CMDLINE is not set
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......
......@@ -146,7 +146,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="ip=off"
CONFIG_CMDLINE="ip=off mem=16M@0xc0000000 mem=16M@0xc8000000 root=/dev/ram initrd=0xc0800000,4M"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
......
......@@ -139,7 +139,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="ip=off"
CONFIG_CMDLINE="ip=off mem=16M@0xc0000000 mem=16M@0xc8000000 root=/dev/ram initrd=0xc0800000,4M"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
......
......@@ -96,7 +96,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="keepinitrd"
CONFIG_CMDLINE="keepinitrd mem=32480K root=/dev/ram initrd=0xc0800000,8M"
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......@@ -167,7 +167,7 @@ CONFIG_MTD_BLOCK=y
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
# CONFIG_BLK_DEV_FLASH is not set
......
......@@ -161,7 +161,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttyS0,115200 ip=bootp"
CONFIG_CMDLINE="console=ttyS0,115200 ip=bootp mem=32M root=/dev/nfs initrd=0xc0800000,4M"
CONFIG_ALIGNMENT_TRAP=y
#
......
......@@ -158,7 +158,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_PM=y
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="keepinitrd"
CONFIG_CMDLINE="keepinitrd mem=32M"
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......
This diff is collapsed.
......@@ -820,6 +820,13 @@ CONFIG_MCP_UCB1200=y
CONFIG_MCP_UCB1200_AUDIO=m
CONFIG_MCP_UCB1200_TS=y
#
# Console Switches
#
CONFIG_SWITCHES=y
CONFIG_SWITCHES_SA1100=y
CONFIG_SWITCHES_UCB1X00=y
#
# USB support
#
......
......@@ -100,7 +100,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="keepinitrd"
CONFIG_CMDLINE="keepinitrd mem=16M root=/dev/ram ramdisk=8192 initrd=0xd0000000,4M"
# CONFIG_LEDS is not set
# CONFIG_ALIGNMENT_TRAP is not set
......
......@@ -137,7 +137,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="keepinitrd"
CONFIG_CMDLINE="keepinitrd mem=128M root=/dev/ram initrd=0xc0800000,3M"
# CONFIG_PFS168_CMDLINE is not set
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......@@ -249,7 +249,7 @@ CONFIG_MTD_SA1100=y
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_SIZE=16384
CONFIG_BLK_DEV_INITRD=y
#
......
......@@ -140,8 +140,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="root=/dev/nfs"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_CMDLINE="root=/dev/nfs mem=16M"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......
......@@ -140,8 +140,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="root=/dev/nfs"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_CMDLINE="root=/dev/nfs mem=16M"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......
......@@ -140,8 +140,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="root=/dev/nfs"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_CMDLINE="root=/dev/nfs mem=16M"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......
......@@ -140,8 +140,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_PM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="root=/dev/nfs"
# CONFIG_PFS168_CMDLINE is not set
CONFIG_CMDLINE="root=/dev/nfs mem=16M"
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
......
......@@ -126,7 +126,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_PM is not set
# CONFIG_APM is not set
# CONFIG_ARTHUR is not set
CONFIG_CMDLINE="console=ttySA0,9600"
CONFIG_CMDLINE="console=ttySA0,9600 mem=16M@0xc0000000 mem=16M@0xc8000000 root=/dev/ram initrd=0xc0400000,4M"
# CONFIG_PFS168_CMDLINE is not set
# CONFIG_LEDS is not set
CONFIG_ALIGNMENT_TRAP=y
......@@ -213,7 +213,7 @@ CONFIG_ALIGNMENT_TRAP=y
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
#
......
......@@ -60,7 +60,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_ARTHUR is not set
# CONFIG_PARPORT is not set
CONFIG_CMDLINE=""
CONFIG_CMDLINE="mem=64M@0xc0000000 mem=64M@0xc8000000 root=/dev/mtdblock2"
#
# Plug and Play support
......
#
# Automatically generated make config: don't edit
#
CONFIG_ARM=y
#
# System and processor type
#
# CONFIG_ARCH_ARC is not set
# CONFIG_ARCH_A5K is not set
# CONFIG_ARCH_RPC is not set
# CONFIG_ARCH_EBSA110 is not set
# CONFIG_FOOTBRIDGE is not set
CONFIG_ARCH_SA1100=y
CONFIG_CPU_SA1100=y
# CONFIG_SA1100_BRUTUS is not set
# CONFIG_SA1100_EMPEG is not set
# CONFIG_SA1100_ITSY is not set
# CONFIG_SA1100_PLEB is not set
CONFIG_SA1100_VICTOR=y
# CONFIG_VICTOR_BOARD1 is not set
# CONFIG_ARCH_ACORN is not set
# CONFIG_ISA_DMA is not set
CONFIG_CPU_32=y
# CONFIG_CPU_26 is not set
# CONFIG_CPU_ARM2 is not set
# CONFIG_CPU_ARM3 is not set
# CONFIG_CPU_ARM6 is not set
# CONFIG_CPU_ARM7 is not set
CONFIG_CPU_SA110=y
#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
# CONFIG_ALIGNMENT_TRAP is not set
# CONFIG_TEXT_SECTIONS is not set
#
# Loadable module support
#
CONFIG_MODULES=y
# CONFIG_MODVERSIONS is not set
# CONFIG_KMOD is not set
#
# General setup
#
CONFIG_ZBOOT_ROM=y
CONFIG_ZBOOT_ROM_TEXT=0x00002000
CONFIG_ZBOOT_ROM_BSS=0xc0200000
# CONFIG_NET is not set
# CONFIG_SYSVIPC is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_SYSCTL is not set
CONFIG_NWFPE=y
# CONFIG_BINFMT_AOUT is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_ARTHUR is not set
# CONFIG_PARPORT is not set
CONFIG_CMDLINE=""
#
# Plug and Play support
#
# CONFIG_PNP is not set
#
# Block devices
#
# CONFIG_BLK_DEV_FD is not set
CONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_IDEDISK is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_IDE_CHIPSETS is not set
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_MD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_BLK_DEV_XD is not set
CONFIG_PARIDE_PARPORT=y
# CONFIG_PARIDE is not set
# CONFIG_BLK_DEV_HD is not set
#
# Character devices
#
# CONFIG_VT is not set
CONFIG_SERIAL_SA1100=y
CONFIG_SERIAL_SA1100_CONSOLE=y
# CONFIG_SERIAL is not set
# CONFIG_SERIAL_EXTENDED is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_UNIX98_PTYS is not set
# CONFIG_MOUSE is not set
# CONFIG_QIC02_TAPE is not set
# CONFIG_WATCHDOG is not set
# CONFIG_NVRAM is not set
# CONFIG_RTC is not set
#
# Video For Linux
#
# CONFIG_VIDEO_DEV is not set
#
# Joystick support
#
# CONFIG_JOYSTICK is not set
# CONFIG_DTLK is not set
#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
#
# SCSI support
#
# CONFIG_SCSI is not set
#
# Filesystems
#
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_FAT_FS is not set
# CONFIG_MSDOS_FS is not set
# CONFIG_UMSDOS_FS is not set
# CONFIG_VFAT_FS is not set
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
# CONFIG_MINIX_FS is not set
# CONFIG_NTFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_PROC_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_EXT2_FS=y
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
#
# Partition Types
#
# CONFIG_OSF_PARTITION is not set
# CONFIG_MAC_PARTITION is not set
# CONFIG_MSDOS_PARTITION is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_ACORN_PARTITION is not set
CONFIG_NLS=y
#
# Native Language Support
#
CONFIG_NLS_CODEPAGE_437=y
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=y
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
CONFIG_NLS_ISO8859_1=y
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
#
# Kernel hacking
#
CONFIG_FRAME_POINTER=y
CONFIG_DEBUG_ERRORS=y
CONFIG_DEBUG_USER=y
# CONFIG_DEBUG_INFO is not set
# CONFIG_MAGIC_SYSRQ is not set
# CONFIG_DEBUG_LL is not set
......@@ -958,20 +958,15 @@ ENTRY(fp_enter)
.text
/*
* Register switch for ARMv3 and ARMv4 processors
* r0 = previous thread_info, r1 = next thread_info, return previous.
* r0 = previous thread_info, r1 = next thread_info
* previous and next are guaranteed not to be the same.
*/
ENTRY(__switch_to)
stmfd sp!, {r4 - sl, fp, lr} @ Store most regs on stack
mrs ip, cpsr
str ip, [sp, #-4]! @ Save cpsr_SVC
str sp, [r0, #TI_CPU_SAVE] @ Save sp_SVC
ldr sp, [r1, #TI_CPU_SAVE] @ Get saved sp_SVC
ldr r2, [r1, #TI_CPU_DOMAIN]
ldr ip, [sp], #4
add ip, r0, #TI_CPU_SAVE
ldr r2, [r1, #TI_CPU_DOMAIN]!
stmia ip, {r4 - sl, fp, sp, lr} @ Store most regs on stack
mcr p15, 0, r2, c3, c0 @ Set domain register
msr spsr, ip @ Save tasks CPSR into SPSR for this return
ldmfd sp!, {r4 - sl, fp, pc}^ @ Load all regs saved previously
ldmib r1, {r4 - sl, fp, sp, pc} @ Load all regs saved previously
.section ".text.init",#alloc,#execinstr
/*
......
......@@ -185,7 +185,7 @@ void show_regs(struct pt_regs * regs)
get_fs() == get_ds() ? "kernel" : "user");
#if defined(CONFIG_CPU_32)
{
int ctrl, transbase, dac;
unsigned int ctrl, transbase, dac;
__asm__ (
" mrc p15, 0, %0, c1, c0\n"
" mrc p15, 0, %1, c2, c0\n"
......@@ -310,23 +310,21 @@ void release_thread(struct task_struct *dead_task)
asmlinkage void ret_from_fork(void) __asm__("ret_from_fork");
int copy_thread(int nr, unsigned long clone_flags, unsigned long esp,
unsigned long unused,
struct task_struct * p, struct pt_regs * regs)
int
copy_thread(int nr, unsigned long clone_flags, unsigned long esp,
unsigned long unused, struct task_struct *p, struct pt_regs *regs)
{
struct thread_info *thread = p->thread_info;
struct pt_regs *childregs;
struct cpu_context_save *save;
childregs = ((struct pt_regs *)((unsigned long)p->thread_info + THREAD_SIZE)) - 1;
childregs = ((struct pt_regs *)((unsigned long)thread + THREAD_SIZE - 8)) - 1;
*childregs = *regs;
childregs->ARM_r0 = 0;
childregs->ARM_sp = esp;
save = ((struct cpu_context_save *)(childregs)) - 1;
*save = INIT_CSS;
save->pc |= (unsigned long)ret_from_fork;
p->thread_info->cpu_context = save;
memset(&thread->cpu_context, 0, sizeof(struct cpu_context_save));
thread->cpu_context.sp = (unsigned long)childregs;
thread->cpu_context.pc = (unsigned long)ret_from_fork;
return 0;
}
......
......@@ -341,7 +341,7 @@ parse_cmdline(struct meminfo *mi, char **cmdline_p, char *from)
*cmdline_p = command_line;
}
void __init
static void __init
setup_ramdisk(int doload, int prompt, int image_start, unsigned int rd_sz)
{
#ifdef CONFIG_BLK_DEV_RAM
......@@ -359,7 +359,7 @@ setup_ramdisk(int doload, int prompt, int image_start, unsigned int rd_sz)
/*
* initial ram disk
*/
void __init setup_initrd(unsigned int start, unsigned int size)
static void __init setup_initrd(unsigned int start, unsigned int size)
{
#ifdef CONFIG_BLK_DEV_INITRD
if (start == 0)
......
......@@ -21,27 +21,10 @@
extern void adifcc_map_io(void);
extern void adifcc_init_irq(void);
static void __init
fixup_adifcc(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
#ifdef CONFIG_ARCH_ADI_EVB
mi->bank[0].start = PHYS_OFFSET;
mi->bank[0].size = (32*1024*1024);
mi->bank[0].node = 0;
mi->nr_banks = 1;
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( 0xc0800000, 3*1024*1024 );
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
#endif
}
#ifdef CONFIG_ARCH_ADI_EVB
MACHINE_START(ADI_EVB, "ADI 80200FCC Evaluation Board")
MAINTAINER("MontaVista Software Inc.")
BOOT_MEM(0xc0000000, 0x00400000, 0xff400000)
FIXUP(fixup_adifcc)
MAPIO(adifcc_map_io)
INITIRQ(adifcc_init_irq)
MACHINE_END
......
......@@ -19,28 +19,13 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#ifndef CONFIG_BLK_DEV_RAM_SIZE
#define CONFIG_BLK_DEV_RAM_SIZE 4096
#endif
extern void anakin_map_io(void);
extern void genarch_init_irq(void);
static void __init
fixup_anakin(struct machine_desc *desc, struct tag *tag,
char **cmdline, struct meminfo *mi)
{
ROOT_DEV = mk_kdev(RAMDISK_MAJOR, 0);
setup_ramdisk(1, 0, 0, CONFIG_BLK_DEV_RAM_SIZE);
setup_initrd(0xc0800000, 4 * 1024 * 1024);
}
MACHINE_START(ANAKIN, "Anakin")
MAINTAINER("Wookey/Tak-Shing Chan")
BOOT_MEM(0x20000000, 0x40000000, 0xe0000000)
VIDEO(0x80000000, 0x8002db40)
FIXUP(fixup_anakin)
MAPIO(anakin_map_io)
INITIRQ(genarch_init_irq)
MACHINE_END
......@@ -44,12 +44,6 @@ static struct map_desc cdb89712_io_desc[] __initdata = {
LAST_DESC
};
static void __init
fixup_cdb89712(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
}
static void __init cdb89712_map_io(void)
{
clps711x_map_io();
......@@ -60,7 +54,6 @@ MACHINE_START(CDB89712, "Cirrus-CDB89712")
MAINTAINER("Ray Lehtiniemi")
BOOT_MEM(0xc0000000, 0x80000000, 0xff000000)
BOOT_PARAMS(0xc0000100)
FIXUP(fixup_cdb89712)
MAPIO(cdb89712_map_io)
INITIRQ(clps711x_init_irq)
MACHINE_END
......
......@@ -33,29 +33,9 @@
extern void epxa10db_map_io(void);
extern void epxa10db_init_irq(void);
static void __init
epxa10db_fixup(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
mi->nr_banks = 1;
mi->bank[0].start = 0;
mi->bank[0].size = (32*1024*1024);
mi->bank[0].node = 0;
/*
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd(0xc0200000, 6*1024*1024);
*/
}
MACHINE_START(CAMELOT, "Altera Epxa10db")
MAINTAINER("Altera Corporation")
BOOT_MEM(0x00000000, 0x7fffc000, 0xffffc000)
FIXUP(epxa10db_fixup)
MAPIO(epxa10db_map_io)
INITIRQ(epxa10db_init_irq)
MACHINE_END
......@@ -50,9 +50,7 @@ static struct kmi_info integrator_mouse __initdata = {
};
#endif
static void __init
integrator_fixup(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
static int __init integrator_init(void)
{
#ifdef CONFIG_KMI_KEYB
register_kmi(&integrator_keyboard);
......@@ -60,11 +58,12 @@ integrator_fixup(struct machine_desc *desc, struct tag *tags,
#endif
}
__initcall(integrator_init);
MACHINE_START(INTEGRATOR, "ARM-Integrator")
MAINTAINER("ARM Ltd/Deep Blue Solutions Ltd")
BOOT_MEM(0x00000000, 0x16000000, 0xf1600000)
BOOT_PARAMS(0x00000100)
FIXUP(integrator_fixup)
MAPIO(integrator_map_io)
INITIRQ(integrator_init_irq)
MACHINE_END
......@@ -3,7 +3,7 @@
*
* Copyright (C) 2001 Deep Blue Solutions Ltd.
*
* $Id: cpu.c,v 1.2 2001/09/22 12:11:17 rmk Exp $
* $Id: cpu.c,v 1.4 2002/05/29 11:41:55 rmk Exp $
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
......@@ -121,7 +121,7 @@ static int __init cpu_init(void)
cpu_freq_khz = vco_to_freq(vco, 1);
#ifdef CONFIG_CPU_FREQ
cpufreq_init(cpu_freq_khz);
cpufreq_init(cpu_freq_khz, 1000, 0);
cpufreq_setfunctions(integrator_validatespeed, integrator_setspeed);
#endif
......
......@@ -31,21 +31,8 @@ fixup_iq80310(struct machine_desc *desc, struct tag *tags,
{
system_rev = (*(volatile unsigned int*)0xfe830000) & 0x0f;
if(system_rev)
if (system_rev)
system_rev = 0xF;
mi->bank[0].start = PHYS_OFFSET;
mi->bank[0].size = (32*1024*1024);
mi->bank[0].node = 0;
mi->nr_banks = 1;
#ifdef CONFIG_ROOT_NFS
ROOT_DEV = to_kdev_t(0x00FF); /* /dev/nfs pseudo device */
#elif defined(CONFIG_BLK_DEV_INITRD)
setup_ramdisk( 1, 0, 0, CONFIG_BLK_DEV_RAM_SIZE );
setup_initrd( 0xc0800000, 4*1024*1024 );
ROOT_DEV = mk_kdev(RAMDISK_MAJOR, 0); /* /dev/ram */
#endif
}
MACHINE_START(IQ80310, "Cyclone IQ80310")
......
......@@ -82,33 +82,9 @@ static void __init l7200_map_io(void)
iotable_init(l7200_io_desc);
}
static void __init
fixup_l7200(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
mi->nr_banks = 1;
mi->bank[0].start = PHYS_OFFSET;
mi->bank[0].size = (32*1024*1024);
mi->bank[0].node = 0;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, CONFIG_BLK_DEV_RAM_SIZE);
setup_initrd( __phys_to_virt(0xf1000000), 0x005dac7b);
/* Serial Console COM2 and LCD */
strcpy( *cmdline, "console=tty0 console=ttyLU1,115200");
/* Serial Console COM1 and LCD */
//strcpy( *cmdline, "console=tty0 console=ttyLU0,115200");
/* Console on LCD */
//strcpy( *cmdline, "console=tty0");
}
MACHINE_START(L7200, "LinkUp Systems L7200")
MAINTAINER("Steve Hill / Scott McConnell")
BOOT_MEM(0xf0000000, 0x80040000, 0xd0000000)
FIXUP(fixup_l7200)
MAPIO(l7200_map_io)
INITIRQ(l7200_init_irq)
MACHINE_END
......
......@@ -68,23 +68,6 @@ static void __init idp_init_irq(void)
pxa_init_irq();
}
static void __init
fixup_idp(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
#ifdef PXA_IDP_REV02
SET_BANK (0, 0xa0000000, 64*1024*1024);
#else
SET_BANK (0, 0xa0000000, 32*1024*1024);
#endif
mi->nr_banks = 1;
#if 0
setup_ramdisk (1, 0, 0, 8192);
setup_initrd (__phys_to_virt(0xa1000000), 4*1024*1024);
ROOT_DEV = MKDEV(RAMDISK_MAJOR,0);
#endif
}
static struct map_desc idp_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
......@@ -132,7 +115,6 @@ static void __init idp_map_io(void)
MACHINE_START(PXA_IDP, "Accelent Xscale IDP")
MAINTAINER("Accelent Systems Inc.")
BOOT_MEM(0xa0000000, 0x40000000, 0xfc000000)
FIXUP(fixup_idp)
MAPIO(idp_map_io)
INITIRQ(idp_init_irq)
MACHINE_END
......@@ -119,19 +119,6 @@ static int __init lubbock_init(void)
__initcall(lubbock_init);
static void __init
fixup_lubbock(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK (0, 0xa0000000, 64*1024*1024);
mi->nr_banks = 1;
#if 0
setup_ramdisk (1, 0, 0, 8192);
setup_initrd (__phys_to_virt(0xa1000000), 4*1024*1024);
ROOT_DEV = MKDEV(RAMDISK_MAJOR,0);
#endif
}
static struct map_desc lubbock_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x08000000, 0x00100000, DOMAIN_IO, 0, 1, 0, 0 }, /* CPLD */
......@@ -160,7 +147,6 @@ static void __init lubbock_map_io(void)
MACHINE_START(LUBBOCK, "Intel DBPXA250 Development Platform")
MAINTAINER("MontaVista Software Inc.")
BOOT_MEM(0xa0000000, 0x40000000, 0xfc000000)
FIXUP(fixup_lubbock)
MAPIO(lubbock_map_io)
INITIRQ(lubbock_init_irq)
MACHINE_END
......@@ -60,16 +60,6 @@ __tagtable(ATAG_ACORN, parse_tag_acorn);
#endif
static void __init
fixup_riscpc(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
/*
* RiscPC can't handle half-word loads and stores
*/
elf_hwcap &= ~HWCAP_HALF;
}
static struct map_desc rpc_io_desc[] __initdata = {
{ SCREEN_BASE, SCREEN_START, 2*1048576, DOMAIN_IO, 0, 1, 0, 0 }, /* VRAM */
{ IO_BASE, IO_START, IO_SIZE , DOMAIN_IO, 0, 1, 0, 0 }, /* IO space */
......@@ -80,6 +70,11 @@ static struct map_desc rpc_io_desc[] __initdata = {
void __init rpc_map_io(void)
{
iotable_init(rpc_io_desc);
/*
* RiscPC can't handle half-word loads and stores
*/
elf_hwcap &= ~HWCAP_HALF;
}
MACHINE_START(RISCPC, "Acorn-RiscPC")
......@@ -88,7 +83,6 @@ MACHINE_START(RISCPC, "Acorn-RiscPC")
BOOT_PARAMS(0x10000100)
DISABLE_PARPORT(0)
DISABLE_PARPORT(1)
FIXUP(fixup_riscpc)
MAPIO(rpc_map_io)
INITIRQ(rpc_init_irq)
MACHINE_END
......@@ -99,8 +99,6 @@ led-$(CONFIG_SA1100_SIMPAD) += leds-simpad.o
obj-$(CONFIG_SA1100_STORK) += stork.o
export-objs += stork.o
obj-$(CONFIG_SA1100_VICTOR) += victor.o
obj-$(CONFIG_SA1100_XP860) += xp860.o
obj-$(CONFIG_SA1100_YOPY) += yopy.o
......
......@@ -76,23 +76,6 @@ static void __init adsbitsy_init_irq(void)
sa1100_init_irq();
}
/*
* Initialization fixup
*/
static void __init
fixup_adsbitsy(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xc0800000), 4*1024*1024 );
}
static struct map_desc adsbitsy_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf4000000, 0x18000000, 0x00800000, DOMAIN_IO, 0, 1, 0, 0 }, /* SA1111 */
......@@ -135,7 +118,6 @@ static void __init adsbitsy_map_io(void)
MACHINE_START(ADSBITSY, "ADS Bitsy")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_adsbitsy)
MAPIO(adsbitsy_map_io)
INITIRQ(adsbitsy_init_irq)
MACHINE_END
......@@ -162,60 +162,12 @@ static void __init
fixup_assabet(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
struct tag *t = tags;
/* This must be done before any call to machine_has_neponset() */
map_sa1100_gpio_regs();
get_assabet_scr();
if (machine_has_neponset())
printk("Neponset expansion board detected\n");
if (t->hdr.tag != ATAG_CORE) {
t->hdr.tag = ATAG_CORE;
t->hdr.size = tag_size(tag_core);
t->u.core.flags = 0;
t->u.core.pagesize = PAGE_SIZE;
t->u.core.rootdev = RAMDISK_MAJOR << 8 | 0;
t = tag_next(t);
t->hdr.tag = ATAG_MEM;
t->hdr.size = tag_size(tag_mem32);
t->u.mem.start = 0xc0000000;
t->u.mem.size = 32 * 1024 * 1024;
t = tag_next(t);
/*
* Note that Neponset RAM is slower...
* and still untested.
* This would be a candidate for
* _real_ NUMA support.
*/
if (machine_has_neponset() && 0) {
t->hdr.tag = ATAG_MEM;
t->hdr.size = tag_size(tag_mem32);
t->u.mem.start = 0xd0000000;
t->u.mem.size = 32 * 1024 * 1024;
t = tag_next(t);
}
t->hdr.tag = ATAG_RAMDISK;
t->hdr.size = tag_size(tag_ramdisk);
t->u.ramdisk.flags = 1;
t->u.ramdisk.size = 8192;
t->u.ramdisk.start = 0;
t = tag_next(t);
t->hdr.tag = ATAG_INITRD;
t->hdr.size = tag_size(tag_initrd);
t->u.initrd.start = 0xc0800000;
t->u.initrd.size = 3 * 1024 * 1024;
t = tag_next(t);
t->hdr.tag = ATAG_NONE;
t->hdr.size = 0;
}
}
......
......@@ -21,22 +21,6 @@
#include "generic.h"
static void __init
fixup_brutus(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 4*1024*1024 );
SET_BANK( 1, 0xc8000000, 4*1024*1024 );
SET_BANK( 2, 0xd0000000, 4*1024*1024 );
SET_BANK( 3, 0xd8000000, 4*1024*1024 );
mi->nr_banks = 4;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xd8000000), 3*1024*1024 );
}
static void __init brutus_map_io(void)
{
sa1100_map_io();
......@@ -51,7 +35,6 @@ static void __init brutus_map_io(void)
MACHINE_START(BRUTUS, "Intel Brutus (SA1100 eval board)")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_brutus)
MAPIO(brutus_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -35,33 +35,6 @@ static void __init cerf_init_irq(void)
set_irq_type(IRQ_GPIO_UCB1200_IRQ, IRQT_RISING);
}
static void __init
fixup_cerf(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
#if defined(CONFIG_SA1100_CERF_64MB)
SET_BANK( 0, 0xc0000000, 64*1024*1024 );
mi->nr_banks = 1;
#elif defined(CONFIG_SA1100_CERF_32MB)
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
mi->nr_banks = 1;
#elif defined(CONFIG_SA1100_CERF_16MB)
SET_BANK( 0, 0xc0000000, 8*1024*1024 );
SET_BANK( 1, 0xc8000000, 8*1024*1024 );
mi->nr_banks = 2;
#elif defined(CONFIG_SA1100_CERF_8MB)
SET_BANK( 0, 0xc0000000, 8*1024*1024 );
mi->nr_banks = 1;
#else
#error "Undefined memory size for Cerfboard."
#endif
// ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
// setup_ramdisk(1, 0, 0, 8192);
// // Save 2Meg for RAMDisk
// setup_initrd(0xc0500000, 3*1024*1024);
}
static struct map_desc cerf_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x08000000, 0x00100000, DOMAIN_IO, 0, 1, 0, 0 }, /* Crystal Ethernet Chip */
......@@ -96,7 +69,6 @@ static void __init cerf_map_io(void)
MACHINE_START(CERF, "Intrinsyc's Cerf Family of Products")
MAINTAINER("support@intrinsyc.com")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_cerf)
MAPIO(cerf_map_io)
INITIRQ(cerf_init_irq)
MACHINE_END
......@@ -15,20 +15,6 @@
#include "generic.h"
static void __init
fixup_empeg(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 4*1024*1024 );
SET_BANK( 1, 0xc8000000, 4*1024*1024 );
mi->nr_banks = 2;
ROOT_DEV = mk_kdev( 3, 1 ); /* /dev/hda1 */
setup_ramdisk( 1, 0, 0, 4096 );
setup_initrd( 0xd0000000+((1024-320)*1024), (320*1024) );
}
static struct map_desc empeg_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ EMPEG_FLASHBASE, 0x00000000, 0x00200000, DOMAIN_IO, 0, 1, 0, 0 }, /* Flash */
......@@ -48,7 +34,6 @@ static void __init empeg_map_io(void)
MACHINE_START(EMPEG, "empeg MP3 Car Audio Player")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_empeg)
MAPIO(empeg_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -151,21 +151,6 @@ static int __init flexanet_init(void)
__initcall(flexanet_init);
static void __init
fixup_flexanet(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
/* fixed RAM size, by now (64MB) */
SET_BANK( 0, 0xc0000000, 64*1024*1024 );
mi->nr_banks = 1;
/* setup ramdisk */
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( 0xc0800000, 3*1024*1024 );
}
static struct map_desc flexanet_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x10000000, 0x00001000, DOMAIN_IO, 0, 1, 0, 0 }, /* Board Control Register */
......@@ -206,7 +191,6 @@ static void __init flexanet_map_io(void)
MACHINE_START(FLEXANET, "FlexaNet")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
BOOT_PARAMS(0xc0000100)
FIXUP(fixup_flexanet)
MAPIO(flexanet_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......
......@@ -51,19 +51,6 @@ static int __init freebird_init(void)
__initcall(freebird_init);
static void __init
fixup_freebird(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
#ifdef CONFIG_SA1100_FREEBIRD_OLD
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0 ,0 , 8192 );
setup_initrd( 0xc0800000, 3*1024*1024 );
#endif
}
static struct map_desc freebird_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x12000000, 0x00100000, DOMAIN_IO, 0, 1, 0, 0 }, /* Board Control Register */
......@@ -90,7 +77,6 @@ MACHINE_START(FREEBIRD, "Freebird-HPC-1.1")
#ifdef CONFIG_SA1100_FREEBIRD_NEW
BOOT_PARAMS(0xc0000100)
#endif
FIXUP(fixup_freebird)
MAPIO(freebird_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -78,7 +78,7 @@ unsigned int sa11x0_validatespeed(unsigned int khz)
static int __init sa11x0_init_clock(void)
{
cpufreq_init(cclk_frequency_100khz[PPCR & 0xf] * 100);
cpufreq_init(cclk_frequency_100khz[PPCR & 0xf] * 100, 59000, 287000);
return 0;
}
......@@ -203,6 +203,3 @@ void __init sa1110_mb_enable(void)
local_irq_restore(flags);
}
EXPORT_SYMBOL(sa1111_wake);
EXPORT_SYMBOL(sa1111_doze);
......@@ -120,23 +120,6 @@ static void __init graphicsclient_init_irq(void)
}
/*
* Initialization fixup
*/
static void __init
fixup_graphicsclient(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 16*1024*1024 );
SET_BANK( 1, 0xc8000000, 16*1024*1024 );
mi->nr_banks = 2;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xc0800000), 4*1024*1024 );
}
static struct map_desc graphicsclient_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x10000000, 0x00400000, DOMAIN_IO, 0, 1, 0, 0 }, /* CPLD */
......@@ -216,7 +199,6 @@ static void __init graphicsclient_map_io(void)
MACHINE_START(GRAPHICSCLIENT, "ADS GraphicsClient")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_graphicsclient)
MAPIO(graphicsclient_map_io)
INITIRQ(graphicsclient_init_irq)
MACHINE_END
......@@ -152,24 +152,6 @@ static void __init graphicsmaster_init_irq(void)
}
/*
* Initialization fixup
*/
static void __init
fixup_graphicsmaster(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 16*1024*1024 );
mi->nr_banks = 1;
SET_BANK( 1, 0xc8000000, 16*1024*1024 );
mi->nr_banks = 2;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xc0800000), 4*1024*1024 );
}
static struct map_desc graphicsmaster_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x10000000, 0x00400000, DOMAIN_IO, 0, 1, 0, 0 }, /* CPLD */
......@@ -276,7 +258,6 @@ static void __init graphicsmaster_map_io(void)
MACHINE_START(GRAPHICSMASTER, "ADS GraphicsMaster")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_graphicsmaster)
MAPIO(graphicsmaster_map_io)
INITIRQ(graphicsmaster_init_irq)
MACHINE_END
......@@ -54,22 +54,6 @@ static int __init init_huw_cs3(void)
__initcall(init_huw_cs3);
static void __init
fixup_huw_webpanel(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
/**
memory information (JOR):
32 MByte - 256KByte bootloader (init at boot time) - 32 kByte save area
**/
SET_BANK( 0, 0xc0000000, ((32*1024 - (256 + 32)) * 1024));
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xc0800000), 8*1024*1024 );
}
/**
memory information (JOR):
32 MByte - 256KByte bootloader (init at boot time) - 32 kByte save area
......@@ -95,7 +79,6 @@ static void __init huw_webpanel_map_io(void)
MACHINE_START(HUW_WEBPANEL, "HuW-Webpanel")
MAINTAINER("Roman Jordan")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_huw_webpanel)
MAPIO(huw_webpanel_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -15,18 +15,6 @@
#include "generic.h"
static void __init
fixup_itsy(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 16*1024*1024 );
SET_BANK( 1, 0xc8000000, 16*1024*1024 );
SET_BANK( 2, 0xd0000000, 16*1024*1024 );
SET_BANK( 3, 0xd8000000, 16*1024*1024 );
mi->nr_banks = 4;
}
/* BRADFIXME The egpio addresses aren't verifiably correct. (i.e. they're most
likely wrong. */
static struct map_desc itsy_io_desc[] __initdata = {
......@@ -49,7 +37,6 @@ static void __init itsy_map_io(void)
MACHINE_START(ITSY, "Compaq Itsy")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
BOOT_PARAMS(0xc0000100)
FIXUP(fixup_itsy)
MAPIO(itsy_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -55,15 +55,6 @@ static int __init jornada720_init(void)
__initcall(jornada720_init);
static void __init
fixup_jornada720(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
mi->nr_banks = 1;
}
static struct map_desc jornada720_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x48000000, 0x00100000, DOMAIN_IO, 0, 1, 0, 0 }, /* Epson registers */
......@@ -84,7 +75,6 @@ static void __init jornada720_map_io(void)
MACHINE_START(JORNADA720, "HP Jornada 720")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
BOOT_PARAMS(0xc0000100)
FIXUP(fixup_jornada720)
MAPIO(jornada720_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -15,20 +15,12 @@
#include "generic.h"
static void __init
fixup_nanoengine(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xc0800000), 4*1024*1024 );
/* Get command line parameters passed from the loader (if any) */
if( *((char*)0xc0000100) )
if (*((char*)0xc0000100))
*cmdline = ((char *)0xc0000100);
}
......
......@@ -40,18 +40,6 @@ static int __init omnimeter_init(void)
__initcall(omnimeter_init);
static void __init
fixup_omnimeter(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 16*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xd0000000), 0x00400000 );
}
static struct map_desc omnimeter_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xd2000000, 0x10000000, 0x02000000, DOMAIN_IO, 0, 1, 0, 0 }, /* TS */
......@@ -69,7 +57,6 @@ static void __init omnimeter_map_io(void)
MACHINE_START(OMNIMETER, "OmniMeter")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_omnimeter)
MAPIO(omnimeter_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -15,19 +15,6 @@
#include "generic.h"
static void __init
fixup_pangolin(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 128*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 16384 );
setup_initrd( 0xc0800000, 3*1024*1024 );
}
static struct map_desc pangolin_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf2800000, 0x4b800000, 0x00800000, DOMAIN_IO, 0, 1, 0, 0 }, /* MQ200 */
......@@ -52,7 +39,6 @@ static void __init pangolin_map_io(void)
MACHINE_START(PANGOLIN, "Dialogue-Pangolin")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_pangolin)
MAPIO(pangolin_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -55,19 +55,6 @@ static void __init pfs168_init_irq(void)
set_GPIO_IRQ_edge(GPIO_UCB1300_IRQ, GPIO_RISING_EDGE);
}
static void __init
fixup_pfs168(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 16*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( 0xc0800000, 3*1024*1024 );
}
static struct map_desc pfs168_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xe8000000, 0x00000000, 0x02000000, DOMAIN_IO, 0, 1, 0, 0 }, /* Flash bank 0 */
......@@ -98,10 +85,7 @@ static void __init pfs168_map_io(void)
MACHINE_START(PFS168, "Tulsa")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
#if defined(CONFIG_PFS168_CMDLINE)
BOOT_PARAMS(0xc0000100)
#endif
FIXUP(fixup_pfs168)
MAPIO(pfs168_map_io)
INITIRQ(pfs168_init_irq)
MACHINE_END
......@@ -15,24 +15,6 @@
#include "generic.h"
static void __init
fixup_pleb(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK(0, 0xc0000000, 16*1024*1024);
SET_BANK(1, 0xc8000000, 16*1024*1024);
SET_BANK(2, 0xd0000000, 16*1024*1024);
SET_BANK(3, 0xd8000000, 16*1024*1024);
/* make this 4 a second memory card is used to make 64MB */
/* make it 1 if a 16MB memory card is used */
mi->nr_banks = 2; /* Default 32MB */
ROOT_DEV = mk_kdev(RAMDISK_MAJOR, 0);
setup_ramdisk(1, 0, 0, 8192);
setup_initrd(0xc0400000, 4*1024*1024);
}
static struct map_desc pleb_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xe8000000, 0x00000000, 0x00400000, DOMAIN_IO, 0, 1, 0, 0 }, /* main flash memory */
......@@ -55,7 +37,6 @@ static void __init pleb_map_io(void)
MACHINE_START(PLEB, "PLEB")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_pleb)
MAPIO(pleb_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -15,20 +15,6 @@
#include "generic.h"
static void __init
fixup_sherman(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 64*1024*1024 );
SET_BANK( 1, 0xc8000000, 64*1024*1024 );
mi->nr_banks = 2;
ROOT_DEV = mk_kdev( 60, 2 );
setup_ramdisk( 1, 0, 0, 8192 );
// setup_initrd( 0xc0400000, 8*1024*1024 );
}
static void __init sherman_map_io(void)
{
sa1100_map_io();
......@@ -39,7 +25,6 @@ static void __init sherman_map_io(void)
MACHINE_START(SHERMAN, "Blazie Engineering Sherman")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_sherman)
MAPIO(sherman_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -40,22 +40,6 @@ void clear_cs3_bit(int value)
*(CS3BUSTYPE *)(CS3_BASE) = cs3_shadow;
}
static void __init
fixup_simpad(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
#ifdef CONFIG_SA1100_SIMPAD_DRAM_64MB /* DRAM */
SET_BANK( 0, 0xc0000000, 64*1024*1024 );
#else
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
#endif
mi->nr_banks = 1;
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( __phys_to_virt(0xc0800000), 4*1024*1024 );
}
static struct map_desc simpad_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf2800000, 0x4b800000, 0x00800000, DOMAIN_IO, 0, 1, 0, 0 }, /* MQ200 */
......@@ -141,22 +125,14 @@ static int proc_cs3_read(char *page, char **start, off_t off,
}
static struct proc_dir_entry *proc_cs3;
static int __init cs3_init(void)
{
proc_cs3 = create_proc_entry("cs3", 0, 0);
struct proc_dir_entry *proc_cs3 = create_proc_entry("cs3", 0, 0);
if (proc_cs3)
proc_cs3->read_proc = proc_cs3_read;
return 0;
}
static int __exit cs3_exit(void)
{
if (proc_cs3)
remove_proc_entry( "cs3", 0);
return 0;
}
__initcall(cs3_init);
#endif // CONFIG_PROC_FS
......@@ -164,7 +140,6 @@ __initcall(cs3_init);
MACHINE_START(SIMPAD, "Simpad")
MAINTAINER("Juergen Messerer")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_simpad)
MAPIO(simpad_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -73,8 +73,6 @@
*/
/* init funcs */
static void __init fixup_system3(struct machine_desc *desc,
struct tag *tags, char **cmdline, struct meminfo *mi);
static int __init system3_init(void);
static void __init system3_init_irq(void);
static void __init system3_map_io(void);
......@@ -228,25 +226,6 @@ static int sdram_notifier(struct notifier_block *nb, unsigned long event,
return 0;
}
/**
* fixup_system3 - fixup function for system 3 board
* @desc: machine description
* @param: kernel params
* @cmdline: kernel cmdline
* @mi: memory info struct
*
*/
static void __init fixup_system3(struct machine_desc *desc,
struct tag *tags, char **cmdline, struct meminfo *mi)
{
DPRINTK( "%s\n", "START" );
ROOT_DEV = mk_kdev(RAMDISK_MAJOR,0);
setup_ramdisk( 1, 0, 0, 8192 );
setup_initrd( 0xc0800000, 8*1024*1024 );
}
/**
* system3_uart_pm - powermgmt callback function for system 3 UART
* @port: uart port structure
......@@ -457,7 +436,6 @@ __initcall(system3_init);
MACHINE_START(PT_SYSTEM3, "PT System 3")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
BOOT_PARAMS(0xc0000100)
FIXUP(fixup_system3)
MAPIO(system3_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
/*
* linux/arch/arm/mach-sa1100/victor.c
*
* Author: Nicolas Pitre
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/delay.h>
#include <linux/pm.h>
#include <linux/tty.h>
#include <asm/hardware.h>
#include <asm/setup.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
#include <asm/mach/serial_sa1100.h>
#include "generic.h"
static void victor_power_off(void)
{
/* switch off power supply */
mdelay(2000);
GPCR = GPIO_GPIO23;
while (1);
}
static int __init victor_init(void)
{
pm_power_off = victor_power_off;
return 0;
}
__initcall(victor_init);
static void __init
fixup_victor(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 4*1024*1024 );
mi->nr_banks = 1;
ROOT_DEV = mk_kdev( 60, 2 );
/* Get command line parameters passed from the loader (if any) */
if( *((char*)0xc0000000) )
strcpy( *cmdline, ((char *)0xc0000000) );
/* power off if any problem */
strcat( *cmdline, " panic=1" );
}
static struct map_desc victor_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xe8000000, 0x00000000, 0x00200000, DOMAIN_IO, 0, 1, 0, 0 }, /* Flash */
LAST_DESC
};
static void __init victor_map_io(void)
{
sa1100_map_io();
iotable_init(victor_io_desc);
sa1100_register_uart(0, 3);
}
MACHINE_START(VICTOR, "VisuAide Victor")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_victor)
MAPIO(victor_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -56,15 +56,6 @@ static int __init xp860_init(void)
__initcall(xp860_init);
static void __init
fixup_xp860(struct machine_desc *desc, struct tag *tags,
char **cmdline, struct meminfo *mi)
{
SET_BANK( 0, 0xc0000000, 32*1024*1024 );
mi->nr_banks = 1;
}
static struct map_desc xp860_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xf0000000, 0x10000000, 0x00100000, DOMAIN_IO, 0, 1, 0, 0 }, /* SCSI */
......@@ -84,7 +75,6 @@ static void __init xp860_map_io(void)
MACHINE_START(XP860, "XP860")
BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
FIXUP(fixup_xp860)
MAPIO(xp860_map_io)
INITIRQ(sa1100_init_irq)
MACHINE_END
......@@ -30,6 +30,7 @@
#include <asm/dma.h>
#include <asm/hardware.h>
#include <asm/setup.h>
#include <asm/tlb.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
......@@ -48,6 +49,8 @@
#define TABLE_SIZE ((TABLE_OFFSET + PTRS_PER_PTE) * sizeof(pte_t))
mmu_gather_t mmu_gathers[NR_CPUS];
extern pgd_t swapper_pg_dir[PTRS_PER_PGD];
extern char _stext, _text, _etext, _end, __init_begin, __init_end;
......
......@@ -158,7 +158,7 @@ static int clps7111fb_blank(int blank, struct fb_info *info)
clps_writeb(clps_readb(PDDR) & ~EDB_PD1_LCD_DC_DC_EN, PDDR);
/* Delay for a little while (half a second). */
for (i=0; i<65536*4; i++);
udelay(100);
/* Power off the LCD panel. */
clps_writeb(clps_readb(PDDR) & ~EDB_PD2_LCDEN, PDDR);
......@@ -169,24 +169,24 @@ static int clps7111fb_blank(int blank, struct fb_info *info)
}
} else {
if (machine_is_edb7211()) {
int i;
int i;
/* Power up the LCD controller. */
clps_writel(clps_readl(SYSCON1) | SYSCON1_LCDEN,
SYSCON1);
/* Power up the LCD controller. */
clps_writel(clps_readl(SYSCON1) | SYSCON1_LCDEN,
SYSCON1);
/* Power up the LCD panel. */
clps_writeb(clps_readb(PDDR) | EDB_PD2_LCDEN, PDDR);
/* Power up the LCD panel. */
clps_writeb(clps_readb(PDDR) | EDB_PD2_LCDEN, PDDR);
/* Delay for a little while. */
for (i=0; i<65536*4; i++);
/* Delay for a little while. */
udelay(100);
/* Power up the LCD DC-DC converter. */
clps_writeb(clps_readb(PDDR) | EDB_PD1_LCD_DC_DC_EN,
PDDR);
/* Power up the LCD DC-DC converter. */
clps_writeb(clps_readb(PDDR) | EDB_PD1_LCD_DC_DC_EN,
PDDR);
/* Turn on the LCD backlight. */
clps_writeb(clps_readb(PDDR) | EDB_PD3_LCDBL, PDDR);
/* Turn on the LCD backlight. */
clps_writeb(clps_readb(PDDR) | EDB_PD3_LCDBL, PDDR);
}
}
return 0;
......
......@@ -71,27 +71,27 @@ static __inline__ void atomic_dec(volatile atomic_t *v)
static __inline__ int atomic_dec_and_test(volatile atomic_t *v)
{
unsigned long flags;
int result;
int val;
__save_flags_cli(flags);
v->counter -= 1;
result = (v->counter == 0);
val = v->counter;
v->counter = val -= 1;
__restore_flags(flags);
return result;
return val == 0;
}
static inline int atomic_add_negative(int i, volatile atomic_t *v)
{
unsigned long flags;
int result;
int val;
__save_flags_cli(flags);
v->counter += i;
result = (v->counter < 0);
val = v->counter;
v->counter = val += i;
__restore_flags(flags);
return result;
return val < 0;
}
static __inline__ void atomic_clear_mask(unsigned long mask, unsigned long *addr)
......
......@@ -16,9 +16,6 @@
#ifndef __ASSEMBLY__
extern void setup_initrd(unsigned int start, unsigned int size);
extern void setup_ramdisk(int doload, int prompt, int start, unsigned int rd_sz);
struct tag;
struct machine_desc {
......
......@@ -23,20 +23,6 @@
#define KERNEL_STACK_SIZE 4096
struct cpu_context_save {
unsigned long r4;
unsigned long r5;
unsigned long r6;
unsigned long r7;
unsigned long r8;
unsigned long r9;
unsigned long sl;
unsigned long fp;
unsigned long pc;
};
#define INIT_CSS (struct cpu_context_save){ 0, 0, 0, 0, 0, 0, 0, 0, SVC26_MODE }
typedef struct {
void (*put_byte)(void); /* Special calling convention */
void (*get_byte)(void); /* Special calling convention */
......@@ -71,7 +57,7 @@ extern uaccess_t uaccess_user, uaccess_kernel;
regs->ARM_r0 = stack[0]; /* r0 (argc) */ \
})
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1022])
#define KSTK_ESP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1020])
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1020])
#define KSTK_ESP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1018])
#endif
/*
* linux/include/asm-arm/proc-armo/uncompress.h
*
* Copyright (C) 1997 Russell King
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#define proc_decomp_setup()
......@@ -22,21 +22,6 @@
#define KERNEL_STACK_SIZE PAGE_SIZE
struct cpu_context_save {
unsigned long cpsr;
unsigned long r4;
unsigned long r5;
unsigned long r6;
unsigned long r7;
unsigned long r8;
unsigned long r9;
unsigned long sl;
unsigned long fp;
unsigned long pc;
};
#define INIT_CSS (struct cpu_context_save){ SVC_MODE, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
#define INIT_EXTRA_THREAD_INFO \
cpu_domain: domain_val(DOMAIN_USER, DOMAIN_CLIENT) | \
domain_val(DOMAIN_KERNEL, DOMAIN_MANAGER) | \
......@@ -58,7 +43,7 @@ struct cpu_context_save {
regs->ARM_r0 = stack[0]; /* r0 (argc) */ \
})
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1021])
#define KSTK_ESP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1019])
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1019])
#define KSTK_ESP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)))[1017])
#endif
/*
* linux/include/asm-arm/proc-armv/uncompress.h
*
* Copyright (C) 1997 Russell King
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
static inline void proc_decomp_setup (void)
{
__asm__ __volatile__("
mrc p15, 0, r0, c0, c0
eor r0, r0, #0x44 << 24
eor r0, r0, #0x01 << 16
eor r0, r0, #0xA1 << 8
movs r0, r0, lsr #5
mcreq p15, 0, r0, c7, c5, 0 @ flush I cache
mrceq p15, 0, r0, c1, c0
orreq r0, r0, #1 << 12
mcreq p15, 0, r0, c1, c0 @ enable I cache
mov r0, #0
mcreq p15, 0, r0, c15, c1, 2 @ enable clock switching
" : : : "r0", "cc", "memory");
}
......@@ -22,20 +22,35 @@ struct exec_domain;
#include <asm/ptrace.h>
#include <asm/types.h>
typedef unsigned long mm_segment_t; /* domain register */
typedef unsigned long mm_segment_t;
struct cpu_context_save {
__u32 r4;
__u32 r5;
__u32 r6;
__u32 r7;
__u32 r8;
__u32 r9;
__u32 sl;
__u32 fp;
__u32 sp;
__u32 pc;
__u32 extra[2]; /* Xscale 'acc' register, etc */
};
/*
* low level task data that entry.S needs immediate access to.
* We assume cpu_context follows immedately after cpu_domain.
*/
struct thread_info {
unsigned long flags; /* low level flags */
__s32 preempt_count; /* 0 => preemptable, <0 => bug */
mm_segment_t addr_limit; /* address limit */
__u32 cpu; /* cpu */
struct cpu_context_save *cpu_context; /* cpu context */
__u32 cpu_domain; /* cpu domain */
struct task_struct *task; /* main task structure */
struct exec_domain *exec_domain; /* execution domain */
__u32 cpu; /* cpu */
__u32 cpu_domain; /* cpu domain */
struct cpu_context_save cpu_context; /* cpu context */
union fp_state fpstate;
};
......@@ -71,34 +86,20 @@ extern void free_thread_info(struct thread_info *);
#define get_thread_info(ti) get_task_struct((ti)->task)
#define put_thread_info(ti) put_task_struct((ti)->task)
static inline unsigned long __thread_saved_pc(struct thread_info *thread)
{
struct cpu_context_save *context = thread->cpu_context;
return context ? pc_pointer(context->pc) : 0;
}
static inline unsigned long __thread_saved_fp(struct thread_info *thread)
{
struct cpu_context_save *context = thread->cpu_context;
return context ? context->fp : 0;
}
#define thread_saved_pc(tsk) __thread_saved_pc((tsk)->thread_info)
#define thread_saved_fp(tsk) __thread_saved_fp((tsk)->thread_info)
#define thread_saved_pc(tsk) (pc_pointer((tsk)->thread_info->cpu_context.pc))
#define thread_saved_fp(tsk) ((tsk)->thread_info->cpu_context.fp)
#else /* !__ASSEMBLY__ */
#define TI_FLAGS 0
#define TI_PREEMPT 4
#define TI_ADDR_LIMIT 8
#define TI_CPU 12
#define TI_CPU_SAVE 16
#define TI_CPU_DOMAIN 20
#define TI_TASK 24
#define TI_EXEC_DOMAIN 28
#define TI_FPSTATE 32
#define TI_TASK 12
#define TI_EXEC_DOMAIN 16
#define TI_CPU 20
#define TI_CPU_DOMAIN 24
#define TI_CPU_SAVE 28
#define TI_FPSTATE 76
#endif
......
#ifndef __ASMARM_TLB_H
#define __ASMARM_TLB_H
#include <asm/cacheflush.h>
#include <asm/tlbflush.h>
#define tlb_flush(tlb) \
flush_tlb_mm((tlb)->mm)
#define tlb_start_vma(tlb,vma) \
flush_cache_range(vma, vma->vm_start, vma->vm_end)
#define tlb_end_vma(tlb,vma) \
flush_tlb_range(vma, vma->vm_start, vma->vm_end)
#define tlb_remove_tlb_entry(tlb, pte, address) do { } while (0)
#include <asm-generic/tlb.h>
#define pmd_free_tlb(tlb, pmd) pmd_free(pmd)
#define pte_free_tlb(tlb, pte) pte_free(pte)
#endif
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