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

📄 patch-2.6.0-rmk2

📁 linux 2.6.0 的arm补丁 .做嵌入式的来下
💻 0-RMK2
📖 第 1 页 / 共 5 页
字号:
+- Many bugs fixed in usb-char.c++- Fiddled startup sequence so should start everytime.++- Arch specific "soft connect" hook in usb_ctl.c++- Bumped the interation count in write/set/clear macros+in usb_ctl.h up to 10000. This seemed to help various bit+setting in ep0 and usb_send.c.++*** Following changes 10Feb01 release:++- endpoint zero entirely rewitten++- Various changes by Oleg to make Netlink work again after the+  2.4.1-rmk1-np1 release.++- Resetting of new max packet length done after clearing TPC+in usb_send, per Nicolas Pitre.+++*** Following changes 23Jan01 (came out in 2.4.1-rmk1-np1):++- Moved host initiated SET/GET feature stall into endpoint code of+usb_send.c and usb_receive.c and removed stallep from usb_ctl.c+Opposite of a SET_FEATURE stall is a reset, so no code to unstall is+provided.++- Added explicit USB state machine to usb_ctl so driver and device+state can be tracked closely and explicitly. Added hard-wired+notification routines in endpoints 1 and 2 so they can track device+state changes as required. State machine has notion of "zombie" state+the covers USB states NONATTACHED, ATTACHED and POWERED since these+are murky, and USB driver currently has no way to differentiate+between the two.++- Reworked ISR in usb_ctl so reset has higher priority than any other+event. Stopped using sync macros to clear interrupt pending flags and set+mask registers since it appears mask register changes are not+always reflected on a mask register read until the pending flag is+cleared (yet other tests show they are always cleared+eventually). Toggle suspend/resume interrupt masks back and forth during+suspend and resume to debounce and keep UDC internal state machine in+sync per Intel documentation.++- Flipped UDC flip, clear, write and set macros from do{}while to+while() loops. Theory is you might save a loop iteration if value+becomes valid immediately. Also, my hardware guy says writes are never+"lost", just pipelined and not executed immediately depending on+internal device conditions (like setting int masks when ints+pending), so moved write cycles in macros outside of loops.++- Added #defines to SA-1110.h for suspend and resume interrupt mask+bits per Intel eratta. Submitted to ARM patch system (444/1).++- Removed task queue and defered execution of configure() from+usb_ctl.++- Removed usb_write_reg() from usb_ctl.c, and various cruft from+usb_ctl.h.++- Added sa1100_usb_xmitter_avail() to usb_send.c. Makes implementing+poll() fileop easier.++- Added sa1100_usb_send_reset() to usb_send.c. Makes implementing+transmitter timeout easier.++- Added API to usb_ctl to set vendor and product ID++- Changed BMATTR descriptor fron int to bulk, when not using netlink. (All+the docs say UDC does not support INT xfers -- though, at the protocol+level I don't see why not, since bulk and int are both just+IN-DATA-ACK. I figure netlink may rely on this, and not just a+continuous pending read from the host, but for "pure bulk" host+polling may not be generally correct.)++- Removed unused rx_lock and tx_lock from usb_ctl++- Converted everyone to SA-1100.h and nuked hardware defines in usb_ctl.h++- Removed udc_init() in usb_ctl.c and folded functionality into udc_start().++- Clear force stall (FST) in udc_start and reset so UDC actually runs when+first turned on.++- Emit NAK in receiver until ep1_start() for error (RPE) case too.++- Remove enable/disable UDC from reset handler in udc_ctl. The UDC has+already been reset, so no need to do this again.++- Explicitly set address to zero in ep0_reset()++- Added "naking" boolean to usb_receiv.c. An attempt to solve a+hypothetical race condition where we are in the critical section+initiating a read from base-level code, a RPC happens, and start()+might clear the condition before the packet is handled by the ISR.diff -urN orig/Documentation/arm/memory.txt linux/Documentation/arm/memory.txt--- orig/Documentation/arm/memory.txt	Thu Jan  1 01:00:00 1970+++ linux/Documentation/arm/memory.txt	Sun Apr 27 10:53:47 2003@@ -0,0 +1,74 @@+		Kernel Memory Layout on ARM Linux++		Russell King <rmk@arm.linux.org.uk>+			April 27, 2003 (2.5.68)++This document describes the virtual memory layout which the Linux+kernel uses for ARM processors.  It indicates which regions are+free for platforms to use, and which are used by generic code.++The ARM CPU is capable of addressing a maximum of 4GB virtual memory+space, and this must be shared between user space processes, the+kernel, and hardware devices.++As the ARM architecture matures, it becomes necessary to reserve+certain regions of VM space for use for new facilities; therefore+this document may reserve more VM space over time.++Start		End		Use+--------------------------------------------------------------------------+ffff8000	ffffffff	copy_user_page / clear_user_page use.+				For SA11xx and Xscale, this is used to+				setup a minicache mapping.++ffff1000	ffff7fff	Reserved.+				Platforms must not use this address range.++ffff0000	ffff0fff	CPU vector page.+				The CPU vectors are mapped here if the+				CPU supports vector relocation (control+				register V bit.)++ffe00000	fffeffff	Free for platform use, not recommended.++ffc00000	ffdfffff	2MB consistent memory mapping.+				Memory returned by the consistent_alloc+				low level function will be dynamically+				mapped here.++ff000000	ffbfffff	Free for platform use, not recommended.++VMALLOC_END	ff000000	Free for platform use, recommended.++VMALLOC_START	VMALLOC_END	vmalloc() / ioremap() space.+				Memory returned by vmalloc/ioremap will+				be dynamically placed in this region.+				VMALLOC_START may be based upon the value+				of the high_memory variable.++PAGE_OFFSET	high_memory	Kernel direct-mapped RAM region.+				This maps the platforms RAM, and typically+				maps all platform RAM in a 1:1 relationship.++TASK_SIZE	PAGE_OFFSET	Kernel module space+				Kernel modules inserted via insmod are+				placed here using dynamic mappings.++00001000	TASK_SIZE	User space mappings+				Per-thread mappings are placed here via+				the mmap() system call.++00000000	00000fff	CPU vector page / null pointer trap+				CPUs which do not support vector remapping+				place their vector page here.  NULL pointer+				dereferences by both the kernel and user+				space are also caught via this mapping.++Please note that mappings which collide with the above areas may result+in a non-bootable kernel, or may cause the kernel to (eventually) panic+at run time.++Since future CPUs may impact the kernel mapping layout, user programs+must not access any memory which is not mapped inside their 0x0001000+to TASK_SIZE address range.  If they wish to access these areas, they+must set up their own mappings using open() and mmap().diff -urN orig/Documentation/l3/structure linux/Documentation/l3/structure--- orig/Documentation/l3/structure	Thu Jan  1 01:00:00 1970+++ linux/Documentation/l3/structure	Sun Aug  5 18:40:00 2001@@ -0,0 +1,36 @@+L3 Bus Driver+-------------++The structure of the driver is as follows:++	+----------+	+----------+	+----------++	| client 1 |	| client 2 |	| client 3 |+	+-----^----+	+----^-----+	+----^-----++	      |		     |               |+	+-----v--------------v---------------v-----++	|                                          |+	+-----^-------+              +-------^-----++	      |	      |     core     |       |+	+-----v----+  |	             |  +----v-----++	| device   |  |	             |  | device   |+	| driver 1 |  |              |	| driver 2 |+	+-----^----+  |              |  +----^-----++	      |	      |	  services   |       |+	+-----v-------+              +-------v-----++	|                                          |+	+-----------------^----^-------------------++			  |    |+			  |  +-v---------++			  |  | algorithm |+			  |  |  driver   |+			  |  +-v---------++			  |    |+			+-v----v-++			|  bus   |+			| driver |+			+--------+++Clients talk to the core to attach device drivers and bus adapters, and+to instruct device drivers to perform actions.  Device drivers then talk+to the core to perform L3 bus transactions via the algorithm driver and+ultimately bus driver.diff -urN orig/Documentation/sound/oss/WaveArtist linux/Documentation/sound/oss/WaveArtist--- orig/Documentation/sound/oss/WaveArtist	Mon Mar 11 11:55:34 2002+++ linux/Documentation/sound/oss/WaveArtist	Thu May  8 00:59:57 2003@@ -20,6 +20,7 @@  02 | 0 | 0  1  1  1 | left mic mixer gain        | left mic  | left mixer gain |dith | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+  03 | 0 | 1  0  0  1 | left mixer input select                |lrfg | left ADC gain   |+    |   |            | pcm |     |micx |mic |aux1 |     |line |     |                 | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+  04 | 0 | 1  0  1  1 | right line mixer gain      | right aux1 mixer gain       |rmute| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+@@ -28,6 +29,7 @@  06 | 0 | 1  1  1  1 | right mic mixer gain       | right mic |right mixer gain |rbyps| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+  07 | 1 | 0  0  0  1 | right mixer select                     |rrfg | right ADC gain  |+    |   |            | pcm |     |micx |mic |aux1 |     |line |     |                 | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+  08 | 1 | 0  0  1  1 | mono mixer gain            |right ADC mux sel|left ADC mux sel | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+@@ -91,59 +93,67 @@   L    | |     +----+  +------+  |   |  |        | |                       |   |  \------\  Aux1  | |     +----+  +------+  |   |         |- --------*----->mute>--> Gain >--> I |         |-  L    |       +----+  +------+  |   |         |+ --------*----->mute>--> Gain >-->   |         |+  L    |       +----+  +------+  | I |         |        |                         |   |         |-       |       +----+  +------+  |   |  +---+  |-       *------->mute>--> Gain >--> X >-->AMP>--*+ (Mic) |       +----+  +------+  |   |  +---+  |+       *------->mute>--> Gain >-->   >-->AMP>--*        |       +----+  +------+  |   |  +-^-+  |-       |                         |   |    |    |-       |       +----+  +------+  |   |  r2b1-3 |  -       | /----->mute>--> Gain >--> E |         |+       |                         | X |    |    |+ (Micx)|       +----+  +------+  |   |  r2b1-3 |  +       | /----->mute>--> Gain >-->   |         |        | |     +----+  +------+  |   |         |        | |                       |   |         |-       | |     +----+  +------+  |   |         |-       | | /--->mute>--> Gain >--> R |         |+ (Mono)| |     +----+  +------+  | E |         |+       | | /--->mute>--> Gain >-->   |         |        | | |   +----+  +------+  |   |         |+       | | |                     |   |         |+ FM    | | |           +------+  |   |         |+ ----------------------> Gain >--> R |         |+  L    | | |           +------+  |   |         |        | | |                     |   |         |   r9b8-9        | | |   +----+  +------+  |   |         |     |        | | | /->mute>--> Gain >-->   |         | +---v---+        | | | | +----+  +------+  +---+       /-*->0      |- DAC   | | | |                               |   |       |+ PCM   | | | |                               |   |       |  ------------*----------------------------------->?      |  +----+   L    | | |                                 |   |  Mux  >-->mute>--> L output        | | |                                 | /->?      |  +--^-+        | | |                                 | | |       |     |-       | | |                           /--------->?      |   r0b0-       | | |                           |     | | +-------+-       | | |                           |     | |- Mono  | | |                           |     | | +-------+- ----------*                           |     \--->       |  +----+-       | | |                           |       | |  Mix  >-->mute>--> Mono output-       | | |                           |       *->       |  +--^-+-       | | |                           |       | +-------+     |-       | | |                           |       |             r1b0- DAC   | | |                           |       | +-------+- ------------*-------------------------*--------->1      |  +----++       | | |                               /----->?      |   r0b0+       | | |                               | | | +-------++       | | |                               | | |+ Mono  | | |                               | | | +-------++ ----------*                               | \--->       |  +----++       | | |                               |   | |  Mix  >-->mute>--> Mono output+       | | |                               |   *->       |  +--^-++       | | |                               |   | +-------+     |+       | | |                               |   |             r1b0+ PCM   | | |                               |   | +-------++ ------------*-----------------------------*----->1      |  +----+   R    | | | |                                 | |  Mux  >-->mute>--> R output        | | | | +----+  +------+  +---+         *->0      |  +--^-+        | | | \->mute>--> Gain >-->   |         | +---^---+     |-       | | |   +----+  +------+  |   |         |     |       r5b0+       | | |   +----+  +------+  |   |         |     |       r4b0        | | |                     |   |         |   r6b0-       | | |   +----+  +------+  |   |         |-       | | \--->mute>--> Gain >--> M |         |-       | |     +----+  +------+  |   |         |-       | |                       |   |         |-       | |     +----+  +------+  |   |         |-       | *----->mute>--> Gain >--> I |         |-       | |     +----+  +------+  |   |         |+ FM    | | |           +------+  |   |         |+ ----------------------> Gain >--> M |         |+  R    | | |           +------+  |   |         |+       | | |                     |   |         |+ (Mono)| | |   +----+  +------+  |   |         |+       | | \--->mute>--> Gain >-->   |         |+       | |     +----+  +------+  | I |         |        | |                       |   |         |-       | |     +----+  +------+  |   |  +---+  |-       \------->mute>--> Gain >--> X >-->AMP>--*-         |     +----+  +------+  |   |  +-^-+  |-      /--/                       |   |    |    |- Aux1 |        +----+  +------+  |   |  r6b1-3 |- -------*------>mute>--> Gain >--> E |         |+ (Micx)| |     +----+  +------+  |   |         |+       \------->mute>--> Gain >-->   |         |+         |     +----+  +------+  |   |         |+         |                       | X |         |+ (Mic)   |     +----+  +------+  |   |  +---+  |+      /--*----->mute>--> Gain >-->   >-->AMP>--*+      |        +----+  +------+  |   |  +-^-+  |+      |                          |   |    |    |+ Aux1 |        +----+  +------+  | E |  r6b1-3 |+ -------*------>mute>--> Gain >-->   |         |   R   | |      +----+  +------+  |   |         |       | |                        |   |         |  Aux2 | |      +----+  +------+  |   |  /------/diff -urN orig/Makefile linux/Makefile--- orig/Makefile	Thu Dec 18 09:57:40 2003+++ linux/Makefile	Sun Dec 21 21:57:02 2003@@ -1,7 +1,7 @@ VERSION = 2 PATCHLEVEL = 6 SUBLEVEL = 0-EXTRAVERSION =+EXTRAVERSION =-rmk2  # *DOCUMENTATION* # To see a list of typical targets execute "make help"diff -urN orig/arch/arm/Kconfig linux/arch/arm/Kconfig--- orig/arch/arm/Kconfig	Thu Oct  9 00:03:43 2003+++ linux/arch/arm/Kconfig	Sat Dec 20 23:49:46 2003@@ -227,9 +227,14 @@ menu "General setup"  # Select various configuration options depending on the machine type++config NUMA+	bool "Numa Memory Allocation Support"+	depends on ARCH_INTEGRATOR+ config DISCONTIGMEM 	bool-	depends on ARCH_EDB7211 || ARCH_SA1100+	depends on ARCH_EDB7211 || ARCH_SA1100 || NUMA 	default y 	help 	  Say Y to upport efficient handling of discontiguous physical memory,diff -urN orig/arch/arm/Makefile linux/arch/arm/Makefile--- orig/arch/arm/Makefile	Fri Oct 17 23:59:51 2003+++ linux/arch/arm/Makefile	Fri Nov 21 16:18:10 2003@@ -33,6 +33,7 @@ # Note that GCC does not numerically define an architecture version # macro, but instead defines a whole series of macros which makes # testing for a specific architecture or later rather impossible.+arch-$(CONFIG_CPU_32v6)		:=-D__LINUX_ARM_ARCH__=6 -march=armv5t -Wa,-march=armv6 arch-$(CONFIG_CPU_32v5)		:=-D__LINUX_ARM_ARCH__=5 $(call check_gcc,-march=armv5te,-march=armv4) arch-$(CONFIG_CPU_32v4)		:=-D__LINUX_ARM_ARCH__=4 -march=armv4 arch-$(CONFIG_CPU_32v3)		:=-D__LINUX_ARM_ARCH__=3 -march=armv3@@ -47,6 +48,7 @@ tune-$(CONFIG_CPU_SA110)	:=-mtune=strongarm110 tune-$(CONFIG_CPU_SA1100)	:=-mtune=strongarm1100 tune-$(CONFIG_CPU_XSCALE)	:=$(call check_gcc,-mtune=xscale,-mtune=strongarm110) -Wa,-mcpu=xscale+tune-$(CONFIG_CPU_V6)		:=-mtune=strongarm  # Need -Uarm for gcc < 3.x CFLAGS_BOOT	:=-mapcs-32 $(arch-y) $(tune-y) -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarmdiff -urN orig/arch/arm/boot/compressed/Makefile linux/arch/arm/boot/compressed/Makefile--- orig/arch/arm/boot/compressed/Makefile	Mon Mar 24 23:47:12 2003+++ linux/arch/arm/boot/compressed/Makefile	Mon Oct 13 14:39:52 2003@@ -23,10 +23,6 @@ OBJS		+= head-shark.o ofw-shark.o endif -ifeq ($(CONFIG_ARCH_INTEGRATOR),y)-OBJS		+= head-integrator.o-endif- ifeq ($(CONFIG_ARCH_CAMELOT),y) OBJS		+= head-epxa10db.o endifdiff -urN orig/arch/arm/boot/compressed/head-integrator.S linux/arch/arm/boot/compressed/head-integrator.S--- orig/arch/arm/boot/compressed/head-integrator.S	Sun Apr 28 17:16:56 2002+++ linux/arch/arm/boot/compressed/head-integrator.S	Thu Jan  1 01:00:00 1970@@ -1,4 +0,0 @@-#include <asm/mach-types.h>--		.section	".start", "ax"-		mov	r7, #MACH_TYPE_INTEGRATORdiff -urN orig/arch/arm/boot/compressed/head.S linux/arch/arm/boot/compressed/head.S--- orig/arch/arm/boot/compressed/head.S	Thu Oct  9 00:03:43 2003+++ linux/arch/arm/boot/compressed/head.S	Wed Oct 15 10:13:08 2003@@ -503,12 +503,6 @@  		@ Everything from here on will be the new ID system. -		.word	0x41129200		@ ARM920T-		.word	0xff00fff0

⌨️ 快捷键说明

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