Loading Documentation/dontdiff +2 −0 Original line number Original line Diff line number Diff line Loading @@ -41,6 +41,7 @@ COPYING CREDITS CREDITS CVS CVS ChangeSet ChangeSet Image Kerntypes Kerntypes MODS.txt MODS.txt Module.symvers Module.symvers Loading Loading @@ -103,6 +104,7 @@ logo_*.c logo_*_clut224.c logo_*_clut224.c logo_*_mono.c logo_*_mono.c lxdialog lxdialog mach-types.h make_times_h make_times_h map map maui_boot.h maui_boot.h Loading arch/arm/configs/shark_defconfig +52 −33 Original line number Original line Diff line number Diff line # # # Automatically generated make config: don't edit # Automatically generated make config: don't edit # Linux kernel version: 2.6.12-rc1-bk2 # Linux kernel version: 2.6.12-git3 # Sun Mar 27 23:59:14 2005 # Sat Jul 16 15:21:47 2005 # # CONFIG_ARM=y CONFIG_ARM=y CONFIG_MMU=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_UID16=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_IOMAP=y # # # Code maturity level options # Code maturity level options # # CONFIG_EXPERIMENTAL=y CONFIG_EXPERIMENTAL=y # CONFIG_CLEAN_COMPILE is not set CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN=y CONFIG_BROKEN_ON_SMP=y CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 # # # General setup # General setup Loading @@ -33,7 +32,10 @@ CONFIG_KOBJECT_UEVENT=y # CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG is not set # CONFIG_EMBEDDED is not set # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_BASE_FULL=y CONFIG_BASE_FULL=y CONFIG_FUTEX=y CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_EPOLL=y Loading Loading @@ -81,6 +83,7 @@ CONFIG_ARCH_SHARK=y # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_IMX is not set # CONFIG_ARCH_IMX is not set # CONFIG_ARCH_H720X is not set # CONFIG_ARCH_H720X is not set # CONFIG_ARCH_AAEC2000 is not set # # # Processor Type # Processor Type Loading @@ -103,10 +106,12 @@ CONFIG_CPU_TLB_V4WB=y # # CONFIG_ISA=y CONFIG_ISA=y CONFIG_ISA_DMA=y CONFIG_ISA_DMA=y CONFIG_ISA_DMA_API=y CONFIG_PCI=y CONFIG_PCI=y CONFIG_PCI_HOST_VIA82C505=y CONFIG_PCI_HOST_VIA82C505=y CONFIG_PCI_LEGACY_PROC=y CONFIG_PCI_LEGACY_PROC=y # CONFIG_PCI_NAMES is not set # CONFIG_PCI_NAMES is not set # CONFIG_PCI_DEBUG is not set # # # PCCARD (PCMCIA/CardBus) support # PCCARD (PCMCIA/CardBus) support Loading @@ -116,7 +121,9 @@ CONFIG_PCI_LEGACY_PROC=y # # # Kernel Features # Kernel Features # # # CONFIG_SMP is not set # CONFIG_PREEMPT is not set # CONFIG_PREEMPT is not set # CONFIG_DISCONTIGMEM is not set CONFIG_LEDS=y CONFIG_LEDS=y CONFIG_LEDS_TIMER=y CONFIG_LEDS_TIMER=y # CONFIG_LEDS_CPU is not set # CONFIG_LEDS_CPU is not set Loading Loading @@ -163,6 +170,7 @@ CONFIG_BINFMT_ELF=y # CONFIG_STANDALONE is not set # CONFIG_STANDALONE is not set CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_FW_LOADER is not set # CONFIG_FW_LOADER is not set # CONFIG_DEBUG_DRIVER is not set # # # Memory Technology Devices (MTD) # Memory Technology Devices (MTD) Loading @@ -172,8 +180,8 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y # # # Parallel port support # Parallel port support # # CONFIG_PARPORT=y CONFIG_PARPORT=m CONFIG_PARPORT_PC=y CONFIG_PARPORT_PC=m # CONFIG_PARPORT_SERIAL is not set # CONFIG_PARPORT_SERIAL is not set # CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_SUPERIO is not set # CONFIG_PARPORT_PC_SUPERIO is not set Loading @@ -189,7 +197,6 @@ CONFIG_PARPORT_PC=y # # # Block devices # Block devices # # # CONFIG_BLK_DEV_FD is not set # CONFIG_BLK_DEV_XD is not set # CONFIG_BLK_DEV_XD is not set # CONFIG_PARIDE is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_DA is not set Loading Loading @@ -229,7 +236,7 @@ CONFIG_BLK_DEV_IDE=y # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_IDE_SATA is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_BLK_DEV_IDEDISK=y # CONFIG_IDEDISK_MULTI_MODE is not set # CONFIG_IDEDISK_MULTI_MODE is not set CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDECD=m # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDETAPE is not set CONFIG_BLK_DEV_IDEFLOPPY=y CONFIG_BLK_DEV_IDEFLOPPY=y # CONFIG_BLK_DEV_IDESCSI is not set # CONFIG_BLK_DEV_IDESCSI is not set Loading Loading @@ -261,6 +268,7 @@ CONFIG_CHR_DEV_ST=m CONFIG_BLK_DEV_SR=m CONFIG_BLK_DEV_SR=m # CONFIG_BLK_DEV_SR_VENDOR is not set # CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=m CONFIG_CHR_DEV_SG=m # CONFIG_CHR_DEV_SCH is not set # # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # Some SCSI devices (e.g. CD jukebox) support multiple LUNs Loading Loading @@ -290,17 +298,14 @@ CONFIG_CHR_DEV_SG=m # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_ADVANSYS is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_CPQFCTS is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DTC3280 is not set # CONFIG_SCSI_DTC3280 is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_GENERIC_NCR5380 is not set # CONFIG_SCSI_GENERIC_NCR5380 is not set Loading @@ -314,11 +319,8 @@ CONFIG_CHR_DEV_SG=m # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PCI2000 is not set # CONFIG_SCSI_PCI2220I is not set # CONFIG_SCSI_PSI240I is not set # CONFIG_SCSI_PSI240I is not set # CONFIG_SCSI_QLOGIC_FAS is not set # CONFIG_SCSI_QLOGIC_FAS is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=m CONFIG_SCSI_QLA2XXX=m Loading @@ -327,6 +329,7 @@ CONFIG_SCSI_QLA2XXX=m # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_LPFC is not set # CONFIG_SCSI_SYM53C416 is not set # CONFIG_SCSI_SYM53C416 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_DC390T is not set Loading @@ -344,6 +347,8 @@ CONFIG_SCSI_QLA2XXX=m # Fusion MPT device support # Fusion MPT device support # # # CONFIG_FUSION is not set # CONFIG_FUSION is not set # CONFIG_FUSION_SPI is not set # CONFIG_FUSION_FC is not set # # # IEEE 1394 (FireWire) support # IEEE 1394 (FireWire) support Loading @@ -365,7 +370,6 @@ CONFIG_NET=y # # CONFIG_PACKET=y CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set # CONFIG_PACKET_MMAP is not set # CONFIG_NETLINK_DEV is not set CONFIG_UNIX=y CONFIG_UNIX=y # CONFIG_NET_KEY is not set # CONFIG_NET_KEY is not set CONFIG_INET=y CONFIG_INET=y Loading @@ -380,7 +384,7 @@ CONFIG_INET=y # CONFIG_INET_ESP is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # CONFIG_INET_TUNNEL is not set # CONFIG_IP_TCPDIAG is not set CONFIG_IP_TCPDIAG=y # CONFIG_IP_TCPDIAG_IPV6 is not set # CONFIG_IP_TCPDIAG_IPV6 is not set # CONFIG_IPV6 is not set # CONFIG_IPV6 is not set # CONFIG_NETFILTER is not set # CONFIG_NETFILTER is not set Loading Loading @@ -439,6 +443,7 @@ CONFIG_NET_ETHERNET=y # CONFIG_LANCE is not set # CONFIG_LANCE is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_SMC91X is not set # CONFIG_SMC91X is not set # CONFIG_DM9000 is not set # CONFIG_NET_VENDOR_RACAL is not set # CONFIG_NET_VENDOR_RACAL is not set # # Loading Loading @@ -483,9 +488,11 @@ CONFIG_CS89x0=y # CONFIG_HAMACHI is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_R8169 is not set # CONFIG_SKGE is not set # CONFIG_SK98LIN is not set # CONFIG_SK98LIN is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_TIGON3 is not set # CONFIG_TIGON3 is not set # CONFIG_BNX2 is not set # # # Ethernet (10000 Mbit) # Ethernet (10000 Mbit) Loading Loading @@ -569,7 +576,6 @@ CONFIG_SERIO_I8042=y CONFIG_SERIO_LIBPS2=y CONFIG_SERIO_LIBPS2=y # CONFIG_SERIO_RAW is not set # CONFIG_SERIO_RAW is not set # CONFIG_GAMEPORT is not set # CONFIG_GAMEPORT is not set CONFIG_SOUND_GAMEPORT=y # # # Character devices # Character devices Loading @@ -592,6 +598,7 @@ CONFIG_SERIAL_8250_NR_UARTS=4 # # CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_JSM is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 CONFIG_LEGACY_PTY_COUNT=256 Loading Loading @@ -653,6 +660,7 @@ CONFIG_FB_CFB_FILLRECT=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_IMAGEBLIT=y CONFIG_FB_CFB_IMAGEBLIT=y CONFIG_FB_SOFT_CURSOR=y CONFIG_FB_SOFT_CURSOR=y # CONFIG_FB_MACMODES is not set # CONFIG_FB_MODE_HELPERS is not set # CONFIG_FB_MODE_HELPERS is not set # CONFIG_FB_TILEBLITTING is not set # CONFIG_FB_TILEBLITTING is not set # CONFIG_FB_CIRRUS is not set # CONFIG_FB_CIRRUS is not set Loading @@ -674,7 +682,7 @@ CONFIG_FB_CYBER2000=y # CONFIG_FB_3DFX is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_TRIDENT is not set # CONFIG_FB_TRIDENT is not set # CONFIG_FB_PM3 is not set # CONFIG_FB_S1D13XXX is not set # CONFIG_FB_VIRTUAL is not set # CONFIG_FB_VIRTUAL is not set # # Loading Loading @@ -808,7 +816,7 @@ CONFIG_DNOTIFY=y # # # CD-ROM/DVD Filesystems # CD-ROM/DVD Filesystems # # CONFIG_ISO9660_FS=y CONFIG_ISO9660_FS=m CONFIG_JOLIET=y CONFIG_JOLIET=y # CONFIG_ZISOFS is not set # CONFIG_ZISOFS is not set # CONFIG_UDF_FS is not set # CONFIG_UDF_FS is not set Loading @@ -816,9 +824,9 @@ CONFIG_JOLIET=y # # # DOS/FAT/NT Filesystems # DOS/FAT/NT Filesystems # # CONFIG_FAT_FS=y CONFIG_FAT_FS=m CONFIG_MSDOS_FS=y CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=y CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" # CONFIG_NTFS_FS is not set # CONFIG_NTFS_FS is not set Loading @@ -833,7 +841,6 @@ CONFIG_DEVFS_MOUNT=y # CONFIG_DEVFS_DEBUG is not set # CONFIG_DEVFS_DEBUG is not set # CONFIG_DEVPTS_FS_XATTR is not set # CONFIG_DEVPTS_FS_XATTR is not set # CONFIG_TMPFS is not set # CONFIG_TMPFS is not set # CONFIG_HUGETLBFS is not set # CONFIG_HUGETLB_PAGE is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y CONFIG_RAMFS=y Loading @@ -857,13 +864,14 @@ CONFIG_RAMFS=y # # # Network File Systems # Network File Systems # # CONFIG_NFS_FS=y CONFIG_NFS_FS=m # CONFIG_NFS_V3 is not set CONFIG_NFS_V3=y # CONFIG_NFS_V4 is not set # CONFIG_NFS_V4 is not set # CONFIG_NFS_DIRECTIO is not set # CONFIG_NFS_DIRECTIO is not set # CONFIG_NFSD is not set # CONFIG_NFSD is not set CONFIG_LOCKD=y CONFIG_LOCKD=m CONFIG_SUNRPC=y CONFIG_LOCKD_V4=y CONFIG_SUNRPC=m # CONFIG_RPCSEC_GSS_KRB5 is not set # CONFIG_RPCSEC_GSS_KRB5 is not set # CONFIG_RPCSEC_GSS_SPKM3 is not set # CONFIG_RPCSEC_GSS_SPKM3 is not set # CONFIG_SMB_FS is not set # CONFIG_SMB_FS is not set Loading Loading @@ -895,12 +903,12 @@ CONFIG_MSDOS_PARTITION=y # # # Native Language Support # Native Language Support # # CONFIG_NLS=y CONFIG_NLS=m CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_437=m # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set # CONFIG_NLS_CODEPAGE_775 is not set CONFIG_NLS_CODEPAGE_850=y CONFIG_NLS_CODEPAGE_850=m # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_857 is not set Loading @@ -921,7 +929,7 @@ CONFIG_NLS_CODEPAGE_850=y # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_ASCII is not set # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_1=m # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_4 is not set Loading @@ -945,11 +953,22 @@ CONFIG_NLS_ISO8859_1=y # Kernel hacking # Kernel hacking # # # CONFIG_PRINTK_TIME is not set # CONFIG_PRINTK_TIME is not set # CONFIG_DEBUG_KERNEL is not set CONFIG_DEBUG_KERNEL=y # CONFIG_MAGIC_SYSRQ is not set CONFIG_LOG_BUF_SHIFT=14 CONFIG_LOG_BUF_SHIFT=14 # CONFIG_SCHEDSTATS is not set # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_SPINLOCK_SLEEP is not set # CONFIG_DEBUG_KOBJECT is not set CONFIG_DEBUG_BUGVERBOSE=y CONFIG_DEBUG_BUGVERBOSE=y # CONFIG_DEBUG_INFO is not set # CONFIG_DEBUG_FS is not set CONFIG_FRAME_POINTER=y CONFIG_FRAME_POINTER=y CONFIG_DEBUG_USER=y CONFIG_DEBUG_USER=y # CONFIG_DEBUG_WAITQ is not set # CONFIG_DEBUG_ERRORS is not set # CONFIG_DEBUG_LL is not set # # # Security options # Security options Loading arch/arm/kernel/traps.c +8 −4 Original line number Original line Diff line number Diff line Loading @@ -248,16 +248,20 @@ static DEFINE_SPINLOCK(undef_lock); void register_undef_hook(struct undef_hook *hook) void register_undef_hook(struct undef_hook *hook) { { spin_lock_irq(&undef_lock); unsigned long flags; spin_lock_irqsave(&undef_lock, flags); list_add(&hook->node, &undef_hook); list_add(&hook->node, &undef_hook); spin_unlock_irq(&undef_lock); spin_unlock_irqrestore(&undef_lock, flags); } } void unregister_undef_hook(struct undef_hook *hook) void unregister_undef_hook(struct undef_hook *hook) { { spin_lock_irq(&undef_lock); unsigned long flags; spin_lock_irqsave(&undef_lock, flags); list_del(&hook->node); list_del(&hook->node); spin_unlock_irq(&undef_lock); spin_unlock_irqrestore(&undef_lock, flags); } } asmlinkage void do_undefinstr(struct pt_regs *regs) asmlinkage void do_undefinstr(struct pt_regs *regs) Loading arch/arm/lib/bitops.h +31 −0 Original line number Original line Diff line number Diff line #if __LINUX_ARM_ARCH__ >= 6 .macro bitop, instr mov r2, #1 and r3, r0, #7 @ Get bit offset add r1, r1, r0, lsr #3 @ Get byte offset mov r3, r2, lsl r3 1: ldrexb r2, [r1] \instr r2, r2, r3 strexb r0, r2, [r1] cmpne r0, #0 bne 1b mov pc, lr .endm .macro testop, instr, store and r3, r0, #7 @ Get bit offset mov r2, #1 add r1, r1, r0, lsr #3 @ Get byte offset mov r3, r2, lsl r3 @ create mask 1: ldrexb r2, [r1] ands r0, r2, r3 @ save old value of bit \instr ip, r2, r3 @ toggle bit strexb r2, ip, [r1] cmp r2, #0 bne 1b cmp r0, #0 movne r0, #1 2: mov pc, lr .endm #else .macro bitop, instr .macro bitop, instr and r2, r0, #7 and r2, r0, #7 mov r3, #1 mov r3, #1 Loading Loading @@ -31,3 +61,4 @@ moveq r0, #0 moveq r0, #0 mov pc, lr mov pc, lr .endm .endm #endif arch/arm/lib/io-shark.c +0 −70 Original line number Original line Diff line number Diff line Loading @@ -11,73 +11,3 @@ * it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * published by the Free Software Foundation. */ */ #include <linux/kernel.h> #include <asm/io.h> void print_warning(void) { printk(KERN_WARNING "ins?/outs? not implemented on this architecture\n"); } void insl(unsigned int port, void *to, int len) { print_warning(); } void insb(unsigned int port, void *to, int len) { print_warning(); } void outsl(unsigned int port, const void *from, int len) { print_warning(); } void outsb(unsigned int port, const void *from, int len) { print_warning(); } /* these should be in assembler again */ /* * Purpose: read a block of data from a hardware register to memory. * Proto : insw(int from_port, void *to, int len_in_words); * Proto : inswb(int from_port, void *to, int len_in_bytes); * Notes : increment to */ void insw(unsigned int port, void *to, int len) { int i; for (i = 0; i < len; i++) ((unsigned short *) to)[i] = inw(port); } void inswb(unsigned int port, void *to, int len) { insw(port, to, len >> 2); } /* * Purpose: write a block of data from memory to a hardware register. * Proto : outsw(int to_reg, void *from, int len_in_words); * Proto : outswb(int to_reg, void *from, int len_in_bytes); * Notes : increments from */ void outsw(unsigned int port, const void *from, int len) { int i; for (i = 0; i < len; i++) outw(((unsigned short *) from)[i], port); } void outswb(unsigned int port, const void *from, int len) { outsw(port, from, len >> 2); } Loading
Documentation/dontdiff +2 −0 Original line number Original line Diff line number Diff line Loading @@ -41,6 +41,7 @@ COPYING CREDITS CREDITS CVS CVS ChangeSet ChangeSet Image Kerntypes Kerntypes MODS.txt MODS.txt Module.symvers Module.symvers Loading Loading @@ -103,6 +104,7 @@ logo_*.c logo_*_clut224.c logo_*_clut224.c logo_*_mono.c logo_*_mono.c lxdialog lxdialog mach-types.h make_times_h make_times_h map map maui_boot.h maui_boot.h Loading
arch/arm/configs/shark_defconfig +52 −33 Original line number Original line Diff line number Diff line # # # Automatically generated make config: don't edit # Automatically generated make config: don't edit # Linux kernel version: 2.6.12-rc1-bk2 # Linux kernel version: 2.6.12-git3 # Sun Mar 27 23:59:14 2005 # Sat Jul 16 15:21:47 2005 # # CONFIG_ARM=y CONFIG_ARM=y CONFIG_MMU=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_UID16=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_IOMAP=y # # # Code maturity level options # Code maturity level options # # CONFIG_EXPERIMENTAL=y CONFIG_EXPERIMENTAL=y # CONFIG_CLEAN_COMPILE is not set CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN=y CONFIG_BROKEN_ON_SMP=y CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 # # # General setup # General setup Loading @@ -33,7 +32,10 @@ CONFIG_KOBJECT_UEVENT=y # CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG is not set # CONFIG_EMBEDDED is not set # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_BASE_FULL=y CONFIG_BASE_FULL=y CONFIG_FUTEX=y CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_EPOLL=y Loading Loading @@ -81,6 +83,7 @@ CONFIG_ARCH_SHARK=y # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_IMX is not set # CONFIG_ARCH_IMX is not set # CONFIG_ARCH_H720X is not set # CONFIG_ARCH_H720X is not set # CONFIG_ARCH_AAEC2000 is not set # # # Processor Type # Processor Type Loading @@ -103,10 +106,12 @@ CONFIG_CPU_TLB_V4WB=y # # CONFIG_ISA=y CONFIG_ISA=y CONFIG_ISA_DMA=y CONFIG_ISA_DMA=y CONFIG_ISA_DMA_API=y CONFIG_PCI=y CONFIG_PCI=y CONFIG_PCI_HOST_VIA82C505=y CONFIG_PCI_HOST_VIA82C505=y CONFIG_PCI_LEGACY_PROC=y CONFIG_PCI_LEGACY_PROC=y # CONFIG_PCI_NAMES is not set # CONFIG_PCI_NAMES is not set # CONFIG_PCI_DEBUG is not set # # # PCCARD (PCMCIA/CardBus) support # PCCARD (PCMCIA/CardBus) support Loading @@ -116,7 +121,9 @@ CONFIG_PCI_LEGACY_PROC=y # # # Kernel Features # Kernel Features # # # CONFIG_SMP is not set # CONFIG_PREEMPT is not set # CONFIG_PREEMPT is not set # CONFIG_DISCONTIGMEM is not set CONFIG_LEDS=y CONFIG_LEDS=y CONFIG_LEDS_TIMER=y CONFIG_LEDS_TIMER=y # CONFIG_LEDS_CPU is not set # CONFIG_LEDS_CPU is not set Loading Loading @@ -163,6 +170,7 @@ CONFIG_BINFMT_ELF=y # CONFIG_STANDALONE is not set # CONFIG_STANDALONE is not set CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_FW_LOADER is not set # CONFIG_FW_LOADER is not set # CONFIG_DEBUG_DRIVER is not set # # # Memory Technology Devices (MTD) # Memory Technology Devices (MTD) Loading @@ -172,8 +180,8 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y # # # Parallel port support # Parallel port support # # CONFIG_PARPORT=y CONFIG_PARPORT=m CONFIG_PARPORT_PC=y CONFIG_PARPORT_PC=m # CONFIG_PARPORT_SERIAL is not set # CONFIG_PARPORT_SERIAL is not set # CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_SUPERIO is not set # CONFIG_PARPORT_PC_SUPERIO is not set Loading @@ -189,7 +197,6 @@ CONFIG_PARPORT_PC=y # # # Block devices # Block devices # # # CONFIG_BLK_DEV_FD is not set # CONFIG_BLK_DEV_XD is not set # CONFIG_BLK_DEV_XD is not set # CONFIG_PARIDE is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_DA is not set Loading Loading @@ -229,7 +236,7 @@ CONFIG_BLK_DEV_IDE=y # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_IDE_SATA is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_BLK_DEV_IDEDISK=y # CONFIG_IDEDISK_MULTI_MODE is not set # CONFIG_IDEDISK_MULTI_MODE is not set CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDECD=m # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDETAPE is not set CONFIG_BLK_DEV_IDEFLOPPY=y CONFIG_BLK_DEV_IDEFLOPPY=y # CONFIG_BLK_DEV_IDESCSI is not set # CONFIG_BLK_DEV_IDESCSI is not set Loading Loading @@ -261,6 +268,7 @@ CONFIG_CHR_DEV_ST=m CONFIG_BLK_DEV_SR=m CONFIG_BLK_DEV_SR=m # CONFIG_BLK_DEV_SR_VENDOR is not set # CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=m CONFIG_CHR_DEV_SG=m # CONFIG_CHR_DEV_SCH is not set # # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # Some SCSI devices (e.g. CD jukebox) support multiple LUNs Loading Loading @@ -290,17 +298,14 @@ CONFIG_CHR_DEV_SG=m # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_ADVANSYS is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_CPQFCTS is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DTC3280 is not set # CONFIG_SCSI_DTC3280 is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_GENERIC_NCR5380 is not set # CONFIG_SCSI_GENERIC_NCR5380 is not set Loading @@ -314,11 +319,8 @@ CONFIG_CHR_DEV_SG=m # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PCI2000 is not set # CONFIG_SCSI_PCI2220I is not set # CONFIG_SCSI_PSI240I is not set # CONFIG_SCSI_PSI240I is not set # CONFIG_SCSI_QLOGIC_FAS is not set # CONFIG_SCSI_QLOGIC_FAS is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=m CONFIG_SCSI_QLA2XXX=m Loading @@ -327,6 +329,7 @@ CONFIG_SCSI_QLA2XXX=m # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_LPFC is not set # CONFIG_SCSI_SYM53C416 is not set # CONFIG_SCSI_SYM53C416 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_DC390T is not set Loading @@ -344,6 +347,8 @@ CONFIG_SCSI_QLA2XXX=m # Fusion MPT device support # Fusion MPT device support # # # CONFIG_FUSION is not set # CONFIG_FUSION is not set # CONFIG_FUSION_SPI is not set # CONFIG_FUSION_FC is not set # # # IEEE 1394 (FireWire) support # IEEE 1394 (FireWire) support Loading @@ -365,7 +370,6 @@ CONFIG_NET=y # # CONFIG_PACKET=y CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set # CONFIG_PACKET_MMAP is not set # CONFIG_NETLINK_DEV is not set CONFIG_UNIX=y CONFIG_UNIX=y # CONFIG_NET_KEY is not set # CONFIG_NET_KEY is not set CONFIG_INET=y CONFIG_INET=y Loading @@ -380,7 +384,7 @@ CONFIG_INET=y # CONFIG_INET_ESP is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # CONFIG_INET_TUNNEL is not set # CONFIG_IP_TCPDIAG is not set CONFIG_IP_TCPDIAG=y # CONFIG_IP_TCPDIAG_IPV6 is not set # CONFIG_IP_TCPDIAG_IPV6 is not set # CONFIG_IPV6 is not set # CONFIG_IPV6 is not set # CONFIG_NETFILTER is not set # CONFIG_NETFILTER is not set Loading Loading @@ -439,6 +443,7 @@ CONFIG_NET_ETHERNET=y # CONFIG_LANCE is not set # CONFIG_LANCE is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_SMC91X is not set # CONFIG_SMC91X is not set # CONFIG_DM9000 is not set # CONFIG_NET_VENDOR_RACAL is not set # CONFIG_NET_VENDOR_RACAL is not set # # Loading Loading @@ -483,9 +488,11 @@ CONFIG_CS89x0=y # CONFIG_HAMACHI is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_R8169 is not set # CONFIG_SKGE is not set # CONFIG_SK98LIN is not set # CONFIG_SK98LIN is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_TIGON3 is not set # CONFIG_TIGON3 is not set # CONFIG_BNX2 is not set # # # Ethernet (10000 Mbit) # Ethernet (10000 Mbit) Loading Loading @@ -569,7 +576,6 @@ CONFIG_SERIO_I8042=y CONFIG_SERIO_LIBPS2=y CONFIG_SERIO_LIBPS2=y # CONFIG_SERIO_RAW is not set # CONFIG_SERIO_RAW is not set # CONFIG_GAMEPORT is not set # CONFIG_GAMEPORT is not set CONFIG_SOUND_GAMEPORT=y # # # Character devices # Character devices Loading @@ -592,6 +598,7 @@ CONFIG_SERIAL_8250_NR_UARTS=4 # # CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_JSM is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 CONFIG_LEGACY_PTY_COUNT=256 Loading Loading @@ -653,6 +660,7 @@ CONFIG_FB_CFB_FILLRECT=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_IMAGEBLIT=y CONFIG_FB_CFB_IMAGEBLIT=y CONFIG_FB_SOFT_CURSOR=y CONFIG_FB_SOFT_CURSOR=y # CONFIG_FB_MACMODES is not set # CONFIG_FB_MODE_HELPERS is not set # CONFIG_FB_MODE_HELPERS is not set # CONFIG_FB_TILEBLITTING is not set # CONFIG_FB_TILEBLITTING is not set # CONFIG_FB_CIRRUS is not set # CONFIG_FB_CIRRUS is not set Loading @@ -674,7 +682,7 @@ CONFIG_FB_CYBER2000=y # CONFIG_FB_3DFX is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_TRIDENT is not set # CONFIG_FB_TRIDENT is not set # CONFIG_FB_PM3 is not set # CONFIG_FB_S1D13XXX is not set # CONFIG_FB_VIRTUAL is not set # CONFIG_FB_VIRTUAL is not set # # Loading Loading @@ -808,7 +816,7 @@ CONFIG_DNOTIFY=y # # # CD-ROM/DVD Filesystems # CD-ROM/DVD Filesystems # # CONFIG_ISO9660_FS=y CONFIG_ISO9660_FS=m CONFIG_JOLIET=y CONFIG_JOLIET=y # CONFIG_ZISOFS is not set # CONFIG_ZISOFS is not set # CONFIG_UDF_FS is not set # CONFIG_UDF_FS is not set Loading @@ -816,9 +824,9 @@ CONFIG_JOLIET=y # # # DOS/FAT/NT Filesystems # DOS/FAT/NT Filesystems # # CONFIG_FAT_FS=y CONFIG_FAT_FS=m CONFIG_MSDOS_FS=y CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=y CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" # CONFIG_NTFS_FS is not set # CONFIG_NTFS_FS is not set Loading @@ -833,7 +841,6 @@ CONFIG_DEVFS_MOUNT=y # CONFIG_DEVFS_DEBUG is not set # CONFIG_DEVFS_DEBUG is not set # CONFIG_DEVPTS_FS_XATTR is not set # CONFIG_DEVPTS_FS_XATTR is not set # CONFIG_TMPFS is not set # CONFIG_TMPFS is not set # CONFIG_HUGETLBFS is not set # CONFIG_HUGETLB_PAGE is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y CONFIG_RAMFS=y Loading @@ -857,13 +864,14 @@ CONFIG_RAMFS=y # # # Network File Systems # Network File Systems # # CONFIG_NFS_FS=y CONFIG_NFS_FS=m # CONFIG_NFS_V3 is not set CONFIG_NFS_V3=y # CONFIG_NFS_V4 is not set # CONFIG_NFS_V4 is not set # CONFIG_NFS_DIRECTIO is not set # CONFIG_NFS_DIRECTIO is not set # CONFIG_NFSD is not set # CONFIG_NFSD is not set CONFIG_LOCKD=y CONFIG_LOCKD=m CONFIG_SUNRPC=y CONFIG_LOCKD_V4=y CONFIG_SUNRPC=m # CONFIG_RPCSEC_GSS_KRB5 is not set # CONFIG_RPCSEC_GSS_KRB5 is not set # CONFIG_RPCSEC_GSS_SPKM3 is not set # CONFIG_RPCSEC_GSS_SPKM3 is not set # CONFIG_SMB_FS is not set # CONFIG_SMB_FS is not set Loading Loading @@ -895,12 +903,12 @@ CONFIG_MSDOS_PARTITION=y # # # Native Language Support # Native Language Support # # CONFIG_NLS=y CONFIG_NLS=m CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_437=m # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set # CONFIG_NLS_CODEPAGE_775 is not set CONFIG_NLS_CODEPAGE_850=y CONFIG_NLS_CODEPAGE_850=m # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_857 is not set Loading @@ -921,7 +929,7 @@ CONFIG_NLS_CODEPAGE_850=y # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_ASCII is not set # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_1=m # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_4 is not set Loading @@ -945,11 +953,22 @@ CONFIG_NLS_ISO8859_1=y # Kernel hacking # Kernel hacking # # # CONFIG_PRINTK_TIME is not set # CONFIG_PRINTK_TIME is not set # CONFIG_DEBUG_KERNEL is not set CONFIG_DEBUG_KERNEL=y # CONFIG_MAGIC_SYSRQ is not set CONFIG_LOG_BUF_SHIFT=14 CONFIG_LOG_BUF_SHIFT=14 # CONFIG_SCHEDSTATS is not set # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_SPINLOCK_SLEEP is not set # CONFIG_DEBUG_KOBJECT is not set CONFIG_DEBUG_BUGVERBOSE=y CONFIG_DEBUG_BUGVERBOSE=y # CONFIG_DEBUG_INFO is not set # CONFIG_DEBUG_FS is not set CONFIG_FRAME_POINTER=y CONFIG_FRAME_POINTER=y CONFIG_DEBUG_USER=y CONFIG_DEBUG_USER=y # CONFIG_DEBUG_WAITQ is not set # CONFIG_DEBUG_ERRORS is not set # CONFIG_DEBUG_LL is not set # # # Security options # Security options Loading
arch/arm/kernel/traps.c +8 −4 Original line number Original line Diff line number Diff line Loading @@ -248,16 +248,20 @@ static DEFINE_SPINLOCK(undef_lock); void register_undef_hook(struct undef_hook *hook) void register_undef_hook(struct undef_hook *hook) { { spin_lock_irq(&undef_lock); unsigned long flags; spin_lock_irqsave(&undef_lock, flags); list_add(&hook->node, &undef_hook); list_add(&hook->node, &undef_hook); spin_unlock_irq(&undef_lock); spin_unlock_irqrestore(&undef_lock, flags); } } void unregister_undef_hook(struct undef_hook *hook) void unregister_undef_hook(struct undef_hook *hook) { { spin_lock_irq(&undef_lock); unsigned long flags; spin_lock_irqsave(&undef_lock, flags); list_del(&hook->node); list_del(&hook->node); spin_unlock_irq(&undef_lock); spin_unlock_irqrestore(&undef_lock, flags); } } asmlinkage void do_undefinstr(struct pt_regs *regs) asmlinkage void do_undefinstr(struct pt_regs *regs) Loading
arch/arm/lib/bitops.h +31 −0 Original line number Original line Diff line number Diff line #if __LINUX_ARM_ARCH__ >= 6 .macro bitop, instr mov r2, #1 and r3, r0, #7 @ Get bit offset add r1, r1, r0, lsr #3 @ Get byte offset mov r3, r2, lsl r3 1: ldrexb r2, [r1] \instr r2, r2, r3 strexb r0, r2, [r1] cmpne r0, #0 bne 1b mov pc, lr .endm .macro testop, instr, store and r3, r0, #7 @ Get bit offset mov r2, #1 add r1, r1, r0, lsr #3 @ Get byte offset mov r3, r2, lsl r3 @ create mask 1: ldrexb r2, [r1] ands r0, r2, r3 @ save old value of bit \instr ip, r2, r3 @ toggle bit strexb r2, ip, [r1] cmp r2, #0 bne 1b cmp r0, #0 movne r0, #1 2: mov pc, lr .endm #else .macro bitop, instr .macro bitop, instr and r2, r0, #7 and r2, r0, #7 mov r3, #1 mov r3, #1 Loading Loading @@ -31,3 +61,4 @@ moveq r0, #0 moveq r0, #0 mov pc, lr mov pc, lr .endm .endm #endif
arch/arm/lib/io-shark.c +0 −70 Original line number Original line Diff line number Diff line Loading @@ -11,73 +11,3 @@ * it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * published by the Free Software Foundation. */ */ #include <linux/kernel.h> #include <asm/io.h> void print_warning(void) { printk(KERN_WARNING "ins?/outs? not implemented on this architecture\n"); } void insl(unsigned int port, void *to, int len) { print_warning(); } void insb(unsigned int port, void *to, int len) { print_warning(); } void outsl(unsigned int port, const void *from, int len) { print_warning(); } void outsb(unsigned int port, const void *from, int len) { print_warning(); } /* these should be in assembler again */ /* * Purpose: read a block of data from a hardware register to memory. * Proto : insw(int from_port, void *to, int len_in_words); * Proto : inswb(int from_port, void *to, int len_in_bytes); * Notes : increment to */ void insw(unsigned int port, void *to, int len) { int i; for (i = 0; i < len; i++) ((unsigned short *) to)[i] = inw(port); } void inswb(unsigned int port, void *to, int len) { insw(port, to, len >> 2); } /* * Purpose: write a block of data from memory to a hardware register. * Proto : outsw(int to_reg, void *from, int len_in_words); * Proto : outswb(int to_reg, void *from, int len_in_bytes); * Notes : increments from */ void outsw(unsigned int port, const void *from, int len) { int i; for (i = 0; i < len; i++) outw(((unsigned short *) from)[i], port); } void outswb(unsigned int port, const void *from, int len) { outsw(port, from, len >> 2); }