⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 v2.6.20-rc1-gitcurrent.patch

📁 ARM S3C2410 USB SLAVE LINUX驱动
💻 PATCH
📖 第 1 页 / 共 5 页
字号:
+#+# MMC/SD Card support+#+# CONFIG_MMC is not set++#+# LED devices+#+# CONFIG_NEW_LEDS is not set++#+# LED drivers+#++#+# LED Triggers+#++#+# InfiniBand support+#+# CONFIG_INFINIBAND is not set++#+# EDAC - error detection and reporting (RAS) (EXPERIMENTAL)+#++#+# Real Time Clock+#+# CONFIG_RTC_CLASS is not set++#+# DMA Engine support+#+# CONFIG_DMA_ENGINE is not set++#+# DMA Clients+#++#+# DMA Devices+#++#+# Virtualization+#++#+# Misc Linux/SPARC drivers+#+CONFIG_SUN_OPENPROMIO=m+CONFIG_SUN_MOSTEK_RTC=m+# CONFIG_SUN_BPP is not set+# CONFIG_SUN_VIDEOPIX is not set+# CONFIG_TADPOLE_TS102_UCTRL is not set+# CONFIG_SUN_JSFLASH is not set++#+# Unix98 PTY support+#+CONFIG_UNIX98_PTY_COUNT=256++# # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y CONFIG_EXT2_FS_POSIX_ACL=y CONFIG_EXT2_FS_SECURITY=y+# CONFIG_EXT2_FS_XIP is not set # CONFIG_EXT3_FS is not set-# CONFIG_JBD is not set+# CONFIG_EXT4DEV_FS is not set CONFIG_FS_MBCACHE=y # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set CONFIG_FS_POSIX_ACL=y CONFIG_XFS_FS=m-CONFIG_XFS_RT=y CONFIG_XFS_QUOTA=y CONFIG_XFS_SECURITY=y CONFIG_XFS_POSIX_ACL=y+CONFIG_XFS_RT=y+# CONFIG_GFS2_FS is not set+# CONFIG_OCFS2_FS is not set # CONFIG_MINIX_FS is not set CONFIG_ROMFS_FS=m+CONFIG_INOTIFY=y+CONFIG_INOTIFY_USER=y # CONFIG_QUOTA is not set CONFIG_QUOTACTL=y+CONFIG_DNOTIFY=y CONFIG_AUTOFS_FS=m CONFIG_AUTOFS4_FS=m+# CONFIG_FUSE_FS is not set  # # CD-ROM/DVD Filesystems@@ -468,7 +780,8 @@ # CONFIG_UDF_FS is not set # # DOS/FAT/NT Filesystems #-# CONFIG_FAT_FS is not set+# CONFIG_MSDOS_FS is not set+# CONFIG_VFAT_FS is not set # CONFIG_NTFS_FS is not set  #@@ -476,13 +789,12 @@ # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y+CONFIG_PROC_SYSCTL=y CONFIG_SYSFS=y-# CONFIG_DEVFS_FS is not set-CONFIG_DEVPTS_FS_XATTR=y-# CONFIG_DEVPTS_FS_SECURITY is not set # CONFIG_TMPFS is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y+# CONFIG_CONFIGFS_FS is not set  # # Miscellaneous filesystems@@ -512,17 +824,23 @@ # CONFIG_NFS_DIRECTIO is not set # CONFIG_NFSD is not set CONFIG_ROOT_NFS=y CONFIG_LOCKD=y-# CONFIG_EXPORTFS is not set+CONFIG_NFS_COMMON=y CONFIG_SUNRPC=y CONFIG_SUNRPC_GSS=m CONFIG_RPCSEC_GSS_KRB5=m+# CONFIG_RPCSEC_GSS_SPKM3 is not set # CONFIG_SMB_FS is not set CONFIG_CIFS=m # CONFIG_CIFS_STATS is not set+# CONFIG_CIFS_WEAK_PW_HASH is not set+# CONFIG_CIFS_XATTR is not set+# CONFIG_CIFS_DEBUG2 is not set+# CONFIG_CIFS_EXPERIMENTAL is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set CONFIG_AFS_FS=m CONFIG_RXRPC=m+# CONFIG_9P_FS is not set  # # Partition Types@@ -559,6 +877,7 @@ # CONFIG_NLS_CODEPAGE_874 is not set # CONFIG_NLS_ISO8859_8 is not set # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1251 is not set+# CONFIG_NLS_ASCII is not set # CONFIG_NLS_ISO8859_1 is not set # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set@@ -575,70 +894,104 @@ # CONFIG_NLS_KOI8_U is not set # CONFIG_NLS_UTF8 is not set  #-# Sound-#-# CONFIG_SOUND is not set--#-# USB support+# Distributed Lock Manager #-# CONFIG_USB is not set--#-# USB Gadget Support-#-# CONFIG_USB_GADGET is not set+# CONFIG_DLM is not set  #-# Watchdog Cards+# Instrumentation Support #-# CONFIG_WATCHDOG is not set+# CONFIG_PROFILING is not set  # # Kernel hacking #+# CONFIG_PRINTK_TIME is not set+CONFIG_ENABLE_MUST_CHECK=y+CONFIG_MAGIC_SYSRQ=y+# CONFIG_UNUSED_SYMBOLS is not set+# CONFIG_DEBUG_FS is not set+# CONFIG_HEADERS_CHECK is not set CONFIG_DEBUG_KERNEL=y-# CONFIG_DEBUG_STACK_USAGE is not set+CONFIG_LOG_BUF_SHIFT=14+CONFIG_DETECT_SOFTLOCKUP=y+# CONFIG_SCHEDSTATS is not set # CONFIG_DEBUG_SLAB is not set-CONFIG_MAGIC_SYSRQ=y+# CONFIG_DEBUG_RT_MUTEXES is not set+# CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set-# CONFIG_DEBUG_HIGHMEM is not set+# CONFIG_DEBUG_MUTEXES is not set+# CONFIG_DEBUG_RWSEMS is not set # CONFIG_DEBUG_SPINLOCK_SLEEP is not set-# CONFIG_DEBUG_BUGVERBOSE is not set+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set+# CONFIG_DEBUG_KOBJECT is not set+# CONFIG_DEBUG_HIGHMEM is not set+CONFIG_DEBUG_BUGVERBOSE=y+# CONFIG_DEBUG_INFO is not set+# CONFIG_DEBUG_VM is not set+# CONFIG_DEBUG_LIST is not set+CONFIG_FORCED_INLINING=y+# CONFIG_RCU_TORTURE_TEST is not set+# CONFIG_DEBUG_STACK_USAGE is not set  # # Security options #+# CONFIG_KEYS is not set # CONFIG_SECURITY is not set  # # Cryptographic options # CONFIG_CRYPTO=y+CONFIG_CRYPTO_ALGAPI=y+CONFIG_CRYPTO_BLKCIPHER=y+CONFIG_CRYPTO_HASH=y+CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_HMAC=y+# CONFIG_CRYPTO_XCBC is not set CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_MD4=y CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_SHA1=y CONFIG_CRYPTO_SHA256=m CONFIG_CRYPTO_SHA512=m+# CONFIG_CRYPTO_WP512 is not set+# CONFIG_CRYPTO_TGR192 is not set+# CONFIG_CRYPTO_GF128MUL is not set+CONFIG_CRYPTO_ECB=m+CONFIG_CRYPTO_CBC=y+# CONFIG_CRYPTO_LRW is not set CONFIG_CRYPTO_DES=y CONFIG_CRYPTO_BLOWFISH=m CONFIG_CRYPTO_TWOFISH=m+CONFIG_CRYPTO_TWOFISH_COMMON=m CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_AES=m CONFIG_CRYPTO_CAST5=m CONFIG_CRYPTO_CAST6=m+# CONFIG_CRYPTO_TEA is not set CONFIG_CRYPTO_ARC4=m+# CONFIG_CRYPTO_KHAZAD is not set+# CONFIG_CRYPTO_ANUBIS is not set CONFIG_CRYPTO_DEFLATE=y CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_CRC32C=m # CONFIG_CRYPTO_TEST is not set  #+# Hardware crypto devices+#++# # Library routines #+CONFIG_BITREVERSE=y+# CONFIG_CRC_CCITT is not set+# CONFIG_CRC16 is not set CONFIG_CRC32=y CONFIG_LIBCRC32C=m CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y+CONFIG_PLIST=y+CONFIG_IOMAP_COPY=ydiff --git a/arch/sparc/kernel/sparc_ksyms.c b/arch/sparc/kernel/sparc_ksyms.cindex 33dadd9..d8e008a 100644--- a/arch/sparc/kernel/sparc_ksyms.c+++ b/arch/sparc/kernel/sparc_ksyms.c@@ -83,9 +83,6 @@ extern int __divdi3(int, int); /* Private functions with odd calling conventions. */ extern void ___atomic24_add(void); extern void ___atomic24_sub(void);-extern void ___set_bit(void);-extern void ___clear_bit(void);-extern void ___change_bit(void); extern void ___rw_read_enter(void); extern void ___rw_read_try(void); extern void ___rw_read_exit(void);@@ -125,11 +122,6 @@ EXPORT_SYMBOL(pfn_base); EXPORT_SYMBOL(___atomic24_add); EXPORT_SYMBOL(___atomic24_sub); -/* Bit operations. */-EXPORT_SYMBOL(___set_bit);-EXPORT_SYMBOL(___clear_bit);-EXPORT_SYMBOL(___change_bit);- /* Per-CPU information table */ EXPORT_PER_CPU_SYMBOL(__cpu_data); diff --git a/arch/sparc/kernel/time.c b/arch/sparc/kernel/time.cindex 6c7aa51..2fcce00 100644--- a/arch/sparc/kernel/time.c+++ b/arch/sparc/kernel/time.c@@ -78,7 +78,6 @@ unsigned long profile_pc(struct pt_regs  	extern char __copy_user_begin[], __copy_user_end[]; 	extern char __atomic_begin[], __atomic_end[]; 	extern char __bzero_begin[], __bzero_end[];-	extern char __bitops_begin[], __bitops_end[];  	unsigned long pc = regs->pc; @@ -88,9 +87,7 @@ unsigned long profile_pc(struct pt_regs  	    (pc >= (unsigned long) __atomic_begin && 	     pc < (unsigned long) __atomic_end) || 	    (pc >= (unsigned long) __bzero_begin &&-	     pc < (unsigned long) __bzero_end) ||-	    (pc >= (unsigned long) __bitops_begin &&-	     pc < (unsigned long) __bitops_end))+	     pc < (unsigned long) __bzero_end)) 		pc = regs->u_regs[UREG_RETPC]; 	return pc; }diff --git a/arch/sparc/lib/Makefile b/arch/sparc/lib/Makefileindex 5db7e1d..9ddc5b9 100644--- a/arch/sparc/lib/Makefile+++ b/arch/sparc/lib/Makefile@@ -7,7 +7,7 @@ EXTRA_AFLAGS := -ansi -DST_DIV0=0x02 lib-y := mul.o rem.o sdiv.o udiv.o umul.o urem.o ashrdi3.o memcpy.o memset.o \          strlen.o checksum.o blockops.o memscan.o memcmp.o strncmp.o \ 	 strncpy_from_user.o divdi3.o udivdi3.o strlen_user.o \-	 copy_user.o locks.o atomic.o atomic32.o bitops.o \+	 copy_user.o locks.o atomic.o \ 	 lshrdi3.o ashldi3.o rwsem.o muldi3.o bitext.o -obj-y += iomap.o+obj-y += iomap.o atomic32.odiff --git a/arch/sparc/lib/atomic32.c b/arch/sparc/lib/atomic32.cindex de84f85..53ddcd9 100644--- a/arch/sparc/lib/atomic32.c+++ b/arch/sparc/lib/atomic32.c@@ -76,3 +76,42 @@ void atomic_set(atomic_t *v, int i) 	spin_unlock_irqrestore(ATOMIC_HASH(v), flags); } EXPORT_SYMBOL(atomic_set);++unsigned long ___set_bit(unsigned long *addr, unsigned long mask)+{+	unsigned long old, flags;++	spin_lock_irqsave(ATOMIC_HASH(addr), flags);+	old = *addr;+	*addr = old | mask;+	spin_unlock_irqrestore(ATOMIC_HASH(addr), flags);++	return old & mask;+}+EXPORT_SYMBOL(___set_bit);++unsigned long ___clear_bit(unsigned long *addr, unsigned long mask)+{+	unsigned long old, flags;++	spin_lock_irqsave(ATOMIC_HASH(addr), flags);+	old = *addr;+	*addr = old & ~mask;+	spin_unlock_irqrestore(ATOMIC_HASH(addr), flags);++	return old & mask;+}+EXPORT_SYMBOL(___clear_bit);++unsigned long ___change_bit(unsigned long *addr, unsigned long mask)+{+	unsigned long old, flags;++	spin_lock_irqsave(ATOMIC_HASH(addr), flags);+	old = *addr;+	*addr = old ^ mask;+	spin_unlock_irqrestore(ATOMIC_HASH(addr), flags);++	return old & mask;+}+EXPORT_SYMBOL(___change_bit);diff --git a/arch/sparc/lib/bitops.S b/arch/sparc/lib/bitops.Sdeleted file mode 100644index cb7fb66..0000000--- a/arch/sparc/lib/bitops.S+++ /dev/null@@ -1,109 +0,0 @@-/* bitops.S: Low level assembler bit operations.- *- * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)- */--#include <asm/ptrace.h>-#include <asm/psr.h>--	.text-	.align	4--	.globl  __bitops_begin-__bitops_begin:--	/* Take bits in %g2 and set them in word at %g1,-	 * return whether bits were set in original value-	 * in %g2.  %g4 holds value to restore into %o7-	 * in delay slot of jmpl return, %g3 + %g5 + %g7 can be-	 * used as temporaries and thus is considered clobbered-	 * by all callers.-	 */-	.globl	___set_bit-___set_bit:-	rd	%psr, %g3-	nop; nop; nop;-	or	%g3, PSR_PIL, %g5-	wr	%g5, 0x0, %psr-	nop; nop; nop-#ifdef CONFIG_SMP-	set	bitops_spinlock, %g5-2:	ldstub	[%g5], %g7		! Spin on the byte lock for SMP.-	orcc	%g7, 0x0, %g0		! Did we get it?-	bne	2b			! Nope...-#endif-	 ld	[%g1], %g7-	or	%g7, %g2, %g5-	and	%g7, %g2, %g2-#ifdef CONFIG_SMP-	st	%g5, [%g1]-	set	bitops_spinlock, %g5-	stb	%g0, [%g5]-#else-	st	%g5, [%g1]-#endif-	wr	%g3, 0x0, %psr-	nop; nop; nop-	jmpl	%o7, %g0-	 mov	%g4, %o7--	/* Same as above, but clears the bits from %g2 instead. */-	.globl	___clear_bit-___clear_bit:-	rd	%psr, %g3-	nop; nop; nop-	or	%g3, PSR_PIL, %g5-	wr	%g5, 0x0, %psr-	nop; nop; nop-#ifdef CONFIG_SMP-	set	bitops_spinlock, %g5-2:	ldstub	[%g5], %g7		! Spin on the byte lock for SMP.-	orcc	%g7, 0x0, %g0		! Did we get it?-	bne	2b			! Nope...-#endif-	 ld	[%g1], %g7-	andn	%g7, %g2, %g5-	and	%g7, %g2, %g2-#ifdef CONFIG_SMP-	st	%g5, [%g1]-	set	bitops_spinlock, %g5-	stb	%g0, [%g5]-#else-	st	%g5, [%g1]-#endif-	wr	%g3, 0x0, %psr-	nop; nop; nop-	jmpl	%o7, %g0-	 mov	%g4, %o7--	/* Same thing again, but this time toggles the bits from %g2. */-	.globl	___change_bit-___change_bit:-	rd	%psr, %g3-	nop; nop; nop-	or	%g3, PSR_PIL, %g5-	wr	%g5, 0x0, %psr-	nop; nop; nop-#ifdef CONFIG_SMP-	set	bitops_spinlock, %g5-2:	ldstub	[%g5], %g7		! Spin on the byte lock for SMP.-	orcc	%g7, 0x0, %g0		! Did we get it?-	bne	2b			! Nope...-#endif-	 ld	[%g1], %g7-	xor	%g7, %g2, %g5-	and	%g7, %g2, %g2-#ifdef CONFIG_SMP-	st	%g5, [%g1]-	set	bitops_spinlock, %g5-	stb	%g0, [%g5]-#else-	st	%g5, [%g1]-#endif-	wr	%g3, 0x0, %psr-	nop; nop; nop-	jmpl	%o7, %g0-	 mov	%g4, %o7--	.globl  __bitops_end-__bitops_end:diff --git a/arch/sparc64/kernel/head.S b/arch/sparc64/kernel/head.Sindex 03ffaf8..baea10a 100644--- a/arch/sparc64/kernel/head.S+++ b/arch/sparc64/kernel/head.S@@ -78,11 +78,7 @@ sparc_ramdisk_image64:  	/* PROM cif handler code address is in %o4.  */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -