forked from mirrors/linux
		
	Merge commit 'v2.6.30-rc5' into core/iommu
Merge reason: core/iommu was on an .30-rc1 base,
              update it to .30-rc5 to refresh.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
			
			
This commit is contained in:
		
						commit
						41fb454ebe
					
				
					 2270 changed files with 65795 additions and 61694 deletions
				
			
		
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| 
						 | 
					@ -49,6 +49,7 @@ include/linux/compile.h
 | 
				
			||||||
include/linux/version.h
 | 
					include/linux/version.h
 | 
				
			||||||
include/linux/utsrelease.h
 | 
					include/linux/utsrelease.h
 | 
				
			||||||
include/linux/bounds.h
 | 
					include/linux/bounds.h
 | 
				
			||||||
 | 
					include/generated
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# stgit generated dirs
 | 
					# stgit generated dirs
 | 
				
			||||||
patches-*
 | 
					patches-*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,4 +1,4 @@
 | 
				
			||||||
What:           /debug/pktcdvd/pktcdvd[0-7]
 | 
					What:           /sys/kernel/debug/pktcdvd/pktcdvd[0-7]
 | 
				
			||||||
Date:           Oct. 2006
 | 
					Date:           Oct. 2006
 | 
				
			||||||
KernelVersion:  2.6.20
 | 
					KernelVersion:  2.6.20
 | 
				
			||||||
Contact:        Thomas Maier <balagi@justmail.de>
 | 
					Contact:        Thomas Maier <balagi@justmail.de>
 | 
				
			||||||
| 
						 | 
					@ -10,10 +10,10 @@ debugfs interface
 | 
				
			||||||
The pktcdvd module (packet writing driver) creates
 | 
					The pktcdvd module (packet writing driver) creates
 | 
				
			||||||
these files in debugfs:
 | 
					these files in debugfs:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/debug/pktcdvd/pktcdvd[0-7]/
 | 
					/sys/kernel/debug/pktcdvd/pktcdvd[0-7]/
 | 
				
			||||||
    info            (0444) Lots of driver statistics and infos.
 | 
					    info            (0444) Lots of driver statistics and infos.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Example:
 | 
					Example:
 | 
				
			||||||
-------
 | 
					-------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cat /debug/pktcdvd/pktcdvd0/info
 | 
					cat /sys/kernel/debug/pktcdvd/pktcdvd0/info
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -69,9 +69,13 @@ Description:
 | 
				
			||||||
		gpe1F:	     0	invalid
 | 
							gpe1F:	     0	invalid
 | 
				
			||||||
		gpe_all:    1192
 | 
							gpe_all:    1192
 | 
				
			||||||
		sci:	1194
 | 
							sci:	1194
 | 
				
			||||||
 | 
							sci_not:     0	
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		sci - The total number of times the ACPI SCI
 | 
							sci - The number of times the ACPI SCI
 | 
				
			||||||
		has claimed an interrupt.
 | 
							has been called and claimed an interrupt.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							sci_not - The number of times the ACPI SCI
 | 
				
			||||||
 | 
							has been called and NOT claimed an interrupt.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		gpe_all - count of SCI caused by GPEs.
 | 
							gpe_all - count of SCI caused by GPEs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -31,7 +31,7 @@ PS_METHOD	= $(prefer-db2x)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###
 | 
					###
 | 
				
			||||||
# The targets that may be used.
 | 
					# The targets that may be used.
 | 
				
			||||||
PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs
 | 
					PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs cleandocs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
BOOKS := $(addprefix $(obj)/,$(DOCBOOKS))
 | 
					BOOKS := $(addprefix $(obj)/,$(DOCBOOKS))
 | 
				
			||||||
xmldocs: $(BOOKS)
 | 
					xmldocs: $(BOOKS)
 | 
				
			||||||
| 
						 | 
					@ -143,7 +143,8 @@ quiet_cmd_db2pdf = PDF     $@
 | 
				
			||||||
	$(call cmd,db2pdf)
 | 
						$(call cmd,db2pdf)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
main_idx = Documentation/DocBook/index.html
 | 
					index = index.html
 | 
				
			||||||
 | 
					main_idx = Documentation/DocBook/$(index)
 | 
				
			||||||
build_main_index = rm -rf $(main_idx) && \
 | 
					build_main_index = rm -rf $(main_idx) && \
 | 
				
			||||||
		   echo '<h1>Linux Kernel HTML Documentation</h1>' >> $(main_idx) && \
 | 
							   echo '<h1>Linux Kernel HTML Documentation</h1>' >> $(main_idx) && \
 | 
				
			||||||
		   echo '<h2>Kernel Version: $(KERNELVERSION)</h2>' >> $(main_idx) && \
 | 
							   echo '<h2>Kernel Version: $(KERNELVERSION)</h2>' >> $(main_idx) && \
 | 
				
			||||||
| 
						 | 
					@ -213,11 +214,12 @@ silent_gen_xml = :
 | 
				
			||||||
dochelp:
 | 
					dochelp:
 | 
				
			||||||
	@echo  ' Linux kernel internal documentation in different formats:'
 | 
						@echo  ' Linux kernel internal documentation in different formats:'
 | 
				
			||||||
	@echo  '  htmldocs        - HTML'
 | 
						@echo  '  htmldocs        - HTML'
 | 
				
			||||||
	@echo  '  installmandocs  - install man pages generated by mandocs'
 | 
					 | 
				
			||||||
	@echo  '  mandocs         - man pages'
 | 
					 | 
				
			||||||
	@echo  '  pdfdocs         - PDF'
 | 
						@echo  '  pdfdocs         - PDF'
 | 
				
			||||||
	@echo  '  psdocs          - Postscript'
 | 
						@echo  '  psdocs          - Postscript'
 | 
				
			||||||
	@echo  '  xmldocs         - XML DocBook'
 | 
						@echo  '  xmldocs         - XML DocBook'
 | 
				
			||||||
 | 
						@echo  '  mandocs         - man pages'
 | 
				
			||||||
 | 
						@echo  '  installmandocs  - install man pages generated by mandocs'
 | 
				
			||||||
 | 
						@echo  '  cleandocs       - clean all generated DocBook files'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###
 | 
					###
 | 
				
			||||||
# Temporary files left by various tools
 | 
					# Temporary files left by various tools
 | 
				
			||||||
| 
						 | 
					@ -231,10 +233,14 @@ clean-files := $(DOCBOOKS) \
 | 
				
			||||||
	$(patsubst %.xml, %.pdf,  $(DOCBOOKS)) \
 | 
						$(patsubst %.xml, %.pdf,  $(DOCBOOKS)) \
 | 
				
			||||||
	$(patsubst %.xml, %.html, $(DOCBOOKS)) \
 | 
						$(patsubst %.xml, %.html, $(DOCBOOKS)) \
 | 
				
			||||||
	$(patsubst %.xml, %.9,    $(DOCBOOKS)) \
 | 
						$(patsubst %.xml, %.9,    $(DOCBOOKS)) \
 | 
				
			||||||
	$(C-procfs-example)
 | 
						$(C-procfs-example) $(index)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
clean-dirs := $(patsubst %.xml,%,$(DOCBOOKS)) man
 | 
					clean-dirs := $(patsubst %.xml,%,$(DOCBOOKS)) man
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cleandocs:
 | 
				
			||||||
 | 
						$(Q)rm -f $(call objectify, $(clean-files))
 | 
				
			||||||
 | 
						$(Q)rm -rf $(call objectify, $(clean-dirs))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Declare the contents of the .PHONY variable as phony.  We keep that
 | 
					# Declare the contents of the .PHONY variable as phony.  We keep that
 | 
				
			||||||
# information in a variable se we can use it in if_changed and friends.
 | 
					# information in a variable se we can use it in if_changed and friends.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -190,16 +190,20 @@ X!Ekernel/module.c
 | 
				
			||||||
!Edrivers/pci/pci.c
 | 
					!Edrivers/pci/pci.c
 | 
				
			||||||
!Edrivers/pci/pci-driver.c
 | 
					!Edrivers/pci/pci-driver.c
 | 
				
			||||||
!Edrivers/pci/remove.c
 | 
					!Edrivers/pci/remove.c
 | 
				
			||||||
!Edrivers/pci/pci-acpi.c
 | 
					 | 
				
			||||||
!Edrivers/pci/search.c
 | 
					!Edrivers/pci/search.c
 | 
				
			||||||
!Edrivers/pci/msi.c
 | 
					!Edrivers/pci/msi.c
 | 
				
			||||||
!Edrivers/pci/bus.c
 | 
					!Edrivers/pci/bus.c
 | 
				
			||||||
 | 
					!Edrivers/pci/access.c
 | 
				
			||||||
 | 
					!Edrivers/pci/irq.c
 | 
				
			||||||
 | 
					!Edrivers/pci/htirq.c
 | 
				
			||||||
<!-- FIXME: Removed for now since no structured comments in source
 | 
					<!-- FIXME: Removed for now since no structured comments in source
 | 
				
			||||||
X!Edrivers/pci/hotplug.c
 | 
					X!Edrivers/pci/hotplug.c
 | 
				
			||||||
-->
 | 
					-->
 | 
				
			||||||
!Edrivers/pci/probe.c
 | 
					!Edrivers/pci/probe.c
 | 
				
			||||||
 | 
					!Edrivers/pci/slot.c
 | 
				
			||||||
!Edrivers/pci/rom.c
 | 
					!Edrivers/pci/rom.c
 | 
				
			||||||
!Edrivers/pci/iov.c
 | 
					!Edrivers/pci/iov.c
 | 
				
			||||||
 | 
					!Idrivers/pci/pci-sysfs.c
 | 
				
			||||||
     </sect1>
 | 
					     </sect1>
 | 
				
			||||||
     <sect1><title>PCI Hotplug Support Library</title>
 | 
					     <sect1><title>PCI Hotplug Support Library</title>
 | 
				
			||||||
!Edrivers/pci/hotplug/pci_hotplug_core.c
 | 
					!Edrivers/pci/hotplug/pci_hotplug_core.c
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1040,23 +1040,21 @@ Front merges are handled by the binary trees in AS and deadline schedulers.
 | 
				
			||||||
iii. Plugging the queue to batch requests in anticipation of opportunities for
 | 
					iii. Plugging the queue to batch requests in anticipation of opportunities for
 | 
				
			||||||
     merge/sort optimizations
 | 
					     merge/sort optimizations
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This is just the same as in 2.4 so far, though per-device unplugging
 | 
					 | 
				
			||||||
support is anticipated for 2.5. Also with a priority-based i/o scheduler,
 | 
					 | 
				
			||||||
such decisions could be based on request priorities.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Plugging is an approach that the current i/o scheduling algorithm resorts to so
 | 
					Plugging is an approach that the current i/o scheduling algorithm resorts to so
 | 
				
			||||||
that it collects up enough requests in the queue to be able to take
 | 
					that it collects up enough requests in the queue to be able to take
 | 
				
			||||||
advantage of the sorting/merging logic in the elevator. If the
 | 
					advantage of the sorting/merging logic in the elevator. If the
 | 
				
			||||||
queue is empty when a request comes in, then it plugs the request queue
 | 
					queue is empty when a request comes in, then it plugs the request queue
 | 
				
			||||||
(sort of like plugging the bottom of a vessel to get fluid to build up)
 | 
					(sort of like plugging the bath tub of a vessel to get fluid to build up)
 | 
				
			||||||
till it fills up with a few more requests, before starting to service
 | 
					till it fills up with a few more requests, before starting to service
 | 
				
			||||||
the requests. This provides an opportunity to merge/sort the requests before
 | 
					the requests. This provides an opportunity to merge/sort the requests before
 | 
				
			||||||
passing them down to the device. There are various conditions when the queue is
 | 
					passing them down to the device. There are various conditions when the queue is
 | 
				
			||||||
unplugged (to open up the flow again), either through a scheduled task or
 | 
					unplugged (to open up the flow again), either through a scheduled task or
 | 
				
			||||||
could be on demand. For example wait_on_buffer sets the unplugging going
 | 
					could be on demand. For example wait_on_buffer sets the unplugging going
 | 
				
			||||||
(by running tq_disk) so the read gets satisfied soon. So in the read case,
 | 
					through sync_buffer() running blk_run_address_space(mapping). Or the caller
 | 
				
			||||||
the queue gets explicitly unplugged as part of waiting for completion,
 | 
					can do it explicity through blk_unplug(bdev). So in the read case,
 | 
				
			||||||
in fact all queues get unplugged as a side-effect.
 | 
					the queue gets explicitly unplugged as part of waiting for completion on that
 | 
				
			||||||
 | 
					buffer. For page driven IO, the address space ->sync_page() takes care of
 | 
				
			||||||
 | 
					doing the blk_run_address_space().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Aside:
 | 
					Aside:
 | 
				
			||||||
  This is kind of controversial territory, as it's not clear if plugging is
 | 
					  This is kind of controversial territory, as it's not clear if plugging is
 | 
				
			||||||
| 
						 | 
					@ -1067,11 +1065,6 @@ Aside:
 | 
				
			||||||
  multi-page bios being queued in one shot, we may not need to wait to merge
 | 
					  multi-page bios being queued in one shot, we may not need to wait to merge
 | 
				
			||||||
  a big request from the broken up pieces coming by.
 | 
					  a big request from the broken up pieces coming by.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  Per-queue granularity unplugging (still a Todo) may help reduce some of the
 | 
					 | 
				
			||||||
  concerns with just a single tq_disk flush approach. Something like
 | 
					 | 
				
			||||||
  blk_kick_queue() to unplug a specific queue (right away ?)
 | 
					 | 
				
			||||||
  or optionally, all queues, is in the plan.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
4.4 I/O contexts
 | 
					4.4 I/O contexts
 | 
				
			||||||
I/O contexts provide a dynamically allocated per process data area. They may
 | 
					I/O contexts provide a dynamically allocated per process data area. They may
 | 
				
			||||||
be used in I/O schedulers, and in the block layer (could be used for IO statis,
 | 
					be used in I/O schedulers, and in the block layer (could be used for IO statis,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -30,3 +30,21 @@ The above steps create a new group g1 and move the current shell
 | 
				
			||||||
process (bash) into it. CPU time consumed by this bash and its children
 | 
					process (bash) into it. CPU time consumed by this bash and its children
 | 
				
			||||||
can be obtained from g1/cpuacct.usage and the same is accumulated in
 | 
					can be obtained from g1/cpuacct.usage and the same is accumulated in
 | 
				
			||||||
/cgroups/cpuacct.usage also.
 | 
					/cgroups/cpuacct.usage also.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cpuacct.stat file lists a few statistics which further divide the
 | 
				
			||||||
 | 
					CPU time obtained by the cgroup into user and system times. Currently
 | 
				
			||||||
 | 
					the following statistics are supported:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					user: Time spent by tasks of the cgroup in user mode.
 | 
				
			||||||
 | 
					system: Time spent by tasks of the cgroup in kernel mode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					user and system are in USER_HZ unit.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cpuacct controller uses percpu_counter interface to collect user and
 | 
				
			||||||
 | 
					system times. This has two side effects:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- It is theoretically possible to see wrong values for user and system times.
 | 
				
			||||||
 | 
					  This is because percpu_counter_read() on 32bit systems isn't safe
 | 
				
			||||||
 | 
					  against concurrent writes.
 | 
				
			||||||
 | 
					- It is possible to see slightly outdated values for user and system times
 | 
				
			||||||
 | 
					  due to the batch processing nature of percpu_counter.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,15 +6,14 @@ used here with the memory controller that is used in hardware.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Salient features
 | 
					Salient features
 | 
				
			||||||
 | 
					
 | 
				
			||||||
a. Enable control of both RSS (mapped) and Page Cache (unmapped) pages
 | 
					a. Enable control of Anonymous, Page Cache (mapped and unmapped) and
 | 
				
			||||||
 | 
					   Swap Cache memory pages.
 | 
				
			||||||
b. The infrastructure allows easy addition of other types of memory to control
 | 
					b. The infrastructure allows easy addition of other types of memory to control
 | 
				
			||||||
c. Provides *zero overhead* for non memory controller users
 | 
					c. Provides *zero overhead* for non memory controller users
 | 
				
			||||||
d. Provides a double LRU: global memory pressure causes reclaim from the
 | 
					d. Provides a double LRU: global memory pressure causes reclaim from the
 | 
				
			||||||
   global LRU; a cgroup on hitting a limit, reclaims from the per
 | 
					   global LRU; a cgroup on hitting a limit, reclaims from the per
 | 
				
			||||||
   cgroup LRU
 | 
					   cgroup LRU
 | 
				
			||||||
 | 
					
 | 
				
			||||||
NOTE: Swap Cache (unmapped) is not accounted now.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Benefits and Purpose of the memory controller
 | 
					Benefits and Purpose of the memory controller
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The memory controller isolates the memory behaviour of a group of tasks
 | 
					The memory controller isolates the memory behaviour of a group of tasks
 | 
				
			||||||
| 
						 | 
					@ -290,34 +289,44 @@ will be charged as a new owner of it.
 | 
				
			||||||
  moved to the parent. If you want to avoid that, force_empty will be useful.
 | 
					  moved to the parent. If you want to avoid that, force_empty will be useful.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
5.2 stat file
 | 
					5.2 stat file
 | 
				
			||||||
  memory.stat file includes following statistics (now)
 | 
					 | 
				
			||||||
	cache			- # of pages from page-cache and shmem.
 | 
					 | 
				
			||||||
	rss			- # of pages from anonymous memory.
 | 
					 | 
				
			||||||
	pgpgin			- # of event of charging
 | 
					 | 
				
			||||||
	pgpgout			- # of event of uncharging
 | 
					 | 
				
			||||||
	active_anon		- # of pages on active lru of anon, shmem.
 | 
					 | 
				
			||||||
	inactive_anon 		- # of pages on active lru of anon, shmem
 | 
					 | 
				
			||||||
	active_file		- # of pages on active lru of file-cache
 | 
					 | 
				
			||||||
	inactive_file		- # of pages on inactive lru of file cache
 | 
					 | 
				
			||||||
	unevictable		- # of pages cannot be reclaimed.(mlocked etc)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	Below is depend on CONFIG_DEBUG_VM.
 | 
					memory.stat file includes following statistics
 | 
				
			||||||
	inactive_ratio		- VM internal parameter. (see mm/page_alloc.c)
 | 
					 | 
				
			||||||
	recent_rotated_anon	- VM internal parameter. (see mm/vmscan.c)
 | 
					 | 
				
			||||||
	recent_rotated_file	- VM internal parameter. (see mm/vmscan.c)
 | 
					 | 
				
			||||||
	recent_scanned_anon 	- VM internal parameter. (see mm/vmscan.c)
 | 
					 | 
				
			||||||
	recent_scanned_file 	- VM internal parameter. (see mm/vmscan.c)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  Memo:
 | 
					cache		- # of bytes of page cache memory.
 | 
				
			||||||
 | 
					rss		- # of bytes of anonymous and swap cache memory.
 | 
				
			||||||
 | 
					pgpgin		- # of pages paged in (equivalent to # of charging events).
 | 
				
			||||||
 | 
					pgpgout		- # of pages paged out (equivalent to # of uncharging events).
 | 
				
			||||||
 | 
					active_anon	- # of bytes of anonymous and  swap cache memory on active
 | 
				
			||||||
 | 
							  lru list.
 | 
				
			||||||
 | 
					inactive_anon	- # of bytes of anonymous memory and swap cache memory on
 | 
				
			||||||
 | 
							  inactive lru list.
 | 
				
			||||||
 | 
					active_file	- # of bytes of file-backed memory on active lru list.
 | 
				
			||||||
 | 
					inactive_file	- # of bytes of file-backed memory on inactive lru list.
 | 
				
			||||||
 | 
					unevictable	- # of bytes of memory that cannot be reclaimed (mlocked etc).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The following additional stats are dependent on CONFIG_DEBUG_VM.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					inactive_ratio		- VM internal parameter. (see mm/page_alloc.c)
 | 
				
			||||||
 | 
					recent_rotated_anon	- VM internal parameter. (see mm/vmscan.c)
 | 
				
			||||||
 | 
					recent_rotated_file	- VM internal parameter. (see mm/vmscan.c)
 | 
				
			||||||
 | 
					recent_scanned_anon	- VM internal parameter. (see mm/vmscan.c)
 | 
				
			||||||
 | 
					recent_scanned_file	- VM internal parameter. (see mm/vmscan.c)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Memo:
 | 
				
			||||||
	recent_rotated means recent frequency of lru rotation.
 | 
						recent_rotated means recent frequency of lru rotation.
 | 
				
			||||||
	recent_scanned means recent # of scans to lru.
 | 
						recent_scanned means recent # of scans to lru.
 | 
				
			||||||
	showing for better debug please see the code for meanings.
 | 
						showing for better debug please see the code for meanings.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Note:
 | 
				
			||||||
 | 
						Only anonymous and swap cache memory is listed as part of 'rss' stat.
 | 
				
			||||||
 | 
						This should not be confused with the true 'resident set size' or the
 | 
				
			||||||
 | 
						amount of physical memory used by the cgroup. Per-cgroup rss
 | 
				
			||||||
 | 
						accounting is not done yet.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
5.3 swappiness
 | 
					5.3 swappiness
 | 
				
			||||||
  Similar to /proc/sys/vm/swappiness, but affecting a hierarchy of groups only.
 | 
					  Similar to /proc/sys/vm/swappiness, but affecting a hierarchy of groups only.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  Following cgroup's swapiness can't be changed.
 | 
					  Following cgroups' swapiness can't be changed.
 | 
				
			||||||
  - root cgroup (uses /proc/sys/vm/swappiness).
 | 
					  - root cgroup (uses /proc/sys/vm/swappiness).
 | 
				
			||||||
  - a cgroup which uses hierarchy and it has child cgroup.
 | 
					  - a cgroup which uses hierarchy and it has child cgroup.
 | 
				
			||||||
  - a cgroup which uses hierarchy and not the root of hierarchy.
 | 
					  - a cgroup which uses hierarchy and not the root of hierarchy.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,13 +47,18 @@ to work with it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
2. Basic accounting routines
 | 
					2. Basic accounting routines
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 a. void res_counter_init(struct res_counter *rc)
 | 
					 a. void res_counter_init(struct res_counter *rc,
 | 
				
			||||||
 | 
									struct res_counter *rc_parent)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 	Initializes the resource counter. As usual, should be the first
 | 
					 	Initializes the resource counter. As usual, should be the first
 | 
				
			||||||
	routine called for a new counter.
 | 
						routine called for a new counter.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 b. int res_counter_charge[_locked]
 | 
						The struct res_counter *parent can be used to define a hierarchical
 | 
				
			||||||
			(struct res_counter *rc, unsigned long val)
 | 
						child -> parent relationship directly in the res_counter structure,
 | 
				
			||||||
 | 
						NULL can be used to define no relationship.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 c. int res_counter_charge(struct res_counter *rc, unsigned long val,
 | 
				
			||||||
 | 
									struct res_counter **limit_fail_at)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	When a resource is about to be allocated it has to be accounted
 | 
						When a resource is about to be allocated it has to be accounted
 | 
				
			||||||
	with the appropriate resource counter (controller should determine
 | 
						with the appropriate resource counter (controller should determine
 | 
				
			||||||
| 
						 | 
					@ -67,15 +72,25 @@ to work with it.
 | 
				
			||||||
	  * if the charging is performed first, then it should be uncharged
 | 
						  * if the charging is performed first, then it should be uncharged
 | 
				
			||||||
	    on error path (if the one is called).
 | 
						    on error path (if the one is called).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 c. void res_counter_uncharge[_locked]
 | 
						If the charging fails and a hierarchical dependency exists, the
 | 
				
			||||||
 | 
						limit_fail_at parameter is set to the particular res_counter element
 | 
				
			||||||
 | 
						where the charging failed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 d. int res_counter_charge_locked
 | 
				
			||||||
 | 
								(struct res_counter *rc, unsigned long val)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						The same as res_counter_charge(), but it must not acquire/release the
 | 
				
			||||||
 | 
						res_counter->lock internally (it must be called with res_counter->lock
 | 
				
			||||||
 | 
						held).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 e. void res_counter_uncharge[_locked]
 | 
				
			||||||
			(struct res_counter *rc, unsigned long val)
 | 
								(struct res_counter *rc, unsigned long val)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	When a resource is released (freed) it should be de-accounted
 | 
						When a resource is released (freed) it should be de-accounted
 | 
				
			||||||
	from the resource counter it was accounted to.  This is called
 | 
						from the resource counter it was accounted to.  This is called
 | 
				
			||||||
	"uncharging".
 | 
						"uncharging".
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    The _locked routines imply that the res_counter->lock is taken.
 | 
						The _locked routines imply that the res_counter->lock is taken.
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 2.1 Other accounting routines
 | 
					 2.1 Other accounting routines
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -169,3 +169,62 @@ three different ways to find such a match:
 | 
				
			||||||
      be probed later if another device registers.  (Which is OK, since
 | 
					      be probed later if another device registers.  (Which is OK, since
 | 
				
			||||||
      this interface is only for use with non-hotpluggable devices.)
 | 
					      this interface is only for use with non-hotpluggable devices.)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Early Platform Devices and Drivers
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					The early platform interfaces provide platform data to platform device
 | 
				
			||||||
 | 
					drivers early on during the system boot. The code is built on top of the
 | 
				
			||||||
 | 
					early_param() command line parsing and can be executed very early on.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Example: "earlyprintk" class early serial console in 6 steps
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					1. Registering early platform device data
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					The architecture code registers platform device data using the function
 | 
				
			||||||
 | 
					early_platform_add_devices(). In the case of early serial console this
 | 
				
			||||||
 | 
					should be hardware configuration for the serial port. Devices registered
 | 
				
			||||||
 | 
					at this point will later on be matched against early platform drivers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					2. Parsing kernel command line
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					The architecture code calls parse_early_param() to parse the kernel
 | 
				
			||||||
 | 
					command line. This will execute all matching early_param() callbacks.
 | 
				
			||||||
 | 
					User specified early platform devices will be registered at this point.
 | 
				
			||||||
 | 
					For the early serial console case the user can specify port on the
 | 
				
			||||||
 | 
					kernel command line as "earlyprintk=serial.0" where "earlyprintk" is
 | 
				
			||||||
 | 
					the class string, "serial" is the name of the platfrom driver and
 | 
				
			||||||
 | 
					0 is the platform device id. If the id is -1 then the dot and the
 | 
				
			||||||
 | 
					id can be omitted.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					3. Installing early platform drivers belonging to a certain class
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					The architecture code may optionally force registration of all early
 | 
				
			||||||
 | 
					platform drivers belonging to a certain class using the function
 | 
				
			||||||
 | 
					early_platform_driver_register_all(). User specified devices from
 | 
				
			||||||
 | 
					step 2 have priority over these. This step is omitted by the serial
 | 
				
			||||||
 | 
					driver example since the early serial driver code should be disabled
 | 
				
			||||||
 | 
					unless the user has specified port on the kernel command line.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					4. Early platform driver registration
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					Compiled-in platform drivers making use of early_platform_init() are
 | 
				
			||||||
 | 
					automatically registered during step 2 or 3. The serial driver example
 | 
				
			||||||
 | 
					should use early_platform_init("earlyprintk", &platform_driver).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					5. Probing of early platform drivers belonging to a certain class
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					The architecture code calls early_platform_driver_probe() to match
 | 
				
			||||||
 | 
					registered early platform devices associated with a certain class with
 | 
				
			||||||
 | 
					registered early platform drivers. Matched devices will get probed().
 | 
				
			||||||
 | 
					This step can be executed at any point during the early boot. As soon
 | 
				
			||||||
 | 
					as possible may be good for the serial port case.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					6. Inside the early platform driver probe()
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					The driver code needs to take special care during early boot, especially
 | 
				
			||||||
 | 
					when it comes to memory allocation and interrupt registration. The code
 | 
				
			||||||
 | 
					in the probe() function can use is_early_platform_device() to check if
 | 
				
			||||||
 | 
					it is called at early platform device or at the regular platform device
 | 
				
			||||||
 | 
					time. The early serial driver performs register_console() at this point.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For further information, see <linux/platform_device.h>.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -428,3 +428,12 @@ Why:	In 2.6.27, the semantics of /sys/bus/pci/slots was redefined to
 | 
				
			||||||
	After a reasonable transition period, we will remove the legacy
 | 
						After a reasonable transition period, we will remove the legacy
 | 
				
			||||||
	fakephp interface.
 | 
						fakephp interface.
 | 
				
			||||||
Who:	Alex Chiang <achiang@hp.com>
 | 
					Who:	Alex Chiang <achiang@hp.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					What:	i2c-voodoo3 driver
 | 
				
			||||||
 | 
					When:	October 2009
 | 
				
			||||||
 | 
					Why:	Superseded by tdfxfb. I2C/DDC support used to live in a separate
 | 
				
			||||||
 | 
						driver but this caused driver conflicts.
 | 
				
			||||||
 | 
					Who:	Jean Delvare <khali@linux-fr.org>
 | 
				
			||||||
 | 
						Krzysztof Helt <krzysztof.h1@wp.pl>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -512,16 +512,24 @@ locking rules:
 | 
				
			||||||
		BKL	mmap_sem	PageLocked(page)
 | 
							BKL	mmap_sem	PageLocked(page)
 | 
				
			||||||
open:		no	yes
 | 
					open:		no	yes
 | 
				
			||||||
close:		no	yes
 | 
					close:		no	yes
 | 
				
			||||||
fault:		no	yes
 | 
					fault:		no	yes		can return with page locked
 | 
				
			||||||
page_mkwrite:	no	yes		no
 | 
					page_mkwrite:	no	yes		can return with page locked
 | 
				
			||||||
access:		no	yes
 | 
					access:		no	yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	->page_mkwrite() is called when a previously read-only page is
 | 
						->fault() is called when a previously not present pte is about
 | 
				
			||||||
about to become writeable. The file system is responsible for
 | 
					to be faulted in. The filesystem must find and return the page associated
 | 
				
			||||||
protecting against truncate races. Once appropriate action has been
 | 
					with the passed in "pgoff" in the vm_fault structure. If it is possible that
 | 
				
			||||||
taking to lock out truncate, the page range should be verified to be
 | 
					the page may be truncated and/or invalidated, then the filesystem must lock
 | 
				
			||||||
within i_size. The page mapping should also be checked that it is not
 | 
					the page, then ensure it is not already truncated (the page lock will block
 | 
				
			||||||
NULL.
 | 
					subsequent truncate), and then return with VM_FAULT_LOCKED, and the page
 | 
				
			||||||
 | 
					locked. The VM will unlock the page.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						->page_mkwrite() is called when a previously read-only pte is
 | 
				
			||||||
 | 
					about to become writeable. The filesystem again must ensure that there are
 | 
				
			||||||
 | 
					no truncate/invalidate races, and then return with the page locked. If
 | 
				
			||||||
 | 
					the page has been truncated, the filesystem should not look up a new page
 | 
				
			||||||
 | 
					like the ->fault() handler, but simply return with VM_FAULT_NOPAGE, which
 | 
				
			||||||
 | 
					will cause the VM to retry the fault.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	->access() is called when get_user_pages() fails in
 | 
						->access() is called when get_user_pages() fails in
 | 
				
			||||||
acces_process_vm(), typically used to debug a process through
 | 
					acces_process_vm(), typically used to debug a process through
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -407,7 +407,7 @@ A NOTE ON SECURITY
 | 
				
			||||||
==================
 | 
					==================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CacheFiles makes use of the split security in the task_struct.  It allocates
 | 
					CacheFiles makes use of the split security in the task_struct.  It allocates
 | 
				
			||||||
its own task_security structure, and redirects current->act_as to point to it
 | 
					its own task_security structure, and redirects current->cred to point to it
 | 
				
			||||||
when it acts on behalf of another process, in that process's context.
 | 
					when it acts on behalf of another process, in that process's context.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The reason it does this is that it calls vfs_mkdir() and suchlike rather than
 | 
					The reason it does this is that it calls vfs_mkdir() and suchlike rather than
 | 
				
			||||||
| 
						 | 
					@ -429,9 +429,9 @@ This means it may lose signals or ptrace events for example, and affects what
 | 
				
			||||||
the process looks like in /proc.
 | 
					the process looks like in /proc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
So CacheFiles makes use of a logical split in the security between the
 | 
					So CacheFiles makes use of a logical split in the security between the
 | 
				
			||||||
objective security (task->sec) and the subjective security (task->act_as).  The
 | 
					objective security (task->real_cred) and the subjective security (task->cred).
 | 
				
			||||||
objective security holds the intrinsic security properties of a process and is
 | 
					The objective security holds the intrinsic security properties of a process and
 | 
				
			||||||
never overridden.  This is what appears in /proc, and is what is used when a
 | 
					is never overridden.  This is what appears in /proc, and is what is used when a
 | 
				
			||||||
process is the target of an operation by some other process (SIGKILL for
 | 
					process is the target of an operation by some other process (SIGKILL for
 | 
				
			||||||
example).
 | 
					example).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -56,9 +56,10 @@ workloads and can fully utilize the bandwidth to the servers when doing bulk
 | 
				
			||||||
data transfers.
 | 
					data transfers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
POHMELFS clients operate with a working set of servers and are capable of balancing read-only
 | 
					POHMELFS clients operate with a working set of servers and are capable of balancing read-only
 | 
				
			||||||
operations (like lookups or directory listings) between them.
 | 
					operations (like lookups or directory listings) between them according to IO priorities.
 | 
				
			||||||
Administrators can add or remove servers from the set at run-time via special commands (described
 | 
					Administrators can add or remove servers from the set at run-time via special commands (described
 | 
				
			||||||
in Documentation/pohmelfs/info.txt file). Writes are replicated to all servers.
 | 
					in Documentation/pohmelfs/info.txt file). Writes are replicated to all servers, which are connected
 | 
				
			||||||
 | 
					with write permission turned on. IO priority and permissions can be changed in run-time.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
POHMELFS is capable of full data channel encryption and/or strong crypto hashing.
 | 
					POHMELFS is capable of full data channel encryption and/or strong crypto hashing.
 | 
				
			||||||
One can select any kernel supported cipher, encryption mode, hash type and operation mode
 | 
					One can select any kernel supported cipher, encryption mode, hash type and operation mode
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,8 @@
 | 
				
			||||||
POHMELFS usage information.
 | 
					POHMELFS usage information.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mount options:
 | 
					Mount options.
 | 
				
			||||||
 | 
					All but index, number of crypto threads and maximum IO size can changed via remount.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
idx=%u
 | 
					idx=%u
 | 
				
			||||||
 Each mountpoint is associated with a special index via this option.
 | 
					 Each mountpoint is associated with a special index via this option.
 | 
				
			||||||
 Administrator can add or remove servers from the given index, so all mounts,
 | 
					 Administrator can add or remove servers from the given index, so all mounts,
 | 
				
			||||||
| 
						 | 
					@ -52,16 +54,27 @@ mcache_timeout=%u
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Usage examples.
 | 
					Usage examples.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Add (or remove if it already exists) server server1.net:1025 into the working set with index $idx
 | 
					Add server server1.net:1025 into the working set with index $idx
 | 
				
			||||||
with appropriate hash algorithm and key file and cipher algorithm, mode and key file:
 | 
					with appropriate hash algorithm and key file and cipher algorithm, mode and key file:
 | 
				
			||||||
$cfg -a server1.net -p 1025 -i $idx -K $hash_key -k $cipher_key
 | 
					$cfg A add -a server1.net -p 1025 -i $idx -K $hash_key -k $cipher_key
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mount filesystem with given index $idx to /mnt mountpoint.
 | 
					Mount filesystem with given index $idx to /mnt mountpoint.
 | 
				
			||||||
Client will connect to all servers specified in the working set via previous command:
 | 
					Client will connect to all servers specified in the working set via previous command:
 | 
				
			||||||
mount -t pohmel -o idx=$idx q /mnt
 | 
					mount -t pohmel -o idx=$idx q /mnt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
One can add or remove servers from working set after mounting too.
 | 
					Change permissions to read-only (-I 1 option, '-I 2' - write-only, 3 - rw):
 | 
				
			||||||
 | 
					$cfg A modify -a server1.net -p 1025 -i $idx -I 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Change IO priority to 123 (node with the highest priority gets read requests).
 | 
				
			||||||
 | 
					$cfg A modify -a server1.net -p 1025 -i $idx -P 123
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					One can check currect status of all connections in the mountstats file:
 | 
				
			||||||
 | 
					# cat /proc/$PID/mountstats
 | 
				
			||||||
 | 
					...
 | 
				
			||||||
 | 
					device none mounted on /mnt with fstype pohmel
 | 
				
			||||||
 | 
					idx addr(:port) socket_type protocol active priority permissions
 | 
				
			||||||
 | 
					0 server1.net:1026 1 6 1 250 1
 | 
				
			||||||
 | 
					0 server2.net:1025 1 6 1 123 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Server installation.
 | 
					Server installation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -277,8 +277,7 @@ or bottom half).
 | 
				
			||||||
  unfreeze_fs: called when VFS is unlocking a filesystem and making it writable
 | 
					  unfreeze_fs: called when VFS is unlocking a filesystem and making it writable
 | 
				
			||||||
  	again.
 | 
					  	again.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  statfs: called when the VFS needs to get filesystem statistics. This
 | 
					  statfs: called when the VFS needs to get filesystem statistics.
 | 
				
			||||||
	is called with the kernel lock held
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  remount_fs: called when the filesystem is remounted. This is called
 | 
					  remount_fs: called when the filesystem is remounted. This is called
 | 
				
			||||||
	with the kernel lock held
 | 
						with the kernel lock held
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,6 +24,49 @@ Partitions and P_Keys
 | 
				
			||||||
  The P_Key for any interface is given by the "pkey" file, and the
 | 
					  The P_Key for any interface is given by the "pkey" file, and the
 | 
				
			||||||
  main interface for a subinterface is in "parent."
 | 
					  main interface for a subinterface is in "parent."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Datagram vs Connected modes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  The IPoIB driver supports two modes of operation: datagram and
 | 
				
			||||||
 | 
					  connected.  The mode is set and read through an interface's
 | 
				
			||||||
 | 
					  /sys/class/net/<intf name>/mode file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  In datagram mode, the IB UD (Unreliable Datagram) transport is used
 | 
				
			||||||
 | 
					  and so the interface MTU has is equal to the IB L2 MTU minus the
 | 
				
			||||||
 | 
					  IPoIB encapsulation header (4 bytes).  For example, in a typical IB
 | 
				
			||||||
 | 
					  fabric with a 2K MTU, the IPoIB MTU will be 2048 - 4 = 2044 bytes.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  In connected mode, the IB RC (Reliable Connected) transport is used.
 | 
				
			||||||
 | 
					  Connected mode is to takes advantage of the connected nature of the
 | 
				
			||||||
 | 
					  IB transport and allows an MTU up to the maximal IP packet size of
 | 
				
			||||||
 | 
					  64K, which reduces the number of IP packets needed for handling
 | 
				
			||||||
 | 
					  large UDP datagrams, TCP segments, etc and increases the performance
 | 
				
			||||||
 | 
					  for large messages.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  In connected mode, the interface's UD QP is still used for multicast
 | 
				
			||||||
 | 
					  and communication with peers that don't support connected mode. In
 | 
				
			||||||
 | 
					  this case, RX emulation of ICMP PMTU packets is used to cause the
 | 
				
			||||||
 | 
					  networking stack to use the smaller UD MTU for these neighbours.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Stateless offloads
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  If the IB HW supports IPoIB stateless offloads, IPoIB advertises
 | 
				
			||||||
 | 
					  TCP/IP checksum and/or Large Send (LSO) offloading capability to the
 | 
				
			||||||
 | 
					  network stack.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  Large Receive (LRO) offloading is also implemented and may be turned
 | 
				
			||||||
 | 
					  on/off using ethtool calls.  Currently LRO is supported only for
 | 
				
			||||||
 | 
					  checksum offload capable devices.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  Stateless offloads are supported only in datagram mode.  
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Interrupt moderation
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  If the underlying IB device supports CQ event moderation, one can
 | 
				
			||||||
 | 
					  use ethtool to set interrupt mitigation parameters and thus reduce
 | 
				
			||||||
 | 
					  the overhead incurred by handling interrupts.  The main code path of
 | 
				
			||||||
 | 
					  IPoIB doesn't use events for TX completion signaling so only RX
 | 
				
			||||||
 | 
					  moderation is supported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Debugging Information
 | 
					Debugging Information
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  By compiling the IPoIB driver with CONFIG_INFINIBAND_IPOIB_DEBUG set
 | 
					  By compiling the IPoIB driver with CONFIG_INFINIBAND_IPOIB_DEBUG set
 | 
				
			||||||
| 
						 | 
					@ -55,3 +98,5 @@ References
 | 
				
			||||||
    http://ietf.org/rfc/rfc4391.txt 
 | 
					    http://ietf.org/rfc/rfc4391.txt 
 | 
				
			||||||
  IP over InfiniBand (IPoIB) Architecture (RFC 4392)
 | 
					  IP over InfiniBand (IPoIB) Architecture (RFC 4392)
 | 
				
			||||||
    http://ietf.org/rfc/rfc4392.txt 
 | 
					    http://ietf.org/rfc/rfc4392.txt 
 | 
				
			||||||
 | 
					  IP over InfiniBand: Connected Mode (RFC 4755)
 | 
				
			||||||
 | 
					    http://ietf.org/rfc/rfc4755.txt
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										65
									
								
								Documentation/input/bcm5974.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								Documentation/input/bcm5974.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,65 @@
 | 
				
			||||||
 | 
					BCM5974 Driver (bcm5974)
 | 
				
			||||||
 | 
					------------------------
 | 
				
			||||||
 | 
						Copyright (C) 2008-2009	Henrik Rydberg <rydberg@euromail.se>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The USB initialization and package decoding was made by Scott Shawcroft as
 | 
				
			||||||
 | 
					part of the touchd user-space driver project:
 | 
				
			||||||
 | 
						Copyright (C) 2008	Scott Shawcroft (scott.shawcroft@gmail.com)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The BCM5974 driver is based on the appletouch driver:
 | 
				
			||||||
 | 
						Copyright (C) 2001-2004	Greg Kroah-Hartman (greg@kroah.com)
 | 
				
			||||||
 | 
						Copyright (C) 2005	Johannes Berg (johannes@sipsolutions.net)
 | 
				
			||||||
 | 
						Copyright (C) 2005	Stelian Pop (stelian@popies.net)
 | 
				
			||||||
 | 
						Copyright (C) 2005	Frank Arnold (frank@scirocco-5v-turbo.de)
 | 
				
			||||||
 | 
						Copyright (C) 2005	Peter Osterlund (petero2@telia.com)
 | 
				
			||||||
 | 
						Copyright (C) 2005	Michael Hanselmann (linux-kernel@hansmi.ch)
 | 
				
			||||||
 | 
						Copyright (C) 2006	Nicolas Boichat (nicolas@boichat.ch)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This driver adds support for the multi-touch trackpad on the new Apple
 | 
				
			||||||
 | 
					Macbook Air and Macbook Pro laptops. It replaces the appletouch driver on
 | 
				
			||||||
 | 
					those computers, and integrates well with the synaptics driver of the Xorg
 | 
				
			||||||
 | 
					system.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Known to work on Macbook Air, Macbook Pro Penryn and the new unibody
 | 
				
			||||||
 | 
					Macbook 5 and Macbook Pro 5.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Usage
 | 
				
			||||||
 | 
					-----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The driver loads automatically for the supported usb device ids, and
 | 
				
			||||||
 | 
					becomes available both as an event device (/dev/input/event*) and as a
 | 
				
			||||||
 | 
					mouse via the mousedev driver (/dev/input/mice).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					USB Race
 | 
				
			||||||
 | 
					--------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The Apple multi-touch trackpads report both mouse and keyboard events via
 | 
				
			||||||
 | 
					different interfaces of the same usb device. This creates a race condition
 | 
				
			||||||
 | 
					with the HID driver, which, if not told otherwise, will find the standard
 | 
				
			||||||
 | 
					HID mouse and keyboard, and claim the whole device. To remedy, the usb
 | 
				
			||||||
 | 
					product id must be listed in the mouse_ignore list of the hid driver.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Debug output
 | 
				
			||||||
 | 
					------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To ease the development for new hardware version, verbose packet output can
 | 
				
			||||||
 | 
					be switched on with the debug kernel module parameter. The range [1-9]
 | 
				
			||||||
 | 
					yields different levels of verbosity. Example (as root):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo -n 9 > /sys/module/bcm5974/parameters/debug
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tail -f /var/log/debug
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo -n 0 > /sys/module/bcm5974/parameters/debug
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Trivia
 | 
				
			||||||
 | 
					------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The driver was developed at the ubuntu forums in June 2008 [1], and now has
 | 
				
			||||||
 | 
					a more permanent home at bitmath.org [2].
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Links
 | 
				
			||||||
 | 
					-----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[1] http://ubuntuforums.org/showthread.php?t=840040
 | 
				
			||||||
 | 
					[2] http://http://bitmath.org/code/
 | 
				
			||||||
							
								
								
									
										140
									
								
								Documentation/input/multi-touch-protocol.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										140
									
								
								Documentation/input/multi-touch-protocol.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,140 @@
 | 
				
			||||||
 | 
					Multi-touch (MT) Protocol
 | 
				
			||||||
 | 
					-------------------------
 | 
				
			||||||
 | 
						Copyright (C) 2009	Henrik Rydberg <rydberg@euromail.se>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Introduction
 | 
				
			||||||
 | 
					------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In order to utilize the full power of the new multi-touch devices, a way to
 | 
				
			||||||
 | 
					report detailed finger data to user space is needed. This document
 | 
				
			||||||
 | 
					describes the multi-touch (MT) protocol which allows kernel drivers to
 | 
				
			||||||
 | 
					report details for an arbitrary number of fingers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Usage
 | 
				
			||||||
 | 
					-----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Anonymous finger details are sent sequentially as separate packets of ABS
 | 
				
			||||||
 | 
					events. Only the ABS_MT events are recognized as part of a finger
 | 
				
			||||||
 | 
					packet. The end of a packet is marked by calling the input_mt_sync()
 | 
				
			||||||
 | 
					function, which generates a SYN_MT_REPORT event. The end of multi-touch
 | 
				
			||||||
 | 
					transfer is marked by calling the usual input_sync() function.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A set of ABS_MT events with the desired properties is defined. The events
 | 
				
			||||||
 | 
					are divided into categories, to allow for partial implementation.  The
 | 
				
			||||||
 | 
					minimum set consists of ABS_MT_TOUCH_MAJOR, ABS_MT_POSITION_X and
 | 
				
			||||||
 | 
					ABS_MT_POSITION_Y, which allows for multiple fingers to be tracked.  If the
 | 
				
			||||||
 | 
					device supports it, the ABS_MT_WIDTH_MAJOR may be used to provide the size
 | 
				
			||||||
 | 
					of the approaching finger. Anisotropy and direction may be specified with
 | 
				
			||||||
 | 
					ABS_MT_TOUCH_MINOR, ABS_MT_WIDTH_MINOR and ABS_MT_ORIENTATION. Devices with
 | 
				
			||||||
 | 
					more granular information may specify general shapes as blobs, i.e., as a
 | 
				
			||||||
 | 
					sequence of rectangular shapes grouped together by an
 | 
				
			||||||
 | 
					ABS_MT_BLOB_ID. Finally, the ABS_MT_TOOL_TYPE may be used to specify
 | 
				
			||||||
 | 
					whether the touching tool is a finger or a pen or something else.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Event Semantics
 | 
				
			||||||
 | 
					---------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The word "contact" is used to describe a tool which is in direct contact
 | 
				
			||||||
 | 
					with the surface. A finger, a pen or a rubber all classify as contacts.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_TOUCH_MAJOR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The length of the major axis of the contact. The length should be given in
 | 
				
			||||||
 | 
					surface units. If the surface has an X times Y resolution, the largest
 | 
				
			||||||
 | 
					possible value of ABS_MT_TOUCH_MAJOR is sqrt(X^2 + Y^2), the diagonal.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_TOUCH_MINOR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The length, in surface units, of the minor axis of the contact. If the
 | 
				
			||||||
 | 
					contact is circular, this event can be omitted.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_WIDTH_MAJOR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The length, in surface units, of the major axis of the approaching
 | 
				
			||||||
 | 
					tool. This should be understood as the size of the tool itself. The
 | 
				
			||||||
 | 
					orientation of the contact and the approaching tool are assumed to be the
 | 
				
			||||||
 | 
					same.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_WIDTH_MINOR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The length, in surface units, of the minor axis of the approaching
 | 
				
			||||||
 | 
					tool. Omit if circular.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The above four values can be used to derive additional information about
 | 
				
			||||||
 | 
					the contact. The ratio ABS_MT_TOUCH_MAJOR / ABS_MT_WIDTH_MAJOR approximates
 | 
				
			||||||
 | 
					the notion of pressure. The fingers of the hand and the palm all have
 | 
				
			||||||
 | 
					different characteristic widths [1].
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_ORIENTATION
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The orientation of the ellipse. The value should describe half a revolution
 | 
				
			||||||
 | 
					clockwise around the touch center. The scale of the value is arbitrary, but
 | 
				
			||||||
 | 
					zero should be returned for an ellipse aligned along the Y axis of the
 | 
				
			||||||
 | 
					surface. As an example, an index finger placed straight onto the axis could
 | 
				
			||||||
 | 
					return zero orientation, something negative when twisted to the left, and
 | 
				
			||||||
 | 
					something positive when twisted to the right. This value can be omitted if
 | 
				
			||||||
 | 
					the touching object is circular, or if the information is not available in
 | 
				
			||||||
 | 
					the kernel driver.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_POSITION_X
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The surface X coordinate of the center of the touching ellipse.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_POSITION_Y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The surface Y coordinate of the center of the touching ellipse.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_TOOL_TYPE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The type of approaching tool. A lot of kernel drivers cannot distinguish
 | 
				
			||||||
 | 
					between different tool types, such as a finger or a pen. In such cases, the
 | 
				
			||||||
 | 
					event should be omitted. The protocol currently supports MT_TOOL_FINGER and
 | 
				
			||||||
 | 
					MT_TOOL_PEN [2].
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ABS_MT_BLOB_ID
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The BLOB_ID groups several packets together into one arbitrarily shaped
 | 
				
			||||||
 | 
					contact. This is a low-level anonymous grouping, and should not be confused
 | 
				
			||||||
 | 
					with the high-level contactID, explained below. Most kernel drivers will
 | 
				
			||||||
 | 
					not have this capability, and can safely omit the event.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Finger Tracking
 | 
				
			||||||
 | 
					---------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The kernel driver should generate an arbitrary enumeration of the set of
 | 
				
			||||||
 | 
					anonymous contacts currently on the surface. The order in which the packets
 | 
				
			||||||
 | 
					appear in the event stream is not important.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The process of finger tracking, i.e., to assign a unique contactID to each
 | 
				
			||||||
 | 
					initiated contact on the surface, is left to user space; preferably the
 | 
				
			||||||
 | 
					multi-touch X driver [3]. In that driver, the contactID stays the same and
 | 
				
			||||||
 | 
					unique until the contact vanishes (when the finger leaves the surface). The
 | 
				
			||||||
 | 
					problem of assigning a set of anonymous fingers to a set of identified
 | 
				
			||||||
 | 
					fingers is a euclidian bipartite matching problem at each event update, and
 | 
				
			||||||
 | 
					relies on a sufficiently rapid update rate.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Notes
 | 
				
			||||||
 | 
					-----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In order to stay compatible with existing applications, the data
 | 
				
			||||||
 | 
					reported in a finger packet must not be recognized as single-touch
 | 
				
			||||||
 | 
					events. In addition, all finger data must bypass input filtering,
 | 
				
			||||||
 | 
					since subsequent events of the same type refer to different fingers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The first kernel driver to utilize the MT protocol is the bcm5974 driver,
 | 
				
			||||||
 | 
					where examples can be found.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[1] With the extension ABS_MT_APPROACH_X and ABS_MT_APPROACH_Y, the
 | 
				
			||||||
 | 
					difference between the contact position and the approaching tool position
 | 
				
			||||||
 | 
					could be used to derive tilt.
 | 
				
			||||||
 | 
					[2] The list can of course be extended.
 | 
				
			||||||
 | 
					[3] The multi-touch X driver is currently in the prototyping stage. At the
 | 
				
			||||||
 | 
					time of writing (April 2009), the MT protocol is not yet merged, and the
 | 
				
			||||||
 | 
					prototype implements finger matching, basic mouse support and two-finger
 | 
				
			||||||
 | 
					scrolling. The project aims at improving the quality of current multi-touch
 | 
				
			||||||
 | 
					functionality available in the synaptics X driver, and in addition
 | 
				
			||||||
 | 
					implement more advanced gestures.
 | 
				
			||||||
							
								
								
									
										101
									
								
								Documentation/input/rotary-encoder.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										101
									
								
								Documentation/input/rotary-encoder.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,101 @@
 | 
				
			||||||
 | 
					rotary-encoder - a generic driver for GPIO connected devices
 | 
				
			||||||
 | 
					Daniel Mack <daniel@caiaq.de>, Feb 2009
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					0. Function
 | 
				
			||||||
 | 
					-----------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Rotary encoders are devices which are connected to the CPU or other
 | 
				
			||||||
 | 
					peripherals with two wires. The outputs are phase-shifted by 90 degrees
 | 
				
			||||||
 | 
					and by triggering on falling and rising edges, the turn direction can
 | 
				
			||||||
 | 
					be determined.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The phase diagram of these two outputs look like this:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                  _____       _____       _____
 | 
				
			||||||
 | 
					                 |     |     |     |     |     |
 | 
				
			||||||
 | 
					  Channel A  ____|     |_____|     |_____|     |____
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                 :  :  :  :  :  :  :  :  :  :  :  :
 | 
				
			||||||
 | 
					            __       _____       _____       _____
 | 
				
			||||||
 | 
					              |     |     |     |     |     |     |
 | 
				
			||||||
 | 
					  Channel B   |_____|     |_____|     |_____|     |__
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                 :  :  :  :  :  :  :  :  :  :  :  :
 | 
				
			||||||
 | 
					  Event          a  b  c  d  a  b  c  d  a  b  c  d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                |<-------->|
 | 
				
			||||||
 | 
						          one step
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For more information, please see
 | 
				
			||||||
 | 
						http://en.wikipedia.org/wiki/Rotary_encoder
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					1. Events / state machine
 | 
				
			||||||
 | 
					-------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a) Rising edge on channel A, channel B in low state
 | 
				
			||||||
 | 
						This state is used to recognize a clockwise turn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					b) Rising edge on channel B, channel A in high state
 | 
				
			||||||
 | 
						When entering this state, the encoder is put into 'armed' state,
 | 
				
			||||||
 | 
						meaning that there it has seen half the way of a one-step transition.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					c) Falling edge on channel A, channel B in high state
 | 
				
			||||||
 | 
						This state is used to recognize a counter-clockwise turn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					d) Falling edge on channel B, channel A in low state
 | 
				
			||||||
 | 
						Parking position. If the encoder enters this state, a full transition
 | 
				
			||||||
 | 
						should have happend, unless it flipped back on half the way. The
 | 
				
			||||||
 | 
						'armed' state tells us about that.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					2. Platform requirements
 | 
				
			||||||
 | 
					------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					As there is no hardware dependent call in this driver, the platform it is
 | 
				
			||||||
 | 
					used with must support gpiolib. Another requirement is that IRQs must be
 | 
				
			||||||
 | 
					able to fire on both edges.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					3. Board integration
 | 
				
			||||||
 | 
					--------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To use this driver in your system, register a platform_device with the
 | 
				
			||||||
 | 
					name 'rotary-encoder' and associate the IRQs and some specific platform
 | 
				
			||||||
 | 
					data with it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					struct rotary_encoder_platform_data is declared in
 | 
				
			||||||
 | 
					include/linux/rotary-encoder.h and needs to be filled with the number of
 | 
				
			||||||
 | 
					steps the encoder has and can carry information about externally inverted
 | 
				
			||||||
 | 
					signals (because of used invertig buffer or other reasons).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Because GPIO to IRQ mapping is platform specific, this information must
 | 
				
			||||||
 | 
					be given in seperately to the driver. See the example below.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---------<snip>---------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* board support file example */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <linux/input.h>
 | 
				
			||||||
 | 
					#include <linux/rotary_encoder.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define GPIO_ROTARY_A 1
 | 
				
			||||||
 | 
					#define GPIO_ROTARY_B 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct rotary_encoder_platform_data my_rotary_encoder_info = {
 | 
				
			||||||
 | 
						.steps		= 24,
 | 
				
			||||||
 | 
						.axis		= ABS_X,
 | 
				
			||||||
 | 
						.gpio_a		= GPIO_ROTARY_A,
 | 
				
			||||||
 | 
						.gpio_b		= GPIO_ROTARY_B,
 | 
				
			||||||
 | 
						.inverted_a	= 0,
 | 
				
			||||||
 | 
						.inverted_b	= 0,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct platform_device rotary_encoder_device = {
 | 
				
			||||||
 | 
						.name		= "rotary-encoder",
 | 
				
			||||||
 | 
						.id		= 0,
 | 
				
			||||||
 | 
						.dev		= {
 | 
				
			||||||
 | 
							.platform_data = &my_rotary_encoder_info,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,8 +2,14 @@
 | 
				
			||||||
	- this file (info on ISDN implementation for Linux)
 | 
						- this file (info on ISDN implementation for Linux)
 | 
				
			||||||
CREDITS
 | 
					CREDITS
 | 
				
			||||||
	- list of the kind folks that brought you this stuff.
 | 
						- list of the kind folks that brought you this stuff.
 | 
				
			||||||
 | 
					HiSax.cert
 | 
				
			||||||
 | 
						- information about the ITU approval certification of the HiSax driver.
 | 
				
			||||||
INTERFACE
 | 
					INTERFACE
 | 
				
			||||||
	- description of Linklevel and Hardwarelevel ISDN interface.
 | 
						- description of isdn4linux Link Level and Hardware Level interfaces.
 | 
				
			||||||
 | 
					INTERFACE.fax
 | 
				
			||||||
 | 
						- description of the fax subinterface of isdn4linux.
 | 
				
			||||||
 | 
					INTERFACE.CAPI
 | 
				
			||||||
 | 
						- description of kernel CAPI Link Level to Hardware Level interface.
 | 
				
			||||||
README
 | 
					README
 | 
				
			||||||
	- general info on what you need and what to do for Linux ISDN.
 | 
						- general info on what you need and what to do for Linux ISDN.
 | 
				
			||||||
README.FAQ
 | 
					README.FAQ
 | 
				
			||||||
| 
						 | 
					@ -12,6 +18,8 @@ README.audio
 | 
				
			||||||
	- info for running audio over ISDN.
 | 
						- info for running audio over ISDN.
 | 
				
			||||||
README.fax
 | 
					README.fax
 | 
				
			||||||
	- info for using Fax over ISDN.
 | 
						- info for using Fax over ISDN.
 | 
				
			||||||
 | 
					README.gigaset
 | 
				
			||||||
 | 
						- info on the drivers for Siemens Gigaset ISDN adapters.
 | 
				
			||||||
README.icn
 | 
					README.icn
 | 
				
			||||||
	- info on the ICN-ISDN-card and its driver.
 | 
						- info on the ICN-ISDN-card and its driver.
 | 
				
			||||||
README.HiSax
 | 
					README.HiSax
 | 
				
			||||||
| 
						 | 
					@ -37,7 +45,8 @@ README.diversion
 | 
				
			||||||
README.sc
 | 
					README.sc
 | 
				
			||||||
	- info on driver for Spellcaster cards.
 | 
						- info on driver for Spellcaster cards.
 | 
				
			||||||
README.x25
 | 
					README.x25
 | 
				
			||||||
    _ info for running X.25 over ISDN.
 | 
						- info for running X.25 over ISDN.
 | 
				
			||||||
README.hysdn
 | 
					README.hysdn
 | 
				
			||||||
        - info on driver for Hypercope active HYSDN cards
 | 
						- info on driver for Hypercope active HYSDN cards
 | 
				
			||||||
 
 | 
					README.mISDN
 | 
				
			||||||
 | 
						- info on the Modular ISDN subsystem (mISDN).
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										213
									
								
								Documentation/isdn/INTERFACE.CAPI
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										213
									
								
								Documentation/isdn/INTERFACE.CAPI
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,213 @@
 | 
				
			||||||
 | 
					Kernel CAPI Interface to Hardware Drivers
 | 
				
			||||||
 | 
					-----------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					1. Overview
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					From the CAPI 2.0 specification:
 | 
				
			||||||
 | 
					COMMON-ISDN-API (CAPI) is an application programming interface standard used
 | 
				
			||||||
 | 
					to access ISDN equipment connected to basic rate interfaces (BRI) and primary
 | 
				
			||||||
 | 
					rate interfaces (PRI).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Kernel CAPI operates as a dispatching layer between CAPI applications and CAPI
 | 
				
			||||||
 | 
					hardware drivers. Hardware drivers register ISDN devices (controllers, in CAPI
 | 
				
			||||||
 | 
					lingo) with Kernel CAPI to indicate their readiness to provide their service
 | 
				
			||||||
 | 
					to CAPI applications. CAPI applications also register with Kernel CAPI,
 | 
				
			||||||
 | 
					requesting association with a CAPI device. Kernel CAPI then dispatches the
 | 
				
			||||||
 | 
					application registration to an available device, forwarding it to the
 | 
				
			||||||
 | 
					corresponding hardware driver. Kernel CAPI then forwards CAPI messages in both
 | 
				
			||||||
 | 
					directions between the application and the hardware driver.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Format and semantics of CAPI messages are specified in the CAPI 2.0 standard.
 | 
				
			||||||
 | 
					This standard is freely available from http://www.capi.org.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					2. Driver and Device Registration
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CAPI drivers optionally register themselves with Kernel CAPI by calling the
 | 
				
			||||||
 | 
					Kernel CAPI function register_capi_driver() with a pointer to a struct
 | 
				
			||||||
 | 
					capi_driver. This structure must be filled with the name and revision of the
 | 
				
			||||||
 | 
					driver, and optionally a pointer to a callback function, add_card(). The
 | 
				
			||||||
 | 
					registration can be revoked by calling the function unregister_capi_driver()
 | 
				
			||||||
 | 
					with a pointer to the same struct capi_driver.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CAPI drivers must register each of the ISDN devices they control with Kernel
 | 
				
			||||||
 | 
					CAPI by calling the Kernel CAPI function attach_capi_ctr() with a pointer to a
 | 
				
			||||||
 | 
					struct capi_ctr before they can be used. This structure must be filled with
 | 
				
			||||||
 | 
					the names of the driver and controller, and a number of callback function
 | 
				
			||||||
 | 
					pointers which are subsequently used by Kernel CAPI for communicating with the
 | 
				
			||||||
 | 
					driver. The registration can be revoked by calling the function
 | 
				
			||||||
 | 
					detach_capi_ctr() with a pointer to the same struct capi_ctr.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Before the device can be actually used, the driver must fill in the device
 | 
				
			||||||
 | 
					information fields 'manu', 'version', 'profile' and 'serial' in the capi_ctr
 | 
				
			||||||
 | 
					structure of the device, and signal its readiness by calling capi_ctr_ready().
 | 
				
			||||||
 | 
					From then on, Kernel CAPI may call the registered callback functions for the
 | 
				
			||||||
 | 
					device.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					If the device becomes unusable for any reason (shutdown, disconnect ...), the
 | 
				
			||||||
 | 
					driver has to call capi_ctr_reseted(). This will prevent further calls to the
 | 
				
			||||||
 | 
					callback functions by Kernel CAPI.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					3. Application Registration and Communication
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Kernel CAPI forwards registration requests from applications (calls to CAPI
 | 
				
			||||||
 | 
					operation CAPI_REGISTER) to an appropriate hardware driver by calling its
 | 
				
			||||||
 | 
					register_appl() callback function. A unique Application ID (ApplID, u16) is
 | 
				
			||||||
 | 
					allocated by Kernel CAPI and passed to register_appl() along with the
 | 
				
			||||||
 | 
					parameter structure provided by the application. This is analogous to the
 | 
				
			||||||
 | 
					open() operation on regular files or character devices.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					After a successful return from register_appl(), CAPI messages from the
 | 
				
			||||||
 | 
					application may be passed to the driver for the device via calls to the
 | 
				
			||||||
 | 
					send_message() callback function. The CAPI message to send is stored in the
 | 
				
			||||||
 | 
					data portion of an skb. Conversely, the driver may call Kernel CAPI's
 | 
				
			||||||
 | 
					capi_ctr_handle_message() function to pass a received CAPI message to Kernel
 | 
				
			||||||
 | 
					CAPI for forwarding to an application, specifying its ApplID.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Deregistration requests (CAPI operation CAPI_RELEASE) from applications are
 | 
				
			||||||
 | 
					forwarded as calls to the release_appl() callback function, passing the same
 | 
				
			||||||
 | 
					ApplID as with register_appl(). After return from release_appl(), no CAPI
 | 
				
			||||||
 | 
					messages for that application may be passed to or from the device anymore.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					4. Data Structures
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					4.1 struct capi_driver
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This structure describes a Kernel CAPI driver itself. It is used in the
 | 
				
			||||||
 | 
					register_capi_driver() and unregister_capi_driver() functions, and contains
 | 
				
			||||||
 | 
					the following non-private fields, all to be set by the driver before calling
 | 
				
			||||||
 | 
					register_capi_driver():
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char name[32]
 | 
				
			||||||
 | 
						the name of the driver, as a zero-terminated ASCII string
 | 
				
			||||||
 | 
					char revision[32]
 | 
				
			||||||
 | 
						the revision number of the driver, as a zero-terminated ASCII string
 | 
				
			||||||
 | 
					int (*add_card)(struct capi_driver *driver, capicardparams *data)
 | 
				
			||||||
 | 
						a callback function pointer (may be NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					4.2 struct capi_ctr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This structure describes an ISDN device (controller) handled by a Kernel CAPI
 | 
				
			||||||
 | 
					driver. After registration via the attach_capi_ctr() function it is passed to
 | 
				
			||||||
 | 
					all controller specific lower layer interface and callback functions to
 | 
				
			||||||
 | 
					identify the controller to operate on.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It contains the following non-private fields:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- to be set by the driver before calling attach_capi_ctr():
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					struct module *owner
 | 
				
			||||||
 | 
						pointer to the driver module owning the device
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void *driverdata
 | 
				
			||||||
 | 
						an opaque pointer to driver specific data, not touched by Kernel CAPI
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char name[32]
 | 
				
			||||||
 | 
						the name of the controller, as a zero-terminated ASCII string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char *driver_name
 | 
				
			||||||
 | 
						the name of the driver, as a zero-terminated ASCII string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int (*load_firmware)(struct capi_ctr *ctrlr, capiloaddata *ldata)
 | 
				
			||||||
 | 
						(optional) pointer to a callback function for sending firmware and
 | 
				
			||||||
 | 
						configuration data to the device
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void (*reset_ctr)(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
						pointer to a callback function for performing a reset on the device,
 | 
				
			||||||
 | 
						releasing all registered applications
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void (*register_appl)(struct capi_ctr *ctrlr, u16 applid,
 | 
				
			||||||
 | 
								capi_register_params *rparam)
 | 
				
			||||||
 | 
					void (*release_appl)(struct capi_ctr *ctrlr, u16 applid)
 | 
				
			||||||
 | 
						pointers to callback functions for registration and deregistration of
 | 
				
			||||||
 | 
						applications with the device
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					u16  (*send_message)(struct capi_ctr *ctrlr, struct sk_buff *skb)
 | 
				
			||||||
 | 
						pointer to a callback function for sending a CAPI message to the
 | 
				
			||||||
 | 
						device
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char *(*procinfo)(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
						pointer to a callback function returning the entry for the device in
 | 
				
			||||||
 | 
						the CAPI controller info table, /proc/capi/controller
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					read_proc_t *ctr_read_proc
 | 
				
			||||||
 | 
						pointer to the read_proc callback function for the device's proc file
 | 
				
			||||||
 | 
						system entry, /proc/capi/controllers/<n>; will be called with a
 | 
				
			||||||
 | 
						pointer to the device's capi_ctr structure as the last (data) argument
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- to be filled in before calling capi_ctr_ready():
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					u8 manu[CAPI_MANUFACTURER_LEN]
 | 
				
			||||||
 | 
						value to return for CAPI_GET_MANUFACTURER
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					capi_version version
 | 
				
			||||||
 | 
						value to return for CAPI_GET_VERSION
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					capi_profile profile
 | 
				
			||||||
 | 
						value to return for CAPI_GET_PROFILE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					u8 serial[CAPI_SERIAL_LEN]
 | 
				
			||||||
 | 
						value to return for CAPI_GET_SERIAL
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					5. Lower Layer Interface Functions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(declared in <linux/isdn/capilli.h>)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void register_capi_driver(struct capi_driver *drvr)
 | 
				
			||||||
 | 
					void unregister_capi_driver(struct capi_driver *drvr)
 | 
				
			||||||
 | 
						register/unregister a driver with Kernel CAPI
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int attach_capi_ctr(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
					int detach_capi_ctr(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
						register/unregister a device (controller) with Kernel CAPI
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void capi_ctr_ready(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
					void capi_ctr_reseted(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
						signal controller ready/not ready
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void capi_ctr_suspend_output(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
					void capi_ctr_resume_output(struct capi_ctr *ctrlr)
 | 
				
			||||||
 | 
						signal suspend/resume
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void capi_ctr_handle_message(struct capi_ctr * ctrlr, u16 applid,
 | 
				
			||||||
 | 
									struct sk_buff *skb)
 | 
				
			||||||
 | 
						pass a received CAPI message to Kernel CAPI
 | 
				
			||||||
 | 
						for forwarding to the specified application
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					6. Helper Functions and Macros
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Library functions (from <linux/isdn/capilli.h>):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void capilib_new_ncci(struct list_head *head, u16 applid,
 | 
				
			||||||
 | 
								u32 ncci, u32 winsize)
 | 
				
			||||||
 | 
					void capilib_free_ncci(struct list_head *head, u16 applid, u32 ncci)
 | 
				
			||||||
 | 
					void capilib_release_appl(struct list_head *head, u16 applid)
 | 
				
			||||||
 | 
					void capilib_release(struct list_head *head)
 | 
				
			||||||
 | 
					void capilib_data_b3_conf(struct list_head *head, u16 applid,
 | 
				
			||||||
 | 
								u32 ncci, u16 msgid)
 | 
				
			||||||
 | 
					u16  capilib_data_b3_req(struct list_head *head, u16 applid,
 | 
				
			||||||
 | 
								u32 ncci, u16 msgid)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Macros to extract/set element values from/in a CAPI message header
 | 
				
			||||||
 | 
					(from <linux/isdn/capiutil.h>):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Get Macro		Set Macro			Element (Type)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CAPIMSG_LEN(m)		CAPIMSG_SETLEN(m, len)		Total Length (u16)
 | 
				
			||||||
 | 
					CAPIMSG_APPID(m)	CAPIMSG_SETAPPID(m, applid)	ApplID (u16)
 | 
				
			||||||
 | 
					CAPIMSG_COMMAND(m)	CAPIMSG_SETCOMMAND(m,cmd)	Command (u8)
 | 
				
			||||||
 | 
					CAPIMSG_SUBCOMMAND(m)	CAPIMSG_SETSUBCOMMAND(m, cmd)	Subcommand (u8)
 | 
				
			||||||
 | 
					CAPIMSG_CMD(m)		-				Command*256
 | 
				
			||||||
 | 
												+ Subcommand (u16)
 | 
				
			||||||
 | 
					CAPIMSG_MSGID(m)	CAPIMSG_SETMSGID(m, msgid)	Message Number (u16)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CAPIMSG_CONTROL(m)	CAPIMSG_SETCONTROL(m, contr)	Controller/PLCI/NCCI
 | 
				
			||||||
 | 
												(u32)
 | 
				
			||||||
 | 
					CAPIMSG_DATALEN(m)	CAPIMSG_SETDATALEN(m, len)	Data Length (u16)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -40,10 +40,16 @@ This document describes the Linux kernel Makefiles.
 | 
				
			||||||
	   --- 6.7 Custom kbuild commands
 | 
						   --- 6.7 Custom kbuild commands
 | 
				
			||||||
	   --- 6.8 Preprocessing linker scripts
 | 
						   --- 6.8 Preprocessing linker scripts
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	=== 7 Kbuild Variables
 | 
						=== 7 Kbuild syntax for exported headers
 | 
				
			||||||
	=== 8 Makefile language
 | 
							--- 7.1 header-y
 | 
				
			||||||
	=== 9 Credits
 | 
							--- 7.2 objhdr-y
 | 
				
			||||||
	=== 10 TODO
 | 
							--- 7.3 destination-y
 | 
				
			||||||
 | 
							--- 7.4 unifdef-y (deprecated)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						=== 8 Kbuild Variables
 | 
				
			||||||
 | 
						=== 9 Makefile language
 | 
				
			||||||
 | 
						=== 10 Credits
 | 
				
			||||||
 | 
						=== 11 TODO
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== 1 Overview
 | 
					=== 1 Overview
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -310,6 +316,16 @@ more details, with real examples.
 | 
				
			||||||
		#arch/m68k/fpsp040/Makefile
 | 
							#arch/m68k/fpsp040/Makefile
 | 
				
			||||||
		ldflags-y := -x
 | 
							ldflags-y := -x
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    subdir-ccflags-y, subdir-asflags-y
 | 
				
			||||||
 | 
						The two flags listed above are similar to ccflags-y and as-falgs-y.
 | 
				
			||||||
 | 
						The difference is that the subdir- variants has effect for the kbuild
 | 
				
			||||||
 | 
						file where tey are present and all subdirectories.
 | 
				
			||||||
 | 
						Options specified using subdir-* are added to the commandline before
 | 
				
			||||||
 | 
						the options specified using the non-subdir variants.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						Example:
 | 
				
			||||||
 | 
							subdir-ccflags-y := -Werror
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    CFLAGS_$@, AFLAGS_$@
 | 
					    CFLAGS_$@, AFLAGS_$@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	CFLAGS_$@ and AFLAGS_$@ only apply to commands in current
 | 
						CFLAGS_$@ and AFLAGS_$@ only apply to commands in current
 | 
				
			||||||
| 
						 | 
					@ -1143,8 +1159,69 @@ When kbuild executes, the following steps are followed (roughly):
 | 
				
			||||||
	The kbuild infrastructure for *lds file are used in several
 | 
						The kbuild infrastructure for *lds file are used in several
 | 
				
			||||||
	architecture-specific files.
 | 
						architecture-specific files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=== 7 Kbuild syntax for exported headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== 7 Kbuild Variables
 | 
					The kernel include a set of headers that is exported to userspace.
 | 
				
			||||||
 | 
					Many headers can be exported as-is but other headers requires  a
 | 
				
			||||||
 | 
					minimal pre-processing before they are ready for user-space.
 | 
				
			||||||
 | 
					The pre-processing does:
 | 
				
			||||||
 | 
					- drop kernel specific annotations
 | 
				
			||||||
 | 
					- drop include of compiler.h
 | 
				
			||||||
 | 
					- drop all sections that is kernel internat (guarded by ifdef __KERNEL__)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Each relevant directory contain a file name "Kbuild" which specify the
 | 
				
			||||||
 | 
					headers to be exported.
 | 
				
			||||||
 | 
					See subsequent chapter for the syntax of the Kbuild file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						--- 7.1 header-y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						header-y specify header files to be exported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							Example:
 | 
				
			||||||
 | 
								#include/linux/Kbuild
 | 
				
			||||||
 | 
								header-y += usb/
 | 
				
			||||||
 | 
								header-y += aio_abi.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						The convention is to list one file per line and
 | 
				
			||||||
 | 
						preferably in alphabetic order.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						header-y also specify which subdirectories to visit.
 | 
				
			||||||
 | 
						A subdirectory is identified by a trailing '/' which
 | 
				
			||||||
 | 
						can be seen in the example above for the usb subdirectory.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						Subdirectories are visited before their parent directories.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						--- 7.2 objhdr-y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						objhdr-y specifies generated files to be exported.
 | 
				
			||||||
 | 
						Generated files are special as they need to be looked
 | 
				
			||||||
 | 
						up in another directory when doing 'make O=...' builds.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							Example:
 | 
				
			||||||
 | 
								#include/linux/Kbuild
 | 
				
			||||||
 | 
								objhdr-y += version.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						--- 7.3 destination-y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						When an architecture have a set of exported headers that needs to be
 | 
				
			||||||
 | 
						exported to a different directory destination-y is used.
 | 
				
			||||||
 | 
						destination-y specify the destination directory for all exported
 | 
				
			||||||
 | 
						headers in the file where it is present.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							Example:
 | 
				
			||||||
 | 
								#arch/xtensa/platforms/s6105/include/platform/Kbuild
 | 
				
			||||||
 | 
								destination-y := include/linux
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						In the example above all exported headers in the Kbuild file
 | 
				
			||||||
 | 
						will be located in the directory "include/linux" when exported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						--- 7.4 unifdef-y (deprecated)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						unifdef-y is deprecated. A direct replacement is header-y.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=== 8 Kbuild Variables
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The top Makefile exports the following variables:
 | 
					The top Makefile exports the following variables:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1206,7 +1283,7 @@ The top Makefile exports the following variables:
 | 
				
			||||||
	INSTALL_MOD_STRIP will used as the option(s) to the strip command.
 | 
						INSTALL_MOD_STRIP will used as the option(s) to the strip command.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== 8 Makefile language
 | 
					=== 9 Makefile language
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The kernel Makefiles are designed to be run with GNU Make.  The Makefiles
 | 
					The kernel Makefiles are designed to be run with GNU Make.  The Makefiles
 | 
				
			||||||
use only the documented features of GNU Make, but they do use many
 | 
					use only the documented features of GNU Make, but they do use many
 | 
				
			||||||
| 
						 | 
					@ -1225,14 +1302,14 @@ time the left-hand side is used.
 | 
				
			||||||
There are some cases where "=" is appropriate.  Usually, though, ":="
 | 
					There are some cases where "=" is appropriate.  Usually, though, ":="
 | 
				
			||||||
is the right choice.
 | 
					is the right choice.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== 9 Credits
 | 
					=== 10 Credits
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Original version made by Michael Elizabeth Chastain, <mailto:mec@shout.net>
 | 
					Original version made by Michael Elizabeth Chastain, <mailto:mec@shout.net>
 | 
				
			||||||
Updates by Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de>
 | 
					Updates by Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de>
 | 
				
			||||||
Updates by Sam Ravnborg <sam@ravnborg.org>
 | 
					Updates by Sam Ravnborg <sam@ravnborg.org>
 | 
				
			||||||
Language QA by Jan Engelhardt <jengelh@gmx.de>
 | 
					Language QA by Jan Engelhardt <jengelh@gmx.de>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== 10 TODO
 | 
					=== 11 TODO
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Describe how kbuild supports shipped files with _shipped.
 | 
					- Describe how kbuild supports shipped files with _shipped.
 | 
				
			||||||
- Generating offset header files.
 | 
					- Generating offset header files.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -269,7 +269,10 @@ Use the argument mechanism to document members or constants.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Inside a struct description, you can use the "private:" and "public:"
 | 
					Inside a struct description, you can use the "private:" and "public:"
 | 
				
			||||||
comment tags.  Structure fields that are inside a "private:" area
 | 
					comment tags.  Structure fields that are inside a "private:" area
 | 
				
			||||||
are not listed in the generated output documentation.
 | 
					are not listed in the generated output documentation.  The "private:"
 | 
				
			||||||
 | 
					and "public:" tags must begin immediately following a "/*" comment
 | 
				
			||||||
 | 
					marker.  They may optionally include comments between the ":" and the
 | 
				
			||||||
 | 
					ending "*/" marker.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Example:
 | 
					Example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -283,7 +286,7 @@ Example:
 | 
				
			||||||
struct my_struct {
 | 
					struct my_struct {
 | 
				
			||||||
    int a;
 | 
					    int a;
 | 
				
			||||||
    int b;
 | 
					    int b;
 | 
				
			||||||
/* private: */
 | 
					/* private: internal use only */
 | 
				
			||||||
    int c;
 | 
					    int c;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,6 +17,12 @@ are specified on the kernel command line with the module name plus
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	usbcore.blinkenlights=1
 | 
						usbcore.blinkenlights=1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Hyphens (dashes) and underscores are equivalent in parameter names, so
 | 
				
			||||||
 | 
						log_buf_len=1M print-fatal-signals=1
 | 
				
			||||||
 | 
					can also be entered as
 | 
				
			||||||
 | 
						log-buf-len=1M print_fatal_signals=1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This document may not be entirely up to date and comprehensive. The command
 | 
					This document may not be entirely up to date and comprehensive. The command
 | 
				
			||||||
"modinfo -p ${modulename}" shows a current list of all parameters of a loadable
 | 
					"modinfo -p ${modulename}" shows a current list of all parameters of a loadable
 | 
				
			||||||
module. Loadable modules, after being loaded into the running kernel, also
 | 
					module. Loadable modules, after being loaded into the running kernel, also
 | 
				
			||||||
| 
						 | 
					@ -134,7 +140,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
./include/asm/setup.h as COMMAND_LINE_SIZE.
 | 
					./include/asm/setup.h as COMMAND_LINE_SIZE.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	acpi=		[HW,ACPI,X86-64,i386]
 | 
						acpi=		[HW,ACPI,X86]
 | 
				
			||||||
			Advanced Configuration and Power Interface
 | 
								Advanced Configuration and Power Interface
 | 
				
			||||||
			Format: { force | off | ht | strict | noirq | rsdt }
 | 
								Format: { force | off | ht | strict | noirq | rsdt }
 | 
				
			||||||
			force -- enable ACPI if default was off
 | 
								force -- enable ACPI if default was off
 | 
				
			||||||
| 
						 | 
					@ -218,7 +224,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			acpi_osi="!string2"	# remove built-in string2
 | 
								acpi_osi="!string2"	# remove built-in string2
 | 
				
			||||||
			acpi_osi=		# disable all strings
 | 
								acpi_osi=		# disable all strings
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	acpi_pm_good	[X86-32,X86-64]
 | 
						acpi_pm_good	[X86]
 | 
				
			||||||
			Override the pmtimer bug detection: force the kernel
 | 
								Override the pmtimer bug detection: force the kernel
 | 
				
			||||||
			to assume that this machine's pmtimer latches its value
 | 
								to assume that this machine's pmtimer latches its value
 | 
				
			||||||
			and always returns good values.
 | 
								and always returns good values.
 | 
				
			||||||
| 
						 | 
					@ -231,6 +237,35 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
 			power state again in power transition.
 | 
					 			power state again in power transition.
 | 
				
			||||||
 			1 : disable the power state check
 | 
					 			1 : disable the power state check
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						acpi_sci=	[HW,ACPI] ACPI System Control Interrupt trigger mode
 | 
				
			||||||
 | 
								Format: { level | edge | high | low }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						acpi_serialize	[HW,ACPI] force serialization of AML methods
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						acpi_skip_timer_override [HW,ACPI]
 | 
				
			||||||
 | 
								Recognize and ignore IRQ0/pin2 Interrupt Override.
 | 
				
			||||||
 | 
								For broken nForce2 BIOS resulting in XT-PIC timer.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						acpi_sleep=	[HW,ACPI] Sleep options
 | 
				
			||||||
 | 
								Format: { s3_bios, s3_mode, s3_beep, s4_nohwsig,
 | 
				
			||||||
 | 
									  old_ordering, s4_nonvs }
 | 
				
			||||||
 | 
								See Documentation/power/video.txt for information on
 | 
				
			||||||
 | 
								s3_bios and s3_mode.
 | 
				
			||||||
 | 
								s3_beep is for debugging; it makes the PC's speaker beep
 | 
				
			||||||
 | 
								as soon as the kernel's real-mode entry point is called.
 | 
				
			||||||
 | 
								s4_nohwsig prevents ACPI hardware signature from being
 | 
				
			||||||
 | 
								used during resume from hibernation.
 | 
				
			||||||
 | 
								old_ordering causes the ACPI 1.0 ordering of the _PTS
 | 
				
			||||||
 | 
								control method, with respect to putting devices into
 | 
				
			||||||
 | 
								low power states, to be enforced (the ACPI 2.0 ordering
 | 
				
			||||||
 | 
								of _PTS is used by default).
 | 
				
			||||||
 | 
								s4_nonvs prevents the kernel from saving/restoring the
 | 
				
			||||||
 | 
								ACPI NVS memory during hibernation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						acpi_use_timer_override [HW,ACPI]
 | 
				
			||||||
 | 
								Use timer override. For some broken Nvidia NF5 boards
 | 
				
			||||||
 | 
								that require a timer override, but don't have HPET
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	acpi_enforce_resources=	[ACPI]
 | 
						acpi_enforce_resources=	[ACPI]
 | 
				
			||||||
			{ strict | lax | no }
 | 
								{ strict | lax | no }
 | 
				
			||||||
			Check for resource conflicts between native drivers
 | 
								Check for resource conflicts between native drivers
 | 
				
			||||||
| 
						 | 
					@ -250,6 +285,9 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
	ad1848=		[HW,OSS]
 | 
						ad1848=		[HW,OSS]
 | 
				
			||||||
			Format: <io>,<irq>,<dma>,<dma2>,<type>
 | 
								Format: <io>,<irq>,<dma>,<dma2>,<type>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						add_efi_memmap	[EFI; X86] Include EFI memory map in
 | 
				
			||||||
 | 
								kernel's map of available physical RAM.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	advansys=	[HW,SCSI]
 | 
						advansys=	[HW,SCSI]
 | 
				
			||||||
			See header of drivers/scsi/advansys.c.
 | 
								See header of drivers/scsi/advansys.c.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -313,7 +351,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			not play well with APC CPU idle - disable it if you have
 | 
								not play well with APC CPU idle - disable it if you have
 | 
				
			||||||
			APC and your system crashes randomly.
 | 
								APC and your system crashes randomly.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	apic=		[APIC,i386] Advanced Programmable Interrupt Controller
 | 
						apic=		[APIC,X86-32] Advanced Programmable Interrupt Controller
 | 
				
			||||||
			Change the output verbosity whilst booting
 | 
								Change the output verbosity whilst booting
 | 
				
			||||||
			Format: { quiet (default) | verbose | debug }
 | 
								Format: { quiet (default) | verbose | debug }
 | 
				
			||||||
			Change the amount of debugging information output
 | 
								Change the amount of debugging information output
 | 
				
			||||||
| 
						 | 
					@ -459,7 +497,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			Also note the kernel might malfunction if you disable
 | 
								Also note the kernel might malfunction if you disable
 | 
				
			||||||
			some critical bits.
 | 
								some critical bits.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	code_bytes	[IA32/X86_64] How many bytes of object code to print
 | 
						code_bytes	[X86] How many bytes of object code to print
 | 
				
			||||||
			in an oops report.
 | 
								in an oops report.
 | 
				
			||||||
			Range: 0 - 8192
 | 
								Range: 0 - 8192
 | 
				
			||||||
			Default: 64
 | 
								Default: 64
 | 
				
			||||||
| 
						 | 
					@ -592,7 +630,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			MTRR settings.  This parameter disables that behavior,
 | 
								MTRR settings.  This parameter disables that behavior,
 | 
				
			||||||
			possibly causing your machine to run very slowly.
 | 
								possibly causing your machine to run very slowly.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	disable_timer_pin_1 [i386,x86-64]
 | 
						disable_timer_pin_1 [X86]
 | 
				
			||||||
			Disable PIN 1 of APIC timer
 | 
								Disable PIN 1 of APIC timer
 | 
				
			||||||
			Can be useful to work around chipset bugs.
 | 
								Can be useful to work around chipset bugs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -624,7 +662,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			UART at the specified I/O port or MMIO address.
 | 
								UART at the specified I/O port or MMIO address.
 | 
				
			||||||
			The options are the same as for ttyS, above.
 | 
								The options are the same as for ttyS, above.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	earlyprintk=	[X86-32,X86-64,SH,BLACKFIN]
 | 
						earlyprintk=	[X86,SH,BLACKFIN]
 | 
				
			||||||
			earlyprintk=vga
 | 
								earlyprintk=vga
 | 
				
			||||||
			earlyprintk=serial[,ttySn[,baudrate]]
 | 
								earlyprintk=serial[,ttySn[,baudrate]]
 | 
				
			||||||
			earlyprintk=dbgp
 | 
								earlyprintk=dbgp
 | 
				
			||||||
| 
						 | 
					@ -659,7 +697,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			See Documentation/block/as-iosched.txt and
 | 
								See Documentation/block/as-iosched.txt and
 | 
				
			||||||
			Documentation/block/deadline-iosched.txt for details.
 | 
								Documentation/block/deadline-iosched.txt for details.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	elfcorehdr=	[IA64,PPC,SH,X86-32,X86_64]
 | 
						elfcorehdr=	[IA64,PPC,SH,X86]
 | 
				
			||||||
			Specifies physical address of start of kernel core
 | 
								Specifies physical address of start of kernel core
 | 
				
			||||||
			image elf header. Generally kexec loader will
 | 
								image elf header. Generally kexec loader will
 | 
				
			||||||
			pass this option to capture kernel.
 | 
								pass this option to capture kernel.
 | 
				
			||||||
| 
						 | 
					@ -670,7 +708,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			to discrete, to make X server driver able to add WB
 | 
								to discrete, to make X server driver able to add WB
 | 
				
			||||||
			entry later. This parameter enables that.
 | 
								entry later. This parameter enables that.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	enable_timer_pin_1 [i386,x86-64]
 | 
						enable_timer_pin_1 [X86]
 | 
				
			||||||
			Enable PIN 1 of APIC timer
 | 
								Enable PIN 1 of APIC timer
 | 
				
			||||||
			Can be useful to work around chipset bugs
 | 
								Can be useful to work around chipset bugs
 | 
				
			||||||
			(in particular on some ATI chipsets).
 | 
								(in particular on some ATI chipsets).
 | 
				
			||||||
| 
						 | 
					@ -743,7 +781,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	hashdist=	[KNL,NUMA] Large hashes allocated during boot
 | 
						hashdist=	[KNL,NUMA] Large hashes allocated during boot
 | 
				
			||||||
			are distributed across NUMA nodes.  Defaults on
 | 
								are distributed across NUMA nodes.  Defaults on
 | 
				
			||||||
			for IA-64, off otherwise.
 | 
								for 64bit NUMA, off otherwise.
 | 
				
			||||||
			Format: 0 | 1 (for off | on)
 | 
								Format: 0 | 1 (for off | on)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	hcl=		[IA-64] SGI's Hardware Graph compatibility layer
 | 
						hcl=		[IA-64] SGI's Hardware Graph compatibility layer
 | 
				
			||||||
| 
						 | 
					@ -938,7 +976,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			See comment before marvel_specify_io7 in
 | 
								See comment before marvel_specify_io7 in
 | 
				
			||||||
			arch/alpha/kernel/core_marvel.c.
 | 
								arch/alpha/kernel/core_marvel.c.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	io_delay=	[X86-32,X86-64] I/O delay method
 | 
						io_delay=	[X86] I/O delay method
 | 
				
			||||||
		0x80
 | 
							0x80
 | 
				
			||||||
			Standard port 0x80 based delay
 | 
								Standard port 0x80 based delay
 | 
				
			||||||
		0xed
 | 
							0xed
 | 
				
			||||||
| 
						 | 
					@ -1000,7 +1038,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	keepinitrd	[HW,ARM]
 | 
						keepinitrd	[HW,ARM]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	kernelcore=nn[KMG]	[KNL,X86-32,IA-64,PPC,X86-64] This parameter
 | 
						kernelcore=nn[KMG]	[KNL,X86,IA-64,PPC] This parameter
 | 
				
			||||||
			specifies the amount of memory usable by the kernel
 | 
								specifies the amount of memory usable by the kernel
 | 
				
			||||||
			for non-movable allocations.  The requested amount is
 | 
								for non-movable allocations.  The requested amount is
 | 
				
			||||||
			spread evenly throughout all nodes in the system. The
 | 
								spread evenly throughout all nodes in the system. The
 | 
				
			||||||
| 
						 | 
					@ -1034,7 +1072,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			Configure the RouterBoard 532 series on-chip
 | 
								Configure the RouterBoard 532 series on-chip
 | 
				
			||||||
			Ethernet adapter MAC address.
 | 
								Ethernet adapter MAC address.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	kstack=N	[X86-32,X86-64] Print N words from the kernel stack
 | 
						kstack=N	[X86] Print N words from the kernel stack
 | 
				
			||||||
			in oops dumps.
 | 
								in oops dumps.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	l2cr=		[PPC]
 | 
						l2cr=		[PPC]
 | 
				
			||||||
| 
						 | 
					@ -1044,7 +1082,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
	lapic		[X86-32,APIC] Enable the local APIC even if BIOS
 | 
						lapic		[X86-32,APIC] Enable the local APIC even if BIOS
 | 
				
			||||||
			disabled it.
 | 
								disabled it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	lapic_timer_c2_ok	[X86-32,x86-64,APIC] trust the local apic timer
 | 
						lapic_timer_c2_ok	[X86,APIC] trust the local apic timer
 | 
				
			||||||
			in C2 power state.
 | 
								in C2 power state.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	libata.dma=	[LIBATA] DMA control
 | 
						libata.dma=	[LIBATA] DMA control
 | 
				
			||||||
| 
						 | 
					@ -1229,7 +1267,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			[KNL,SH] Allow user to override the default size for
 | 
								[KNL,SH] Allow user to override the default size for
 | 
				
			||||||
			per-device physically contiguous DMA buffers.
 | 
								per-device physically contiguous DMA buffers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	memmap=exactmap	[KNL,X86-32,X86_64] Enable setting of an exact
 | 
						memmap=exactmap	[KNL,X86] Enable setting of an exact
 | 
				
			||||||
			E820 memory map, as specified by the user.
 | 
								E820 memory map, as specified by the user.
 | 
				
			||||||
			Such memmap=exactmap lines can be constructed based on
 | 
								Such memmap=exactmap lines can be constructed based on
 | 
				
			||||||
			BIOS output or other requirements. See the memmap=nn@ss
 | 
								BIOS output or other requirements. See the memmap=nn@ss
 | 
				
			||||||
| 
						 | 
					@ -1320,7 +1358,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
	mousedev.yres=	[MOUSE] Vertical screen resolution, used for devices
 | 
						mousedev.yres=	[MOUSE] Vertical screen resolution, used for devices
 | 
				
			||||||
			reporting absolute coordinates, such as tablets
 | 
								reporting absolute coordinates, such as tablets
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	movablecore=nn[KMG]	[KNL,X86-32,IA-64,PPC,X86-64] This parameter
 | 
						movablecore=nn[KMG]	[KNL,X86,IA-64,PPC] This parameter
 | 
				
			||||||
			is similar to kernelcore except it specifies the
 | 
								is similar to kernelcore except it specifies the
 | 
				
			||||||
			amount of memory used for migratable allocations.
 | 
								amount of memory used for migratable allocations.
 | 
				
			||||||
			If both kernelcore and movablecore is specified,
 | 
								If both kernelcore and movablecore is specified,
 | 
				
			||||||
| 
						 | 
					@ -1422,7 +1460,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			when a NMI is triggered.
 | 
								when a NMI is triggered.
 | 
				
			||||||
			Format: [state][,regs][,debounce][,die]
 | 
								Format: [state][,regs][,debounce][,die]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	nmi_watchdog=	[KNL,BUGS=X86-32,X86-64] Debugging features for SMP kernels
 | 
						nmi_watchdog=	[KNL,BUGS=X86] Debugging features for SMP kernels
 | 
				
			||||||
			Format: [panic,][num]
 | 
								Format: [panic,][num]
 | 
				
			||||||
			Valid num: 0,1,2
 | 
								Valid num: 0,1,2
 | 
				
			||||||
			0 - turn nmi_watchdog off
 | 
								0 - turn nmi_watchdog off
 | 
				
			||||||
| 
						 | 
					@ -1475,11 +1513,11 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	nodsp		[SH] Disable hardware DSP at boot time.
 | 
						nodsp		[SH] Disable hardware DSP at boot time.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	noefi		[X86-32,X86-64] Disable EFI runtime services support.
 | 
						noefi		[X86] Disable EFI runtime services support.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	noexec		[IA-64]
 | 
						noexec		[IA-64]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	noexec		[X86-32,X86-64]
 | 
						noexec		[X86]
 | 
				
			||||||
			On X86-32 available only on PAE configured kernels.
 | 
								On X86-32 available only on PAE configured kernels.
 | 
				
			||||||
			noexec=on: enable non-executable mappings (default)
 | 
								noexec=on: enable non-executable mappings (default)
 | 
				
			||||||
			noexec=off: disable non-executable mappings
 | 
								noexec=off: disable non-executable mappings
 | 
				
			||||||
| 
						 | 
					@ -1525,7 +1563,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
	noirqdebug	[X86-32] Disables the code which attempts to detect and
 | 
						noirqdebug	[X86-32] Disables the code which attempts to detect and
 | 
				
			||||||
			disable unhandled interrupt sources.
 | 
								disable unhandled interrupt sources.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	no_timer_check	[X86-32,X86_64,APIC] Disables the code which tests for
 | 
						no_timer_check	[X86,APIC] Disables the code which tests for
 | 
				
			||||||
			broken timer IRQ sources.
 | 
								broken timer IRQ sources.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	noisapnp	[ISAPNP] Disables ISA PnP code.
 | 
						noisapnp	[ISAPNP] Disables ISA PnP code.
 | 
				
			||||||
| 
						 | 
					@ -1588,6 +1626,8 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	nowb		[ARM]
 | 
						nowb		[ARM]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						nox2apic	[X86-64,APIC] Do not enable x2APIC mode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	nptcg=		[IA64] Override max number of concurrent global TLB
 | 
						nptcg=		[IA64] Override max number of concurrent global TLB
 | 
				
			||||||
			purges which is reported from either PAL_VM_SUMMARY or
 | 
								purges which is reported from either PAL_VM_SUMMARY or
 | 
				
			||||||
			SAL PALO.
 | 
								SAL PALO.
 | 
				
			||||||
| 
						 | 
					@ -1689,7 +1729,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
				disable the use of PCIE advanced error reporting.
 | 
									disable the use of PCIE advanced error reporting.
 | 
				
			||||||
		nodomains	[PCI] Disable support for multiple PCI
 | 
							nodomains	[PCI] Disable support for multiple PCI
 | 
				
			||||||
				root domains (aka PCI segments, in ACPI-speak).
 | 
									root domains (aka PCI segments, in ACPI-speak).
 | 
				
			||||||
		nommconf	[X86-32,X86_64] Disable use of MMCONFIG for PCI
 | 
							nommconf	[X86] Disable use of MMCONFIG for PCI
 | 
				
			||||||
				Configuration
 | 
									Configuration
 | 
				
			||||||
		nomsi		[MSI] If the PCI_MSI kernel config parameter is
 | 
							nomsi		[MSI] If the PCI_MSI kernel config parameter is
 | 
				
			||||||
				enabled, this kernel boot option can be used to
 | 
									enabled, this kernel boot option can be used to
 | 
				
			||||||
| 
						 | 
					@ -1838,6 +1878,12 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			autoconfiguration.
 | 
								autoconfiguration.
 | 
				
			||||||
			Ranges are in pairs (memory base and size).
 | 
								Ranges are in pairs (memory base and size).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						ports=		[IP_VS_FTP] IPVS ftp helper module
 | 
				
			||||||
 | 
								Default is 21.
 | 
				
			||||||
 | 
								Up to 8 (IP_VS_APP_MAX_PORTS) ports
 | 
				
			||||||
 | 
								may be specified.
 | 
				
			||||||
 | 
								Format: <port>,<port>....
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	print-fatal-signals=
 | 
						print-fatal-signals=
 | 
				
			||||||
			[KNL] debug: print fatal signals
 | 
								[KNL] debug: print fatal signals
 | 
				
			||||||
			print-fatal-signals=1: print segfault info to
 | 
								print-fatal-signals=1: print segfault info to
 | 
				
			||||||
| 
						 | 
					@ -2380,7 +2426,7 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
			reported either.
 | 
								reported either.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	unknown_nmi_panic
 | 
						unknown_nmi_panic
 | 
				
			||||||
			[X86-32,X86-64]
 | 
								[X86]
 | 
				
			||||||
			Set unknown_nmi_panic=1 early on boot.
 | 
								Set unknown_nmi_panic=1 early on boot.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	usbcore.autosuspend=
 | 
						usbcore.autosuspend=
 | 
				
			||||||
| 
						 | 
					@ -2447,12 +2493,12 @@ and is between 256 and 4096 characters. It is defined in the file
 | 
				
			||||||
					medium is write-protected).
 | 
										medium is write-protected).
 | 
				
			||||||
			Example: quirks=0419:aaf5:rl,0421:0433:rc
 | 
								Example: quirks=0419:aaf5:rl,0421:0433:rc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	vdso=		[X86-32,SH,x86-64]
 | 
						vdso=		[X86,SH]
 | 
				
			||||||
			vdso=2: enable compat VDSO (default with COMPAT_VDSO)
 | 
								vdso=2: enable compat VDSO (default with COMPAT_VDSO)
 | 
				
			||||||
			vdso=1: enable VDSO (default)
 | 
								vdso=1: enable VDSO (default)
 | 
				
			||||||
			vdso=0: disable VDSO mapping
 | 
								vdso=0: disable VDSO mapping
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	vdso32=		[X86-32,X86-64]
 | 
						vdso32=		[X86]
 | 
				
			||||||
			vdso32=2: enable compat VDSO (default with COMPAT_VDSO)
 | 
								vdso32=2: enable compat VDSO (default with COMPAT_VDSO)
 | 
				
			||||||
			vdso32=1: enable 32-bit VDSO (default)
 | 
								vdso32=1: enable 32-bit VDSO (default)
 | 
				
			||||||
			vdso32=0: disable 32-bit VDSO mapping
 | 
								vdso32=0: disable 32-bit VDSO mapping
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
		     ThinkPad ACPI Extras Driver
 | 
							     ThinkPad ACPI Extras Driver
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                            Version 0.22
 | 
					                            Version 0.23
 | 
				
			||||||
                        November 23rd,  2008
 | 
					                          April 10th, 2009
 | 
				
			||||||
 | 
					
 | 
				
			||||||
               Borislav Deianov <borislav@users.sf.net>
 | 
					               Borislav Deianov <borislav@users.sf.net>
 | 
				
			||||||
             Henrique de Moraes Holschuh <hmh@hmh.eng.br>
 | 
					             Henrique de Moraes Holschuh <hmh@hmh.eng.br>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1
									
								
								Documentation/lguest/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								Documentation/lguest/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					lguest
 | 
				
			||||||
| 
						 | 
					@ -3,11 +3,11 @@
 | 
				
			||||||
 /,    /`      - or, A Young Coder's Illustrated Hypervisor
 | 
					 /,    /`      - or, A Young Coder's Illustrated Hypervisor
 | 
				
			||||||
 \\"--\\    http://lguest.ozlabs.org
 | 
					 \\"--\\    http://lguest.ozlabs.org
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Lguest is designed to be a minimal hypervisor for the Linux kernel, for
 | 
					Lguest is designed to be a minimal 32-bit x86 hypervisor for the Linux kernel,
 | 
				
			||||||
Linux developers and users to experiment with virtualization with the
 | 
					for Linux developers and users to experiment with virtualization with the
 | 
				
			||||||
minimum of complexity.  Nonetheless, it should have sufficient
 | 
					minimum of complexity.  Nonetheless, it should have sufficient features to
 | 
				
			||||||
features to make it useful for specific tasks, and, of course, you are
 | 
					make it useful for specific tasks, and, of course, you are encouraged to fork
 | 
				
			||||||
encouraged to fork and enhance it (see drivers/lguest/README).
 | 
					and enhance it (see drivers/lguest/README).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Features:
 | 
					Features:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -37,6 +37,7 @@ Running Lguest:
 | 
				
			||||||
     "Paravirtualized guest support" = Y
 | 
					     "Paravirtualized guest support" = Y
 | 
				
			||||||
        "Lguest guest support" = Y
 | 
					        "Lguest guest support" = Y
 | 
				
			||||||
     "High Memory Support" = off/4GB
 | 
					     "High Memory Support" = off/4GB
 | 
				
			||||||
 | 
					     "PAE (Physical Address Extension) Support" = N
 | 
				
			||||||
     "Alignment value to which kernel should be aligned" = 0x100000
 | 
					     "Alignment value to which kernel should be aligned" = 0x100000
 | 
				
			||||||
        (CONFIG_PARAVIRT=y, CONFIG_LGUEST_GUEST=y, CONFIG_HIGHMEM64G=n and
 | 
					        (CONFIG_PARAVIRT=y, CONFIG_LGUEST_GUEST=y, CONFIG_HIGHMEM64G=n and
 | 
				
			||||||
         CONFIG_PHYSICAL_ALIGN=0x100000)
 | 
					         CONFIG_PHYSICAL_ALIGN=0x100000)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -54,9 +54,9 @@ locking error messages, inside curlies. A contrived example:
 | 
				
			||||||
The bit position indicates STATE, STATE-read, for each of the states listed
 | 
					The bit position indicates STATE, STATE-read, for each of the states listed
 | 
				
			||||||
above, and the character displayed in each indicates:
 | 
					above, and the character displayed in each indicates:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   '.'  acquired while irqs disabled
 | 
					   '.'  acquired while irqs disabled and not in irq context
 | 
				
			||||||
   '+'  acquired in irq context
 | 
					   '-'  acquired in irq context
 | 
				
			||||||
   '-'  acquired with irqs enabled
 | 
					   '+'  acquired with irqs enabled
 | 
				
			||||||
   '?'  acquired in irq context with irqs enabled.
 | 
					   '?'  acquired in irq context with irqs enabled.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Unused mutexes cannot be part of the cause of an error.
 | 
					Unused mutexes cannot be part of the cause of an error.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								Documentation/logo.gif
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Documentation/logo.gif
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 16 KiB  | 
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| 
		 Before Width: | Height: | Size: 303 KiB  | 
| 
						 | 
					@ -1,4 +1,13 @@
 | 
				
			||||||
Tux is taking a three month sabbatical to work as a barber, so Tuz is
 | 
					This is the full-colour version of the currently unofficial Linux logo
 | 
				
			||||||
standing in.  He's taken pains to ensure you'll hardly notice.
 | 
					("currently unofficial" just means that there has been no paperwork and
 | 
				
			||||||
 | 
					that I have not really announced it yet).  It was created by Larry Ewing,
 | 
				
			||||||
 | 
					and is freely usable as long as you acknowledge Larry as the original
 | 
				
			||||||
 | 
					artist. 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Note that there are black-and-white versions of this available that
 | 
				
			||||||
 | 
					scale down to smaller sizes and are better for letterheads or whatever
 | 
				
			||||||
 | 
					you want to use it for: for the full range of logos take a look at
 | 
				
			||||||
 | 
					Larry's web-page:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						http://www.isc.tamu.edu/~lewing/linux/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Image by Andrew McGown and Josh Bush.  Image is licensed CC BY-SA.
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1242,7 +1242,7 @@ monitoring is enabled, and vice-versa.
 | 
				
			||||||
To add ARP targets:
 | 
					To add ARP targets:
 | 
				
			||||||
# echo +192.168.0.100 > /sys/class/net/bond0/bonding/arp_ip_target
 | 
					# echo +192.168.0.100 > /sys/class/net/bond0/bonding/arp_ip_target
 | 
				
			||||||
# echo +192.168.0.101 > /sys/class/net/bond0/bonding/arp_ip_target
 | 
					# echo +192.168.0.101 > /sys/class/net/bond0/bonding/arp_ip_target
 | 
				
			||||||
	NOTE:  up to 10 target addresses may be specified.
 | 
						NOTE:  up to 16 target addresses may be specified.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
To remove an ARP target:
 | 
					To remove an ARP target:
 | 
				
			||||||
# echo -192.168.0.100 > /sys/class/net/bond0/bonding/arp_ip_target
 | 
					# echo -192.168.0.100 > /sys/class/net/bond0/bonding/arp_ip_target
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,12 +43,11 @@ Table of Contents
 | 
				
			||||||
    2) Representing devices without a current OF specification
 | 
					    2) Representing devices without a current OF specification
 | 
				
			||||||
      a) PHY nodes
 | 
					      a) PHY nodes
 | 
				
			||||||
      b) Interrupt controllers
 | 
					      b) Interrupt controllers
 | 
				
			||||||
      c) CFI or JEDEC memory-mapped NOR flash
 | 
					      c) 4xx/Axon EMAC ethernet nodes
 | 
				
			||||||
      d) 4xx/Axon EMAC ethernet nodes
 | 
					      d) Xilinx IP cores
 | 
				
			||||||
      e) Xilinx IP cores
 | 
					      e) USB EHCI controllers
 | 
				
			||||||
      f) USB EHCI controllers
 | 
					      f) MDIO on GPIOs
 | 
				
			||||||
      g) MDIO on GPIOs
 | 
					      g) SPI busses
 | 
				
			||||||
      h) SPI busses
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  VII - Marvell Discovery mv64[345]6x System Controller chips
 | 
					  VII - Marvell Discovery mv64[345]6x System Controller chips
 | 
				
			||||||
    1) The /system-controller node
 | 
					    1) The /system-controller node
 | 
				
			||||||
| 
						 | 
					@ -1287,71 +1286,7 @@ platforms are moved over to use the flattened-device-tree model.
 | 
				
			||||||
		device_type = "open-pic";
 | 
							device_type = "open-pic";
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   c) CFI or JEDEC memory-mapped NOR flash
 | 
					    c) 4xx/Axon EMAC ethernet nodes
 | 
				
			||||||
 | 
					 | 
				
			||||||
    Flash chips (Memory Technology Devices) are often used for solid state
 | 
					 | 
				
			||||||
    file systems on embedded devices.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
     - compatible : should contain the specific model of flash chip(s)
 | 
					 | 
				
			||||||
       used, if known, followed by either "cfi-flash" or "jedec-flash"
 | 
					 | 
				
			||||||
     - reg : Address range of the flash chip
 | 
					 | 
				
			||||||
     - bank-width : Width (in bytes) of the flash bank.  Equal to the
 | 
					 | 
				
			||||||
       device width times the number of interleaved chips.
 | 
					 | 
				
			||||||
     - device-width : (optional) Width of a single flash chip.  If
 | 
					 | 
				
			||||||
       omitted, assumed to be equal to 'bank-width'.
 | 
					 | 
				
			||||||
     - #address-cells, #size-cells : Must be present if the flash has
 | 
					 | 
				
			||||||
       sub-nodes representing partitions (see below).  In this case
 | 
					 | 
				
			||||||
       both #address-cells and #size-cells must be equal to 1.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    For JEDEC compatible devices, the following additional properties
 | 
					 | 
				
			||||||
    are defined:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
     - vendor-id : Contains the flash chip's vendor id (1 byte).
 | 
					 | 
				
			||||||
     - device-id : Contains the flash chip's device id (1 byte).
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    In addition to the information on the flash bank itself, the
 | 
					 | 
				
			||||||
    device tree may optionally contain additional information
 | 
					 | 
				
			||||||
    describing partitions of the flash address space.  This can be
 | 
					 | 
				
			||||||
    used on platforms which have strong conventions about which
 | 
					 | 
				
			||||||
    portions of the flash are used for what purposes, but which don't
 | 
					 | 
				
			||||||
    use an on-flash partition table such as RedBoot.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    Each partition is represented as a sub-node of the flash device.
 | 
					 | 
				
			||||||
    Each node's name represents the name of the corresponding
 | 
					 | 
				
			||||||
    partition of the flash device.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    Flash partitions
 | 
					 | 
				
			||||||
     - reg : The partition's offset and size within the flash bank.
 | 
					 | 
				
			||||||
     - label : (optional) The label / name for this flash partition.
 | 
					 | 
				
			||||||
       If omitted, the label is taken from the node name (excluding
 | 
					 | 
				
			||||||
       the unit address).
 | 
					 | 
				
			||||||
     - read-only : (optional) This parameter, if present, is a hint to
 | 
					 | 
				
			||||||
       Linux that this flash partition should only be mounted
 | 
					 | 
				
			||||||
       read-only.  This is usually used for flash partitions
 | 
					 | 
				
			||||||
       containing early-boot firmware images or data which should not
 | 
					 | 
				
			||||||
       be clobbered.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    Example:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	flash@ff000000 {
 | 
					 | 
				
			||||||
		compatible = "amd,am29lv128ml", "cfi-flash";
 | 
					 | 
				
			||||||
		reg = <ff000000 01000000>;
 | 
					 | 
				
			||||||
		bank-width = <4>;
 | 
					 | 
				
			||||||
		device-width = <1>;
 | 
					 | 
				
			||||||
		#address-cells = <1>;
 | 
					 | 
				
			||||||
		#size-cells = <1>;
 | 
					 | 
				
			||||||
		fs@0 {
 | 
					 | 
				
			||||||
			label = "fs";
 | 
					 | 
				
			||||||
			reg = <0 f80000>;
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
		firmware@f80000 {
 | 
					 | 
				
			||||||
			label ="firmware";
 | 
					 | 
				
			||||||
			reg = <f80000 80000>;
 | 
					 | 
				
			||||||
			read-only;
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
	};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    d) 4xx/Axon EMAC ethernet nodes
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    The EMAC ethernet controller in IBM and AMCC 4xx chips, and also
 | 
					    The EMAC ethernet controller in IBM and AMCC 4xx chips, and also
 | 
				
			||||||
    the Axon bridge.  To operate this needs to interact with a ths
 | 
					    the Axon bridge.  To operate this needs to interact with a ths
 | 
				
			||||||
| 
						 | 
					@ -1499,7 +1434,7 @@ platforms are moved over to use the flattened-device-tree model.
 | 
				
			||||||
			   available.
 | 
								   available.
 | 
				
			||||||
			   For Axon: 0x0000012a
 | 
								   For Axon: 0x0000012a
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   e) Xilinx IP cores
 | 
					   d) Xilinx IP cores
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   The Xilinx EDK toolchain ships with a set of IP cores (devices) for use
 | 
					   The Xilinx EDK toolchain ships with a set of IP cores (devices) for use
 | 
				
			||||||
   in Xilinx Spartan and Virtex FPGAs.  The devices cover the whole range
 | 
					   in Xilinx Spartan and Virtex FPGAs.  The devices cover the whole range
 | 
				
			||||||
| 
						 | 
					@ -1793,7 +1728,7 @@ platforms are moved over to use the flattened-device-tree model.
 | 
				
			||||||
       - reg-offset : A value of 3 is required
 | 
					       - reg-offset : A value of 3 is required
 | 
				
			||||||
       - reg-shift : A value of 2 is required
 | 
					       - reg-shift : A value of 2 is required
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    f) USB EHCI controllers
 | 
					    e) USB EHCI controllers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Required properties:
 | 
					    Required properties:
 | 
				
			||||||
      - compatible : should be "usb-ehci".
 | 
					      - compatible : should be "usb-ehci".
 | 
				
			||||||
| 
						 | 
					@ -1819,7 +1754,7 @@ platforms are moved over to use the flattened-device-tree model.
 | 
				
			||||||
		   big-endian;
 | 
							   big-endian;
 | 
				
			||||||
	   };
 | 
						   };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   g) MDIO on GPIOs
 | 
					   f) MDIO on GPIOs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   Currently defined compatibles:
 | 
					   Currently defined compatibles:
 | 
				
			||||||
   - virtual,gpio-mdio
 | 
					   - virtual,gpio-mdio
 | 
				
			||||||
| 
						 | 
					@ -1839,7 +1774,7 @@ platforms are moved over to use the flattened-device-tree model.
 | 
				
			||||||
			 &qe_pio_c 6>;
 | 
								 &qe_pio_c 6>;
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    h) SPI (Serial Peripheral Interface) busses
 | 
					    g) SPI (Serial Peripheral Interface) busses
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    SPI busses can be described with a node for the SPI master device
 | 
					    SPI busses can be described with a node for the SPI master device
 | 
				
			||||||
    and a set of child nodes for each SPI slave on the bus.  For this
 | 
					    and a set of child nodes for each SPI slave on the bus.  For this
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,8 +7,10 @@ Required properties :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Recommended properties :
 | 
					Recommended properties :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 - compatible : Should be "fsl-i2c" for parts compatible with
 | 
					 - compatible : compatibility list with 2 entries, the first should
 | 
				
			||||||
   Freescale I2C specifications.
 | 
					   be "fsl,CHIP-i2c" where CHIP is the name of a compatible processor,
 | 
				
			||||||
 | 
					   e.g. mpc8313, mpc8543, mpc8544, mpc5200 or mpc5200b. The second one
 | 
				
			||||||
 | 
					   should be "fsl-i2c".
 | 
				
			||||||
 - interrupts : <a b> where a is the interrupt number and b is a
 | 
					 - interrupts : <a b> where a is the interrupt number and b is a
 | 
				
			||||||
   field that represents an encoding of the sense and level
 | 
					   field that represents an encoding of the sense and level
 | 
				
			||||||
   information for the interrupt.  This should be encoded based on
 | 
					   information for the interrupt.  This should be encoded based on
 | 
				
			||||||
| 
						 | 
					@ -16,17 +18,31 @@ Recommended properties :
 | 
				
			||||||
   controller you have.
 | 
					   controller you have.
 | 
				
			||||||
 - interrupt-parent : the phandle for the interrupt controller that
 | 
					 - interrupt-parent : the phandle for the interrupt controller that
 | 
				
			||||||
   services interrupts for this device.
 | 
					   services interrupts for this device.
 | 
				
			||||||
 - dfsrr : boolean; if defined, indicates that this I2C device has
 | 
					 - fsl,preserve-clocking : boolean; if defined, the clock settings
 | 
				
			||||||
   a digital filter sampling rate register
 | 
					   from the bootloader are preserved (not touched).
 | 
				
			||||||
 - fsl5200-clocking : boolean; if defined, indicated that this device
 | 
					 - clock-frequency : desired I2C bus clock frequency in Hz.
 | 
				
			||||||
   uses the FSL 5200 clocking mechanism.
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
Example :
 | 
					Examples :
 | 
				
			||||||
	i2c@3000 {
 | 
					
 | 
				
			||||||
		interrupt-parent = <40000>;
 | 
						i2c@3d00 {
 | 
				
			||||||
		interrupts = <1b 3>;
 | 
							#address-cells = <1>;
 | 
				
			||||||
		reg = <3000 18>;
 | 
							#size-cells = <0>;
 | 
				
			||||||
		device_type = "i2c";
 | 
							compatible = "fsl,mpc5200b-i2c","fsl,mpc5200-i2c","fsl-i2c";
 | 
				
			||||||
		compatible  = "fsl-i2c";
 | 
							cell-index = <0>;
 | 
				
			||||||
		dfsrr;
 | 
							reg = <0x3d00 0x40>;
 | 
				
			||||||
 | 
							interrupts = <2 15 0>;
 | 
				
			||||||
 | 
							interrupt-parent = <&mpc5200_pic>;
 | 
				
			||||||
 | 
							fsl,preserve-clocking;
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						i2c@3100 {
 | 
				
			||||||
 | 
							#address-cells = <1>;
 | 
				
			||||||
 | 
							#size-cells = <0>;
 | 
				
			||||||
 | 
							cell-index = <1>;
 | 
				
			||||||
 | 
							compatible = "fsl,mpc8544-i2c", "fsl-i2c";
 | 
				
			||||||
 | 
							reg = <0x3100 0x100>;
 | 
				
			||||||
 | 
							interrupts = <43 2>;
 | 
				
			||||||
 | 
							interrupt-parent = <&mpic>;
 | 
				
			||||||
 | 
							clock-frequency = <400000>;
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										80
									
								
								Documentation/powerpc/dts-bindings/mtd-physmap.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								Documentation/powerpc/dts-bindings/mtd-physmap.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,80 @@
 | 
				
			||||||
 | 
					CFI or JEDEC memory-mapped NOR flash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Flash chips (Memory Technology Devices) are often used for solid state
 | 
				
			||||||
 | 
					file systems on embedded devices.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - compatible : should contain the specific model of flash chip(s)
 | 
				
			||||||
 | 
					   used, if known, followed by either "cfi-flash" or "jedec-flash"
 | 
				
			||||||
 | 
					 - reg : Address range(s) of the flash chip(s)
 | 
				
			||||||
 | 
					   It's possible to (optionally) define multiple "reg" tuples so that
 | 
				
			||||||
 | 
					   non-identical NOR chips can be described in one flash node.
 | 
				
			||||||
 | 
					 - bank-width : Width (in bytes) of the flash bank.  Equal to the
 | 
				
			||||||
 | 
					   device width times the number of interleaved chips.
 | 
				
			||||||
 | 
					 - device-width : (optional) Width of a single flash chip.  If
 | 
				
			||||||
 | 
					   omitted, assumed to be equal to 'bank-width'.
 | 
				
			||||||
 | 
					 - #address-cells, #size-cells : Must be present if the flash has
 | 
				
			||||||
 | 
					   sub-nodes representing partitions (see below).  In this case
 | 
				
			||||||
 | 
					   both #address-cells and #size-cells must be equal to 1.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For JEDEC compatible devices, the following additional properties
 | 
				
			||||||
 | 
					are defined:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - vendor-id : Contains the flash chip's vendor id (1 byte).
 | 
				
			||||||
 | 
					 - device-id : Contains the flash chip's device id (1 byte).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In addition to the information on the flash bank itself, the
 | 
				
			||||||
 | 
					device tree may optionally contain additional information
 | 
				
			||||||
 | 
					describing partitions of the flash address space.  This can be
 | 
				
			||||||
 | 
					used on platforms which have strong conventions about which
 | 
				
			||||||
 | 
					portions of the flash are used for what purposes, but which don't
 | 
				
			||||||
 | 
					use an on-flash partition table such as RedBoot.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Each partition is represented as a sub-node of the flash device.
 | 
				
			||||||
 | 
					Each node's name represents the name of the corresponding
 | 
				
			||||||
 | 
					partition of the flash device.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Flash partitions
 | 
				
			||||||
 | 
					 - reg : The partition's offset and size within the flash bank.
 | 
				
			||||||
 | 
					 - label : (optional) The label / name for this flash partition.
 | 
				
			||||||
 | 
					   If omitted, the label is taken from the node name (excluding
 | 
				
			||||||
 | 
					   the unit address).
 | 
				
			||||||
 | 
					 - read-only : (optional) This parameter, if present, is a hint to
 | 
				
			||||||
 | 
					   Linux that this flash partition should only be mounted
 | 
				
			||||||
 | 
					   read-only.  This is usually used for flash partitions
 | 
				
			||||||
 | 
					   containing early-boot firmware images or data which should not
 | 
				
			||||||
 | 
					   be clobbered.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						flash@ff000000 {
 | 
				
			||||||
 | 
							compatible = "amd,am29lv128ml", "cfi-flash";
 | 
				
			||||||
 | 
							reg = <ff000000 01000000>;
 | 
				
			||||||
 | 
							bank-width = <4>;
 | 
				
			||||||
 | 
							device-width = <1>;
 | 
				
			||||||
 | 
							#address-cells = <1>;
 | 
				
			||||||
 | 
							#size-cells = <1>;
 | 
				
			||||||
 | 
							fs@0 {
 | 
				
			||||||
 | 
								label = "fs";
 | 
				
			||||||
 | 
								reg = <0 f80000>;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
							firmware@f80000 {
 | 
				
			||||||
 | 
								label ="firmware";
 | 
				
			||||||
 | 
								reg = <f80000 80000>;
 | 
				
			||||||
 | 
								read-only;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Here an example with multiple "reg" tuples:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						flash@f0000000,0 {
 | 
				
			||||||
 | 
							#address-cells = <1>;
 | 
				
			||||||
 | 
							#size-cells = <1>;
 | 
				
			||||||
 | 
							compatible = "intel,PC48F4400P0VB", "cfi-flash";
 | 
				
			||||||
 | 
							reg = <0 0x00000000 0x02000000
 | 
				
			||||||
 | 
							       0 0x02000000 0x02000000>;
 | 
				
			||||||
 | 
							bank-width = <2>;
 | 
				
			||||||
 | 
							partition@0 {
 | 
				
			||||||
 | 
								label = "test-part1";
 | 
				
			||||||
 | 
								reg = <0 0x04000000>;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
| 
						 | 
					@ -169,7 +169,7 @@ PCI SSID look-up.
 | 
				
			||||||
What `model` option values are available depends on the codec chip.
 | 
					What `model` option values are available depends on the codec chip.
 | 
				
			||||||
Check your codec chip from the codec proc file (see "Codec Proc-File"
 | 
					Check your codec chip from the codec proc file (see "Codec Proc-File"
 | 
				
			||||||
section below).  It will show the vendor/product name of your codec
 | 
					section below).  It will show the vendor/product name of your codec
 | 
				
			||||||
chip.  Then, see Documentation/sound/alsa/HD-Audio-Modelstxt file,
 | 
					chip.  Then, see Documentation/sound/alsa/HD-Audio-Models.txt file,
 | 
				
			||||||
the section of HD-audio driver.  You can find a list of codecs
 | 
					the section of HD-audio driver.  You can find a list of codecs
 | 
				
			||||||
and `model` options belonging to each codec.  For example, for Realtek
 | 
					and `model` options belonging to each codec.  For example, for Realtek
 | 
				
			||||||
ALC262 codec chip, pass `model=ultra` for devices that are compatible
 | 
					ALC262 codec chip, pass `model=ultra` for devices that are compatible
 | 
				
			||||||
| 
						 | 
					@ -177,7 +177,7 @@ with Samsung Q1 Ultra.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Thus, the first thing you can do for any brand-new, unsupported and
 | 
					Thus, the first thing you can do for any brand-new, unsupported and
 | 
				
			||||||
non-working HD-audio hardware is to check HD-audio codec and several
 | 
					non-working HD-audio hardware is to check HD-audio codec and several
 | 
				
			||||||
different `model` option values.  If you have a luck, some of them
 | 
					different `model` option values.  If you have any luck, some of them
 | 
				
			||||||
might suit with your device well.
 | 
					might suit with your device well.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Some codecs such as ALC880 have a special model option `model=test`.
 | 
					Some codecs such as ALC880 have a special model option `model=test`.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -42,6 +42,14 @@ sure that bitwise types don't get mixed up (little-endian vs big-endian
 | 
				
			||||||
vs cpu-endian vs whatever), and there the constant "0" really _is_
 | 
					vs cpu-endian vs whatever), and there the constant "0" really _is_
 | 
				
			||||||
special.
 | 
					special.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					__bitwise__ - to be used for relatively compact stuff (gfp_t, etc.) that
 | 
				
			||||||
 | 
					is mostly warning-free and is supposed to stay that way.  Warnings will
 | 
				
			||||||
 | 
					be generated without __CHECK_ENDIAN__.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					__bitwise - noisy stuff; in particular, __le*/__be* are that.  We really
 | 
				
			||||||
 | 
					don't want to drown in noise unless we'd explicitly asked for it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Getting sparse
 | 
					Getting sparse
 | 
				
			||||||
~~~~~~~~~~~~~~
 | 
					~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -511,10 +511,16 @@ SPI MASTER METHODS
 | 
				
			||||||
	This sets up the device clock rate, SPI mode, and word sizes.
 | 
						This sets up the device clock rate, SPI mode, and word sizes.
 | 
				
			||||||
	Drivers may change the defaults provided by board_info, and then
 | 
						Drivers may change the defaults provided by board_info, and then
 | 
				
			||||||
	call spi_setup(spi) to invoke this routine.  It may sleep.
 | 
						call spi_setup(spi) to invoke this routine.  It may sleep.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	Unless each SPI slave has its own configuration registers, don't
 | 
						Unless each SPI slave has its own configuration registers, don't
 | 
				
			||||||
	change them right away ... otherwise drivers could corrupt I/O
 | 
						change them right away ... otherwise drivers could corrupt I/O
 | 
				
			||||||
	that's in progress for other SPI devices.
 | 
						that's in progress for other SPI devices.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							** BUG ALERT:  for some reason the first version of
 | 
				
			||||||
 | 
							** many spi_master drivers seems to get this wrong.
 | 
				
			||||||
 | 
							** When you code setup(), ASSUME that the controller
 | 
				
			||||||
 | 
							** is actively processing transfers for another device.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    master->transfer(struct spi_device *spi, struct spi_message *message)
 | 
					    master->transfer(struct spi_device *spi, struct spi_message *message)
 | 
				
			||||||
    	This must not sleep.  Its responsibility is arrange that the
 | 
					    	This must not sleep.  Its responsibility is arrange that the
 | 
				
			||||||
	transfer happens and its complete() callback is issued.  The two
 | 
						transfer happens and its complete() callback is issued.  The two
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -95,7 +95,7 @@ of struct cmsghdr structures with appended data.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
There is only one file in this directory.
 | 
					There is only one file in this directory.
 | 
				
			||||||
unix_dgram_qlen limits the max number of datagrams queued in Unix domain
 | 
					unix_dgram_qlen limits the max number of datagrams queued in Unix domain
 | 
				
			||||||
socket's buffer. It will not take effect unless PF_UNIX flag is spicified.
 | 
					socket's buffer. It will not take effect unless PF_UNIX flag is specified.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
3. /proc/sys/net/ipv4 - IPV4 settings
 | 
					3. /proc/sys/net/ipv4 - IPV4 settings
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -90,6 +90,10 @@ will itself start writeback.
 | 
				
			||||||
If dirty_bytes is written, dirty_ratio becomes a function of its value
 | 
					If dirty_bytes is written, dirty_ratio becomes a function of its value
 | 
				
			||||||
(dirty_bytes / the amount of dirtyable system memory).
 | 
					(dirty_bytes / the amount of dirtyable system memory).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Note: the minimum value allowed for dirty_bytes is two pages (in bytes); any
 | 
				
			||||||
 | 
					value lower than this limit will be ignored and the old configuration will be
 | 
				
			||||||
 | 
					retained.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
==============================================================
 | 
					==============================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dirty_expire_centisecs
 | 
					dirty_expire_centisecs
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										55
									
								
								Documentation/tomoyo.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								Documentation/tomoyo.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,55 @@
 | 
				
			||||||
 | 
					--- What is TOMOYO? ---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOMOYO is a name-based MAC extension (LSM module) for the Linux kernel.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LiveCD-based tutorials are available at
 | 
				
			||||||
 | 
					http://tomoyo.sourceforge.jp/en/1.6.x/1st-step/ubuntu8.04-live/
 | 
				
			||||||
 | 
					http://tomoyo.sourceforge.jp/en/1.6.x/1st-step/centos5-live/ .
 | 
				
			||||||
 | 
					Though these tutorials use non-LSM version of TOMOYO, they are useful for you
 | 
				
			||||||
 | 
					to know what TOMOYO is.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- How to enable TOMOYO? ---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Build the kernel with CONFIG_SECURITY_TOMOYO=y and pass "security=tomoyo" on
 | 
				
			||||||
 | 
					kernel's command line.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Please see http://tomoyo.sourceforge.jp/en/2.2.x/ for details.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- Where is documentation? ---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					User <-> Kernel interface documentation is available at
 | 
				
			||||||
 | 
					http://tomoyo.sourceforge.jp/en/2.2.x/policy-reference.html .
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Materials we prepared for seminars and symposiums are available at
 | 
				
			||||||
 | 
					http://sourceforge.jp/projects/tomoyo/docs/?category_id=532&language_id=1 .
 | 
				
			||||||
 | 
					Below lists are chosen from three aspects.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					What is TOMOYO?
 | 
				
			||||||
 | 
					  TOMOYO Linux Overview
 | 
				
			||||||
 | 
					    http://sourceforge.jp/projects/tomoyo/docs/lca2009-takeda.pdf
 | 
				
			||||||
 | 
					  TOMOYO Linux: pragmatic and manageable security for Linux
 | 
				
			||||||
 | 
					    http://sourceforge.jp/projects/tomoyo/docs/freedomhectaipei-tomoyo.pdf
 | 
				
			||||||
 | 
					  TOMOYO Linux: A Practical Method to Understand and Protect Your Own Linux Box
 | 
				
			||||||
 | 
					    http://sourceforge.jp/projects/tomoyo/docs/PacSec2007-en-no-demo.pdf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					What can TOMOYO do?
 | 
				
			||||||
 | 
					  Deep inside TOMOYO Linux
 | 
				
			||||||
 | 
					    http://sourceforge.jp/projects/tomoyo/docs/lca2009-kumaneko.pdf
 | 
				
			||||||
 | 
					  The role of "pathname based access control" in security.
 | 
				
			||||||
 | 
					    http://sourceforge.jp/projects/tomoyo/docs/lfj2008-bof.pdf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					History of TOMOYO?
 | 
				
			||||||
 | 
					  Realities of Mainlining
 | 
				
			||||||
 | 
					    http://sourceforge.jp/projects/tomoyo/docs/lfj2008.pdf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- What is future plan? ---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					We believe that inode based security and name based security are complementary
 | 
				
			||||||
 | 
					and both should be used together. But unfortunately, so far, we cannot enable
 | 
				
			||||||
 | 
					multiple LSM modules at the same time. We feel sorry that you have to give up
 | 
				
			||||||
 | 
					SELinux/SMACK/AppArmor etc. when you want to use TOMOYO.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					We hope that LSM becomes stackable in future. Meanwhile, you can use non-LSM
 | 
				
			||||||
 | 
					version of TOMOYO, available at http://tomoyo.sourceforge.jp/en/1.6.x/ .
 | 
				
			||||||
 | 
					LSM version of TOMOYO is a subset of non-LSM version of TOMOYO. We are planning
 | 
				
			||||||
 | 
					to port non-LSM version's functionalities to LSM versions.
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,7 @@
 | 
				
			||||||
00-INDEX
 | 
					00-INDEX
 | 
				
			||||||
	- this file.
 | 
						- this file.
 | 
				
			||||||
 | 
					active_mm.txt
 | 
				
			||||||
 | 
						- An explanation from Linus about tsk->active_mm vs tsk->mm.
 | 
				
			||||||
balance
 | 
					balance
 | 
				
			||||||
	- various information on memory balancing.
 | 
						- various information on memory balancing.
 | 
				
			||||||
hugetlbpage.txt
 | 
					hugetlbpage.txt
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										83
									
								
								Documentation/vm/active_mm.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								Documentation/vm/active_mm.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,83 @@
 | 
				
			||||||
 | 
					List:       linux-kernel
 | 
				
			||||||
 | 
					Subject:    Re: active_mm
 | 
				
			||||||
 | 
					From:       Linus Torvalds <torvalds () transmeta ! com>
 | 
				
			||||||
 | 
					Date:       1999-07-30 21:36:24
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Cc'd to linux-kernel, because I don't write explanations all that often,
 | 
				
			||||||
 | 
					and when I do I feel better about more people reading them.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					On Fri, 30 Jul 1999, David Mosberger wrote:
 | 
				
			||||||
 | 
					>
 | 
				
			||||||
 | 
					> Is there a brief description someplace on how "mm" vs. "active_mm" in
 | 
				
			||||||
 | 
					> the task_struct are supposed to be used?  (My apologies if this was
 | 
				
			||||||
 | 
					> discussed on the mailing lists---I just returned from vacation and
 | 
				
			||||||
 | 
					> wasn't able to follow linux-kernel for a while).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Basically, the new setup is:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - we have "real address spaces" and "anonymous address spaces". The
 | 
				
			||||||
 | 
					   difference is that an anonymous address space doesn't care about the
 | 
				
			||||||
 | 
					   user-level page tables at all, so when we do a context switch into an
 | 
				
			||||||
 | 
					   anonymous address space we just leave the previous address space
 | 
				
			||||||
 | 
					   active.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   The obvious use for a "anonymous address space" is any thread that
 | 
				
			||||||
 | 
					   doesn't need any user mappings - all kernel threads basically fall into
 | 
				
			||||||
 | 
					   this category, but even "real" threads can temporarily say that for
 | 
				
			||||||
 | 
					   some amount of time they are not going to be interested in user space,
 | 
				
			||||||
 | 
					   and that the scheduler might as well try to avoid wasting time on
 | 
				
			||||||
 | 
					   switching the VM state around. Currently only the old-style bdflush
 | 
				
			||||||
 | 
					   sync does that.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - "tsk->mm" points to the "real address space". For an anonymous process,
 | 
				
			||||||
 | 
					   tsk->mm will be NULL, for the logical reason that an anonymous process
 | 
				
			||||||
 | 
					   really doesn't _have_ a real address space at all.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - however, we obviously need to keep track of which address space we
 | 
				
			||||||
 | 
					   "stole" for such an anonymous user. For that, we have "tsk->active_mm",
 | 
				
			||||||
 | 
					   which shows what the currently active address space is.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   The rule is that for a process with a real address space (ie tsk->mm is
 | 
				
			||||||
 | 
					   non-NULL) the active_mm obviously always has to be the same as the real
 | 
				
			||||||
 | 
					   one.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   For a anonymous process, tsk->mm == NULL, and tsk->active_mm is the
 | 
				
			||||||
 | 
					   "borrowed" mm while the anonymous process is running. When the
 | 
				
			||||||
 | 
					   anonymous process gets scheduled away, the borrowed address space is
 | 
				
			||||||
 | 
					   returned and cleared.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To support all that, the "struct mm_struct" now has two counters: a
 | 
				
			||||||
 | 
					"mm_users" counter that is how many "real address space users" there are,
 | 
				
			||||||
 | 
					and a "mm_count" counter that is the number of "lazy" users (ie anonymous
 | 
				
			||||||
 | 
					users) plus one if there are any real users.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Usually there is at least one real user, but it could be that the real
 | 
				
			||||||
 | 
					user exited on another CPU while a lazy user was still active, so you do
 | 
				
			||||||
 | 
					actually get cases where you have a address space that is _only_ used by
 | 
				
			||||||
 | 
					lazy users. That is often a short-lived state, because once that thread
 | 
				
			||||||
 | 
					gets scheduled away in favour of a real thread, the "zombie" mm gets
 | 
				
			||||||
 | 
					released because "mm_users" becomes zero.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Also, a new rule is that _nobody_ ever has "init_mm" as a real MM any
 | 
				
			||||||
 | 
					more. "init_mm" should be considered just a "lazy context when no other
 | 
				
			||||||
 | 
					context is available", and in fact it is mainly used just at bootup when
 | 
				
			||||||
 | 
					no real VM has yet been created. So code that used to check
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (current->mm == &init_mm)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					should generally just do
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!current->mm)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					instead (which makes more sense anyway - the test is basically one of "do
 | 
				
			||||||
 | 
					we have a user context", and is generally done by the page fault handler
 | 
				
			||||||
 | 
					and things like that).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Anyway, I put a pre-patch-2.3.13-1 on ftp.kernel.org just a moment ago,
 | 
				
			||||||
 | 
					because it slightly changes the interfaces to accomodate the alpha (who
 | 
				
			||||||
 | 
					would have thought it, but the alpha actually ends up having one of the
 | 
				
			||||||
 | 
					ugliest context switch codes - unlike the other architectures where the MM
 | 
				
			||||||
 | 
					and register state is separate, the alpha PALcode joins the two, and you
 | 
				
			||||||
 | 
					need to switch both together).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(From http://marc.info/?l=linux-kernel&m=93337278602211&w=2)
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										1756
									
								
								MAINTAINERS
									
									
									
									
									
								
							
							
						
						
									
										1756
									
								
								MAINTAINERS
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										27
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								Makefile
									
									
									
									
									
								
							| 
						 | 
					@ -1,8 +1,8 @@
 | 
				
			||||||
VERSION = 2
 | 
					VERSION = 2
 | 
				
			||||||
PATCHLEVEL = 6
 | 
					PATCHLEVEL = 6
 | 
				
			||||||
SUBLEVEL = 30
 | 
					SUBLEVEL = 30
 | 
				
			||||||
EXTRAVERSION = -rc1
 | 
					EXTRAVERSION = -rc5
 | 
				
			||||||
NAME = Temporary Tasmanian Devil
 | 
					NAME = Vindictive Armadillo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# *DOCUMENTATION*
 | 
					# *DOCUMENTATION*
 | 
				
			||||||
# To see a list of typical targets execute "make help"
 | 
					# To see a list of typical targets execute "make help"
 | 
				
			||||||
| 
						 | 
					@ -169,7 +169,7 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
 | 
				
			||||||
				  -e s/arm.*/arm/ -e s/sa110/arm/ \
 | 
									  -e s/arm.*/arm/ -e s/sa110/arm/ \
 | 
				
			||||||
				  -e s/s390x/s390/ -e s/parisc64/parisc/ \
 | 
									  -e s/s390x/s390/ -e s/parisc64/parisc/ \
 | 
				
			||||||
				  -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
 | 
									  -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
 | 
				
			||||||
				  -e s/sh.*/sh/ )
 | 
									  -e s/sh[234].*/sh/ )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Cross compiling and selecting different set of gcc/bin-utils
 | 
					# Cross compiling and selecting different set of gcc/bin-utils
 | 
				
			||||||
# ---------------------------------------------------------------------------
 | 
					# ---------------------------------------------------------------------------
 | 
				
			||||||
| 
						 | 
					@ -210,6 +210,11 @@ ifeq ($(ARCH),sparc64)
 | 
				
			||||||
       SRCARCH := sparc
 | 
					       SRCARCH := sparc
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Additional ARCH settings for sh
 | 
				
			||||||
 | 
					ifeq ($(ARCH),sh64)
 | 
				
			||||||
 | 
					       SRCARCH := sh
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Where to locate arch specific headers
 | 
					# Where to locate arch specific headers
 | 
				
			||||||
hdr-arch  := $(SRCARCH)
 | 
					hdr-arch  := $(SRCARCH)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -567,7 +572,7 @@ KBUILD_CFLAGS += $(call cc-option,-Wdeclaration-after-statement,)
 | 
				
			||||||
# disable pointer signed / unsigned warnings in gcc 4.0
 | 
					# disable pointer signed / unsigned warnings in gcc 4.0
 | 
				
			||||||
KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
 | 
					KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# disable invalid "can't wrap" optimzations for signed / pointers
 | 
					# disable invalid "can't wrap" optimizations for signed / pointers
 | 
				
			||||||
KBUILD_CFLAGS	+= $(call cc-option,-fwrapv)
 | 
					KBUILD_CFLAGS	+= $(call cc-option,-fwrapv)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# revert to pre-gcc-4.4 behaviour of .eh_frame
 | 
					# revert to pre-gcc-4.4 behaviour of .eh_frame
 | 
				
			||||||
| 
						 | 
					@ -597,6 +602,10 @@ LDFLAGS_BUILD_ID = $(patsubst -Wl$(comma)%,%,\
 | 
				
			||||||
LDFLAGS_MODULE += $(LDFLAGS_BUILD_ID)
 | 
					LDFLAGS_MODULE += $(LDFLAGS_BUILD_ID)
 | 
				
			||||||
LDFLAGS_vmlinux += $(LDFLAGS_BUILD_ID)
 | 
					LDFLAGS_vmlinux += $(LDFLAGS_BUILD_ID)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifeq ($(CONFIG_STRIP_ASM_SYMS),y)
 | 
				
			||||||
 | 
					LDFLAGS_vmlinux	+= -X
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Default kernel image to build when no specific target is given.
 | 
					# Default kernel image to build when no specific target is given.
 | 
				
			||||||
# KBUILD_IMAGE may be overruled on the command line or
 | 
					# KBUILD_IMAGE may be overruled on the command line or
 | 
				
			||||||
# set in the environment
 | 
					# set in the environment
 | 
				
			||||||
| 
						 | 
					@ -1191,7 +1200,7 @@ CLEAN_FILES +=	vmlinux System.map \
 | 
				
			||||||
                .tmp_kallsyms* .tmp_version .tmp_vmlinux* .tmp_System.map
 | 
					                .tmp_kallsyms* .tmp_version .tmp_vmlinux* .tmp_System.map
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Directories & files removed with 'make mrproper'
 | 
					# Directories & files removed with 'make mrproper'
 | 
				
			||||||
MRPROPER_DIRS  += include/config include2 usr/include
 | 
					MRPROPER_DIRS  += include/config include2 usr/include include/generated
 | 
				
			||||||
MRPROPER_FILES += .config .config.old include/asm .version .old_version \
 | 
					MRPROPER_FILES += .config .config.old include/asm .version .old_version \
 | 
				
			||||||
                  include/linux/autoconf.h include/linux/version.h      \
 | 
					                  include/linux/autoconf.h include/linux/version.h      \
 | 
				
			||||||
                  include/linux/utsrelease.h                            \
 | 
					                  include/linux/utsrelease.h                            \
 | 
				
			||||||
| 
						 | 
					@ -1284,7 +1293,7 @@ help:
 | 
				
			||||||
	@echo  '  dir/            - Build all files in dir and below'
 | 
						@echo  '  dir/            - Build all files in dir and below'
 | 
				
			||||||
	@echo  '  dir/file.[ois]  - Build specified target only'
 | 
						@echo  '  dir/file.[ois]  - Build specified target only'
 | 
				
			||||||
	@echo  '  dir/file.ko     - Build module including final link'
 | 
						@echo  '  dir/file.ko     - Build module including final link'
 | 
				
			||||||
	@echo  '  prepare         - Set up for building external modules'
 | 
						@echo  '  modules_prepare - Set up for building external modules'
 | 
				
			||||||
	@echo  '  tags/TAGS	  - Generate tags file for editors'
 | 
						@echo  '  tags/TAGS	  - Generate tags file for editors'
 | 
				
			||||||
	@echo  '  cscope	  - Generate cscope index'
 | 
						@echo  '  cscope	  - Generate cscope index'
 | 
				
			||||||
	@echo  '  kernelrelease	  - Output the release version string'
 | 
						@echo  '  kernelrelease	  - Output the release version string'
 | 
				
			||||||
| 
						 | 
					@ -1412,7 +1421,9 @@ $(clean-dirs):
 | 
				
			||||||
	$(Q)$(MAKE) $(clean)=$(patsubst _clean_%,%,$@)
 | 
						$(Q)$(MAKE) $(clean)=$(patsubst _clean_%,%,$@)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
clean:	rm-dirs := $(MODVERDIR)
 | 
					clean:	rm-dirs := $(MODVERDIR)
 | 
				
			||||||
clean: rm-files := $(KBUILD_EXTMOD)/Module.symvers
 | 
					clean: rm-files := $(KBUILD_EXTMOD)/Module.symvers \
 | 
				
			||||||
 | 
					                   $(KBUILD_EXTMOD)/Module.markers \
 | 
				
			||||||
 | 
					                   $(KBUILD_EXTMOD)/modules.order
 | 
				
			||||||
clean: $(clean-dirs)
 | 
					clean: $(clean-dirs)
 | 
				
			||||||
	$(call cmd,rmdirs)
 | 
						$(call cmd,rmdirs)
 | 
				
			||||||
	$(call cmd,rmfiles)
 | 
						$(call cmd,rmfiles)
 | 
				
			||||||
| 
						 | 
					@ -1587,5 +1598,5 @@ PHONY += FORCE
 | 
				
			||||||
FORCE:
 | 
					FORCE:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Declare the contents of the .PHONY variable as phony.  We keep that
 | 
					# Declare the contents of the .PHONY variable as phony.  We keep that
 | 
				
			||||||
# information in a variable se we can use it in if_changed and friends.
 | 
					# information in a variable so we can use it in if_changed and friends.
 | 
				
			||||||
.PHONY: $(PHONY)
 | 
					.PHONY: $(PHONY)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -109,3 +109,6 @@ config HAVE_CLK
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config HAVE_DMA_API_DEBUG
 | 
					config HAVE_DMA_API_DEBUG
 | 
				
			||||||
	bool
 | 
						bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config HAVE_DEFAULT_NO_SPIN_MUTEXES
 | 
				
			||||||
 | 
						bool
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -16,11 +16,13 @@ __asm__ __volatile__("wmb": : :"memory")
 | 
				
			||||||
__asm__ __volatile__("mb": : :"memory")
 | 
					__asm__ __volatile__("mb": : :"memory")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_SMP
 | 
					#ifdef CONFIG_SMP
 | 
				
			||||||
 | 
					#define __ASM_SMP_MB	"\tmb\n"
 | 
				
			||||||
#define smp_mb()	mb()
 | 
					#define smp_mb()	mb()
 | 
				
			||||||
#define smp_rmb()	rmb()
 | 
					#define smp_rmb()	rmb()
 | 
				
			||||||
#define smp_wmb()	wmb()
 | 
					#define smp_wmb()	wmb()
 | 
				
			||||||
#define smp_read_barrier_depends()	read_barrier_depends()
 | 
					#define smp_read_barrier_depends()	read_barrier_depends()
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
 | 
					#define __ASM_SMP_MB
 | 
				
			||||||
#define smp_mb()	barrier()
 | 
					#define smp_mb()	barrier()
 | 
				
			||||||
#define smp_rmb()	barrier()
 | 
					#define smp_rmb()	barrier()
 | 
				
			||||||
#define smp_wmb()	barrier()
 | 
					#define smp_wmb()	barrier()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,116 @@
 | 
				
			||||||
#ifndef _ASM_FUTEX_H
 | 
					#ifndef _ASM_ALPHA_FUTEX_H
 | 
				
			||||||
#define _ASM_FUTEX_H
 | 
					#define _ASM_ALPHA_FUTEX_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <asm-generic/futex.h>
 | 
					#ifdef __KERNEL__
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					#include <linux/futex.h>
 | 
				
			||||||
 | 
					#include <linux/uaccess.h>
 | 
				
			||||||
 | 
					#include <asm/errno.h>
 | 
				
			||||||
 | 
					#include <asm/barrier.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define __futex_atomic_op(insn, ret, oldval, uaddr, oparg)	\
 | 
				
			||||||
 | 
						__asm__ __volatile__(					\
 | 
				
			||||||
 | 
							__ASM_SMP_MB					\
 | 
				
			||||||
 | 
						"1:	ldl_l	%0,0(%2)\n"				\
 | 
				
			||||||
 | 
							insn						\
 | 
				
			||||||
 | 
						"2:	stl_c	%1,0(%2)\n"				\
 | 
				
			||||||
 | 
						"	beq	%1,4f\n"				\
 | 
				
			||||||
 | 
						"	mov	$31,%1\n"				\
 | 
				
			||||||
 | 
						"3:	.subsection 2\n"				\
 | 
				
			||||||
 | 
						"4:	br	1b\n"					\
 | 
				
			||||||
 | 
						"	.previous\n"					\
 | 
				
			||||||
 | 
						"	.section __ex_table,\"a\"\n"			\
 | 
				
			||||||
 | 
						"	.long	1b-.\n"					\
 | 
				
			||||||
 | 
						"	lda	$31,3b-1b(%1)\n"			\
 | 
				
			||||||
 | 
						"	.long	2b-.\n"					\
 | 
				
			||||||
 | 
						"	lda	$31,3b-2b(%1)\n"			\
 | 
				
			||||||
 | 
						"	.previous\n"					\
 | 
				
			||||||
 | 
						:	"=&r" (oldval), "=&r"(ret)			\
 | 
				
			||||||
 | 
						:	"r" (uaddr), "r"(oparg)				\
 | 
				
			||||||
 | 
						:	"memory")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static inline int futex_atomic_op_inuser (int encoded_op, int __user *uaddr)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						int op = (encoded_op >> 28) & 7;
 | 
				
			||||||
 | 
						int cmp = (encoded_op >> 24) & 15;
 | 
				
			||||||
 | 
						int oparg = (encoded_op << 8) >> 20;
 | 
				
			||||||
 | 
						int cmparg = (encoded_op << 20) >> 20;
 | 
				
			||||||
 | 
						int oldval = 0, ret;
 | 
				
			||||||
 | 
						if (encoded_op & (FUTEX_OP_OPARG_SHIFT << 28))
 | 
				
			||||||
 | 
							oparg = 1 << oparg;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!access_ok(VERIFY_WRITE, uaddr, sizeof(int)))
 | 
				
			||||||
 | 
							return -EFAULT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pagefault_disable();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						switch (op) {
 | 
				
			||||||
 | 
						case FUTEX_OP_SET:
 | 
				
			||||||
 | 
							__futex_atomic_op("mov %3,%1\n", ret, oldval, uaddr, oparg);
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case FUTEX_OP_ADD:
 | 
				
			||||||
 | 
							__futex_atomic_op("addl %0,%3,%1\n", ret, oldval, uaddr, oparg);
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case FUTEX_OP_OR:
 | 
				
			||||||
 | 
							__futex_atomic_op("or %0,%3,%1\n", ret, oldval, uaddr, oparg);
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case FUTEX_OP_ANDN:
 | 
				
			||||||
 | 
							__futex_atomic_op("andnot %0,%3,%1\n", ret, oldval, uaddr, oparg);
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case FUTEX_OP_XOR:
 | 
				
			||||||
 | 
							__futex_atomic_op("xor %0,%3,%1\n", ret, oldval, uaddr, oparg);
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						default:
 | 
				
			||||||
 | 
							ret = -ENOSYS;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pagefault_enable();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!ret) {
 | 
				
			||||||
 | 
							switch (cmp) {
 | 
				
			||||||
 | 
							case FUTEX_OP_CMP_EQ: ret = (oldval == cmparg); break;
 | 
				
			||||||
 | 
							case FUTEX_OP_CMP_NE: ret = (oldval != cmparg); break;
 | 
				
			||||||
 | 
							case FUTEX_OP_CMP_LT: ret = (oldval < cmparg); break;
 | 
				
			||||||
 | 
							case FUTEX_OP_CMP_GE: ret = (oldval >= cmparg); break;
 | 
				
			||||||
 | 
							case FUTEX_OP_CMP_LE: ret = (oldval <= cmparg); break;
 | 
				
			||||||
 | 
							case FUTEX_OP_CMP_GT: ret = (oldval > cmparg); break;
 | 
				
			||||||
 | 
							default: ret = -ENOSYS;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return ret;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static inline int
 | 
				
			||||||
 | 
					futex_atomic_cmpxchg_inatomic(int __user *uaddr, int oldval, int newval)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						int prev, cmp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!access_ok(VERIFY_WRITE, uaddr, sizeof(int)))
 | 
				
			||||||
 | 
							return -EFAULT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						__asm__ __volatile__ (
 | 
				
			||||||
 | 
							__ASM_SMP_MB
 | 
				
			||||||
 | 
						"1:	ldl_l	%0,0(%2)\n"
 | 
				
			||||||
 | 
						"	cmpeq	%0,%3,%1\n"
 | 
				
			||||||
 | 
						"	beq	%1,3f\n"
 | 
				
			||||||
 | 
						"	mov	%4,%1\n"
 | 
				
			||||||
 | 
						"2:	stl_c	%1,0(%2)\n"
 | 
				
			||||||
 | 
						"	beq	%1,4f\n"
 | 
				
			||||||
 | 
						"3:	.subsection 2\n"
 | 
				
			||||||
 | 
						"4:	br	1b\n"
 | 
				
			||||||
 | 
						"	.previous\n"
 | 
				
			||||||
 | 
						"	.section __ex_table,\"a\"\n"
 | 
				
			||||||
 | 
						"	.long	1b-.\n"
 | 
				
			||||||
 | 
						"	lda	$31,3b-1b(%0)\n"
 | 
				
			||||||
 | 
						"	.long	2b-.\n"
 | 
				
			||||||
 | 
						"	lda	$31,3b-2b(%0)\n"
 | 
				
			||||||
 | 
						"	.previous\n"
 | 
				
			||||||
 | 
						:	"=&r"(prev), "=&r"(cmp)
 | 
				
			||||||
 | 
						:	"r"(uaddr), "r"((long)oldval), "r"(newval)
 | 
				
			||||||
 | 
						:	"memory");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return prev;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif /* __KERNEL__ */
 | 
				
			||||||
 | 
					#endif /* _ASM_ALPHA_FUTEX_H */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -73,6 +73,6 @@ extern unsigned long __per_cpu_offset[NR_CPUS];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* SMP */
 | 
					#endif /* SMP */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define DECLARE_PER_CPU(type, name) extern __typeof__(type) per_cpu_var(name)
 | 
					#include <asm-generic/percpu.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* __ALPHA_PERCPU_H */
 | 
					#endif /* __ALPHA_PERCPU_H */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -507,5 +507,7 @@ struct exception_table_entry
 | 
				
			||||||
	(pc) + (_fixup)->fixup.bits.nextinsn;			\
 | 
						(pc) + (_fixup)->fixup.bits.nextinsn;			\
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define ARCH_HAS_SORT_EXTABLE
 | 
				
			||||||
 | 
					#define ARCH_HAS_SEARCH_EXTABLE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* __ALPHA_UACCESS_H */
 | 
					#endif /* __ALPHA_UACCESS_H */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,7 +8,7 @@ EXTRA_CFLAGS	:= -Werror -Wno-sign-compare
 | 
				
			||||||
 | 
					
 | 
				
			||||||
obj-y    := entry.o traps.o process.o init_task.o osf_sys.o irq.o \
 | 
					obj-y    := entry.o traps.o process.o init_task.o osf_sys.o irq.o \
 | 
				
			||||||
	    irq_alpha.o signal.o setup.o ptrace.o time.o \
 | 
						    irq_alpha.o signal.o setup.o ptrace.o time.o \
 | 
				
			||||||
	    alpha_ksyms.o systbls.o err_common.o io.o binfmt_loader.o
 | 
						    alpha_ksyms.o systbls.o err_common.o io.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
obj-$(CONFIG_VGA_HOSE)	+= console.o
 | 
					obj-$(CONFIG_VGA_HOSE)	+= console.o
 | 
				
			||||||
obj-$(CONFIG_SMP)	+= smp.o
 | 
					obj-$(CONFIG_SMP)	+= smp.o
 | 
				
			||||||
| 
						 | 
					@ -43,6 +43,10 @@ else
 | 
				
			||||||
# Misc support
 | 
					# Misc support
 | 
				
			||||||
obj-$(CONFIG_ALPHA_SRM)		+= srmcons.o
 | 
					obj-$(CONFIG_ALPHA_SRM)		+= srmcons.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifdef CONFIG_BINFMT_AOUT
 | 
				
			||||||
 | 
					obj-y	+= binfmt_loader.o
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Core logic support
 | 
					# Core logic support
 | 
				
			||||||
obj-$(CONFIG_ALPHA_APECS)	+= core_apecs.o
 | 
					obj-$(CONFIG_ALPHA_APECS)	+= core_apecs.o
 | 
				
			||||||
obj-$(CONFIG_ALPHA_CIA)		+= core_cia.o
 | 
					obj-$(CONFIG_ALPHA_CIA)		+= core_cia.o
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -46,6 +46,6 @@ static struct linux_binfmt loader_format = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init init_loader_binfmt(void)
 | 
					static int __init init_loader_binfmt(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	return register_binfmt(&loader_format);
 | 
						return insert_binfmt(&loader_format);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
arch_initcall(init_loader_binfmt);
 | 
					arch_initcall(init_loader_binfmt);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -229,7 +229,7 @@ ev6_process_logout_frame(struct el_common *mchk_header, int print)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
ev6_machine_check(u64 vector, u64 la_ptr)
 | 
					ev6_machine_check(unsigned long vector, unsigned long la_ptr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct el_common *mchk_header = (struct el_common *)la_ptr;
 | 
						struct el_common *mchk_header = (struct el_common *)la_ptr;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -117,7 +117,7 @@ ev7_collect_logout_frame_subpackets(struct el_subpacket *el_ptr,
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
ev7_machine_check(u64 vector, u64 la_ptr)
 | 
					ev7_machine_check(unsigned long vector, unsigned long la_ptr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct el_subpacket *el_ptr = (struct el_subpacket *)la_ptr;
 | 
						struct el_subpacket *el_ptr = (struct el_subpacket *)la_ptr;
 | 
				
			||||||
	char *saved_err_prefix = err_print_prefix;
 | 
						char *saved_err_prefix = err_print_prefix;
 | 
				
			||||||
| 
						 | 
					@ -246,7 +246,7 @@ ev7_process_pal_subpacket(struct el_subpacket *header)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	switch(header->type) {
 | 
						switch(header->type) {
 | 
				
			||||||
	case EL_TYPE__PAL__LOGOUT_FRAME:
 | 
						case EL_TYPE__PAL__LOGOUT_FRAME:
 | 
				
			||||||
		printk("%s*** MCHK occurred on LPID %ld (RBOX %llx)\n",
 | 
							printk("%s*** MCHK occurred on LPID %lld (RBOX %llx)\n",
 | 
				
			||||||
		       err_print_prefix,
 | 
							       err_print_prefix,
 | 
				
			||||||
		       packet->by_type.logout.whami, 
 | 
							       packet->by_type.logout.whami, 
 | 
				
			||||||
		       packet->by_type.logout.rbox_whami);
 | 
							       packet->by_type.logout.rbox_whami);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -60,26 +60,26 @@ extern struct ev7_lf_subpackets *
 | 
				
			||||||
ev7_collect_logout_frame_subpackets(struct el_subpacket *,
 | 
					ev7_collect_logout_frame_subpackets(struct el_subpacket *,
 | 
				
			||||||
				    struct ev7_lf_subpackets *);
 | 
									    struct ev7_lf_subpackets *);
 | 
				
			||||||
extern void ev7_register_error_handlers(void);
 | 
					extern void ev7_register_error_handlers(void);
 | 
				
			||||||
extern void ev7_machine_check(u64, u64);
 | 
					extern void ev7_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * err_ev6.c
 | 
					 * err_ev6.c
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
extern void ev6_register_error_handlers(void);
 | 
					extern void ev6_register_error_handlers(void);
 | 
				
			||||||
extern int ev6_process_logout_frame(struct el_common *, int);
 | 
					extern int ev6_process_logout_frame(struct el_common *, int);
 | 
				
			||||||
extern void ev6_machine_check(u64, u64);
 | 
					extern void ev6_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * err_marvel.c
 | 
					 * err_marvel.c
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
extern void marvel_machine_check(u64, u64);
 | 
					extern void marvel_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
extern void marvel_register_error_handlers(void);
 | 
					extern void marvel_register_error_handlers(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * err_titan.c
 | 
					 * err_titan.c
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
extern int titan_process_logout_frame(struct el_common *, int);
 | 
					extern int titan_process_logout_frame(struct el_common *, int);
 | 
				
			||||||
extern void titan_machine_check(u64, u64);
 | 
					extern void titan_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
extern void titan_register_error_handlers(void);
 | 
					extern void titan_register_error_handlers(void);
 | 
				
			||||||
extern int privateer_process_logout_frame(struct el_common *, int);
 | 
					extern int privateer_process_logout_frame(struct el_common *, int);
 | 
				
			||||||
extern void privateer_machine_check(u64, u64);
 | 
					extern void privateer_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1042,7 +1042,7 @@ marvel_process_logout_frame(struct ev7_lf_subpackets *lf_subpackets, int print)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
marvel_machine_check(u64 vector, u64 la_ptr)
 | 
					marvel_machine_check(unsigned long vector, unsigned long la_ptr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct el_subpacket *el_ptr = (struct el_subpacket *)la_ptr;
 | 
						struct el_subpacket *el_ptr = (struct el_subpacket *)la_ptr;
 | 
				
			||||||
	int (*process_frame)(struct ev7_lf_subpackets *, int) = NULL;
 | 
						int (*process_frame)(struct ev7_lf_subpackets *, int) = NULL;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -380,7 +380,7 @@ titan_process_logout_frame(struct el_common *mchk_header, int print)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
titan_machine_check(u64 vector, u64 la_ptr)
 | 
					titan_machine_check(unsigned long vector, unsigned long la_ptr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct el_common *mchk_header = (struct el_common *)la_ptr;
 | 
						struct el_common *mchk_header = (struct el_common *)la_ptr;
 | 
				
			||||||
	struct el_TITAN_sysdata_mcheck *tmchk =
 | 
						struct el_TITAN_sysdata_mcheck *tmchk =
 | 
				
			||||||
| 
						 | 
					@ -702,7 +702,7 @@ privateer_process_logout_frame(struct el_common *mchk_header, int print)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
privateer_machine_check(u64 vector, u64 la_ptr)
 | 
					privateer_machine_check(unsigned long vector, unsigned long la_ptr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct el_common *mchk_header = (struct el_common *)la_ptr;
 | 
						struct el_common *mchk_header = (struct el_common *)la_ptr;
 | 
				
			||||||
	struct el_TITAN_sysdata_mcheck *tmchk =
 | 
						struct el_TITAN_sysdata_mcheck *tmchk =
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,10 +7,11 @@
 | 
				
			||||||
 * the kernel global pointer and jump to the kernel entry-point.
 | 
					 * the kernel global pointer and jump to the kernel entry-point.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <linux/init.h>
 | 
				
			||||||
#include <asm/system.h>
 | 
					#include <asm/system.h>
 | 
				
			||||||
#include <asm/asm-offsets.h>
 | 
					#include <asm/asm-offsets.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.section .text.head, "ax"
 | 
					__HEAD
 | 
				
			||||||
.globl swapper_pg_dir
 | 
					.globl swapper_pg_dir
 | 
				
			||||||
.globl _stext
 | 
					.globl _stext
 | 
				
			||||||
swapper_pg_dir=SWAPPER_PGD
 | 
					swapper_pg_dir=SWAPPER_PGD
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,7 +36,6 @@ extern void cia_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
				
			||||||
extern struct pci_ops irongate_pci_ops;
 | 
					extern struct pci_ops irongate_pci_ops;
 | 
				
			||||||
extern int irongate_pci_clr_err(void);
 | 
					extern int irongate_pci_clr_err(void);
 | 
				
			||||||
extern void irongate_init_arch(void);
 | 
					extern void irongate_init_arch(void);
 | 
				
			||||||
extern void irongate_machine_check(u64, u64);
 | 
					 | 
				
			||||||
#define irongate_pci_tbi ((void *)0)
 | 
					#define irongate_pci_tbi ((void *)0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* core_lca.c */
 | 
					/* core_lca.c */
 | 
				
			||||||
| 
						 | 
					@ -49,7 +48,7 @@ extern void lca_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
				
			||||||
extern struct pci_ops marvel_pci_ops;
 | 
					extern struct pci_ops marvel_pci_ops;
 | 
				
			||||||
extern void marvel_init_arch(void);
 | 
					extern void marvel_init_arch(void);
 | 
				
			||||||
extern void marvel_kill_arch(int);
 | 
					extern void marvel_kill_arch(int);
 | 
				
			||||||
extern void marvel_machine_check(u64, u64);
 | 
					extern void marvel_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
extern void marvel_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
					extern void marvel_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
				
			||||||
extern int marvel_pa_to_nid(unsigned long);
 | 
					extern int marvel_pa_to_nid(unsigned long);
 | 
				
			||||||
extern int marvel_cpuid_to_nid(int);
 | 
					extern int marvel_cpuid_to_nid(int);
 | 
				
			||||||
| 
						 | 
					@ -86,7 +85,7 @@ extern void t2_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
				
			||||||
extern struct pci_ops titan_pci_ops;
 | 
					extern struct pci_ops titan_pci_ops;
 | 
				
			||||||
extern void titan_init_arch(void);
 | 
					extern void titan_init_arch(void);
 | 
				
			||||||
extern void titan_kill_arch(int);
 | 
					extern void titan_kill_arch(int);
 | 
				
			||||||
extern void titan_machine_check(u64, u64);
 | 
					extern void titan_machine_check(unsigned long, unsigned long);
 | 
				
			||||||
extern void titan_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
					extern void titan_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 | 
				
			||||||
extern struct _alpha_agp_info *titan_agp_info(void);
 | 
					extern struct _alpha_agp_info *titan_agp_info(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -16,7 +16,7 @@ SECTIONS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	_text = .;	/* Text and read-only data */
 | 
						_text = .;	/* Text and read-only data */
 | 
				
			||||||
	.text : {
 | 
						.text : {
 | 
				
			||||||
	*(.text.head)
 | 
							HEAD_TEXT
 | 
				
			||||||
		TEXT_TEXT
 | 
							TEXT_TEXT
 | 
				
			||||||
		SCHED_TEXT
 | 
							SCHED_TEXT
 | 
				
			||||||
		LOCK_TEXT
 | 
							LOCK_TEXT
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,11 +3,49 @@
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <linux/module.h>
 | 
					#include <linux/module.h>
 | 
				
			||||||
 | 
					#include <linux/sort.h>
 | 
				
			||||||
#include <asm/uaccess.h>
 | 
					#include <asm/uaccess.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static inline unsigned long ex_to_addr(const struct exception_table_entry *x)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						return (unsigned long)&x->insn + x->insn;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void swap_ex(void *a, void *b, int size)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						struct exception_table_entry *ex_a = a, *ex_b = b;
 | 
				
			||||||
 | 
						unsigned long addr_a = ex_to_addr(ex_a), addr_b = ex_to_addr(ex_b);
 | 
				
			||||||
 | 
						unsigned int t = ex_a->fixup.unit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						ex_a->fixup.unit = ex_b->fixup.unit;
 | 
				
			||||||
 | 
						ex_b->fixup.unit = t;
 | 
				
			||||||
 | 
						ex_a->insn = (int)(addr_b - (unsigned long)&ex_a->insn);
 | 
				
			||||||
 | 
						ex_b->insn = (int)(addr_a - (unsigned long)&ex_b->insn);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * The exception table needs to be sorted so that the binary
 | 
				
			||||||
 | 
					 * search that we use to find entries in it works properly.
 | 
				
			||||||
 | 
					 * This is used both for the kernel exception table and for
 | 
				
			||||||
 | 
					 * the exception tables of modules that get loaded.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					static int cmp_ex(const void *a, const void *b)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						const struct exception_table_entry *x = a, *y = b;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* avoid overflow */
 | 
				
			||||||
 | 
						if (ex_to_addr(x) > ex_to_addr(y))
 | 
				
			||||||
 | 
							return 1;
 | 
				
			||||||
 | 
						if (ex_to_addr(x) < ex_to_addr(y))
 | 
				
			||||||
 | 
							return -1;
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void sort_extable(struct exception_table_entry *start,
 | 
					void sort_extable(struct exception_table_entry *start,
 | 
				
			||||||
		  struct exception_table_entry *finish)
 | 
							  struct exception_table_entry *finish)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						sort(start, finish - start, sizeof(struct exception_table_entry),
 | 
				
			||||||
 | 
						     cmp_ex, swap_ex);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const struct exception_table_entry *
 | 
					const struct exception_table_entry *
 | 
				
			||||||
| 
						 | 
					@ -20,7 +58,7 @@ search_extable(const struct exception_table_entry *first,
 | 
				
			||||||
		unsigned long mid_value;
 | 
							unsigned long mid_value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		mid = (last - first) / 2 + first;
 | 
							mid = (last - first) / 2 + first;
 | 
				
			||||||
		mid_value = (unsigned long)&mid->insn + mid->insn;
 | 
							mid_value = ex_to_addr(mid);
 | 
				
			||||||
                if (mid_value == value)
 | 
					                if (mid_value == value)
 | 
				
			||||||
                        return mid;
 | 
					                        return mid;
 | 
				
			||||||
                else if (mid_value < value)
 | 
					                else if (mid_value < value)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -454,6 +454,7 @@ config ARCH_MXC
 | 
				
			||||||
	select ARCH_MTD_XIP
 | 
						select ARCH_MTD_XIP
 | 
				
			||||||
	select GENERIC_GPIO
 | 
						select GENERIC_GPIO
 | 
				
			||||||
	select ARCH_REQUIRE_GPIOLIB
 | 
						select ARCH_REQUIRE_GPIOLIB
 | 
				
			||||||
 | 
						select HAVE_CLK
 | 
				
			||||||
	help
 | 
						help
 | 
				
			||||||
	  Support for Freescale MXC/iMX-based family of processors
 | 
						  Support for Freescale MXC/iMX-based family of processors
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -486,8 +487,6 @@ config ARCH_PXA
 | 
				
			||||||
	select HAVE_CLK
 | 
						select HAVE_CLK
 | 
				
			||||||
	select COMMON_CLKDEV
 | 
						select COMMON_CLKDEV
 | 
				
			||||||
	select ARCH_REQUIRE_GPIOLIB
 | 
						select ARCH_REQUIRE_GPIOLIB
 | 
				
			||||||
	select HAVE_CLK
 | 
					 | 
				
			||||||
	select COMMON_CLKDEV
 | 
					 | 
				
			||||||
	select GENERIC_TIME
 | 
						select GENERIC_TIME
 | 
				
			||||||
	select GENERIC_CLOCKEVENTS
 | 
						select GENERIC_CLOCKEVENTS
 | 
				
			||||||
	select TICK_ONESHOT
 | 
						select TICK_ONESHOT
 | 
				
			||||||
| 
						 | 
					@ -585,6 +584,8 @@ config ARCH_DAVINCI
 | 
				
			||||||
	select ARCH_REQUIRE_GPIOLIB
 | 
						select ARCH_REQUIRE_GPIOLIB
 | 
				
			||||||
	select HAVE_CLK
 | 
						select HAVE_CLK
 | 
				
			||||||
	select ZONE_DMA
 | 
						select ZONE_DMA
 | 
				
			||||||
 | 
						select HAVE_IDE
 | 
				
			||||||
 | 
						select COMMON_CLKDEV
 | 
				
			||||||
	help
 | 
						help
 | 
				
			||||||
	  Support for TI's DaVinci platform.
 | 
						  Support for TI's DaVinci platform.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -740,6 +741,56 @@ if !MMU
 | 
				
			||||||
source "arch/arm/Kconfig-nommu"
 | 
					source "arch/arm/Kconfig-nommu"
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config ARM_ERRATA_411920
 | 
				
			||||||
 | 
						bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
 | 
				
			||||||
 | 
						depends on CPU_V6 && !SMP
 | 
				
			||||||
 | 
						help
 | 
				
			||||||
 | 
						  Invalidation of the Instruction Cache operation can
 | 
				
			||||||
 | 
						  fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
 | 
				
			||||||
 | 
						  It does not affect the MPCore. This option enables the ARM Ltd.
 | 
				
			||||||
 | 
						  recommended workaround.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config ARM_ERRATA_430973
 | 
				
			||||||
 | 
						bool "ARM errata: Stale prediction on replaced interworking branch"
 | 
				
			||||||
 | 
						depends on CPU_V7
 | 
				
			||||||
 | 
						help
 | 
				
			||||||
 | 
						  This option enables the workaround for the 430973 Cortex-A8
 | 
				
			||||||
 | 
						  (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb
 | 
				
			||||||
 | 
						  interworking branch is replaced with another code sequence at the
 | 
				
			||||||
 | 
						  same virtual address, whether due to self-modifying code or virtual
 | 
				
			||||||
 | 
						  to physical address re-mapping, Cortex-A8 does not recover from the
 | 
				
			||||||
 | 
						  stale interworking branch prediction. This results in Cortex-A8
 | 
				
			||||||
 | 
						  executing the new code sequence in the incorrect ARM or Thumb state.
 | 
				
			||||||
 | 
						  The workaround enables the BTB/BTAC operations by setting ACTLR.IBE
 | 
				
			||||||
 | 
						  and also flushes the branch target cache at every context switch.
 | 
				
			||||||
 | 
						  Note that setting specific bits in the ACTLR register may not be
 | 
				
			||||||
 | 
						  available in non-secure mode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config ARM_ERRATA_458693
 | 
				
			||||||
 | 
						bool "ARM errata: Processor deadlock when a false hazard is created"
 | 
				
			||||||
 | 
						depends on CPU_V7
 | 
				
			||||||
 | 
						help
 | 
				
			||||||
 | 
						  This option enables the workaround for the 458693 Cortex-A8 (r2p0)
 | 
				
			||||||
 | 
						  erratum. For very specific sequences of memory operations, it is
 | 
				
			||||||
 | 
						  possible for a hazard condition intended for a cache line to instead
 | 
				
			||||||
 | 
						  be incorrectly associated with a different cache line. This false
 | 
				
			||||||
 | 
						  hazard might then cause a processor deadlock. The workaround enables
 | 
				
			||||||
 | 
						  the L1 caching of the NEON accesses and disables the PLD instruction
 | 
				
			||||||
 | 
						  in the ACTLR register. Note that setting specific bits in the ACTLR
 | 
				
			||||||
 | 
						  register may not be available in non-secure mode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config ARM_ERRATA_460075
 | 
				
			||||||
 | 
						bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
 | 
				
			||||||
 | 
						depends on CPU_V7
 | 
				
			||||||
 | 
						help
 | 
				
			||||||
 | 
						  This option enables the workaround for the 460075 Cortex-A8 (r2p0)
 | 
				
			||||||
 | 
						  erratum. Any asynchronous access to the L2 cache may encounter a
 | 
				
			||||||
 | 
						  situation in which recent store transactions to the L2 cache are lost
 | 
				
			||||||
 | 
						  and overwritten with stale memory contents from external memory. The
 | 
				
			||||||
 | 
						  workaround disables the write-allocate mode for the L2 cache via the
 | 
				
			||||||
 | 
						  ACTLR register. Note that setting specific bits in the ACTLR register
 | 
				
			||||||
 | 
						  may not be available in non-secure mode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
endmenu
 | 
					endmenu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
source "arch/arm/common/Kconfig"
 | 
					source "arch/arm/common/Kconfig"
 | 
				
			||||||
| 
						 | 
					@ -1171,12 +1222,6 @@ config CPU_FREQ_IMX
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	  If in doubt, say N.
 | 
						  If in doubt, say N.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config CPU_FREQ_PXA
 | 
					 | 
				
			||||||
	bool
 | 
					 | 
				
			||||||
	depends on CPU_FREQ && ARCH_PXA && PXA25x
 | 
					 | 
				
			||||||
	default y
 | 
					 | 
				
			||||||
	select CPU_FREQ_DEFAULT_GOV_USERSPACE
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
source "drivers/cpuidle/Kconfig"
 | 
					source "drivers/cpuidle/Kconfig"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -85,12 +85,11 @@ void __init vic_init(void __iomem *base, unsigned int irq_start,
 | 
				
			||||||
	writel(32, base + VIC_PL190_DEF_VECT_ADDR);
 | 
						writel(32, base + VIC_PL190_DEF_VECT_ADDR);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; i < 32; i++) {
 | 
						for (i = 0; i < 32; i++) {
 | 
				
			||||||
		unsigned int irq = irq_start + i;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		set_irq_chip(irq, &vic_chip);
 | 
					 | 
				
			||||||
		set_irq_chip_data(irq, base);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		if (vic_sources & (1 << i)) {
 | 
							if (vic_sources & (1 << i)) {
 | 
				
			||||||
 | 
								unsigned int irq = irq_start + i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								set_irq_chip(irq, &vic_chip);
 | 
				
			||||||
 | 
								set_irq_chip_data(irq, base);
 | 
				
			||||||
			set_irq_handler(irq, handle_level_irq);
 | 
								set_irq_handler(irq, handle_level_irq);
 | 
				
			||||||
			set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
 | 
								set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1784
									
								
								arch/arm/configs/davinci_all_defconfig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1784
									
								
								arch/arm/configs/davinci_all_defconfig
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
					@ -1,826 +0,0 @@
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Automatically generated make config: don't edit
 | 
					 | 
				
			||||||
# Linux kernel version: 2.6.26-rc6
 | 
					 | 
				
			||||||
# Fri Jun 20 16:29:34 2008
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_ARM=y
 | 
					 | 
				
			||||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_GPIO=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_TIME=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_CLOCKEVENTS=y
 | 
					 | 
				
			||||||
CONFIG_MMU=y
 | 
					 | 
				
			||||||
# CONFIG_NO_IOPORT is not set
 | 
					 | 
				
			||||||
CONFIG_GENERIC_HARDIRQS=y
 | 
					 | 
				
			||||||
CONFIG_STACKTRACE_SUPPORT=y
 | 
					 | 
				
			||||||
CONFIG_LOCKDEP_SUPPORT=y
 | 
					 | 
				
			||||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
 | 
					 | 
				
			||||||
CONFIG_HARDIRQS_SW_RESEND=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_IRQ_PROBE=y
 | 
					 | 
				
			||||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
 | 
					 | 
				
			||||||
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
					 | 
				
			||||||
CONFIG_GENERIC_HWEIGHT=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
					 | 
				
			||||||
CONFIG_ARCH_SUPPORTS_AOUT=y
 | 
					 | 
				
			||||||
CONFIG_ZONE_DMA=y
 | 
					 | 
				
			||||||
CONFIG_ARCH_MTD_XIP=y
 | 
					 | 
				
			||||||
CONFIG_VECTORS_BASE=0xffff0000
 | 
					 | 
				
			||||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# General setup
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_EXPERIMENTAL=y
 | 
					 | 
				
			||||||
CONFIG_BROKEN_ON_SMP=y
 | 
					 | 
				
			||||||
CONFIG_LOCK_KERNEL=y
 | 
					 | 
				
			||||||
CONFIG_INIT_ENV_ARG_LIMIT=32
 | 
					 | 
				
			||||||
CONFIG_LOCALVERSION=""
 | 
					 | 
				
			||||||
CONFIG_LOCALVERSION_AUTO=y
 | 
					 | 
				
			||||||
# CONFIG_SWAP is not set
 | 
					 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					 | 
				
			||||||
CONFIG_SYSVIPC_SYSCTL=y
 | 
					 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					 | 
				
			||||||
# CONFIG_BSD_PROCESS_ACCT is not set
 | 
					 | 
				
			||||||
# CONFIG_TASKSTATS is not set
 | 
					 | 
				
			||||||
# CONFIG_AUDIT is not set
 | 
					 | 
				
			||||||
# CONFIG_IKCONFIG is not set
 | 
					 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=14
 | 
					 | 
				
			||||||
# CONFIG_CGROUPS is not set
 | 
					 | 
				
			||||||
# CONFIG_GROUP_SCHED is not set
 | 
					 | 
				
			||||||
CONFIG_SYSFS_DEPRECATED=y
 | 
					 | 
				
			||||||
CONFIG_SYSFS_DEPRECATED_V2=y
 | 
					 | 
				
			||||||
# CONFIG_RELAY is not set
 | 
					 | 
				
			||||||
# CONFIG_NAMESPACES is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_INITRD is not set
 | 
					 | 
				
			||||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
 | 
					 | 
				
			||||||
CONFIG_SYSCTL=y
 | 
					 | 
				
			||||||
CONFIG_EMBEDDED=y
 | 
					 | 
				
			||||||
CONFIG_UID16=y
 | 
					 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL=y
 | 
					 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
					 | 
				
			||||||
CONFIG_KALLSYMS=y
 | 
					 | 
				
			||||||
CONFIG_KALLSYMS_EXTRA_PASS=y
 | 
					 | 
				
			||||||
CONFIG_HOTPLUG=y
 | 
					 | 
				
			||||||
CONFIG_PRINTK=y
 | 
					 | 
				
			||||||
CONFIG_BUG=y
 | 
					 | 
				
			||||||
CONFIG_ELF_CORE=y
 | 
					 | 
				
			||||||
CONFIG_COMPAT_BRK=y
 | 
					 | 
				
			||||||
CONFIG_BASE_FULL=y
 | 
					 | 
				
			||||||
CONFIG_FUTEX=y
 | 
					 | 
				
			||||||
CONFIG_ANON_INODES=y
 | 
					 | 
				
			||||||
CONFIG_EPOLL=y
 | 
					 | 
				
			||||||
CONFIG_SIGNALFD=y
 | 
					 | 
				
			||||||
CONFIG_TIMERFD=y
 | 
					 | 
				
			||||||
CONFIG_EVENTFD=y
 | 
					 | 
				
			||||||
CONFIG_SHMEM=y
 | 
					 | 
				
			||||||
CONFIG_VM_EVENT_COUNTERS=y
 | 
					 | 
				
			||||||
CONFIG_SLAB=y
 | 
					 | 
				
			||||||
# CONFIG_SLUB is not set
 | 
					 | 
				
			||||||
# CONFIG_SLOB is not set
 | 
					 | 
				
			||||||
# CONFIG_PROFILING is not set
 | 
					 | 
				
			||||||
# CONFIG_MARKERS is not set
 | 
					 | 
				
			||||||
CONFIG_HAVE_OPROFILE=y
 | 
					 | 
				
			||||||
# CONFIG_KPROBES is not set
 | 
					 | 
				
			||||||
CONFIG_HAVE_KPROBES=y
 | 
					 | 
				
			||||||
CONFIG_HAVE_KRETPROBES=y
 | 
					 | 
				
			||||||
# CONFIG_HAVE_DMA_ATTRS is not set
 | 
					 | 
				
			||||||
CONFIG_PROC_PAGE_MONITOR=y
 | 
					 | 
				
			||||||
CONFIG_SLABINFO=y
 | 
					 | 
				
			||||||
CONFIG_RT_MUTEXES=y
 | 
					 | 
				
			||||||
# CONFIG_TINY_SHMEM is not set
 | 
					 | 
				
			||||||
CONFIG_BASE_SMALL=0
 | 
					 | 
				
			||||||
CONFIG_MODULES=y
 | 
					 | 
				
			||||||
# CONFIG_MODULE_FORCE_LOAD is not set
 | 
					 | 
				
			||||||
CONFIG_MODULE_UNLOAD=y
 | 
					 | 
				
			||||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
 | 
					 | 
				
			||||||
# CONFIG_MODVERSIONS is not set
 | 
					 | 
				
			||||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
					 | 
				
			||||||
# CONFIG_KMOD is not set
 | 
					 | 
				
			||||||
CONFIG_BLOCK=y
 | 
					 | 
				
			||||||
# CONFIG_LBD is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
					 | 
				
			||||||
# CONFIG_LSF is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_BSG is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# IO Schedulers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_IOSCHED_NOOP=y
 | 
					 | 
				
			||||||
# CONFIG_IOSCHED_AS is not set
 | 
					 | 
				
			||||||
# CONFIG_IOSCHED_DEADLINE is not set
 | 
					 | 
				
			||||||
# CONFIG_IOSCHED_CFQ is not set
 | 
					 | 
				
			||||||
# CONFIG_DEFAULT_AS is not set
 | 
					 | 
				
			||||||
# CONFIG_DEFAULT_DEADLINE is not set
 | 
					 | 
				
			||||||
# CONFIG_DEFAULT_CFQ is not set
 | 
					 | 
				
			||||||
CONFIG_DEFAULT_NOOP=y
 | 
					 | 
				
			||||||
CONFIG_DEFAULT_IOSCHED="noop"
 | 
					 | 
				
			||||||
CONFIG_CLASSIC_RCU=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# System Type
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_ARCH_AAEC2000 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_INTEGRATOR is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_REALVIEW is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_VERSATILE is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_AT91 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_CLPS7500 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_CLPS711X is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_CO285 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_EBSA110 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_EP93XX is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_NETX is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_H720X is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IMX is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IOP13XX is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IOP32X is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IOP33X is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IXP23XX is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IXP2000 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_IXP4XX is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_L7200 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_KS8695 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_NS9XXX is not set
 | 
					 | 
				
			||||||
CONFIG_ARCH_MXC=y
 | 
					 | 
				
			||||||
# CONFIG_ARCH_ORION5X is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_PNX4008 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_PXA is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_RPC is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_SA1100 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_S3C2410 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_SHARK is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_LH7A40X is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_DAVINCI is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_OMAP is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_MSM7X00A is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Boot options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Power management
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Freescale MXC Implementations
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_ARCH_MX2=y
 | 
					 | 
				
			||||||
# CONFIG_ARCH_MX3 is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# MX2 family CPU support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_MACH_MX27=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# MX2 Platforms
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_MACH_MX27ADS=y
 | 
					 | 
				
			||||||
# CONFIG_MACH_PCM038 is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Processor Type
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_CPU_32=y
 | 
					 | 
				
			||||||
CONFIG_CPU_ARM926T=y
 | 
					 | 
				
			||||||
CONFIG_CPU_32v5=y
 | 
					 | 
				
			||||||
CONFIG_CPU_ABRT_EV5TJ=y
 | 
					 | 
				
			||||||
CONFIG_CPU_PABRT_NOIFAR=y
 | 
					 | 
				
			||||||
CONFIG_CPU_CACHE_VIVT=y
 | 
					 | 
				
			||||||
CONFIG_CPU_COPY_V4WB=y
 | 
					 | 
				
			||||||
CONFIG_CPU_TLB_V4WBI=y
 | 
					 | 
				
			||||||
CONFIG_CPU_CP15=y
 | 
					 | 
				
			||||||
CONFIG_CPU_CP15_MMU=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Processor Features
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_ARM_THUMB=y
 | 
					 | 
				
			||||||
# CONFIG_CPU_ICACHE_DISABLE is not set
 | 
					 | 
				
			||||||
# CONFIG_CPU_DCACHE_DISABLE is not set
 | 
					 | 
				
			||||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
 | 
					 | 
				
			||||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
 | 
					 | 
				
			||||||
# CONFIG_OUTER_CACHE is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Bus support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_PCI_SYSCALL is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
 | 
					 | 
				
			||||||
# CONFIG_PCCARD is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Kernel Features
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_TICK_ONESHOT=y
 | 
					 | 
				
			||||||
CONFIG_NO_HZ=y
 | 
					 | 
				
			||||||
CONFIG_HIGH_RES_TIMERS=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
					 | 
				
			||||||
CONFIG_PREEMPT=y
 | 
					 | 
				
			||||||
CONFIG_HZ=100
 | 
					 | 
				
			||||||
CONFIG_AEABI=y
 | 
					 | 
				
			||||||
# CONFIG_OABI_COMPAT is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
 | 
					 | 
				
			||||||
CONFIG_SELECT_MEMORY_MODEL=y
 | 
					 | 
				
			||||||
CONFIG_FLATMEM_MANUAL=y
 | 
					 | 
				
			||||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
					 | 
				
			||||||
# CONFIG_SPARSEMEM_MANUAL is not set
 | 
					 | 
				
			||||||
CONFIG_FLATMEM=y
 | 
					 | 
				
			||||||
CONFIG_FLAT_NODE_MEM_MAP=y
 | 
					 | 
				
			||||||
# CONFIG_SPARSEMEM_STATIC is not set
 | 
					 | 
				
			||||||
# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
 | 
					 | 
				
			||||||
CONFIG_PAGEFLAGS_EXTENDED=y
 | 
					 | 
				
			||||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
					 | 
				
			||||||
# CONFIG_RESOURCES_64BIT is not set
 | 
					 | 
				
			||||||
CONFIG_ZONE_DMA_FLAG=1
 | 
					 | 
				
			||||||
CONFIG_BOUNCE=y
 | 
					 | 
				
			||||||
CONFIG_VIRT_TO_BUS=y
 | 
					 | 
				
			||||||
CONFIG_ALIGNMENT_TRAP=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Boot options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_ZBOOT_ROM_TEXT=0x0
 | 
					 | 
				
			||||||
CONFIG_ZBOOT_ROM_BSS=0x0
 | 
					 | 
				
			||||||
CONFIG_CMDLINE=""
 | 
					 | 
				
			||||||
# CONFIG_XIP_KERNEL is not set
 | 
					 | 
				
			||||||
# CONFIG_KEXEC is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Floating point emulation
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# At least one emulation must be selected
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_VFP is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Userspace binary formats
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_BINFMT_ELF=y
 | 
					 | 
				
			||||||
# CONFIG_BINFMT_AOUT is not set
 | 
					 | 
				
			||||||
# CONFIG_BINFMT_MISC is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Power management options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_PM is not set
 | 
					 | 
				
			||||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Networking
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_NET=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Networking options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_PACKET=y
 | 
					 | 
				
			||||||
CONFIG_PACKET_MMAP=y
 | 
					 | 
				
			||||||
CONFIG_UNIX=y
 | 
					 | 
				
			||||||
# CONFIG_NET_KEY is not set
 | 
					 | 
				
			||||||
CONFIG_INET=y
 | 
					 | 
				
			||||||
CONFIG_IP_MULTICAST=y
 | 
					 | 
				
			||||||
# CONFIG_IP_ADVANCED_ROUTER is not set
 | 
					 | 
				
			||||||
CONFIG_IP_FIB_HASH=y
 | 
					 | 
				
			||||||
CONFIG_IP_PNP=y
 | 
					 | 
				
			||||||
# CONFIG_IP_PNP_DHCP is not set
 | 
					 | 
				
			||||||
# CONFIG_IP_PNP_BOOTP is not set
 | 
					 | 
				
			||||||
# CONFIG_IP_PNP_RARP is not set
 | 
					 | 
				
			||||||
# CONFIG_NET_IPIP is not set
 | 
					 | 
				
			||||||
# CONFIG_NET_IPGRE is not set
 | 
					 | 
				
			||||||
# CONFIG_IP_MROUTE is not set
 | 
					 | 
				
			||||||
# CONFIG_ARPD is not set
 | 
					 | 
				
			||||||
# CONFIG_SYN_COOKIES is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_AH is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_ESP is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_IPCOMP is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_XFRM_TUNNEL is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_TUNNEL is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_XFRM_MODE_BEET is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
# CONFIG_INET_DIAG is not set
 | 
					 | 
				
			||||||
# CONFIG_TCP_CONG_ADVANCED is not set
 | 
					 | 
				
			||||||
CONFIG_TCP_CONG_CUBIC=y
 | 
					 | 
				
			||||||
CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
					 | 
				
			||||||
# CONFIG_TCP_MD5SIG is not set
 | 
					 | 
				
			||||||
# CONFIG_IPV6 is not set
 | 
					 | 
				
			||||||
# CONFIG_NETWORK_SECMARK is not set
 | 
					 | 
				
			||||||
# CONFIG_NETFILTER is not set
 | 
					 | 
				
			||||||
# CONFIG_IP_DCCP is not set
 | 
					 | 
				
			||||||
# CONFIG_IP_SCTP is not set
 | 
					 | 
				
			||||||
# CONFIG_TIPC is not set
 | 
					 | 
				
			||||||
# CONFIG_ATM is not set
 | 
					 | 
				
			||||||
# CONFIG_BRIDGE is not set
 | 
					 | 
				
			||||||
# CONFIG_VLAN_8021Q is not set
 | 
					 | 
				
			||||||
# CONFIG_DECNET is not set
 | 
					 | 
				
			||||||
# CONFIG_LLC2 is not set
 | 
					 | 
				
			||||||
# CONFIG_IPX is not set
 | 
					 | 
				
			||||||
# CONFIG_ATALK is not set
 | 
					 | 
				
			||||||
# CONFIG_X25 is not set
 | 
					 | 
				
			||||||
# CONFIG_LAPB is not set
 | 
					 | 
				
			||||||
# CONFIG_ECONET is not set
 | 
					 | 
				
			||||||
# CONFIG_WAN_ROUTER is not set
 | 
					 | 
				
			||||||
# CONFIG_NET_SCHED is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Network testing
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_NET_PKTGEN is not set
 | 
					 | 
				
			||||||
# CONFIG_HAMRADIO is not set
 | 
					 | 
				
			||||||
# CONFIG_CAN is not set
 | 
					 | 
				
			||||||
# CONFIG_IRDA is not set
 | 
					 | 
				
			||||||
# CONFIG_BT is not set
 | 
					 | 
				
			||||||
# CONFIG_AF_RXRPC is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Wireless
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_CFG80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_WIRELESS_EXT is not set
 | 
					 | 
				
			||||||
# CONFIG_MAC80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_IEEE80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_RFKILL is not set
 | 
					 | 
				
			||||||
# CONFIG_NET_9P is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Device Drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Generic Driver Options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
 | 
					 | 
				
			||||||
CONFIG_STANDALONE=y
 | 
					 | 
				
			||||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
 | 
					 | 
				
			||||||
# CONFIG_FW_LOADER is not set
 | 
					 | 
				
			||||||
# CONFIG_SYS_HYPERVISOR is not set
 | 
					 | 
				
			||||||
# CONFIG_CONNECTOR is not set
 | 
					 | 
				
			||||||
CONFIG_MTD=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_DEBUG is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CONCAT is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_PARTITIONS=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_REDBOOT_PARTS is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_CMDLINE_PARTS=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_AFS_PARTS is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_AR7_PARTS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# User Modules And Translation Layers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_MTD_CHAR=y
 | 
					 | 
				
			||||||
CONFIG_MTD_BLKDEVS=y
 | 
					 | 
				
			||||||
CONFIG_MTD_BLOCK=y
 | 
					 | 
				
			||||||
# CONFIG_FTL is not set
 | 
					 | 
				
			||||||
# CONFIG_NFTL is not set
 | 
					 | 
				
			||||||
# CONFIG_INFTL is not set
 | 
					 | 
				
			||||||
# CONFIG_RFD_FTL is not set
 | 
					 | 
				
			||||||
# CONFIG_SSFDC is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_OOPS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# RAM/ROM/Flash chip drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_JEDECPROBE is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_GEN_PROBE=y
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_ADV_OPTIONS=y
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_NOSWAP=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_GEOMETRY=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_1 is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_MAP_BANK_WIDTH_2=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_4 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_I1=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_I2 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_I4 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_I8 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_OTP is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_INTELEXT=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_AMDSTD is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_STAA is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_UTIL=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_RAM is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_ROM is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_ABSENT is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_XIP is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Mapping drivers for chip access
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP=y
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP_START=0x00000000
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP_LEN=0x0
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
 | 
					 | 
				
			||||||
# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_PLATRAM is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Self-contained MTD device drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_MTD_SLRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_PHRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_MTDRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_BLOCK2MTD is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Disk-On-Chip Device Drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_MTD_DOC2000 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_DOC2001 is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_DOC2001PLUS is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_NAND is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_ONENAND is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# UBI - Unsorted block images
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_MTD_UBI is not set
 | 
					 | 
				
			||||||
# CONFIG_PARPORT is not set
 | 
					 | 
				
			||||||
CONFIG_BLK_DEV=y
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_COW_COMMON is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_LOOP is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_NBD is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_RAM is not set
 | 
					 | 
				
			||||||
# CONFIG_CDROM_PKTCDVD is not set
 | 
					 | 
				
			||||||
# CONFIG_ATA_OVER_ETH is not set
 | 
					 | 
				
			||||||
# CONFIG_MISC_DEVICES is not set
 | 
					 | 
				
			||||||
CONFIG_HAVE_IDE=y
 | 
					 | 
				
			||||||
# CONFIG_IDE is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# SCSI device support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_RAID_ATTRS is not set
 | 
					 | 
				
			||||||
# CONFIG_SCSI is not set
 | 
					 | 
				
			||||||
# CONFIG_SCSI_DMA is not set
 | 
					 | 
				
			||||||
# CONFIG_SCSI_NETLINK is not set
 | 
					 | 
				
			||||||
# CONFIG_ATA is not set
 | 
					 | 
				
			||||||
# CONFIG_MD is not set
 | 
					 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					 | 
				
			||||||
# CONFIG_NETDEVICES_MULTIQUEUE is not set
 | 
					 | 
				
			||||||
# CONFIG_DUMMY is not set
 | 
					 | 
				
			||||||
# CONFIG_BONDING is not set
 | 
					 | 
				
			||||||
# CONFIG_MACVLAN is not set
 | 
					 | 
				
			||||||
# CONFIG_EQUALIZER is not set
 | 
					 | 
				
			||||||
# CONFIG_TUN is not set
 | 
					 | 
				
			||||||
# CONFIG_VETH is not set
 | 
					 | 
				
			||||||
# CONFIG_PHYLIB is not set
 | 
					 | 
				
			||||||
CONFIG_NET_ETHERNET=y
 | 
					 | 
				
			||||||
# CONFIG_MII is not set
 | 
					 | 
				
			||||||
# CONFIG_AX88796 is not set
 | 
					 | 
				
			||||||
# CONFIG_SMC91X is not set
 | 
					 | 
				
			||||||
# CONFIG_DM9000 is not set
 | 
					 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
					 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
					 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
					 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
					 | 
				
			||||||
# CONFIG_B44 is not set
 | 
					 | 
				
			||||||
# CONFIG_FEC_OLD is not set
 | 
					 | 
				
			||||||
# CONFIG_NETDEV_1000 is not set
 | 
					 | 
				
			||||||
# CONFIG_NETDEV_10000 is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Wireless LAN
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_WLAN_PRE80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_WLAN_80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_IWLWIFI_LEDS is not set
 | 
					 | 
				
			||||||
# CONFIG_WAN is not set
 | 
					 | 
				
			||||||
# CONFIG_PPP is not set
 | 
					 | 
				
			||||||
# CONFIG_SLIP is not set
 | 
					 | 
				
			||||||
# CONFIG_NETCONSOLE is not set
 | 
					 | 
				
			||||||
# CONFIG_NETPOLL is not set
 | 
					 | 
				
			||||||
# CONFIG_NET_POLL_CONTROLLER is not set
 | 
					 | 
				
			||||||
# CONFIG_ISDN is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Input device support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_INPUT=y
 | 
					 | 
				
			||||||
# CONFIG_INPUT_FF_MEMLESS is not set
 | 
					 | 
				
			||||||
# CONFIG_INPUT_POLLDEV is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Userland interfaces
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_INPUT_MOUSEDEV is not set
 | 
					 | 
				
			||||||
# CONFIG_INPUT_JOYDEV is not set
 | 
					 | 
				
			||||||
CONFIG_INPUT_EVDEV=y
 | 
					 | 
				
			||||||
# CONFIG_INPUT_EVBUG is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Input Device Drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_INPUT_KEYBOARD is not set
 | 
					 | 
				
			||||||
# CONFIG_INPUT_MOUSE is not set
 | 
					 | 
				
			||||||
# CONFIG_INPUT_JOYSTICK is not set
 | 
					 | 
				
			||||||
# CONFIG_INPUT_TABLET is not set
 | 
					 | 
				
			||||||
CONFIG_INPUT_TOUCHSCREEN=y
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_FUJITSU is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_GUNZE is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_ELO is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_MTOUCH is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_MK712 is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_PENMOUNT is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
 | 
					 | 
				
			||||||
# CONFIG_TOUCHSCREEN_UCB1400 is not set
 | 
					 | 
				
			||||||
# CONFIG_INPUT_MISC is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Hardware I/O ports
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_SERIO is not set
 | 
					 | 
				
			||||||
# CONFIG_GAMEPORT is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Character devices
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_VT is not set
 | 
					 | 
				
			||||||
CONFIG_DEVKMEM=y
 | 
					 | 
				
			||||||
# CONFIG_SERIAL_NONSTANDARD is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Serial drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_SERIAL_8250 is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Non-8250 serial port support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_SERIAL_IMX is not set
 | 
					 | 
				
			||||||
CONFIG_UNIX98_PTYS=y
 | 
					 | 
				
			||||||
# CONFIG_LEGACY_PTYS is not set
 | 
					 | 
				
			||||||
# CONFIG_IPMI_HANDLER is not set
 | 
					 | 
				
			||||||
# CONFIG_HW_RANDOM is not set
 | 
					 | 
				
			||||||
# CONFIG_NVRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_R3964 is not set
 | 
					 | 
				
			||||||
# CONFIG_RAW_DRIVER is not set
 | 
					 | 
				
			||||||
# CONFIG_TCG_TPM is not set
 | 
					 | 
				
			||||||
# CONFIG_I2C is not set
 | 
					 | 
				
			||||||
# CONFIG_SPI is not set
 | 
					 | 
				
			||||||
CONFIG_HAVE_GPIO_LIB=y
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# GPIO Support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# I2C GPIO expanders:
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# SPI GPIO expanders:
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_W1 is not set
 | 
					 | 
				
			||||||
# CONFIG_POWER_SUPPLY is not set
 | 
					 | 
				
			||||||
# CONFIG_HWMON is not set
 | 
					 | 
				
			||||||
# CONFIG_WATCHDOG is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Sonics Silicon Backplane
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_SSB_POSSIBLE=y
 | 
					 | 
				
			||||||
# CONFIG_SSB is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Multifunction device drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_MFD_SM501 is not set
 | 
					 | 
				
			||||||
# CONFIG_MFD_ASIC3 is not set
 | 
					 | 
				
			||||||
# CONFIG_HTC_EGPIO is not set
 | 
					 | 
				
			||||||
# CONFIG_HTC_PASIC3 is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Multimedia devices
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Multimedia core support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_VIDEO_DEV is not set
 | 
					 | 
				
			||||||
# CONFIG_DVB_CORE is not set
 | 
					 | 
				
			||||||
# CONFIG_VIDEO_MEDIA is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Multimedia drivers
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_DAB is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Graphics support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_VGASTATE is not set
 | 
					 | 
				
			||||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
 | 
					 | 
				
			||||||
# CONFIG_FB is not set
 | 
					 | 
				
			||||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Display device support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_DISPLAY_SUPPORT is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Sound
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_SOUND is not set
 | 
					 | 
				
			||||||
# CONFIG_HID_SUPPORT is not set
 | 
					 | 
				
			||||||
# CONFIG_USB_SUPPORT is not set
 | 
					 | 
				
			||||||
# CONFIG_MMC is not set
 | 
					 | 
				
			||||||
# CONFIG_NEW_LEDS is not set
 | 
					 | 
				
			||||||
CONFIG_RTC_LIB=y
 | 
					 | 
				
			||||||
# CONFIG_RTC_CLASS is not set
 | 
					 | 
				
			||||||
# CONFIG_UIO is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# File systems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_EXT2_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_EXT3_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_EXT4DEV_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_REISERFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_JFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_FS_POSIX_ACL is not set
 | 
					 | 
				
			||||||
# CONFIG_XFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_OCFS2_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_DNOTIFY is not set
 | 
					 | 
				
			||||||
# CONFIG_INOTIFY is not set
 | 
					 | 
				
			||||||
# CONFIG_QUOTA is not set
 | 
					 | 
				
			||||||
# CONFIG_AUTOFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_AUTOFS4_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_FUSE_FS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CD-ROM/DVD Filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_ISO9660_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_UDF_FS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# DOS/FAT/NT Filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_MSDOS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_VFAT_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_NTFS_FS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Pseudo filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_PROC_FS=y
 | 
					 | 
				
			||||||
CONFIG_PROC_SYSCTL=y
 | 
					 | 
				
			||||||
CONFIG_SYSFS=y
 | 
					 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					 | 
				
			||||||
# CONFIG_TMPFS_POSIX_ACL is not set
 | 
					 | 
				
			||||||
# CONFIG_HUGETLB_PAGE is not set
 | 
					 | 
				
			||||||
# CONFIG_CONFIGFS_FS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Miscellaneous filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_ADFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_AFFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_HFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_HFSPLUS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_BEFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_BFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_EFS_FS is not set
 | 
					 | 
				
			||||||
CONFIG_JFFS2_FS=y
 | 
					 | 
				
			||||||
CONFIG_JFFS2_FS_DEBUG=0
 | 
					 | 
				
			||||||
CONFIG_JFFS2_FS_WRITEBUFFER=y
 | 
					 | 
				
			||||||
# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
 | 
					 | 
				
			||||||
# CONFIG_JFFS2_SUMMARY is not set
 | 
					 | 
				
			||||||
# CONFIG_JFFS2_FS_XATTR is not set
 | 
					 | 
				
			||||||
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
 | 
					 | 
				
			||||||
CONFIG_JFFS2_ZLIB=y
 | 
					 | 
				
			||||||
# CONFIG_JFFS2_LZO is not set
 | 
					 | 
				
			||||||
CONFIG_JFFS2_RTIME=y
 | 
					 | 
				
			||||||
# CONFIG_JFFS2_RUBIN is not set
 | 
					 | 
				
			||||||
# CONFIG_CRAMFS is not set
 | 
					 | 
				
			||||||
# CONFIG_VXFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_MINIX_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_HPFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_QNX4FS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_ROMFS_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_SYSV_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_UFS_FS is not set
 | 
					 | 
				
			||||||
CONFIG_NETWORK_FILESYSTEMS=y
 | 
					 | 
				
			||||||
CONFIG_NFS_FS=y
 | 
					 | 
				
			||||||
CONFIG_NFS_V3=y
 | 
					 | 
				
			||||||
# CONFIG_NFS_V3_ACL is not set
 | 
					 | 
				
			||||||
# CONFIG_NFS_V4 is not set
 | 
					 | 
				
			||||||
# CONFIG_NFSD is not set
 | 
					 | 
				
			||||||
CONFIG_ROOT_NFS=y
 | 
					 | 
				
			||||||
CONFIG_LOCKD=y
 | 
					 | 
				
			||||||
CONFIG_LOCKD_V4=y
 | 
					 | 
				
			||||||
CONFIG_NFS_COMMON=y
 | 
					 | 
				
			||||||
CONFIG_SUNRPC=y
 | 
					 | 
				
			||||||
# CONFIG_SUNRPC_BIND34 is not set
 | 
					 | 
				
			||||||
# CONFIG_RPCSEC_GSS_KRB5 is not set
 | 
					 | 
				
			||||||
# CONFIG_RPCSEC_GSS_SPKM3 is not set
 | 
					 | 
				
			||||||
# CONFIG_SMB_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_CIFS is not set
 | 
					 | 
				
			||||||
# CONFIG_NCP_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_CODA_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_AFS_FS is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Partition Types
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_PARTITION_ADVANCED is not set
 | 
					 | 
				
			||||||
CONFIG_MSDOS_PARTITION=y
 | 
					 | 
				
			||||||
CONFIG_NLS=y
 | 
					 | 
				
			||||||
CONFIG_NLS_DEFAULT="iso8859-1"
 | 
					 | 
				
			||||||
CONFIG_NLS_CODEPAGE_437=m
 | 
					 | 
				
			||||||
# CONFIG_NLS_CODEPAGE_737 is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_CODEPAGE_775 is not set
 | 
					 | 
				
			||||||
CONFIG_NLS_CODEPAGE_850=m
 | 
					 | 
				
			||||||
# 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_936 is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_CODEPAGE_950 is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_CODEPAGE_932 is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_CODEPAGE_949 is not set
 | 
					 | 
				
			||||||
# 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=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_9 is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_ISO8859_13 is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_ISO8859_14 is not set
 | 
					 | 
				
			||||||
CONFIG_NLS_ISO8859_15=m
 | 
					 | 
				
			||||||
# CONFIG_NLS_KOI8_R is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_KOI8_U is not set
 | 
					 | 
				
			||||||
# CONFIG_NLS_UTF8 is not set
 | 
					 | 
				
			||||||
# CONFIG_DLM is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Kernel hacking
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_PRINTK_TIME is not set
 | 
					 | 
				
			||||||
CONFIG_ENABLE_WARN_DEPRECATED=y
 | 
					 | 
				
			||||||
CONFIG_ENABLE_MUST_CHECK=y
 | 
					 | 
				
			||||||
CONFIG_FRAME_WARN=1024
 | 
					 | 
				
			||||||
# CONFIG_MAGIC_SYSRQ is not set
 | 
					 | 
				
			||||||
# CONFIG_UNUSED_SYMBOLS is not set
 | 
					 | 
				
			||||||
# CONFIG_DEBUG_FS is not set
 | 
					 | 
				
			||||||
# CONFIG_HEADERS_CHECK is not set
 | 
					 | 
				
			||||||
# CONFIG_DEBUG_KERNEL is not set
 | 
					 | 
				
			||||||
# CONFIG_DEBUG_BUGVERBOSE is not set
 | 
					 | 
				
			||||||
CONFIG_FRAME_POINTER=y
 | 
					 | 
				
			||||||
# CONFIG_SAMPLES is not set
 | 
					 | 
				
			||||||
# CONFIG_DEBUG_USER is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Security options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_KEYS is not set
 | 
					 | 
				
			||||||
# CONFIG_SECURITY is not set
 | 
					 | 
				
			||||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
					 | 
				
			||||||
# CONFIG_CRYPTO is not set
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Library routines
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_BITREVERSE=y
 | 
					 | 
				
			||||||
# CONFIG_GENERIC_FIND_FIRST_BIT is not set
 | 
					 | 
				
			||||||
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
 | 
					 | 
				
			||||||
# CONFIG_CRC_CCITT is not set
 | 
					 | 
				
			||||||
# CONFIG_CRC16 is not set
 | 
					 | 
				
			||||||
# CONFIG_CRC_ITU_T is not set
 | 
					 | 
				
			||||||
CONFIG_CRC32=y
 | 
					 | 
				
			||||||
# CONFIG_CRC7 is not set
 | 
					 | 
				
			||||||
# CONFIG_LIBCRC32C is not set
 | 
					 | 
				
			||||||
CONFIG_ZLIB_INFLATE=y
 | 
					 | 
				
			||||||
CONFIG_ZLIB_DEFLATE=y
 | 
					 | 
				
			||||||
CONFIG_PLIST=y
 | 
					 | 
				
			||||||
CONFIG_HAS_IOMEM=y
 | 
					 | 
				
			||||||
CONFIG_HAS_IOPORT=y
 | 
					 | 
				
			||||||
CONFIG_HAS_DMA=y
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Automatically generated make config: don't edit
 | 
					# Automatically generated make config: don't edit
 | 
				
			||||||
# Linux kernel version: 2.6.29-rc5
 | 
					# Linux kernel version: 2.6.30-rc4
 | 
				
			||||||
# Tue Mar  3 21:45:57 2009
 | 
					# Mon May  4 11:58:57 2009
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_ARM=y
 | 
					CONFIG_ARM=y
 | 
				
			||||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
					CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
				
			||||||
| 
						 | 
					@ -66,20 +66,20 @@ CONFIG_NAMESPACES=y
 | 
				
			||||||
# CONFIG_BLK_DEV_INITRD is not set
 | 
					# CONFIG_BLK_DEV_INITRD is not set
 | 
				
			||||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 | 
					CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 | 
				
			||||||
CONFIG_SYSCTL=y
 | 
					CONFIG_SYSCTL=y
 | 
				
			||||||
 | 
					CONFIG_ANON_INODES=y
 | 
				
			||||||
# CONFIG_EMBEDDED is not set
 | 
					# CONFIG_EMBEDDED is not set
 | 
				
			||||||
CONFIG_UID16=y
 | 
					CONFIG_UID16=y
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL=y
 | 
					CONFIG_SYSCTL_SYSCALL=y
 | 
				
			||||||
CONFIG_KALLSYMS=y
 | 
					CONFIG_KALLSYMS=y
 | 
				
			||||||
# CONFIG_KALLSYMS_ALL is not set
 | 
					# CONFIG_KALLSYMS_ALL is not set
 | 
				
			||||||
# CONFIG_KALLSYMS_EXTRA_PASS is not set
 | 
					# CONFIG_KALLSYMS_EXTRA_PASS is not set
 | 
				
			||||||
 | 
					# CONFIG_STRIP_ASM_SYMS is not set
 | 
				
			||||||
CONFIG_HOTPLUG=y
 | 
					CONFIG_HOTPLUG=y
 | 
				
			||||||
CONFIG_PRINTK=y
 | 
					CONFIG_PRINTK=y
 | 
				
			||||||
CONFIG_BUG=y
 | 
					CONFIG_BUG=y
 | 
				
			||||||
CONFIG_ELF_CORE=y
 | 
					CONFIG_ELF_CORE=y
 | 
				
			||||||
CONFIG_COMPAT_BRK=y
 | 
					 | 
				
			||||||
CONFIG_BASE_FULL=y
 | 
					CONFIG_BASE_FULL=y
 | 
				
			||||||
CONFIG_FUTEX=y
 | 
					CONFIG_FUTEX=y
 | 
				
			||||||
CONFIG_ANON_INODES=y
 | 
					 | 
				
			||||||
CONFIG_EPOLL=y
 | 
					CONFIG_EPOLL=y
 | 
				
			||||||
CONFIG_SIGNALFD=y
 | 
					CONFIG_SIGNALFD=y
 | 
				
			||||||
CONFIG_TIMERFD=y
 | 
					CONFIG_TIMERFD=y
 | 
				
			||||||
| 
						 | 
					@ -89,6 +89,7 @@ CONFIG_AIO=y
 | 
				
			||||||
CONFIG_VM_EVENT_COUNTERS=y
 | 
					CONFIG_VM_EVENT_COUNTERS=y
 | 
				
			||||||
CONFIG_PCI_QUIRKS=y
 | 
					CONFIG_PCI_QUIRKS=y
 | 
				
			||||||
CONFIG_SLUB_DEBUG=y
 | 
					CONFIG_SLUB_DEBUG=y
 | 
				
			||||||
 | 
					CONFIG_COMPAT_BRK=y
 | 
				
			||||||
# CONFIG_SLAB is not set
 | 
					# CONFIG_SLAB is not set
 | 
				
			||||||
CONFIG_SLUB=y
 | 
					CONFIG_SLUB=y
 | 
				
			||||||
# CONFIG_SLOB is not set
 | 
					# CONFIG_SLOB is not set
 | 
				
			||||||
| 
						 | 
					@ -101,6 +102,7 @@ CONFIG_KPROBES=y
 | 
				
			||||||
CONFIG_KRETPROBES=y
 | 
					CONFIG_KRETPROBES=y
 | 
				
			||||||
CONFIG_HAVE_KPROBES=y
 | 
					CONFIG_HAVE_KPROBES=y
 | 
				
			||||||
CONFIG_HAVE_KRETPROBES=y
 | 
					CONFIG_HAVE_KRETPROBES=y
 | 
				
			||||||
 | 
					# CONFIG_SLOW_WORK is not set
 | 
				
			||||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
					CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
				
			||||||
CONFIG_SLABINFO=y
 | 
					CONFIG_SLABINFO=y
 | 
				
			||||||
CONFIG_RT_MUTEXES=y
 | 
					CONFIG_RT_MUTEXES=y
 | 
				
			||||||
| 
						 | 
					@ -113,7 +115,6 @@ CONFIG_MODULE_UNLOAD=y
 | 
				
			||||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
					# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
				
			||||||
CONFIG_BLOCK=y
 | 
					CONFIG_BLOCK=y
 | 
				
			||||||
# CONFIG_LBD is not set
 | 
					# CONFIG_LBD is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_BSG is not set
 | 
					# CONFIG_BLK_DEV_BSG is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
					# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -142,6 +143,7 @@ CONFIG_DEFAULT_IOSCHED="cfq"
 | 
				
			||||||
# CONFIG_ARCH_CLPS711X is not set
 | 
					# CONFIG_ARCH_CLPS711X is not set
 | 
				
			||||||
# CONFIG_ARCH_EBSA110 is not set
 | 
					# CONFIG_ARCH_EBSA110 is not set
 | 
				
			||||||
# CONFIG_ARCH_EP93XX is not set
 | 
					# CONFIG_ARCH_EP93XX is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_GEMINI is not set
 | 
				
			||||||
# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
					# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
				
			||||||
# CONFIG_ARCH_NETX is not set
 | 
					# CONFIG_ARCH_NETX is not set
 | 
				
			||||||
# CONFIG_ARCH_H720X is not set
 | 
					# CONFIG_ARCH_H720X is not set
 | 
				
			||||||
| 
						 | 
					@ -162,6 +164,7 @@ CONFIG_ARCH_KIRKWOOD=y
 | 
				
			||||||
# CONFIG_ARCH_ORION5X is not set
 | 
					# CONFIG_ARCH_ORION5X is not set
 | 
				
			||||||
# CONFIG_ARCH_PNX4008 is not set
 | 
					# CONFIG_ARCH_PNX4008 is not set
 | 
				
			||||||
# CONFIG_ARCH_PXA is not set
 | 
					# CONFIG_ARCH_PXA is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_MMP is not set
 | 
				
			||||||
# CONFIG_ARCH_RPC is not set
 | 
					# CONFIG_ARCH_RPC is not set
 | 
				
			||||||
# CONFIG_ARCH_SA1100 is not set
 | 
					# CONFIG_ARCH_SA1100 is not set
 | 
				
			||||||
# CONFIG_ARCH_S3C2410 is not set
 | 
					# CONFIG_ARCH_S3C2410 is not set
 | 
				
			||||||
| 
						 | 
					@ -217,6 +220,7 @@ CONFIG_PCI_SYSCALL=y
 | 
				
			||||||
CONFIG_PCI_LEGACY=y
 | 
					CONFIG_PCI_LEGACY=y
 | 
				
			||||||
# CONFIG_PCI_DEBUG is not set
 | 
					# CONFIG_PCI_DEBUG is not set
 | 
				
			||||||
# CONFIG_PCI_STUB is not set
 | 
					# CONFIG_PCI_STUB is not set
 | 
				
			||||||
 | 
					# CONFIG_PCI_IOV is not set
 | 
				
			||||||
# CONFIG_PCCARD is not set
 | 
					# CONFIG_PCCARD is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -237,6 +241,7 @@ CONFIG_AEABI=y
 | 
				
			||||||
CONFIG_ARCH_FLATMEM_HAS_HOLES=y
 | 
					CONFIG_ARCH_FLATMEM_HAS_HOLES=y
 | 
				
			||||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 | 
					# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 | 
				
			||||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 | 
					# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 | 
				
			||||||
 | 
					# CONFIG_HIGHMEM is not set
 | 
				
			||||||
CONFIG_SELECT_MEMORY_MODEL=y
 | 
					CONFIG_SELECT_MEMORY_MODEL=y
 | 
				
			||||||
CONFIG_FLATMEM_MANUAL=y
 | 
					CONFIG_FLATMEM_MANUAL=y
 | 
				
			||||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
					# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
				
			||||||
| 
						 | 
					@ -249,6 +254,8 @@ CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
				
			||||||
CONFIG_ZONE_DMA_FLAG=0
 | 
					CONFIG_ZONE_DMA_FLAG=0
 | 
				
			||||||
CONFIG_VIRT_TO_BUS=y
 | 
					CONFIG_VIRT_TO_BUS=y
 | 
				
			||||||
CONFIG_UNEVICTABLE_LRU=y
 | 
					CONFIG_UNEVICTABLE_LRU=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCK=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCKED_PAGE_BIT=y
 | 
				
			||||||
CONFIG_ALIGNMENT_TRAP=y
 | 
					CONFIG_ALIGNMENT_TRAP=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -293,7 +300,6 @@ CONFIG_NET=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Networking options
 | 
					# Networking options
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_COMPAT_NET_DEV_OPS=y
 | 
					 | 
				
			||||||
CONFIG_PACKET=y
 | 
					CONFIG_PACKET=y
 | 
				
			||||||
CONFIG_PACKET_MMAP=y
 | 
					CONFIG_PACKET_MMAP=y
 | 
				
			||||||
CONFIG_UNIX=y
 | 
					CONFIG_UNIX=y
 | 
				
			||||||
| 
						 | 
					@ -324,7 +330,7 @@ CONFIG_IP_PNP_BOOTP=y
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=y
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=y
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=y
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=y
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=y
 | 
					CONFIG_INET_XFRM_MODE_BEET=y
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					CONFIG_INET_LRO=y
 | 
				
			||||||
CONFIG_INET_DIAG=y
 | 
					CONFIG_INET_DIAG=y
 | 
				
			||||||
CONFIG_INET_TCP_DIAG=y
 | 
					CONFIG_INET_TCP_DIAG=y
 | 
				
			||||||
# CONFIG_TCP_CONG_ADVANCED is not set
 | 
					# CONFIG_TCP_CONG_ADVANCED is not set
 | 
				
			||||||
| 
						 | 
					@ -357,6 +363,7 @@ CONFIG_NET_DSA_MV88E6123_61_65=y
 | 
				
			||||||
# CONFIG_LAPB is not set
 | 
					# CONFIG_LAPB is not set
 | 
				
			||||||
# CONFIG_ECONET is not set
 | 
					# CONFIG_ECONET is not set
 | 
				
			||||||
# CONFIG_WAN_ROUTER is not set
 | 
					# CONFIG_WAN_ROUTER is not set
 | 
				
			||||||
 | 
					# CONFIG_PHONET is not set
 | 
				
			||||||
# CONFIG_NET_SCHED is not set
 | 
					# CONFIG_NET_SCHED is not set
 | 
				
			||||||
# CONFIG_DCB is not set
 | 
					# CONFIG_DCB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -365,20 +372,20 @@ CONFIG_NET_DSA_MV88E6123_61_65=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_NET_PKTGEN=m
 | 
					CONFIG_NET_PKTGEN=m
 | 
				
			||||||
# CONFIG_NET_TCPPROBE is not set
 | 
					# CONFIG_NET_TCPPROBE is not set
 | 
				
			||||||
 | 
					# CONFIG_NET_DROP_MONITOR is not set
 | 
				
			||||||
# CONFIG_HAMRADIO is not set
 | 
					# CONFIG_HAMRADIO is not set
 | 
				
			||||||
# CONFIG_CAN is not set
 | 
					# CONFIG_CAN is not set
 | 
				
			||||||
# CONFIG_IRDA is not set
 | 
					# CONFIG_IRDA is not set
 | 
				
			||||||
# CONFIG_BT is not set
 | 
					# CONFIG_BT is not set
 | 
				
			||||||
# CONFIG_AF_RXRPC is not set
 | 
					# CONFIG_AF_RXRPC is not set
 | 
				
			||||||
# CONFIG_PHONET is not set
 | 
					 | 
				
			||||||
CONFIG_WIRELESS=y
 | 
					CONFIG_WIRELESS=y
 | 
				
			||||||
CONFIG_CFG80211=y
 | 
					CONFIG_CFG80211=y
 | 
				
			||||||
# CONFIG_CFG80211_REG_DEBUG is not set
 | 
					# CONFIG_CFG80211_REG_DEBUG is not set
 | 
				
			||||||
# CONFIG_NL80211 is not set
 | 
					 | 
				
			||||||
CONFIG_WIRELESS_OLD_REGULATORY=y
 | 
					CONFIG_WIRELESS_OLD_REGULATORY=y
 | 
				
			||||||
CONFIG_WIRELESS_EXT=y
 | 
					CONFIG_WIRELESS_EXT=y
 | 
				
			||||||
CONFIG_WIRELESS_EXT_SYSFS=y
 | 
					CONFIG_WIRELESS_EXT_SYSFS=y
 | 
				
			||||||
CONFIG_LIB80211=y
 | 
					CONFIG_LIB80211=y
 | 
				
			||||||
 | 
					# CONFIG_LIB80211_DEBUG is not set
 | 
				
			||||||
CONFIG_MAC80211=y
 | 
					CONFIG_MAC80211=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -513,7 +520,6 @@ CONFIG_MTD_NAND_ORION=y
 | 
				
			||||||
# LPDDR flash memory drivers
 | 
					# LPDDR flash memory drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MTD_LPDDR is not set
 | 
					# CONFIG_MTD_LPDDR is not set
 | 
				
			||||||
# CONFIG_MTD_QINFO_PROBE is not set
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# UBI - Unsorted block images
 | 
					# UBI - Unsorted block images
 | 
				
			||||||
| 
						 | 
					@ -592,8 +598,10 @@ CONFIG_SCSI_LOWLEVEL=y
 | 
				
			||||||
# 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_MEGARAID_SAS is not set
 | 
					# CONFIG_MEGARAID_SAS is not set
 | 
				
			||||||
 | 
					# CONFIG_SCSI_MPT2SAS is not set
 | 
				
			||||||
# CONFIG_SCSI_HPTIOP is not set
 | 
					# CONFIG_SCSI_HPTIOP is not set
 | 
				
			||||||
# CONFIG_LIBFC is not set
 | 
					# CONFIG_LIBFC is not set
 | 
				
			||||||
 | 
					# CONFIG_LIBFCOE is not set
 | 
				
			||||||
# CONFIG_FCOE is not set
 | 
					# CONFIG_FCOE is not set
 | 
				
			||||||
# CONFIG_SCSI_DMX3191D is not set
 | 
					# CONFIG_SCSI_DMX3191D is not set
 | 
				
			||||||
# CONFIG_SCSI_FUTURE_DOMAIN is not set
 | 
					# CONFIG_SCSI_FUTURE_DOMAIN is not set
 | 
				
			||||||
| 
						 | 
					@ -614,6 +622,7 @@ CONFIG_SCSI_LOWLEVEL=y
 | 
				
			||||||
# CONFIG_SCSI_DEBUG is not set
 | 
					# CONFIG_SCSI_DEBUG is not set
 | 
				
			||||||
# CONFIG_SCSI_SRP is not set
 | 
					# CONFIG_SCSI_SRP is not set
 | 
				
			||||||
# CONFIG_SCSI_DH is not set
 | 
					# CONFIG_SCSI_DH is not set
 | 
				
			||||||
 | 
					# CONFIG_SCSI_OSD_INITIATOR is not set
 | 
				
			||||||
CONFIG_ATA=y
 | 
					CONFIG_ATA=y
 | 
				
			||||||
# CONFIG_ATA_NONSTANDARD is not set
 | 
					# CONFIG_ATA_NONSTANDARD is not set
 | 
				
			||||||
CONFIG_SATA_PMP=y
 | 
					CONFIG_SATA_PMP=y
 | 
				
			||||||
| 
						 | 
					@ -687,6 +696,7 @@ CONFIG_SATA_MV=y
 | 
				
			||||||
# CONFIG_IEEE1394 is not set
 | 
					# CONFIG_IEEE1394 is not set
 | 
				
			||||||
# CONFIG_I2O is not set
 | 
					# CONFIG_I2O is not set
 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					CONFIG_NETDEVICES=y
 | 
				
			||||||
 | 
					CONFIG_COMPAT_NET_DEV_OPS=y
 | 
				
			||||||
# CONFIG_DUMMY is not set
 | 
					# CONFIG_DUMMY is not set
 | 
				
			||||||
# CONFIG_BONDING is not set
 | 
					# CONFIG_BONDING is not set
 | 
				
			||||||
# CONFIG_MACVLAN is not set
 | 
					# CONFIG_MACVLAN is not set
 | 
				
			||||||
| 
						 | 
					@ -724,8 +734,10 @@ CONFIG_MII=y
 | 
				
			||||||
# CONFIG_SMC91X is not set
 | 
					# CONFIG_SMC91X is not set
 | 
				
			||||||
# CONFIG_DM9000 is not set
 | 
					# CONFIG_DM9000 is not set
 | 
				
			||||||
# CONFIG_ENC28J60 is not set
 | 
					# CONFIG_ENC28J60 is not set
 | 
				
			||||||
 | 
					# CONFIG_ETHOC is not set
 | 
				
			||||||
# CONFIG_SMC911X is not set
 | 
					# CONFIG_SMC911X is not set
 | 
				
			||||||
# CONFIG_SMSC911X is not set
 | 
					# CONFIG_SMSC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_DNET is not set
 | 
				
			||||||
# CONFIG_NET_TULIP is not set
 | 
					# CONFIG_NET_TULIP is not set
 | 
				
			||||||
# CONFIG_HP100 is not set
 | 
					# CONFIG_HP100 is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
				
			||||||
| 
						 | 
					@ -763,6 +775,7 @@ CONFIG_NETDEV_1000=y
 | 
				
			||||||
# CONFIG_E1000E is not set
 | 
					# CONFIG_E1000E is not set
 | 
				
			||||||
# CONFIG_IP1000 is not set
 | 
					# CONFIG_IP1000 is not set
 | 
				
			||||||
# CONFIG_IGB is not set
 | 
					# CONFIG_IGB is not set
 | 
				
			||||||
 | 
					# CONFIG_IGBVF is not set
 | 
				
			||||||
# CONFIG_NS83820 is not set
 | 
					# CONFIG_NS83820 is not set
 | 
				
			||||||
# CONFIG_HAMACHI is not set
 | 
					# CONFIG_HAMACHI is not set
 | 
				
			||||||
# CONFIG_YELLOWFIN is not set
 | 
					# CONFIG_YELLOWFIN is not set
 | 
				
			||||||
| 
						 | 
					@ -777,6 +790,7 @@ CONFIG_MV643XX_ETH=y
 | 
				
			||||||
# CONFIG_QLA3XXX is not set
 | 
					# CONFIG_QLA3XXX is not set
 | 
				
			||||||
# CONFIG_ATL1 is not set
 | 
					# CONFIG_ATL1 is not set
 | 
				
			||||||
# CONFIG_ATL1E is not set
 | 
					# CONFIG_ATL1E is not set
 | 
				
			||||||
 | 
					# CONFIG_ATL1C is not set
 | 
				
			||||||
# CONFIG_JME is not set
 | 
					# CONFIG_JME is not set
 | 
				
			||||||
# CONFIG_NETDEV_10000 is not set
 | 
					# CONFIG_NETDEV_10000 is not set
 | 
				
			||||||
# CONFIG_TR is not set
 | 
					# CONFIG_TR is not set
 | 
				
			||||||
| 
						 | 
					@ -789,10 +803,11 @@ CONFIG_WLAN_80211=y
 | 
				
			||||||
CONFIG_LIBERTAS=y
 | 
					CONFIG_LIBERTAS=y
 | 
				
			||||||
# CONFIG_LIBERTAS_USB is not set
 | 
					# CONFIG_LIBERTAS_USB is not set
 | 
				
			||||||
CONFIG_LIBERTAS_SDIO=y
 | 
					CONFIG_LIBERTAS_SDIO=y
 | 
				
			||||||
 | 
					# CONFIG_LIBERTAS_SPI is not set
 | 
				
			||||||
# CONFIG_LIBERTAS_DEBUG is not set
 | 
					# CONFIG_LIBERTAS_DEBUG is not set
 | 
				
			||||||
# CONFIG_LIBERTAS_THINFIRM is not set
 | 
					# CONFIG_LIBERTAS_THINFIRM is not set
 | 
				
			||||||
# CONFIG_HERMES is not set
 | 
					 | 
				
			||||||
# CONFIG_ATMEL is not set
 | 
					# CONFIG_ATMEL is not set
 | 
				
			||||||
 | 
					# CONFIG_AT76C50X_USB is not set
 | 
				
			||||||
# CONFIG_PRISM54 is not set
 | 
					# CONFIG_PRISM54 is not set
 | 
				
			||||||
# CONFIG_USB_ZD1201 is not set
 | 
					# CONFIG_USB_ZD1201 is not set
 | 
				
			||||||
# CONFIG_USB_NET_RNDIS_WLAN is not set
 | 
					# CONFIG_USB_NET_RNDIS_WLAN is not set
 | 
				
			||||||
| 
						 | 
					@ -800,20 +815,20 @@ CONFIG_LIBERTAS_SDIO=y
 | 
				
			||||||
# CONFIG_RTL8187 is not set
 | 
					# CONFIG_RTL8187 is not set
 | 
				
			||||||
# CONFIG_ADM8211 is not set
 | 
					# CONFIG_ADM8211 is not set
 | 
				
			||||||
# CONFIG_MAC80211_HWSIM is not set
 | 
					# CONFIG_MAC80211_HWSIM is not set
 | 
				
			||||||
 | 
					# CONFIG_MWL8K is not set
 | 
				
			||||||
# CONFIG_P54_COMMON is not set
 | 
					# CONFIG_P54_COMMON is not set
 | 
				
			||||||
# CONFIG_ATH5K is not set
 | 
					# CONFIG_ATH5K is not set
 | 
				
			||||||
# CONFIG_ATH9K is not set
 | 
					# CONFIG_ATH9K is not set
 | 
				
			||||||
 | 
					# CONFIG_AR9170_USB is not set
 | 
				
			||||||
# CONFIG_IPW2100 is not set
 | 
					# CONFIG_IPW2100 is not set
 | 
				
			||||||
# CONFIG_IPW2200 is not set
 | 
					# CONFIG_IPW2200 is not set
 | 
				
			||||||
# CONFIG_IWLCORE is not set
 | 
					# CONFIG_IWLWIFI is not set
 | 
				
			||||||
# CONFIG_IWLWIFI_LEDS is not set
 | 
					 | 
				
			||||||
# CONFIG_IWLAGN is not set
 | 
					 | 
				
			||||||
# CONFIG_IWL3945 is not set
 | 
					 | 
				
			||||||
# CONFIG_HOSTAP is not set
 | 
					# CONFIG_HOSTAP is not set
 | 
				
			||||||
# CONFIG_B43 is not set
 | 
					# CONFIG_B43 is not set
 | 
				
			||||||
# CONFIG_B43LEGACY is not set
 | 
					# CONFIG_B43LEGACY is not set
 | 
				
			||||||
# CONFIG_ZD1211RW is not set
 | 
					# CONFIG_ZD1211RW is not set
 | 
				
			||||||
# CONFIG_RT2X00 is not set
 | 
					# CONFIG_RT2X00 is not set
 | 
				
			||||||
 | 
					# CONFIG_HERMES is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Enable WiMAX (Networking options) to see the WiMAX drivers
 | 
					# Enable WiMAX (Networking options) to see the WiMAX drivers
 | 
				
			||||||
| 
						 | 
					@ -908,6 +923,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=2
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Non-8250 serial port support
 | 
					# Non-8250 serial port support
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_SERIAL_MAX3100 is not set
 | 
				
			||||||
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_SERIAL_JSM is not set
 | 
				
			||||||
| 
						 | 
					@ -982,7 +998,6 @@ CONFIG_I2C_MV64XXX=y
 | 
				
			||||||
# CONFIG_SENSORS_PCF8574 is not set
 | 
					# CONFIG_SENSORS_PCF8574 is not set
 | 
				
			||||||
# CONFIG_PCF8575 is not set
 | 
					# CONFIG_PCF8575 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PCA9539 is not set
 | 
					# CONFIG_SENSORS_PCA9539 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PCF8591 is not set
 | 
					 | 
				
			||||||
# CONFIG_SENSORS_MAX6875 is not set
 | 
					# CONFIG_SENSORS_MAX6875 is not set
 | 
				
			||||||
# CONFIG_SENSORS_TSL2550 is not set
 | 
					# CONFIG_SENSORS_TSL2550 is not set
 | 
				
			||||||
# CONFIG_I2C_DEBUG_CORE is not set
 | 
					# CONFIG_I2C_DEBUG_CORE is not set
 | 
				
			||||||
| 
						 | 
					@ -1082,15 +1097,17 @@ CONFIG_USB_HID=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Special HID drivers
 | 
					# Special HID drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_HID_COMPAT=y
 | 
					 | 
				
			||||||
CONFIG_HID_A4TECH=y
 | 
					CONFIG_HID_A4TECH=y
 | 
				
			||||||
CONFIG_HID_APPLE=y
 | 
					CONFIG_HID_APPLE=y
 | 
				
			||||||
CONFIG_HID_BELKIN=y
 | 
					CONFIG_HID_BELKIN=y
 | 
				
			||||||
CONFIG_HID_CHERRY=y
 | 
					CONFIG_HID_CHERRY=y
 | 
				
			||||||
CONFIG_HID_CHICONY=y
 | 
					CONFIG_HID_CHICONY=y
 | 
				
			||||||
CONFIG_HID_CYPRESS=y
 | 
					CONFIG_HID_CYPRESS=y
 | 
				
			||||||
 | 
					# CONFIG_DRAGONRISE_FF is not set
 | 
				
			||||||
CONFIG_HID_EZKEY=y
 | 
					CONFIG_HID_EZKEY=y
 | 
				
			||||||
 | 
					CONFIG_HID_KYE=y
 | 
				
			||||||
CONFIG_HID_GYRATION=y
 | 
					CONFIG_HID_GYRATION=y
 | 
				
			||||||
 | 
					CONFIG_HID_KENSINGTON=y
 | 
				
			||||||
CONFIG_HID_LOGITECH=y
 | 
					CONFIG_HID_LOGITECH=y
 | 
				
			||||||
# CONFIG_LOGITECH_FF is not set
 | 
					# CONFIG_LOGITECH_FF is not set
 | 
				
			||||||
# CONFIG_LOGIRUMBLEPAD2_FF is not set
 | 
					# CONFIG_LOGIRUMBLEPAD2_FF is not set
 | 
				
			||||||
| 
						 | 
					@ -1152,11 +1169,11 @@ CONFIG_USB_PRINTER=m
 | 
				
			||||||
# CONFIG_USB_TMC is not set
 | 
					# CONFIG_USB_TMC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
 | 
					# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# see USB_STORAGE Help for more information
 | 
					# also be needed; see USB_STORAGE Help for more info
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_USB_STORAGE=y
 | 
					CONFIG_USB_STORAGE=y
 | 
				
			||||||
# CONFIG_USB_STORAGE_DEBUG is not set
 | 
					# CONFIG_USB_STORAGE_DEBUG is not set
 | 
				
			||||||
| 
						 | 
					@ -1198,7 +1215,6 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
 | 
				
			||||||
# CONFIG_USB_LED is not set
 | 
					# CONFIG_USB_LED is not set
 | 
				
			||||||
# CONFIG_USB_CYPRESS_CY7C63 is not set
 | 
					# CONFIG_USB_CYPRESS_CY7C63 is not set
 | 
				
			||||||
# CONFIG_USB_CYTHERM is not set
 | 
					# CONFIG_USB_CYTHERM is not set
 | 
				
			||||||
# CONFIG_USB_PHIDGET is not set
 | 
					 | 
				
			||||||
# CONFIG_USB_IDMOUSE is not set
 | 
					# CONFIG_USB_IDMOUSE is not set
 | 
				
			||||||
# CONFIG_USB_FTDI_ELAN is not set
 | 
					# CONFIG_USB_FTDI_ELAN is not set
 | 
				
			||||||
# CONFIG_USB_APPLEDISPLAY is not set
 | 
					# CONFIG_USB_APPLEDISPLAY is not set
 | 
				
			||||||
| 
						 | 
					@ -1215,6 +1231,7 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
 | 
				
			||||||
# OTG and related infrastructure
 | 
					# OTG and related infrastructure
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_USB_GPIO_VBUS is not set
 | 
					# CONFIG_USB_GPIO_VBUS is not set
 | 
				
			||||||
 | 
					# CONFIG_NOP_USB_XCEIV is not set
 | 
				
			||||||
# CONFIG_UWB is not set
 | 
					# CONFIG_UWB is not set
 | 
				
			||||||
CONFIG_MMC=y
 | 
					CONFIG_MMC=y
 | 
				
			||||||
# CONFIG_MMC_DEBUG is not set
 | 
					# CONFIG_MMC_DEBUG is not set
 | 
				
			||||||
| 
						 | 
					@ -1245,7 +1262,11 @@ CONFIG_LEDS_CLASS=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_LEDS_PCA9532 is not set
 | 
					# CONFIG_LEDS_PCA9532 is not set
 | 
				
			||||||
CONFIG_LEDS_GPIO=y
 | 
					CONFIG_LEDS_GPIO=y
 | 
				
			||||||
 | 
					CONFIG_LEDS_GPIO_PLATFORM=y
 | 
				
			||||||
 | 
					# CONFIG_LEDS_LP5521 is not set
 | 
				
			||||||
# CONFIG_LEDS_PCA955X is not set
 | 
					# CONFIG_LEDS_PCA955X is not set
 | 
				
			||||||
 | 
					# CONFIG_LEDS_DAC124S085 is not set
 | 
				
			||||||
 | 
					# CONFIG_LEDS_BD2802 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# LED Triggers
 | 
					# LED Triggers
 | 
				
			||||||
| 
						 | 
					@ -1255,6 +1276,10 @@ CONFIG_LEDS_TRIGGER_TIMER=y
 | 
				
			||||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
 | 
					CONFIG_LEDS_TRIGGER_HEARTBEAT=y
 | 
				
			||||||
# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
 | 
					# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
 | 
				
			||||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
 | 
					CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# iptables trigger is under Netfilter config (LED target)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
CONFIG_RTC_LIB=y
 | 
					CONFIG_RTC_LIB=y
 | 
				
			||||||
CONFIG_RTC_CLASS=y
 | 
					CONFIG_RTC_CLASS=y
 | 
				
			||||||
CONFIG_RTC_HCTOSYS=y
 | 
					CONFIG_RTC_HCTOSYS=y
 | 
				
			||||||
| 
						 | 
					@ -1329,7 +1354,9 @@ CONFIG_DMA_ENGINE=y
 | 
				
			||||||
# DMA Clients
 | 
					# DMA Clients
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_NET_DMA is not set
 | 
					# CONFIG_NET_DMA is not set
 | 
				
			||||||
 | 
					# CONFIG_ASYNC_TX_DMA is not set
 | 
				
			||||||
# CONFIG_DMATEST is not set
 | 
					# CONFIG_DMATEST is not set
 | 
				
			||||||
 | 
					# CONFIG_AUXDISPLAY is not set
 | 
				
			||||||
# CONFIG_REGULATOR is not set
 | 
					# CONFIG_REGULATOR is not set
 | 
				
			||||||
# CONFIG_UIO is not set
 | 
					# CONFIG_UIO is not set
 | 
				
			||||||
# CONFIG_STAGING is not set
 | 
					# CONFIG_STAGING is not set
 | 
				
			||||||
| 
						 | 
					@ -1341,6 +1368,7 @@ CONFIG_EXT2_FS=y
 | 
				
			||||||
# CONFIG_EXT2_FS_XATTR is not set
 | 
					# CONFIG_EXT2_FS_XATTR is not set
 | 
				
			||||||
# CONFIG_EXT2_FS_XIP is not set
 | 
					# CONFIG_EXT2_FS_XIP is not set
 | 
				
			||||||
CONFIG_EXT3_FS=y
 | 
					CONFIG_EXT3_FS=y
 | 
				
			||||||
 | 
					# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
 | 
				
			||||||
# CONFIG_EXT3_FS_XATTR is not set
 | 
					# CONFIG_EXT3_FS_XATTR is not set
 | 
				
			||||||
# CONFIG_EXT4_FS is not set
 | 
					# CONFIG_EXT4_FS is not set
 | 
				
			||||||
CONFIG_JBD=y
 | 
					CONFIG_JBD=y
 | 
				
			||||||
| 
						 | 
					@ -1360,6 +1388,11 @@ CONFIG_INOTIFY_USER=y
 | 
				
			||||||
# CONFIG_AUTOFS4_FS is not set
 | 
					# CONFIG_AUTOFS4_FS is not set
 | 
				
			||||||
# CONFIG_FUSE_FS is not set
 | 
					# CONFIG_FUSE_FS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Caches
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FSCACHE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CD-ROM/DVD Filesystems
 | 
					# CD-ROM/DVD Filesystems
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -1419,6 +1452,7 @@ CONFIG_CRAMFS=y
 | 
				
			||||||
# CONFIG_ROMFS_FS is not set
 | 
					# CONFIG_ROMFS_FS is not set
 | 
				
			||||||
# CONFIG_SYSV_FS is not set
 | 
					# CONFIG_SYSV_FS is not set
 | 
				
			||||||
# CONFIG_UFS_FS is not set
 | 
					# CONFIG_UFS_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_NILFS2_FS is not set
 | 
				
			||||||
CONFIG_NETWORK_FILESYSTEMS=y
 | 
					CONFIG_NETWORK_FILESYSTEMS=y
 | 
				
			||||||
CONFIG_NFS_FS=y
 | 
					CONFIG_NFS_FS=y
 | 
				
			||||||
CONFIG_NFS_V3=y
 | 
					CONFIG_NFS_V3=y
 | 
				
			||||||
| 
						 | 
					@ -1430,7 +1464,6 @@ CONFIG_LOCKD=y
 | 
				
			||||||
CONFIG_LOCKD_V4=y
 | 
					CONFIG_LOCKD_V4=y
 | 
				
			||||||
CONFIG_NFS_COMMON=y
 | 
					CONFIG_NFS_COMMON=y
 | 
				
			||||||
CONFIG_SUNRPC=y
 | 
					CONFIG_SUNRPC=y
 | 
				
			||||||
# CONFIG_SUNRPC_REGISTER_V4 is not set
 | 
					 | 
				
			||||||
# 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
 | 
				
			||||||
| 
						 | 
					@ -1502,6 +1535,9 @@ CONFIG_DEBUG_KERNEL=y
 | 
				
			||||||
CONFIG_DETECT_SOFTLOCKUP=y
 | 
					CONFIG_DETECT_SOFTLOCKUP=y
 | 
				
			||||||
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
 | 
					# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
 | 
				
			||||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
 | 
					CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
 | 
				
			||||||
 | 
					CONFIG_DETECT_HUNG_TASK=y
 | 
				
			||||||
 | 
					# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
 | 
				
			||||||
 | 
					CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
 | 
				
			||||||
# CONFIG_SCHED_DEBUG is not set
 | 
					# CONFIG_SCHED_DEBUG is not set
 | 
				
			||||||
# CONFIG_SCHEDSTATS is not set
 | 
					# CONFIG_SCHEDSTATS is not set
 | 
				
			||||||
# CONFIG_TIMER_STATS is not set
 | 
					# CONFIG_TIMER_STATS is not set
 | 
				
			||||||
| 
						 | 
					@ -1538,10 +1574,12 @@ CONFIG_DEBUG_MEMORY_INIT=y
 | 
				
			||||||
# CONFIG_FAULT_INJECTION is not set
 | 
					# CONFIG_FAULT_INJECTION is not set
 | 
				
			||||||
# CONFIG_LATENCYTOP is not set
 | 
					# CONFIG_LATENCYTOP is not set
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
					CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
				
			||||||
 | 
					# CONFIG_PAGE_POISONING is not set
 | 
				
			||||||
CONFIG_NOP_TRACER=y
 | 
					CONFIG_NOP_TRACER=y
 | 
				
			||||||
CONFIG_HAVE_FUNCTION_TRACER=y
 | 
					CONFIG_HAVE_FUNCTION_TRACER=y
 | 
				
			||||||
CONFIG_RING_BUFFER=y
 | 
					CONFIG_RING_BUFFER=y
 | 
				
			||||||
CONFIG_TRACING=y
 | 
					CONFIG_TRACING=y
 | 
				
			||||||
 | 
					CONFIG_TRACING_SUPPORT=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Tracers
 | 
					# Tracers
 | 
				
			||||||
| 
						 | 
					@ -1551,11 +1589,15 @@ CONFIG_TRACING=y
 | 
				
			||||||
# CONFIG_PREEMPT_TRACER is not set
 | 
					# CONFIG_PREEMPT_TRACER is not set
 | 
				
			||||||
# CONFIG_SCHED_TRACER is not set
 | 
					# CONFIG_SCHED_TRACER is not set
 | 
				
			||||||
# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
					# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_EVENT_TRACER is not set
 | 
				
			||||||
# CONFIG_BOOT_TRACER is not set
 | 
					# CONFIG_BOOT_TRACER is not set
 | 
				
			||||||
# CONFIG_TRACE_BRANCH_PROFILING is not set
 | 
					# CONFIG_TRACE_BRANCH_PROFILING is not set
 | 
				
			||||||
# CONFIG_STACK_TRACER is not set
 | 
					# CONFIG_STACK_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_KMEMTRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_WORKQUEUE_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
				
			||||||
# CONFIG_FTRACE_STARTUP_TEST is not set
 | 
					# CONFIG_FTRACE_STARTUP_TEST is not set
 | 
				
			||||||
# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
 | 
					# CONFIG_DYNAMIC_DEBUG is not set
 | 
				
			||||||
# CONFIG_SAMPLES is not set
 | 
					# CONFIG_SAMPLES is not set
 | 
				
			||||||
CONFIG_HAVE_ARCH_KGDB=y
 | 
					CONFIG_HAVE_ARCH_KGDB=y
 | 
				
			||||||
# CONFIG_KGDB is not set
 | 
					# CONFIG_KGDB is not set
 | 
				
			||||||
| 
						 | 
					@ -1587,10 +1629,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
 | 
				
			||||||
CONFIG_CRYPTO_HASH=y
 | 
					CONFIG_CRYPTO_HASH=y
 | 
				
			||||||
CONFIG_CRYPTO_HASH2=y
 | 
					CONFIG_CRYPTO_HASH2=y
 | 
				
			||||||
CONFIG_CRYPTO_RNG2=y
 | 
					CONFIG_CRYPTO_RNG2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_PCOMP=y
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER2=y
 | 
					CONFIG_CRYPTO_MANAGER2=y
 | 
				
			||||||
# CONFIG_CRYPTO_GF128MUL is not set
 | 
					# CONFIG_CRYPTO_GF128MUL is not set
 | 
				
			||||||
# CONFIG_CRYPTO_NULL is not set
 | 
					# CONFIG_CRYPTO_NULL is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_WORKQUEUE=y
 | 
				
			||||||
# CONFIG_CRYPTO_CRYPTD is not set
 | 
					# CONFIG_CRYPTO_CRYPTD is not set
 | 
				
			||||||
# CONFIG_CRYPTO_AUTHENC is not set
 | 
					# CONFIG_CRYPTO_AUTHENC is not set
 | 
				
			||||||
# CONFIG_CRYPTO_TEST is not set
 | 
					# CONFIG_CRYPTO_TEST is not set
 | 
				
			||||||
| 
						 | 
					@ -1659,6 +1703,7 @@ CONFIG_CRYPTO_ARC4=y
 | 
				
			||||||
# Compression
 | 
					# Compression
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_CRYPTO_DEFLATE is not set
 | 
					# CONFIG_CRYPTO_DEFLATE is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ZLIB is not set
 | 
				
			||||||
# CONFIG_CRYPTO_LZO is not set
 | 
					# CONFIG_CRYPTO_LZO is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -1667,6 +1712,7 @@ CONFIG_CRYPTO_ARC4=y
 | 
				
			||||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
 | 
					# CONFIG_CRYPTO_ANSI_CPRNG is not set
 | 
				
			||||||
CONFIG_CRYPTO_HW=y
 | 
					CONFIG_CRYPTO_HW=y
 | 
				
			||||||
# CONFIG_CRYPTO_DEV_HIFN_795X is not set
 | 
					# CONFIG_CRYPTO_DEV_HIFN_795X is not set
 | 
				
			||||||
 | 
					CONFIG_BINARY_PRINTF=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Library routines
 | 
					# Library routines
 | 
				
			||||||
| 
						 | 
					@ -1682,7 +1728,7 @@ CONFIG_CRC32=y
 | 
				
			||||||
CONFIG_LIBCRC32C=y
 | 
					CONFIG_LIBCRC32C=y
 | 
				
			||||||
CONFIG_ZLIB_INFLATE=y
 | 
					CONFIG_ZLIB_INFLATE=y
 | 
				
			||||||
CONFIG_ZLIB_DEFLATE=y
 | 
					CONFIG_ZLIB_DEFLATE=y
 | 
				
			||||||
CONFIG_PLIST=y
 | 
					 | 
				
			||||||
CONFIG_HAS_IOMEM=y
 | 
					CONFIG_HAS_IOMEM=y
 | 
				
			||||||
CONFIG_HAS_IOPORT=y
 | 
					CONFIG_HAS_IOPORT=y
 | 
				
			||||||
CONFIG_HAS_DMA=y
 | 
					CONFIG_HAS_DMA=y
 | 
				
			||||||
 | 
					CONFIG_NLATTR=y
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1183,7 +1183,11 @@ CONFIG_RTC_INTF_DEV=y
 | 
				
			||||||
CONFIG_RTC_DRV_SA1100=y
 | 
					CONFIG_RTC_DRV_SA1100=y
 | 
				
			||||||
# CONFIG_RTC_DRV_PXA is not set
 | 
					# CONFIG_RTC_DRV_PXA is not set
 | 
				
			||||||
# CONFIG_DMADEVICES is not set
 | 
					# CONFIG_DMADEVICES is not set
 | 
				
			||||||
# CONFIG_REGULATOR is not set
 | 
					CONFIG_REGULATOR=y
 | 
				
			||||||
 | 
					# CONFIG_REGULATOR_DEBUG is not set
 | 
				
			||||||
 | 
					# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
 | 
				
			||||||
 | 
					# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
 | 
				
			||||||
 | 
					CONFIG_REGULATOR_BQ24022=y
 | 
				
			||||||
# CONFIG_UIO is not set
 | 
					# CONFIG_UIO is not set
 | 
				
			||||||
# CONFIG_STAGING is not set
 | 
					# CONFIG_STAGING is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Automatically generated make config: don't edit
 | 
					# Automatically generated make config: don't edit
 | 
				
			||||||
# Linux kernel version: 2.6.27-rc5
 | 
					# Linux kernel version: 2.6.30-rc1
 | 
				
			||||||
# Fri Oct 24 11:41:22 2008
 | 
					# Wed Apr  8 11:11:33 2009
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_ARM=y
 | 
					CONFIG_ARM=y
 | 
				
			||||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
					CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
				
			||||||
| 
						 | 
					@ -22,8 +22,6 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y
 | 
				
			||||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
					# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
				
			||||||
CONFIG_GENERIC_HWEIGHT=y
 | 
					CONFIG_GENERIC_HWEIGHT=y
 | 
				
			||||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
					CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
				
			||||||
CONFIG_ARCH_SUPPORTS_AOUT=y
 | 
					 | 
				
			||||||
CONFIG_ZONE_DMA=y
 | 
					 | 
				
			||||||
CONFIG_ARCH_MTD_XIP=y
 | 
					CONFIG_ARCH_MTD_XIP=y
 | 
				
			||||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 | 
					CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 | 
				
			||||||
CONFIG_VECTORS_BASE=0xffff0000
 | 
					CONFIG_VECTORS_BASE=0xffff0000
 | 
				
			||||||
| 
						 | 
					@ -45,15 +43,24 @@ CONFIG_SYSVIPC_SYSCTL=y
 | 
				
			||||||
# CONFIG_BSD_PROCESS_ACCT is not set
 | 
					# CONFIG_BSD_PROCESS_ACCT is not set
 | 
				
			||||||
# CONFIG_TASKSTATS is not set
 | 
					# CONFIG_TASKSTATS is not set
 | 
				
			||||||
# CONFIG_AUDIT is not set
 | 
					# CONFIG_AUDIT is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# RCU Subsystem
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
 | 
					# CONFIG_TREE_RCU is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_RCU is not set
 | 
				
			||||||
 | 
					# CONFIG_TREE_RCU_TRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_RCU_TRACE is not set
 | 
				
			||||||
CONFIG_IKCONFIG=y
 | 
					CONFIG_IKCONFIG=y
 | 
				
			||||||
CONFIG_IKCONFIG_PROC=y
 | 
					CONFIG_IKCONFIG_PROC=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=14
 | 
					CONFIG_LOG_BUF_SHIFT=14
 | 
				
			||||||
# CONFIG_CGROUPS is not set
 | 
					 | 
				
			||||||
CONFIG_GROUP_SCHED=y
 | 
					CONFIG_GROUP_SCHED=y
 | 
				
			||||||
CONFIG_FAIR_GROUP_SCHED=y
 | 
					CONFIG_FAIR_GROUP_SCHED=y
 | 
				
			||||||
# CONFIG_RT_GROUP_SCHED is not set
 | 
					# CONFIG_RT_GROUP_SCHED is not set
 | 
				
			||||||
CONFIG_USER_SCHED=y
 | 
					CONFIG_USER_SCHED=y
 | 
				
			||||||
# CONFIG_CGROUP_SCHED is not set
 | 
					# CONFIG_CGROUP_SCHED is not set
 | 
				
			||||||
 | 
					# CONFIG_CGROUPS is not set
 | 
				
			||||||
CONFIG_SYSFS_DEPRECATED=y
 | 
					CONFIG_SYSFS_DEPRECATED=y
 | 
				
			||||||
CONFIG_SYSFS_DEPRECATED_V2=y
 | 
					CONFIG_SYSFS_DEPRECATED_V2=y
 | 
				
			||||||
# CONFIG_RELAY is not set
 | 
					# CONFIG_RELAY is not set
 | 
				
			||||||
| 
						 | 
					@ -61,6 +68,7 @@ CONFIG_SYSFS_DEPRECATED_V2=y
 | 
				
			||||||
# CONFIG_BLK_DEV_INITRD is not set
 | 
					# CONFIG_BLK_DEV_INITRD is not set
 | 
				
			||||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 | 
					CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 | 
				
			||||||
CONFIG_SYSCTL=y
 | 
					CONFIG_SYSCTL=y
 | 
				
			||||||
 | 
					CONFIG_ANON_INODES=y
 | 
				
			||||||
CONFIG_EMBEDDED=y
 | 
					CONFIG_EMBEDDED=y
 | 
				
			||||||
CONFIG_UID16=y
 | 
					CONFIG_UID16=y
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL=y
 | 
					CONFIG_SYSCTL_SYSCALL=y
 | 
				
			||||||
| 
						 | 
					@ -70,16 +78,16 @@ CONFIG_HOTPLUG=y
 | 
				
			||||||
CONFIG_PRINTK=y
 | 
					CONFIG_PRINTK=y
 | 
				
			||||||
CONFIG_BUG=y
 | 
					CONFIG_BUG=y
 | 
				
			||||||
CONFIG_ELF_CORE=y
 | 
					CONFIG_ELF_CORE=y
 | 
				
			||||||
CONFIG_COMPAT_BRK=y
 | 
					 | 
				
			||||||
CONFIG_BASE_FULL=y
 | 
					CONFIG_BASE_FULL=y
 | 
				
			||||||
CONFIG_FUTEX=y
 | 
					CONFIG_FUTEX=y
 | 
				
			||||||
CONFIG_ANON_INODES=y
 | 
					 | 
				
			||||||
CONFIG_EPOLL=y
 | 
					CONFIG_EPOLL=y
 | 
				
			||||||
CONFIG_SIGNALFD=y
 | 
					CONFIG_SIGNALFD=y
 | 
				
			||||||
CONFIG_TIMERFD=y
 | 
					CONFIG_TIMERFD=y
 | 
				
			||||||
CONFIG_EVENTFD=y
 | 
					CONFIG_EVENTFD=y
 | 
				
			||||||
CONFIG_SHMEM=y
 | 
					CONFIG_SHMEM=y
 | 
				
			||||||
 | 
					CONFIG_AIO=y
 | 
				
			||||||
CONFIG_VM_EVENT_COUNTERS=y
 | 
					CONFIG_VM_EVENT_COUNTERS=y
 | 
				
			||||||
 | 
					CONFIG_COMPAT_BRK=y
 | 
				
			||||||
CONFIG_SLAB=y
 | 
					CONFIG_SLAB=y
 | 
				
			||||||
# CONFIG_SLUB is not set
 | 
					# CONFIG_SLUB is not set
 | 
				
			||||||
# CONFIG_SLOB is not set
 | 
					# CONFIG_SLOB is not set
 | 
				
			||||||
| 
						 | 
					@ -87,19 +95,12 @@ CONFIG_SLAB=y
 | 
				
			||||||
# CONFIG_MARKERS is not set
 | 
					# CONFIG_MARKERS is not set
 | 
				
			||||||
CONFIG_HAVE_OPROFILE=y
 | 
					CONFIG_HAVE_OPROFILE=y
 | 
				
			||||||
# CONFIG_KPROBES is not set
 | 
					# CONFIG_KPROBES is not set
 | 
				
			||||||
# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
 | 
					 | 
				
			||||||
# CONFIG_HAVE_IOREMAP_PROT is not set
 | 
					 | 
				
			||||||
CONFIG_HAVE_KPROBES=y
 | 
					CONFIG_HAVE_KPROBES=y
 | 
				
			||||||
CONFIG_HAVE_KRETPROBES=y
 | 
					CONFIG_HAVE_KRETPROBES=y
 | 
				
			||||||
# CONFIG_HAVE_ARCH_TRACEHOOK is not set
 | 
					# CONFIG_SLOW_WORK is not set
 | 
				
			||||||
# CONFIG_HAVE_DMA_ATTRS is not set
 | 
					 | 
				
			||||||
# CONFIG_USE_GENERIC_SMP_HELPERS is not set
 | 
					 | 
				
			||||||
# CONFIG_HAVE_CLK is not set
 | 
					 | 
				
			||||||
CONFIG_PROC_PAGE_MONITOR=y
 | 
					 | 
				
			||||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
					CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
				
			||||||
CONFIG_SLABINFO=y
 | 
					CONFIG_SLABINFO=y
 | 
				
			||||||
CONFIG_RT_MUTEXES=y
 | 
					CONFIG_RT_MUTEXES=y
 | 
				
			||||||
# CONFIG_TINY_SHMEM is not set
 | 
					 | 
				
			||||||
CONFIG_BASE_SMALL=0
 | 
					CONFIG_BASE_SMALL=0
 | 
				
			||||||
CONFIG_MODULES=y
 | 
					CONFIG_MODULES=y
 | 
				
			||||||
# CONFIG_MODULE_FORCE_LOAD is not set
 | 
					# CONFIG_MODULE_FORCE_LOAD is not set
 | 
				
			||||||
| 
						 | 
					@ -107,11 +108,8 @@ CONFIG_MODULE_UNLOAD=y
 | 
				
			||||||
CONFIG_MODULE_FORCE_UNLOAD=y
 | 
					CONFIG_MODULE_FORCE_UNLOAD=y
 | 
				
			||||||
CONFIG_MODVERSIONS=y
 | 
					CONFIG_MODVERSIONS=y
 | 
				
			||||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
					# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
				
			||||||
CONFIG_KMOD=y
 | 
					 | 
				
			||||||
CONFIG_BLOCK=y
 | 
					CONFIG_BLOCK=y
 | 
				
			||||||
# CONFIG_LBD is not set
 | 
					# CONFIG_LBD is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
					 | 
				
			||||||
# CONFIG_LSF is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_BSG is not set
 | 
					# CONFIG_BLK_DEV_BSG is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
					# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -127,7 +125,7 @@ CONFIG_IOSCHED_CFQ=y
 | 
				
			||||||
CONFIG_DEFAULT_CFQ=y
 | 
					CONFIG_DEFAULT_CFQ=y
 | 
				
			||||||
# CONFIG_DEFAULT_NOOP is not set
 | 
					# CONFIG_DEFAULT_NOOP is not set
 | 
				
			||||||
CONFIG_DEFAULT_IOSCHED="cfq"
 | 
					CONFIG_DEFAULT_IOSCHED="cfq"
 | 
				
			||||||
CONFIG_CLASSIC_RCU=y
 | 
					CONFIG_FREEZER=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# System Type
 | 
					# System Type
 | 
				
			||||||
| 
						 | 
					@ -137,10 +135,10 @@ CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
# CONFIG_ARCH_REALVIEW is not set
 | 
					# CONFIG_ARCH_REALVIEW is not set
 | 
				
			||||||
# CONFIG_ARCH_VERSATILE is not set
 | 
					# CONFIG_ARCH_VERSATILE is not set
 | 
				
			||||||
# CONFIG_ARCH_AT91 is not set
 | 
					# CONFIG_ARCH_AT91 is not set
 | 
				
			||||||
# CONFIG_ARCH_CLPS7500 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_CLPS711X is not set
 | 
					# CONFIG_ARCH_CLPS711X is not set
 | 
				
			||||||
# CONFIG_ARCH_EBSA110 is not set
 | 
					# CONFIG_ARCH_EBSA110 is not set
 | 
				
			||||||
# CONFIG_ARCH_EP93XX is not set
 | 
					# CONFIG_ARCH_EP93XX is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_GEMINI is not set
 | 
				
			||||||
# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
					# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
				
			||||||
# CONFIG_ARCH_NETX is not set
 | 
					# CONFIG_ARCH_NETX is not set
 | 
				
			||||||
# CONFIG_ARCH_H720X is not set
 | 
					# CONFIG_ARCH_H720X is not set
 | 
				
			||||||
| 
						 | 
					@ -161,52 +159,46 @@ CONFIG_ARCH_MXC=y
 | 
				
			||||||
# CONFIG_ARCH_ORION5X is not set
 | 
					# CONFIG_ARCH_ORION5X is not set
 | 
				
			||||||
# CONFIG_ARCH_PNX4008 is not set
 | 
					# CONFIG_ARCH_PNX4008 is not set
 | 
				
			||||||
# CONFIG_ARCH_PXA is not set
 | 
					# CONFIG_ARCH_PXA is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_MMP is not set
 | 
				
			||||||
# CONFIG_ARCH_RPC is not set
 | 
					# CONFIG_ARCH_RPC is not set
 | 
				
			||||||
# CONFIG_ARCH_SA1100 is not set
 | 
					# CONFIG_ARCH_SA1100 is not set
 | 
				
			||||||
# CONFIG_ARCH_S3C2410 is not set
 | 
					# CONFIG_ARCH_S3C2410 is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_S3C64XX is not set
 | 
				
			||||||
# CONFIG_ARCH_SHARK is not set
 | 
					# CONFIG_ARCH_SHARK is not set
 | 
				
			||||||
# CONFIG_ARCH_LH7A40X is not set
 | 
					# CONFIG_ARCH_LH7A40X is not set
 | 
				
			||||||
# CONFIG_ARCH_DAVINCI is not set
 | 
					# CONFIG_ARCH_DAVINCI is not set
 | 
				
			||||||
# CONFIG_ARCH_OMAP is not set
 | 
					# CONFIG_ARCH_OMAP is not set
 | 
				
			||||||
# CONFIG_ARCH_MSM7X00A is not set
 | 
					# CONFIG_ARCH_MSM is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_W90X900 is not set
 | 
				
			||||||
#
 | 
					CONFIG_ARCH_MX1ADS=y
 | 
				
			||||||
# Boot options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Power management
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Freescale MXC Implementations
 | 
					# Freescale MXC Implementations
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_ARCH_MX1=y
 | 
				
			||||||
# CONFIG_ARCH_MX2 is not set
 | 
					# CONFIG_ARCH_MX2 is not set
 | 
				
			||||||
CONFIG_ARCH_MX3=y
 | 
					# CONFIG_ARCH_MX3 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# MX3 Options
 | 
					# MX1 platforms:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MACH_MX31ADS is not set
 | 
					CONFIG_MACH_MXLADS=y
 | 
				
			||||||
# CONFIG_MACH_PCM037 is not set
 | 
					CONFIG_MACH_SCB9328=y
 | 
				
			||||||
# CONFIG_MACH_MX31LITE is not set
 | 
					CONFIG_MXC_IRQ_PRIOR=y
 | 
				
			||||||
CONFIG_MACH_MX31MOBOARD=y
 | 
					# CONFIG_MXC_PWM is not set
 | 
				
			||||||
# CONFIG_MXC_IRQ_PRIOR is not set
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Processor Type
 | 
					# Processor Type
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_CPU_32=y
 | 
					CONFIG_CPU_32=y
 | 
				
			||||||
CONFIG_CPU_V6=y
 | 
					CONFIG_CPU_ARM920T=y
 | 
				
			||||||
# CONFIG_CPU_32v6K is not set
 | 
					CONFIG_CPU_32v4T=y
 | 
				
			||||||
CONFIG_CPU_32v6=y
 | 
					CONFIG_CPU_ABRT_EV4T=y
 | 
				
			||||||
CONFIG_CPU_ABRT_EV6=y
 | 
					 | 
				
			||||||
CONFIG_CPU_PABRT_NOIFAR=y
 | 
					CONFIG_CPU_PABRT_NOIFAR=y
 | 
				
			||||||
CONFIG_CPU_CACHE_V6=y
 | 
					CONFIG_CPU_CACHE_V4WT=y
 | 
				
			||||||
CONFIG_CPU_CACHE_VIPT=y
 | 
					CONFIG_CPU_CACHE_VIVT=y
 | 
				
			||||||
CONFIG_CPU_COPY_V6=y
 | 
					CONFIG_CPU_COPY_V4WB=y
 | 
				
			||||||
CONFIG_CPU_TLB_V6=y
 | 
					CONFIG_CPU_TLB_V4WBI=y
 | 
				
			||||||
CONFIG_CPU_HAS_ASID=y
 | 
					 | 
				
			||||||
CONFIG_CPU_CP15=y
 | 
					CONFIG_CPU_CP15=y
 | 
				
			||||||
CONFIG_CPU_CP15_MMU=y
 | 
					CONFIG_CPU_CP15_MMU=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -216,7 +208,7 @@ CONFIG_CPU_CP15_MMU=y
 | 
				
			||||||
CONFIG_ARM_THUMB=y
 | 
					CONFIG_ARM_THUMB=y
 | 
				
			||||||
# CONFIG_CPU_ICACHE_DISABLE is not set
 | 
					# CONFIG_CPU_ICACHE_DISABLE is not set
 | 
				
			||||||
# CONFIG_CPU_DCACHE_DISABLE is not set
 | 
					# CONFIG_CPU_DCACHE_DISABLE is not set
 | 
				
			||||||
# CONFIG_CPU_BPREDICT_DISABLE is not set
 | 
					# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
 | 
				
			||||||
# CONFIG_OUTER_CACHE is not set
 | 
					# CONFIG_OUTER_CACHE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -233,26 +225,32 @@ CONFIG_TICK_ONESHOT=y
 | 
				
			||||||
CONFIG_NO_HZ=y
 | 
					CONFIG_NO_HZ=y
 | 
				
			||||||
CONFIG_HIGH_RES_TIMERS=y
 | 
					CONFIG_HIGH_RES_TIMERS=y
 | 
				
			||||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
					CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
				
			||||||
 | 
					CONFIG_VMSPLIT_3G=y
 | 
				
			||||||
 | 
					# CONFIG_VMSPLIT_2G is not set
 | 
				
			||||||
 | 
					# CONFIG_VMSPLIT_1G is not set
 | 
				
			||||||
 | 
					CONFIG_PAGE_OFFSET=0xC0000000
 | 
				
			||||||
CONFIG_PREEMPT=y
 | 
					CONFIG_PREEMPT=y
 | 
				
			||||||
CONFIG_HZ=100
 | 
					CONFIG_HZ=100
 | 
				
			||||||
CONFIG_AEABI=y
 | 
					CONFIG_AEABI=y
 | 
				
			||||||
# CONFIG_OABI_COMPAT is not set
 | 
					CONFIG_OABI_COMPAT=y
 | 
				
			||||||
CONFIG_ARCH_FLATMEM_HAS_HOLES=y
 | 
					CONFIG_ARCH_FLATMEM_HAS_HOLES=y
 | 
				
			||||||
# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
 | 
					# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 | 
				
			||||||
 | 
					# CONFIG_HIGHMEM is not set
 | 
				
			||||||
CONFIG_SELECT_MEMORY_MODEL=y
 | 
					CONFIG_SELECT_MEMORY_MODEL=y
 | 
				
			||||||
CONFIG_FLATMEM_MANUAL=y
 | 
					CONFIG_FLATMEM_MANUAL=y
 | 
				
			||||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
					# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
				
			||||||
# CONFIG_SPARSEMEM_MANUAL is not set
 | 
					# CONFIG_SPARSEMEM_MANUAL is not set
 | 
				
			||||||
CONFIG_FLATMEM=y
 | 
					CONFIG_FLATMEM=y
 | 
				
			||||||
CONFIG_FLAT_NODE_MEM_MAP=y
 | 
					CONFIG_FLAT_NODE_MEM_MAP=y
 | 
				
			||||||
# CONFIG_SPARSEMEM_STATIC is not set
 | 
					 | 
				
			||||||
# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
 | 
					 | 
				
			||||||
CONFIG_PAGEFLAGS_EXTENDED=y
 | 
					CONFIG_PAGEFLAGS_EXTENDED=y
 | 
				
			||||||
CONFIG_SPLIT_PTLOCK_CPUS=4
 | 
					CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
				
			||||||
# CONFIG_RESOURCES_64BIT is not set
 | 
					# CONFIG_PHYS_ADDR_T_64BIT is not set
 | 
				
			||||||
CONFIG_ZONE_DMA_FLAG=1
 | 
					CONFIG_ZONE_DMA_FLAG=0
 | 
				
			||||||
CONFIG_BOUNCE=y
 | 
					 | 
				
			||||||
CONFIG_VIRT_TO_BUS=y
 | 
					CONFIG_VIRT_TO_BUS=y
 | 
				
			||||||
 | 
					CONFIG_UNEVICTABLE_LRU=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCK=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCKED_PAGE_BIT=y
 | 
				
			||||||
CONFIG_ALIGNMENT_TRAP=y
 | 
					CONFIG_ALIGNMENT_TRAP=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -264,6 +262,11 @@ CONFIG_CMDLINE="noinitrd console=ttymxc0,115200 root=/dev/mtdblock2 rw ip=off"
 | 
				
			||||||
# CONFIG_XIP_KERNEL is not set
 | 
					# CONFIG_XIP_KERNEL is not set
 | 
				
			||||||
# CONFIG_KEXEC is not set
 | 
					# CONFIG_KEXEC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CPU Power Management
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CPU_IDLE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Floating point emulation
 | 
					# Floating point emulation
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -271,19 +274,29 @@ CONFIG_CMDLINE="noinitrd console=ttymxc0,115200 root=/dev/mtdblock2 rw ip=off"
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# At least one emulation must be selected
 | 
					# At least one emulation must be selected
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_VFP=y
 | 
					# CONFIG_FPE_NWFPE is not set
 | 
				
			||||||
 | 
					# CONFIG_FPE_FASTFPE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Userspace binary formats
 | 
					# Userspace binary formats
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_BINFMT_ELF=y
 | 
					CONFIG_BINFMT_ELF=y
 | 
				
			||||||
 | 
					# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
 | 
				
			||||||
 | 
					CONFIG_HAVE_AOUT=y
 | 
				
			||||||
# CONFIG_BINFMT_AOUT is not set
 | 
					# CONFIG_BINFMT_AOUT is not set
 | 
				
			||||||
# CONFIG_BINFMT_MISC is not set
 | 
					# CONFIG_BINFMT_MISC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Power management options
 | 
					# Power management options
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_PM is not set
 | 
					CONFIG_PM=y
 | 
				
			||||||
 | 
					CONFIG_PM_DEBUG=y
 | 
				
			||||||
 | 
					# CONFIG_PM_VERBOSE is not set
 | 
				
			||||||
 | 
					CONFIG_CAN_PM_TRACE=y
 | 
				
			||||||
 | 
					CONFIG_PM_SLEEP=y
 | 
				
			||||||
 | 
					CONFIG_SUSPEND=y
 | 
				
			||||||
 | 
					CONFIG_SUSPEND_FREEZER=y
 | 
				
			||||||
 | 
					# CONFIG_APM_EMULATION is not set
 | 
				
			||||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
					CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
				
			||||||
CONFIG_NET=y
 | 
					CONFIG_NET=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -328,6 +341,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_TIPC is not set
 | 
					# CONFIG_TIPC is not set
 | 
				
			||||||
# CONFIG_ATM is not set
 | 
					# CONFIG_ATM is not set
 | 
				
			||||||
# CONFIG_BRIDGE is not set
 | 
					# CONFIG_BRIDGE is not set
 | 
				
			||||||
 | 
					# CONFIG_NET_DSA is not set
 | 
				
			||||||
# CONFIG_VLAN_8021Q is not set
 | 
					# CONFIG_VLAN_8021Q is not set
 | 
				
			||||||
# CONFIG_DECNET is not set
 | 
					# CONFIG_DECNET is not set
 | 
				
			||||||
# CONFIG_LLC2 is not set
 | 
					# CONFIG_LLC2 is not set
 | 
				
			||||||
| 
						 | 
					@ -337,7 +351,9 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_LAPB is not set
 | 
					# CONFIG_LAPB is not set
 | 
				
			||||||
# CONFIG_ECONET is not set
 | 
					# CONFIG_ECONET is not set
 | 
				
			||||||
# CONFIG_WAN_ROUTER is not set
 | 
					# CONFIG_WAN_ROUTER is not set
 | 
				
			||||||
 | 
					# CONFIG_PHONET is not set
 | 
				
			||||||
# CONFIG_NET_SCHED is not set
 | 
					# CONFIG_NET_SCHED is not set
 | 
				
			||||||
 | 
					# CONFIG_DCB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Network testing
 | 
					# Network testing
 | 
				
			||||||
| 
						 | 
					@ -348,14 +364,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_IRDA is not set
 | 
					# CONFIG_IRDA is not set
 | 
				
			||||||
# CONFIG_BT is not set
 | 
					# CONFIG_BT is not set
 | 
				
			||||||
# CONFIG_AF_RXRPC is not set
 | 
					# CONFIG_AF_RXRPC is not set
 | 
				
			||||||
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
#
 | 
					# CONFIG_WIMAX is not set
 | 
				
			||||||
# Wireless
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_CFG80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_WIRELESS_EXT is not set
 | 
					 | 
				
			||||||
# CONFIG_MAC80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_IEEE80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_RFKILL is not set
 | 
					# CONFIG_RFKILL is not set
 | 
				
			||||||
# CONFIG_NET_9P is not set
 | 
					# CONFIG_NET_9P is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -378,11 +388,9 @@ CONFIG_MTD=y
 | 
				
			||||||
# CONFIG_MTD_DEBUG is not set
 | 
					# CONFIG_MTD_DEBUG is not set
 | 
				
			||||||
# CONFIG_MTD_CONCAT is not set
 | 
					# CONFIG_MTD_CONCAT is not set
 | 
				
			||||||
CONFIG_MTD_PARTITIONS=y
 | 
					CONFIG_MTD_PARTITIONS=y
 | 
				
			||||||
CONFIG_MTD_REDBOOT_PARTS=y
 | 
					# CONFIG_MTD_TESTS is not set
 | 
				
			||||||
CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
 | 
					# CONFIG_MTD_REDBOOT_PARTS is not set
 | 
				
			||||||
# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
 | 
					CONFIG_MTD_CMDLINE_PARTS=y
 | 
				
			||||||
CONFIG_MTD_REDBOOT_PARTS_READONLY=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_CMDLINE_PARTS is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_AFS_PARTS is not set
 | 
					# CONFIG_MTD_AFS_PARTS is not set
 | 
				
			||||||
# CONFIG_MTD_AR7_PARTS is not set
 | 
					# CONFIG_MTD_AR7_PARTS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -405,39 +413,31 @@ CONFIG_MTD_BLOCK=y
 | 
				
			||||||
CONFIG_MTD_CFI=y
 | 
					CONFIG_MTD_CFI=y
 | 
				
			||||||
# CONFIG_MTD_JEDECPROBE is not set
 | 
					# CONFIG_MTD_JEDECPROBE is not set
 | 
				
			||||||
CONFIG_MTD_GEN_PROBE=y
 | 
					CONFIG_MTD_GEN_PROBE=y
 | 
				
			||||||
CONFIG_MTD_CFI_ADV_OPTIONS=y
 | 
					# CONFIG_MTD_CFI_ADV_OPTIONS is not set
 | 
				
			||||||
CONFIG_MTD_CFI_NOSWAP=y
 | 
					CONFIG_MTD_MAP_BANK_WIDTH_1=y
 | 
				
			||||||
# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_CFI_GEOMETRY=y
 | 
					 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_1 is not set
 | 
					 | 
				
			||||||
CONFIG_MTD_MAP_BANK_WIDTH_2=y
 | 
					CONFIG_MTD_MAP_BANK_WIDTH_2=y
 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_4 is not set
 | 
					CONFIG_MTD_MAP_BANK_WIDTH_4=y
 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
 | 
					# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
 | 
					# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
 | 
				
			||||||
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
 | 
					# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
 | 
				
			||||||
CONFIG_MTD_CFI_I1=y
 | 
					CONFIG_MTD_CFI_I1=y
 | 
				
			||||||
# CONFIG_MTD_CFI_I2 is not set
 | 
					CONFIG_MTD_CFI_I2=y
 | 
				
			||||||
# CONFIG_MTD_CFI_I4 is not set
 | 
					# CONFIG_MTD_CFI_I4 is not set
 | 
				
			||||||
# CONFIG_MTD_CFI_I8 is not set
 | 
					# CONFIG_MTD_CFI_I8 is not set
 | 
				
			||||||
# CONFIG_MTD_OTP is not set
 | 
					 | 
				
			||||||
# CONFIG_MTD_CFI_INTELEXT is not set
 | 
					# CONFIG_MTD_CFI_INTELEXT is not set
 | 
				
			||||||
CONFIG_MTD_CFI_AMDSTD=y
 | 
					# CONFIG_MTD_CFI_AMDSTD is not set
 | 
				
			||||||
# CONFIG_MTD_CFI_STAA is not set
 | 
					# CONFIG_MTD_CFI_STAA is not set
 | 
				
			||||||
CONFIG_MTD_CFI_UTIL=y
 | 
					CONFIG_MTD_CFI_UTIL=y
 | 
				
			||||||
# CONFIG_MTD_RAM is not set
 | 
					# CONFIG_MTD_RAM is not set
 | 
				
			||||||
# CONFIG_MTD_ROM is not set
 | 
					# CONFIG_MTD_ROM is not set
 | 
				
			||||||
# CONFIG_MTD_ABSENT is not set
 | 
					# CONFIG_MTD_ABSENT is not set
 | 
				
			||||||
# CONFIG_MTD_XIP is not set
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Mapping drivers for chip access
 | 
					# Mapping drivers for chip access
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
					# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
				
			||||||
CONFIG_MTD_PHYSMAP=y
 | 
					CONFIG_MTD_PHYSMAP=y
 | 
				
			||||||
CONFIG_MTD_PHYSMAP_START=0x0
 | 
					# CONFIG_MTD_PHYSMAP_COMPAT is not set
 | 
				
			||||||
CONFIG_MTD_PHYSMAP_LEN=0x0
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
 | 
					 | 
				
			||||||
# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
					# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
				
			||||||
# CONFIG_MTD_PLATRAM is not set
 | 
					# CONFIG_MTD_PLATRAM is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -458,6 +458,11 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
 | 
				
			||||||
# CONFIG_MTD_NAND is not set
 | 
					# CONFIG_MTD_NAND is not set
 | 
				
			||||||
# CONFIG_MTD_ONENAND is not set
 | 
					# CONFIG_MTD_ONENAND is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# LPDDR flash memory drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MTD_LPDDR is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# UBI - Unsorted block images
 | 
					# UBI - Unsorted block images
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -478,22 +483,51 @@ CONFIG_HAVE_IDE=y
 | 
				
			||||||
# CONFIG_ATA is not set
 | 
					# CONFIG_ATA is not set
 | 
				
			||||||
# CONFIG_MD is not set
 | 
					# CONFIG_MD is not set
 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					CONFIG_NETDEVICES=y
 | 
				
			||||||
 | 
					CONFIG_COMPAT_NET_DEV_OPS=y
 | 
				
			||||||
# CONFIG_DUMMY is not set
 | 
					# CONFIG_DUMMY is not set
 | 
				
			||||||
# CONFIG_BONDING is not set
 | 
					# CONFIG_BONDING is not set
 | 
				
			||||||
# CONFIG_MACVLAN is not set
 | 
					# CONFIG_MACVLAN is not set
 | 
				
			||||||
# CONFIG_EQUALIZER is not set
 | 
					# CONFIG_EQUALIZER is not set
 | 
				
			||||||
# CONFIG_TUN is not set
 | 
					# CONFIG_TUN is not set
 | 
				
			||||||
# CONFIG_VETH is not set
 | 
					# CONFIG_VETH is not set
 | 
				
			||||||
# CONFIG_PHYLIB is not set
 | 
					CONFIG_PHYLIB=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# MII PHY device drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MARVELL_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_DAVICOM_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_QSEMI_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_LXT_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_CICADA_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_VITESSE_PHY is not set
 | 
				
			||||||
 | 
					CONFIG_SMSC_PHY=y
 | 
				
			||||||
 | 
					# CONFIG_BROADCOM_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_ICPLUS_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_REALTEK_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_NATIONAL_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_STE10XP is not set
 | 
				
			||||||
 | 
					# CONFIG_LSI_ET1011C_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_FIXED_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_MDIO_BITBANG is not set
 | 
				
			||||||
CONFIG_NET_ETHERNET=y
 | 
					CONFIG_NET_ETHERNET=y
 | 
				
			||||||
CONFIG_MII=y
 | 
					CONFIG_MII=y
 | 
				
			||||||
# CONFIG_AX88796 is not set
 | 
					# CONFIG_AX88796 is not set
 | 
				
			||||||
CONFIG_SMC91X=y
 | 
					# CONFIG_SMC91X is not set
 | 
				
			||||||
# CONFIG_DM9000 is not set
 | 
					CONFIG_DM9000=y
 | 
				
			||||||
 | 
					CONFIG_DM9000_DEBUGLEVEL=4
 | 
				
			||||||
 | 
					# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set
 | 
				
			||||||
 | 
					# CONFIG_ETHOC is not set
 | 
				
			||||||
 | 
					# CONFIG_SMC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_SMSC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_DNET is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
					# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
					# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
 | 
				
			||||||
# CONFIG_B44 is not set
 | 
					# CONFIG_B44 is not set
 | 
				
			||||||
# CONFIG_NETDEV_1000 is not set
 | 
					# CONFIG_NETDEV_1000 is not set
 | 
				
			||||||
# CONFIG_NETDEV_10000 is not set
 | 
					# CONFIG_NETDEV_10000 is not set
 | 
				
			||||||
| 
						 | 
					@ -503,7 +537,10 @@ CONFIG_SMC91X=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_WLAN_PRE80211 is not set
 | 
					# CONFIG_WLAN_PRE80211 is not set
 | 
				
			||||||
# CONFIG_WLAN_80211 is not set
 | 
					# CONFIG_WLAN_80211 is not set
 | 
				
			||||||
# CONFIG_IWLWIFI_LEDS is not set
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Enable WiMAX (Networking options) to see the WiMAX drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# CONFIG_WAN is not set
 | 
					# CONFIG_WAN is not set
 | 
				
			||||||
# CONFIG_PPP is not set
 | 
					# CONFIG_PPP is not set
 | 
				
			||||||
# CONFIG_SLIP is not set
 | 
					# CONFIG_SLIP is not set
 | 
				
			||||||
| 
						 | 
					@ -543,22 +580,70 @@ CONFIG_SERIAL_IMX_CONSOLE=y
 | 
				
			||||||
CONFIG_SERIAL_CORE=y
 | 
					CONFIG_SERIAL_CORE=y
 | 
				
			||||||
CONFIG_SERIAL_CORE_CONSOLE=y
 | 
					CONFIG_SERIAL_CORE_CONSOLE=y
 | 
				
			||||||
CONFIG_UNIX98_PTYS=y
 | 
					CONFIG_UNIX98_PTYS=y
 | 
				
			||||||
 | 
					# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
 | 
				
			||||||
# CONFIG_LEGACY_PTYS is not set
 | 
					# CONFIG_LEGACY_PTYS is not set
 | 
				
			||||||
# CONFIG_IPMI_HANDLER is not set
 | 
					# CONFIG_IPMI_HANDLER is not set
 | 
				
			||||||
# CONFIG_HW_RANDOM is not set
 | 
					# CONFIG_HW_RANDOM is not set
 | 
				
			||||||
# CONFIG_NVRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_R3964 is not set
 | 
					# CONFIG_R3964 is not set
 | 
				
			||||||
# CONFIG_RAW_DRIVER is not set
 | 
					# CONFIG_RAW_DRIVER is not set
 | 
				
			||||||
# CONFIG_TCG_TPM is not set
 | 
					# CONFIG_TCG_TPM is not set
 | 
				
			||||||
# CONFIG_I2C is not set
 | 
					CONFIG_I2C=y
 | 
				
			||||||
 | 
					CONFIG_I2C_BOARDINFO=y
 | 
				
			||||||
 | 
					CONFIG_I2C_CHARDEV=y
 | 
				
			||||||
 | 
					CONFIG_I2C_HELPER_AUTO=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# I2C Hardware Bus support
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# I2C system bus drivers (mostly embedded / system-on-chip)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_I2C_GPIO is not set
 | 
				
			||||||
 | 
					CONFIG_I2C_IMX=y
 | 
				
			||||||
 | 
					# CONFIG_I2C_OCORES is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_SIMTEC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# External I2C/SMBus adapter drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_I2C_PARPORT_LIGHT is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_TAOS_EVM is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Other I2C/SMBus bus drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_I2C_PCA_PLATFORM is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_STUB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Miscellaneous I2C Chip support
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_DS1682 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_PCF8574 is not set
 | 
				
			||||||
 | 
					# CONFIG_PCF8575 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_PCA9539 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_MAX6875 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_TSL2550 is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_DEBUG_CORE is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_DEBUG_ALGO is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_DEBUG_BUS is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_DEBUG_CHIP is not set
 | 
				
			||||||
# CONFIG_SPI is not set
 | 
					# CONFIG_SPI is not set
 | 
				
			||||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
 | 
					CONFIG_ARCH_REQUIRE_GPIOLIB=y
 | 
				
			||||||
CONFIG_GPIOLIB=y
 | 
					CONFIG_GPIOLIB=y
 | 
				
			||||||
# CONFIG_GPIO_SYSFS is not set
 | 
					# CONFIG_GPIO_SYSFS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Memory mapped GPIO expanders:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# I2C GPIO expanders:
 | 
					# I2C GPIO expanders:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_GPIO_MAX732X is not set
 | 
				
			||||||
 | 
					# CONFIG_GPIO_PCA953X is not set
 | 
				
			||||||
 | 
					# CONFIG_GPIO_PCF857X is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# PCI GPIO expanders:
 | 
					# PCI GPIO expanders:
 | 
				
			||||||
| 
						 | 
					@ -567,15 +652,34 @@ CONFIG_GPIOLIB=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# SPI GPIO expanders:
 | 
					# SPI GPIO expanders:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_W1 is not set
 | 
					CONFIG_W1=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 1-wire Bus Masters
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_W1_MASTER_DS2482 is not set
 | 
				
			||||||
 | 
					CONFIG_W1_MASTER_MXC=y
 | 
				
			||||||
 | 
					# CONFIG_W1_MASTER_GPIO is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 1-wire Slaves
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_W1_SLAVE_THERM=y
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_SMEM is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_DS2431 is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_DS2433 is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_DS2760 is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_BQ27000 is not set
 | 
				
			||||||
# CONFIG_POWER_SUPPLY is not set
 | 
					# CONFIG_POWER_SUPPLY is not set
 | 
				
			||||||
# CONFIG_HWMON is not set
 | 
					# CONFIG_HWMON is not set
 | 
				
			||||||
 | 
					# CONFIG_THERMAL is not set
 | 
				
			||||||
 | 
					# CONFIG_THERMAL_HWMON is not set
 | 
				
			||||||
# CONFIG_WATCHDOG is not set
 | 
					# CONFIG_WATCHDOG is not set
 | 
				
			||||||
 | 
					CONFIG_SSB_POSSIBLE=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Sonics Silicon Backplane
 | 
					# Sonics Silicon Backplane
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_SSB_POSSIBLE=y
 | 
					 | 
				
			||||||
# CONFIG_SSB is not set
 | 
					# CONFIG_SSB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -583,12 +687,17 @@ CONFIG_SSB_POSSIBLE=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MFD_CORE is not set
 | 
					# CONFIG_MFD_CORE is not set
 | 
				
			||||||
# CONFIG_MFD_SM501 is not set
 | 
					# CONFIG_MFD_SM501 is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_ASIC3 is not set
 | 
				
			||||||
# CONFIG_HTC_EGPIO is not set
 | 
					# CONFIG_HTC_EGPIO is not set
 | 
				
			||||||
# CONFIG_HTC_PASIC3 is not set
 | 
					# CONFIG_HTC_PASIC3 is not set
 | 
				
			||||||
 | 
					# CONFIG_TPS65010 is not set
 | 
				
			||||||
 | 
					# CONFIG_TWL4030_CORE is not set
 | 
				
			||||||
# CONFIG_MFD_TMIO is not set
 | 
					# CONFIG_MFD_TMIO is not set
 | 
				
			||||||
# CONFIG_MFD_T7L66XB is not set
 | 
					 | 
				
			||||||
# CONFIG_MFD_TC6387XB is not set
 | 
					 | 
				
			||||||
# CONFIG_MFD_TC6393XB is not set
 | 
					# CONFIG_MFD_TC6393XB is not set
 | 
				
			||||||
 | 
					# CONFIG_PMIC_DA903X is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_WM8400 is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_WM8350_I2C is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_PCF50633 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Multimedia devices
 | 
					# Multimedia devices
 | 
				
			||||||
| 
						 | 
					@ -611,41 +720,131 @@ CONFIG_SSB_POSSIBLE=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_VGASTATE is not set
 | 
					# CONFIG_VGASTATE is not set
 | 
				
			||||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
 | 
					# CONFIG_VIDEO_OUTPUT_CONTROL is not set
 | 
				
			||||||
# CONFIG_FB is not set
 | 
					CONFIG_FB=y
 | 
				
			||||||
 | 
					# CONFIG_FIRMWARE_EDID is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_DDC is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_BOOT_VESA_SUPPORT is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_CFB_FILLRECT is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_CFB_COPYAREA is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_CFB_IMAGEBLIT is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_SYS_FILLRECT is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_SYS_COPYAREA is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_SYS_IMAGEBLIT is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_FOREIGN_ENDIAN is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_SYS_FOPS is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_SVGALIB is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_MACMODES is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_BACKLIGHT is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_MODE_HELPERS is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_TILEBLITTING is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Frame buffer hardware drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FB_S1D13XXX is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_VIRTUAL is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_METRONOME is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_MB862XX is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_BROADSHEET is not set
 | 
				
			||||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
 | 
					# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Display device support
 | 
					# Display device support
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_DISPLAY_SUPPORT is not set
 | 
					# CONFIG_DISPLAY_SUPPORT is not set
 | 
				
			||||||
 | 
					# CONFIG_LOGO is not set
 | 
				
			||||||
# CONFIG_SOUND is not set
 | 
					# CONFIG_SOUND is not set
 | 
				
			||||||
# CONFIG_USB_SUPPORT is not set
 | 
					CONFIG_USB_SUPPORT=y
 | 
				
			||||||
# CONFIG_MMC is not set
 | 
					CONFIG_USB_ARCH_HAS_HCD=y
 | 
				
			||||||
 | 
					# CONFIG_USB_ARCH_HAS_OHCI is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_ARCH_HAS_EHCI is not set
 | 
				
			||||||
 | 
					# CONFIG_USB is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_OTG_WHITELIST is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_OTG_BLACKLIST_HUB is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_MUSB_HDRC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_USB_GADGET=y
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_DEBUG_FILES is not set
 | 
				
			||||||
 | 
					CONFIG_USB_GADGET_VBUS_DRAW=2
 | 
				
			||||||
 | 
					CONFIG_USB_GADGET_SELECTED=y
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_AT91 is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_ATMEL_USBA is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_FSL_USB2 is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_LH7A40X is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_OMAP is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_PXA25X is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_PXA27X is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_S3C2410 is not set
 | 
				
			||||||
 | 
					CONFIG_USB_GADGET_IMX=y
 | 
				
			||||||
 | 
					CONFIG_USB_IMX=y
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_M66592 is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_AMD5536UDC is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_FSL_QE is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_CI13XXX is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_NET2280 is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_GOKU is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_DUMMY_HCD is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGET_DUALSPEED is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_ZERO is not set
 | 
				
			||||||
 | 
					CONFIG_USB_ETH=y
 | 
				
			||||||
 | 
					CONFIG_USB_ETH_RNDIS=y
 | 
				
			||||||
 | 
					# CONFIG_USB_GADGETFS is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_FILE_STORAGE is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_G_SERIAL is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_MIDI_GADGET is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_G_PRINTER is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_CDC_COMPOSITE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# OTG and related infrastructure
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_USB_GPIO_VBUS is not set
 | 
				
			||||||
 | 
					# CONFIG_NOP_USB_XCEIV is not set
 | 
				
			||||||
 | 
					CONFIG_MMC=y
 | 
				
			||||||
 | 
					# CONFIG_MMC_DEBUG is not set
 | 
				
			||||||
 | 
					# CONFIG_MMC_UNSAFE_RESUME is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# MMC/SD/SDIO Card Drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_MMC_BLOCK=y
 | 
				
			||||||
 | 
					CONFIG_MMC_BLOCK_BOUNCE=y
 | 
				
			||||||
 | 
					# CONFIG_SDIO_UART is not set
 | 
				
			||||||
 | 
					# CONFIG_MMC_TEST is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# MMC/SD/SDIO Host Controller Drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MMC_SDHCI is not set
 | 
				
			||||||
 | 
					CONFIG_MMC_MXC=y
 | 
				
			||||||
 | 
					# CONFIG_MEMSTICK is not set
 | 
				
			||||||
 | 
					# CONFIG_ACCESSIBILITY is not set
 | 
				
			||||||
# CONFIG_NEW_LEDS is not set
 | 
					# CONFIG_NEW_LEDS is not set
 | 
				
			||||||
CONFIG_RTC_LIB=y
 | 
					CONFIG_RTC_LIB=y
 | 
				
			||||||
# CONFIG_RTC_CLASS is not set
 | 
					# CONFIG_RTC_CLASS is not set
 | 
				
			||||||
# CONFIG_DMADEVICES is not set
 | 
					# CONFIG_DMADEVICES is not set
 | 
				
			||||||
 | 
					# CONFIG_AUXDISPLAY is not set
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Voltage and Current regulators
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_REGULATOR is not set
 | 
					# CONFIG_REGULATOR is not set
 | 
				
			||||||
# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
 | 
					 | 
				
			||||||
# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
 | 
					 | 
				
			||||||
# CONFIG_REGULATOR_BQ24022 is not set
 | 
					 | 
				
			||||||
# CONFIG_UIO is not set
 | 
					# CONFIG_UIO is not set
 | 
				
			||||||
 | 
					# CONFIG_STAGING is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# File systems
 | 
					# File systems
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_EXT2_FS is not set
 | 
					# CONFIG_EXT2_FS is not set
 | 
				
			||||||
# CONFIG_EXT3_FS is not set
 | 
					# CONFIG_EXT3_FS is not set
 | 
				
			||||||
# CONFIG_EXT4DEV_FS is not set
 | 
					# CONFIG_EXT4_FS is not set
 | 
				
			||||||
# CONFIG_REISERFS_FS is not set
 | 
					# CONFIG_REISERFS_FS is not set
 | 
				
			||||||
# CONFIG_JFS_FS is not set
 | 
					# CONFIG_JFS_FS is not set
 | 
				
			||||||
# CONFIG_FS_POSIX_ACL is not set
 | 
					# CONFIG_FS_POSIX_ACL is not set
 | 
				
			||||||
 | 
					CONFIG_FILE_LOCKING=y
 | 
				
			||||||
# CONFIG_XFS_FS is not set
 | 
					# CONFIG_XFS_FS is not set
 | 
				
			||||||
# CONFIG_OCFS2_FS is not set
 | 
					# CONFIG_OCFS2_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_BTRFS_FS is not set
 | 
				
			||||||
# CONFIG_DNOTIFY is not set
 | 
					# CONFIG_DNOTIFY is not set
 | 
				
			||||||
CONFIG_INOTIFY=y
 | 
					CONFIG_INOTIFY=y
 | 
				
			||||||
CONFIG_INOTIFY_USER=y
 | 
					CONFIG_INOTIFY_USER=y
 | 
				
			||||||
| 
						 | 
					@ -654,6 +853,11 @@ CONFIG_INOTIFY_USER=y
 | 
				
			||||||
# CONFIG_AUTOFS4_FS is not set
 | 
					# CONFIG_AUTOFS4_FS is not set
 | 
				
			||||||
# CONFIG_FUSE_FS is not set
 | 
					# CONFIG_FUSE_FS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Caches
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FSCACHE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CD-ROM/DVD Filesystems
 | 
					# CD-ROM/DVD Filesystems
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -672,15 +876,13 @@ CONFIG_INOTIFY_USER=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_PROC_FS=y
 | 
					CONFIG_PROC_FS=y
 | 
				
			||||||
CONFIG_PROC_SYSCTL=y
 | 
					CONFIG_PROC_SYSCTL=y
 | 
				
			||||||
 | 
					CONFIG_PROC_PAGE_MONITOR=y
 | 
				
			||||||
CONFIG_SYSFS=y
 | 
					CONFIG_SYSFS=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
# CONFIG_TMPFS_POSIX_ACL is not set
 | 
					# CONFIG_TMPFS_POSIX_ACL is not set
 | 
				
			||||||
# CONFIG_HUGETLB_PAGE is not set
 | 
					# CONFIG_HUGETLB_PAGE is not set
 | 
				
			||||||
# CONFIG_CONFIGFS_FS is not set
 | 
					# CONFIG_CONFIGFS_FS is not set
 | 
				
			||||||
 | 
					CONFIG_MISC_FILESYSTEMS=y
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Miscellaneous filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_ADFS_FS is not set
 | 
					# CONFIG_ADFS_FS is not set
 | 
				
			||||||
# CONFIG_AFFS_FS is not set
 | 
					# CONFIG_AFFS_FS is not set
 | 
				
			||||||
# CONFIG_HFS_FS is not set
 | 
					# CONFIG_HFS_FS is not set
 | 
				
			||||||
| 
						 | 
					@ -700,6 +902,7 @@ CONFIG_JFFS2_ZLIB=y
 | 
				
			||||||
CONFIG_JFFS2_RTIME=y
 | 
					CONFIG_JFFS2_RTIME=y
 | 
				
			||||||
# CONFIG_JFFS2_RUBIN is not set
 | 
					# CONFIG_JFFS2_RUBIN is not set
 | 
				
			||||||
# CONFIG_CRAMFS is not set
 | 
					# CONFIG_CRAMFS is not set
 | 
				
			||||||
 | 
					# CONFIG_SQUASHFS is not set
 | 
				
			||||||
# CONFIG_VXFS_FS is not set
 | 
					# CONFIG_VXFS_FS is not set
 | 
				
			||||||
# CONFIG_MINIX_FS is not set
 | 
					# CONFIG_MINIX_FS is not set
 | 
				
			||||||
# CONFIG_OMFS_FS is not set
 | 
					# CONFIG_OMFS_FS is not set
 | 
				
			||||||
| 
						 | 
					@ -708,16 +911,20 @@ CONFIG_JFFS2_RTIME=y
 | 
				
			||||||
# CONFIG_ROMFS_FS is not set
 | 
					# CONFIG_ROMFS_FS is not set
 | 
				
			||||||
# CONFIG_SYSV_FS is not set
 | 
					# CONFIG_SYSV_FS is not set
 | 
				
			||||||
# CONFIG_UFS_FS is not set
 | 
					# CONFIG_UFS_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_NILFS2_FS is not set
 | 
				
			||||||
CONFIG_NETWORK_FILESYSTEMS=y
 | 
					CONFIG_NETWORK_FILESYSTEMS=y
 | 
				
			||||||
CONFIG_NFS_FS=y
 | 
					CONFIG_NFS_FS=y
 | 
				
			||||||
# CONFIG_NFS_V3 is not set
 | 
					CONFIG_NFS_V3=y
 | 
				
			||||||
# CONFIG_NFS_V4 is not set
 | 
					# CONFIG_NFS_V3_ACL is not set
 | 
				
			||||||
 | 
					CONFIG_NFS_V4=y
 | 
				
			||||||
CONFIG_ROOT_NFS=y
 | 
					CONFIG_ROOT_NFS=y
 | 
				
			||||||
# CONFIG_NFSD is not set
 | 
					# CONFIG_NFSD is not set
 | 
				
			||||||
CONFIG_LOCKD=y
 | 
					CONFIG_LOCKD=y
 | 
				
			||||||
 | 
					CONFIG_LOCKD_V4=y
 | 
				
			||||||
CONFIG_NFS_COMMON=y
 | 
					CONFIG_NFS_COMMON=y
 | 
				
			||||||
CONFIG_SUNRPC=y
 | 
					CONFIG_SUNRPC=y
 | 
				
			||||||
# CONFIG_RPCSEC_GSS_KRB5 is not set
 | 
					CONFIG_SUNRPC_GSS=y
 | 
				
			||||||
 | 
					CONFIG_RPCSEC_GSS_KRB5=y
 | 
				
			||||||
# 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
 | 
				
			||||||
# CONFIG_CIFS is not set
 | 
					# CONFIG_CIFS is not set
 | 
				
			||||||
| 
						 | 
					@ -747,18 +954,30 @@ CONFIG_FRAME_WARN=1024
 | 
				
			||||||
# CONFIG_DEBUG_KERNEL is not set
 | 
					# CONFIG_DEBUG_KERNEL is not set
 | 
				
			||||||
# CONFIG_DEBUG_BUGVERBOSE is not set
 | 
					# CONFIG_DEBUG_BUGVERBOSE is not set
 | 
				
			||||||
# CONFIG_DEBUG_MEMORY_INIT is not set
 | 
					# CONFIG_DEBUG_MEMORY_INIT is not set
 | 
				
			||||||
CONFIG_FRAME_POINTER=y
 | 
					# CONFIG_RCU_CPU_STALL_DETECTOR is not set
 | 
				
			||||||
# CONFIG_LATENCYTOP is not set
 | 
					# CONFIG_LATENCYTOP is not set
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
					CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
				
			||||||
CONFIG_HAVE_FTRACE=y
 | 
					CONFIG_HAVE_FUNCTION_TRACER=y
 | 
				
			||||||
CONFIG_HAVE_DYNAMIC_FTRACE=y
 | 
					CONFIG_TRACING_SUPPORT=y
 | 
				
			||||||
# CONFIG_FTRACE is not set
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Tracers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FUNCTION_TRACER is not set
 | 
				
			||||||
# CONFIG_IRQSOFF_TRACER is not set
 | 
					# CONFIG_IRQSOFF_TRACER is not set
 | 
				
			||||||
# CONFIG_PREEMPT_TRACER is not set
 | 
					# CONFIG_PREEMPT_TRACER is not set
 | 
				
			||||||
# CONFIG_SCHED_TRACER is not set
 | 
					# CONFIG_SCHED_TRACER is not set
 | 
				
			||||||
# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
					# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_EVENT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BOOT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_TRACE_BRANCH_PROFILING is not set
 | 
				
			||||||
 | 
					# CONFIG_STACK_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_KMEMTRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_WORKQUEUE_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
				
			||||||
# CONFIG_SAMPLES is not set
 | 
					# CONFIG_SAMPLES is not set
 | 
				
			||||||
CONFIG_HAVE_ARCH_KGDB=y
 | 
					CONFIG_HAVE_ARCH_KGDB=y
 | 
				
			||||||
 | 
					CONFIG_ARM_UNWIND=y
 | 
				
			||||||
# CONFIG_DEBUG_USER is not set
 | 
					# CONFIG_DEBUG_USER is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -766,15 +985,111 @@ CONFIG_HAVE_ARCH_KGDB=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_KEYS is not set
 | 
					# CONFIG_KEYS is not set
 | 
				
			||||||
# CONFIG_SECURITY is not set
 | 
					# CONFIG_SECURITY is not set
 | 
				
			||||||
 | 
					# CONFIG_SECURITYFS is not set
 | 
				
			||||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
					# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
				
			||||||
# CONFIG_CRYPTO is not set
 | 
					CONFIG_CRYPTO=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Crypto core or helper
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_FIPS is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_ALGAPI=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_ALGAPI2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AEAD2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_BLKCIPHER=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_BLKCIPHER2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_HASH=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_HASH2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_RNG2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_PCOMP=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_MANAGER2=y
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_GF128MUL is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_NULL is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_WORKQUEUE=y
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CRYPTD is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_AUTHENC is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_TEST is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Authenticated Encryption with Associated Data
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CCM is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_GCM is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SEQIV is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Block modes
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_CBC=y
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CTR is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CTS is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ECB is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_LRW is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_PCBC is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_XTS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Hash modes
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_HMAC is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_XCBC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Digest
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CRC32C is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_MD4 is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_MD5=y
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_MICHAEL_MIC is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_RMD128 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_RMD160 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_RMD256 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_RMD320 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SHA1 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SHA256 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SHA512 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_TGR192 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_WP512 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Ciphers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_AES is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ANUBIS is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ARC4 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_BLOWFISH is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CAMELLIA is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CAST5 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_CAST6 is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_DES=y
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_FCRYPT is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_KHAZAD is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SALSA20 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SEED is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_SERPENT is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_TEA is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_TWOFISH is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Compression
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_DEFLATE is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ZLIB is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_LZO is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Random Number Generation
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ANSI_CPRNG is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_HW=y
 | 
				
			||||||
 | 
					# CONFIG_BINARY_PRINTF is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Library routines
 | 
					# Library routines
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_BITREVERSE=y
 | 
					CONFIG_BITREVERSE=y
 | 
				
			||||||
# CONFIG_GENERIC_FIND_FIRST_BIT is not set
 | 
					CONFIG_GENERIC_FIND_LAST_BIT=y
 | 
				
			||||||
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
 | 
					 | 
				
			||||||
# CONFIG_CRC_CCITT is not set
 | 
					# CONFIG_CRC_CCITT is not set
 | 
				
			||||||
# CONFIG_CRC16 is not set
 | 
					# CONFIG_CRC16 is not set
 | 
				
			||||||
# CONFIG_CRC_T10DIF is not set
 | 
					# CONFIG_CRC_T10DIF is not set
 | 
				
			||||||
| 
						 | 
					@ -784,7 +1099,7 @@ CONFIG_CRC32=y
 | 
				
			||||||
# CONFIG_LIBCRC32C is not set
 | 
					# CONFIG_LIBCRC32C is not set
 | 
				
			||||||
CONFIG_ZLIB_INFLATE=y
 | 
					CONFIG_ZLIB_INFLATE=y
 | 
				
			||||||
CONFIG_ZLIB_DEFLATE=y
 | 
					CONFIG_ZLIB_DEFLATE=y
 | 
				
			||||||
CONFIG_PLIST=y
 | 
					 | 
				
			||||||
CONFIG_HAS_IOMEM=y
 | 
					CONFIG_HAS_IOMEM=y
 | 
				
			||||||
CONFIG_HAS_IOPORT=y
 | 
					CONFIG_HAS_IOPORT=y
 | 
				
			||||||
CONFIG_HAS_DMA=y
 | 
					CONFIG_HAS_DMA=y
 | 
				
			||||||
 | 
					CONFIG_NLATTR=y
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Automatically generated make config: don't edit
 | 
					# Automatically generated make config: don't edit
 | 
				
			||||||
# Linux kernel version: 2.6.26-rc6
 | 
					# Linux kernel version: 2.6.30-rc1
 | 
				
			||||||
# Fri Jun 20 16:38:36 2008
 | 
					# Wed Apr  8 10:18:06 2009
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_ARM=y
 | 
					CONFIG_ARM=y
 | 
				
			||||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
					CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
				
			||||||
| 
						 | 
					@ -12,6 +12,7 @@ CONFIG_MMU=y
 | 
				
			||||||
# CONFIG_NO_IOPORT is not set
 | 
					# CONFIG_NO_IOPORT is not set
 | 
				
			||||||
CONFIG_GENERIC_HARDIRQS=y
 | 
					CONFIG_GENERIC_HARDIRQS=y
 | 
				
			||||||
CONFIG_STACKTRACE_SUPPORT=y
 | 
					CONFIG_STACKTRACE_SUPPORT=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_LATENCYTOP_SUPPORT=y
 | 
				
			||||||
CONFIG_LOCKDEP_SUPPORT=y
 | 
					CONFIG_LOCKDEP_SUPPORT=y
 | 
				
			||||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
 | 
					CONFIG_TRACE_IRQFLAGS_SUPPORT=y
 | 
				
			||||||
CONFIG_HARDIRQS_SW_RESEND=y
 | 
					CONFIG_HARDIRQS_SW_RESEND=y
 | 
				
			||||||
| 
						 | 
					@ -21,9 +22,8 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y
 | 
				
			||||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
					# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
				
			||||||
CONFIG_GENERIC_HWEIGHT=y
 | 
					CONFIG_GENERIC_HWEIGHT=y
 | 
				
			||||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
					CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
				
			||||||
CONFIG_ARCH_SUPPORTS_AOUT=y
 | 
					 | 
				
			||||||
CONFIG_ZONE_DMA=y
 | 
					 | 
				
			||||||
CONFIG_ARCH_MTD_XIP=y
 | 
					CONFIG_ARCH_MTD_XIP=y
 | 
				
			||||||
 | 
					CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 | 
				
			||||||
CONFIG_VECTORS_BASE=0xffff0000
 | 
					CONFIG_VECTORS_BASE=0xffff0000
 | 
				
			||||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 | 
					CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -40,47 +40,58 @@ CONFIG_LOCALVERSION_AUTO=y
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_SYSVIPC_SYSCTL=y
 | 
					CONFIG_SYSVIPC_SYSCTL=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
 | 
					CONFIG_POSIX_MQUEUE_SYSCTL=y
 | 
				
			||||||
# CONFIG_BSD_PROCESS_ACCT is not set
 | 
					# CONFIG_BSD_PROCESS_ACCT is not set
 | 
				
			||||||
# CONFIG_TASKSTATS is not set
 | 
					# CONFIG_TASKSTATS is not set
 | 
				
			||||||
# CONFIG_AUDIT is not set
 | 
					# CONFIG_AUDIT is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# RCU Subsystem
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
 | 
					# CONFIG_TREE_RCU is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_RCU is not set
 | 
				
			||||||
 | 
					# CONFIG_TREE_RCU_TRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_RCU_TRACE is not set
 | 
				
			||||||
# CONFIG_IKCONFIG is not set
 | 
					# CONFIG_IKCONFIG is not set
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=14
 | 
					CONFIG_LOG_BUF_SHIFT=14
 | 
				
			||||||
# CONFIG_CGROUPS is not set
 | 
					 | 
				
			||||||
CONFIG_GROUP_SCHED=y
 | 
					CONFIG_GROUP_SCHED=y
 | 
				
			||||||
CONFIG_FAIR_GROUP_SCHED=y
 | 
					CONFIG_FAIR_GROUP_SCHED=y
 | 
				
			||||||
CONFIG_RT_GROUP_SCHED=y
 | 
					CONFIG_RT_GROUP_SCHED=y
 | 
				
			||||||
CONFIG_USER_SCHED=y
 | 
					CONFIG_USER_SCHED=y
 | 
				
			||||||
# CONFIG_CGROUP_SCHED is not set
 | 
					# CONFIG_CGROUP_SCHED is not set
 | 
				
			||||||
 | 
					# CONFIG_CGROUPS is not set
 | 
				
			||||||
# CONFIG_SYSFS_DEPRECATED_V2 is not set
 | 
					# CONFIG_SYSFS_DEPRECATED_V2 is not set
 | 
				
			||||||
# CONFIG_RELAY is not set
 | 
					# CONFIG_RELAY is not set
 | 
				
			||||||
# CONFIG_NAMESPACES is not set
 | 
					# CONFIG_NAMESPACES is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_INITRD is not set
 | 
					# CONFIG_BLK_DEV_INITRD is not set
 | 
				
			||||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
 | 
					# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
 | 
				
			||||||
CONFIG_SYSCTL=y
 | 
					CONFIG_SYSCTL=y
 | 
				
			||||||
 | 
					CONFIG_ANON_INODES=y
 | 
				
			||||||
CONFIG_EMBEDDED=y
 | 
					CONFIG_EMBEDDED=y
 | 
				
			||||||
CONFIG_UID16=y
 | 
					CONFIG_UID16=y
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL=y
 | 
					CONFIG_SYSCTL_SYSCALL=y
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
					 | 
				
			||||||
CONFIG_KALLSYMS=y
 | 
					CONFIG_KALLSYMS=y
 | 
				
			||||||
CONFIG_KALLSYMS_EXTRA_PASS=y
 | 
					CONFIG_KALLSYMS_EXTRA_PASS=y
 | 
				
			||||||
CONFIG_HOTPLUG=y
 | 
					CONFIG_HOTPLUG=y
 | 
				
			||||||
CONFIG_PRINTK=y
 | 
					CONFIG_PRINTK=y
 | 
				
			||||||
CONFIG_BUG=y
 | 
					CONFIG_BUG=y
 | 
				
			||||||
CONFIG_ELF_CORE=y
 | 
					CONFIG_ELF_CORE=y
 | 
				
			||||||
# CONFIG_COMPAT_BRK is not set
 | 
					 | 
				
			||||||
CONFIG_BASE_FULL=y
 | 
					CONFIG_BASE_FULL=y
 | 
				
			||||||
CONFIG_FUTEX=y
 | 
					CONFIG_FUTEX=y
 | 
				
			||||||
CONFIG_ANON_INODES=y
 | 
					 | 
				
			||||||
CONFIG_EPOLL=y
 | 
					CONFIG_EPOLL=y
 | 
				
			||||||
CONFIG_SIGNALFD=y
 | 
					CONFIG_SIGNALFD=y
 | 
				
			||||||
CONFIG_TIMERFD=y
 | 
					CONFIG_TIMERFD=y
 | 
				
			||||||
CONFIG_EVENTFD=y
 | 
					CONFIG_EVENTFD=y
 | 
				
			||||||
CONFIG_SHMEM=y
 | 
					CONFIG_SHMEM=y
 | 
				
			||||||
 | 
					CONFIG_AIO=y
 | 
				
			||||||
CONFIG_VM_EVENT_COUNTERS=y
 | 
					CONFIG_VM_EVENT_COUNTERS=y
 | 
				
			||||||
 | 
					# CONFIG_COMPAT_BRK is not set
 | 
				
			||||||
CONFIG_SLAB=y
 | 
					CONFIG_SLAB=y
 | 
				
			||||||
# CONFIG_SLUB is not set
 | 
					# CONFIG_SLUB is not set
 | 
				
			||||||
# CONFIG_SLOB is not set
 | 
					# CONFIG_SLOB is not set
 | 
				
			||||||
CONFIG_PROFILING=y
 | 
					CONFIG_PROFILING=y
 | 
				
			||||||
 | 
					CONFIG_TRACEPOINTS=y
 | 
				
			||||||
CONFIG_MARKERS=y
 | 
					CONFIG_MARKERS=y
 | 
				
			||||||
CONFIG_OPROFILE=y
 | 
					CONFIG_OPROFILE=y
 | 
				
			||||||
CONFIG_HAVE_OPROFILE=y
 | 
					CONFIG_HAVE_OPROFILE=y
 | 
				
			||||||
| 
						 | 
					@ -88,11 +99,10 @@ CONFIG_KPROBES=y
 | 
				
			||||||
CONFIG_KRETPROBES=y
 | 
					CONFIG_KRETPROBES=y
 | 
				
			||||||
CONFIG_HAVE_KPROBES=y
 | 
					CONFIG_HAVE_KPROBES=y
 | 
				
			||||||
CONFIG_HAVE_KRETPROBES=y
 | 
					CONFIG_HAVE_KRETPROBES=y
 | 
				
			||||||
# CONFIG_HAVE_DMA_ATTRS is not set
 | 
					# CONFIG_SLOW_WORK is not set
 | 
				
			||||||
# CONFIG_PROC_PAGE_MONITOR is not set
 | 
					CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
				
			||||||
CONFIG_SLABINFO=y
 | 
					CONFIG_SLABINFO=y
 | 
				
			||||||
CONFIG_RT_MUTEXES=y
 | 
					CONFIG_RT_MUTEXES=y
 | 
				
			||||||
# CONFIG_TINY_SHMEM is not set
 | 
					 | 
				
			||||||
CONFIG_BASE_SMALL=0
 | 
					CONFIG_BASE_SMALL=0
 | 
				
			||||||
CONFIG_MODULES=y
 | 
					CONFIG_MODULES=y
 | 
				
			||||||
# CONFIG_MODULE_FORCE_LOAD is not set
 | 
					# CONFIG_MODULE_FORCE_LOAD is not set
 | 
				
			||||||
| 
						 | 
					@ -100,12 +110,10 @@ CONFIG_MODULE_UNLOAD=y
 | 
				
			||||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
 | 
					# CONFIG_MODULE_FORCE_UNLOAD is not set
 | 
				
			||||||
# CONFIG_MODVERSIONS is not set
 | 
					# CONFIG_MODVERSIONS is not set
 | 
				
			||||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
					# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
				
			||||||
# CONFIG_KMOD is not set
 | 
					 | 
				
			||||||
CONFIG_BLOCK=y
 | 
					CONFIG_BLOCK=y
 | 
				
			||||||
# CONFIG_LBD is not set
 | 
					# CONFIG_LBD is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
					 | 
				
			||||||
# CONFIG_LSF is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_BSG is not set
 | 
					# CONFIG_BLK_DEV_BSG is not set
 | 
				
			||||||
 | 
					# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# IO Schedulers
 | 
					# IO Schedulers
 | 
				
			||||||
| 
						 | 
					@ -119,7 +127,7 @@ CONFIG_IOSCHED_NOOP=y
 | 
				
			||||||
# CONFIG_DEFAULT_CFQ is not set
 | 
					# CONFIG_DEFAULT_CFQ is not set
 | 
				
			||||||
CONFIG_DEFAULT_NOOP=y
 | 
					CONFIG_DEFAULT_NOOP=y
 | 
				
			||||||
CONFIG_DEFAULT_IOSCHED="noop"
 | 
					CONFIG_DEFAULT_IOSCHED="noop"
 | 
				
			||||||
CONFIG_CLASSIC_RCU=y
 | 
					CONFIG_FREEZER=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# System Type
 | 
					# System Type
 | 
				
			||||||
| 
						 | 
					@ -129,11 +137,10 @@ CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
# CONFIG_ARCH_REALVIEW is not set
 | 
					# CONFIG_ARCH_REALVIEW is not set
 | 
				
			||||||
# CONFIG_ARCH_VERSATILE is not set
 | 
					# CONFIG_ARCH_VERSATILE is not set
 | 
				
			||||||
# CONFIG_ARCH_AT91 is not set
 | 
					# CONFIG_ARCH_AT91 is not set
 | 
				
			||||||
# CONFIG_ARCH_CLPS7500 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_CLPS711X is not set
 | 
					# CONFIG_ARCH_CLPS711X is not set
 | 
				
			||||||
# CONFIG_ARCH_CO285 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_EBSA110 is not set
 | 
					# CONFIG_ARCH_EBSA110 is not set
 | 
				
			||||||
# CONFIG_ARCH_EP93XX is not set
 | 
					# CONFIG_ARCH_EP93XX is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_GEMINI is not set
 | 
				
			||||||
# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
					# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
				
			||||||
# CONFIG_ARCH_NETX is not set
 | 
					# CONFIG_ARCH_NETX is not set
 | 
				
			||||||
# CONFIG_ARCH_H720X is not set
 | 
					# CONFIG_ARCH_H720X is not set
 | 
				
			||||||
| 
						 | 
					@ -145,46 +152,44 @@ CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
# CONFIG_ARCH_IXP2000 is not set
 | 
					# CONFIG_ARCH_IXP2000 is not set
 | 
				
			||||||
# CONFIG_ARCH_IXP4XX is not set
 | 
					# CONFIG_ARCH_IXP4XX is not set
 | 
				
			||||||
# CONFIG_ARCH_L7200 is not set
 | 
					# CONFIG_ARCH_L7200 is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_KIRKWOOD is not set
 | 
				
			||||||
# CONFIG_ARCH_KS8695 is not set
 | 
					# CONFIG_ARCH_KS8695 is not set
 | 
				
			||||||
# CONFIG_ARCH_NS9XXX is not set
 | 
					# CONFIG_ARCH_NS9XXX is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_LOKI is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_MV78XX0 is not set
 | 
				
			||||||
CONFIG_ARCH_MXC=y
 | 
					CONFIG_ARCH_MXC=y
 | 
				
			||||||
# CONFIG_ARCH_ORION5X is not set
 | 
					# CONFIG_ARCH_ORION5X is not set
 | 
				
			||||||
# CONFIG_ARCH_PNX4008 is not set
 | 
					# CONFIG_ARCH_PNX4008 is not set
 | 
				
			||||||
# CONFIG_ARCH_PXA is not set
 | 
					# CONFIG_ARCH_PXA is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_MMP is not set
 | 
				
			||||||
# CONFIG_ARCH_RPC is not set
 | 
					# CONFIG_ARCH_RPC is not set
 | 
				
			||||||
# CONFIG_ARCH_SA1100 is not set
 | 
					# CONFIG_ARCH_SA1100 is not set
 | 
				
			||||||
# CONFIG_ARCH_S3C2410 is not set
 | 
					# CONFIG_ARCH_S3C2410 is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_S3C64XX is not set
 | 
				
			||||||
# CONFIG_ARCH_SHARK is not set
 | 
					# CONFIG_ARCH_SHARK is not set
 | 
				
			||||||
# CONFIG_ARCH_LH7A40X is not set
 | 
					# CONFIG_ARCH_LH7A40X is not set
 | 
				
			||||||
# CONFIG_ARCH_DAVINCI is not set
 | 
					# CONFIG_ARCH_DAVINCI is not set
 | 
				
			||||||
# CONFIG_ARCH_OMAP is not set
 | 
					# CONFIG_ARCH_OMAP is not set
 | 
				
			||||||
# CONFIG_ARCH_MSM7X00A is not set
 | 
					# CONFIG_ARCH_MSM is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_W90X900 is not set
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Boot options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Power management
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Freescale MXC Implementations
 | 
					# Freescale MXC Implementations
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_ARCH_MX1 is not set
 | 
				
			||||||
CONFIG_ARCH_MX2=y
 | 
					CONFIG_ARCH_MX2=y
 | 
				
			||||||
# CONFIG_ARCH_MX3 is not set
 | 
					# CONFIG_ARCH_MX3 is not set
 | 
				
			||||||
 | 
					# CONFIG_MACH_MX21 is not set
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# MX2 family CPU support
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_MACH_MX27=y
 | 
					CONFIG_MACH_MX27=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# MX2 Platforms
 | 
					# MX2 platforms:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MACH_MX27ADS is not set
 | 
					CONFIG_MACH_MX27ADS=y
 | 
				
			||||||
CONFIG_MACH_PCM038=y
 | 
					CONFIG_MACH_PCM038=y
 | 
				
			||||||
CONFIG_MACH_PCM970_BASEBOARD=y
 | 
					CONFIG_MACH_PCM970_BASEBOARD=y
 | 
				
			||||||
 | 
					CONFIG_MXC_IRQ_PRIOR=y
 | 
				
			||||||
 | 
					CONFIG_MXC_PWM=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Processor Type
 | 
					# Processor Type
 | 
				
			||||||
| 
						 | 
					@ -209,6 +214,7 @@ CONFIG_ARM_THUMB=y
 | 
				
			||||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
 | 
					# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
 | 
				
			||||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
 | 
					# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
 | 
				
			||||||
# CONFIG_OUTER_CACHE is not set
 | 
					# CONFIG_OUTER_CACHE is not set
 | 
				
			||||||
 | 
					CONFIG_COMMON_CLKDEV=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Bus support
 | 
					# Bus support
 | 
				
			||||||
| 
						 | 
					@ -224,25 +230,32 @@ CONFIG_TICK_ONESHOT=y
 | 
				
			||||||
CONFIG_NO_HZ=y
 | 
					CONFIG_NO_HZ=y
 | 
				
			||||||
CONFIG_HIGH_RES_TIMERS=y
 | 
					CONFIG_HIGH_RES_TIMERS=y
 | 
				
			||||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
					CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
				
			||||||
 | 
					CONFIG_VMSPLIT_3G=y
 | 
				
			||||||
 | 
					# CONFIG_VMSPLIT_2G is not set
 | 
				
			||||||
 | 
					# CONFIG_VMSPLIT_1G is not set
 | 
				
			||||||
 | 
					CONFIG_PAGE_OFFSET=0xC0000000
 | 
				
			||||||
CONFIG_PREEMPT=y
 | 
					CONFIG_PREEMPT=y
 | 
				
			||||||
CONFIG_HZ=100
 | 
					CONFIG_HZ=100
 | 
				
			||||||
CONFIG_AEABI=y
 | 
					CONFIG_AEABI=y
 | 
				
			||||||
# CONFIG_OABI_COMPAT is not set
 | 
					CONFIG_OABI_COMPAT=y
 | 
				
			||||||
# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
 | 
					CONFIG_ARCH_FLATMEM_HAS_HOLES=y
 | 
				
			||||||
 | 
					# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 | 
				
			||||||
 | 
					# CONFIG_HIGHMEM is not set
 | 
				
			||||||
CONFIG_SELECT_MEMORY_MODEL=y
 | 
					CONFIG_SELECT_MEMORY_MODEL=y
 | 
				
			||||||
CONFIG_FLATMEM_MANUAL=y
 | 
					CONFIG_FLATMEM_MANUAL=y
 | 
				
			||||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
					# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
				
			||||||
# CONFIG_SPARSEMEM_MANUAL is not set
 | 
					# CONFIG_SPARSEMEM_MANUAL is not set
 | 
				
			||||||
CONFIG_FLATMEM=y
 | 
					CONFIG_FLATMEM=y
 | 
				
			||||||
CONFIG_FLAT_NODE_MEM_MAP=y
 | 
					CONFIG_FLAT_NODE_MEM_MAP=y
 | 
				
			||||||
# CONFIG_SPARSEMEM_STATIC is not set
 | 
					 | 
				
			||||||
# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
 | 
					 | 
				
			||||||
CONFIG_PAGEFLAGS_EXTENDED=y
 | 
					CONFIG_PAGEFLAGS_EXTENDED=y
 | 
				
			||||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
					CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
				
			||||||
# CONFIG_RESOURCES_64BIT is not set
 | 
					# CONFIG_PHYS_ADDR_T_64BIT is not set
 | 
				
			||||||
CONFIG_ZONE_DMA_FLAG=1
 | 
					CONFIG_ZONE_DMA_FLAG=0
 | 
				
			||||||
CONFIG_BOUNCE=y
 | 
					 | 
				
			||||||
CONFIG_VIRT_TO_BUS=y
 | 
					CONFIG_VIRT_TO_BUS=y
 | 
				
			||||||
 | 
					CONFIG_UNEVICTABLE_LRU=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCK=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCKED_PAGE_BIT=y
 | 
				
			||||||
CONFIG_ALIGNMENT_TRAP=y
 | 
					CONFIG_ALIGNMENT_TRAP=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -254,6 +267,11 @@ CONFIG_CMDLINE=""
 | 
				
			||||||
# CONFIG_XIP_KERNEL is not set
 | 
					# CONFIG_XIP_KERNEL is not set
 | 
				
			||||||
# CONFIG_KEXEC is not set
 | 
					# CONFIG_KEXEC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CPU Power Management
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CPU_IDLE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Floating point emulation
 | 
					# Floating point emulation
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -261,24 +279,33 @@ CONFIG_CMDLINE=""
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# At least one emulation must be selected
 | 
					# At least one emulation must be selected
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_FPE_NWFPE=y
 | 
				
			||||||
 | 
					CONFIG_FPE_NWFPE_XP=y
 | 
				
			||||||
 | 
					# CONFIG_FPE_FASTFPE is not set
 | 
				
			||||||
# CONFIG_VFP is not set
 | 
					# CONFIG_VFP is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Userspace binary formats
 | 
					# Userspace binary formats
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_BINFMT_ELF=y
 | 
					CONFIG_BINFMT_ELF=y
 | 
				
			||||||
 | 
					# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
 | 
				
			||||||
 | 
					CONFIG_HAVE_AOUT=y
 | 
				
			||||||
# CONFIG_BINFMT_AOUT is not set
 | 
					# CONFIG_BINFMT_AOUT is not set
 | 
				
			||||||
# CONFIG_BINFMT_MISC is not set
 | 
					# CONFIG_BINFMT_MISC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Power management options
 | 
					# Power management options
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_PM is not set
 | 
					CONFIG_PM=y
 | 
				
			||||||
 | 
					CONFIG_PM_DEBUG=y
 | 
				
			||||||
 | 
					# CONFIG_PM_VERBOSE is not set
 | 
				
			||||||
 | 
					CONFIG_CAN_PM_TRACE=y
 | 
				
			||||||
 | 
					CONFIG_PM_SLEEP=y
 | 
				
			||||||
 | 
					CONFIG_SUSPEND=y
 | 
				
			||||||
 | 
					# CONFIG_PM_TEST_SUSPEND is not set
 | 
				
			||||||
 | 
					CONFIG_SUSPEND_FREEZER=y
 | 
				
			||||||
 | 
					# CONFIG_APM_EMULATION is not set
 | 
				
			||||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
					CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Networking
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_NET=y
 | 
					CONFIG_NET=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -293,7 +320,7 @@ CONFIG_IP_MULTICAST=y
 | 
				
			||||||
# CONFIG_IP_ADVANCED_ROUTER is not set
 | 
					# CONFIG_IP_ADVANCED_ROUTER is not set
 | 
				
			||||||
CONFIG_IP_FIB_HASH=y
 | 
					CONFIG_IP_FIB_HASH=y
 | 
				
			||||||
CONFIG_IP_PNP=y
 | 
					CONFIG_IP_PNP=y
 | 
				
			||||||
# CONFIG_IP_PNP_DHCP is not set
 | 
					CONFIG_IP_PNP_DHCP=y
 | 
				
			||||||
# CONFIG_IP_PNP_BOOTP is not set
 | 
					# CONFIG_IP_PNP_BOOTP is not set
 | 
				
			||||||
# CONFIG_IP_PNP_RARP is not set
 | 
					# CONFIG_IP_PNP_RARP is not set
 | 
				
			||||||
# CONFIG_NET_IPIP is not set
 | 
					# CONFIG_NET_IPIP is not set
 | 
				
			||||||
| 
						 | 
					@ -323,6 +350,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_TIPC is not set
 | 
					# CONFIG_TIPC is not set
 | 
				
			||||||
# CONFIG_ATM is not set
 | 
					# CONFIG_ATM is not set
 | 
				
			||||||
# CONFIG_BRIDGE is not set
 | 
					# CONFIG_BRIDGE is not set
 | 
				
			||||||
 | 
					# CONFIG_NET_DSA is not set
 | 
				
			||||||
# CONFIG_VLAN_8021Q is not set
 | 
					# CONFIG_VLAN_8021Q is not set
 | 
				
			||||||
# CONFIG_DECNET is not set
 | 
					# CONFIG_DECNET is not set
 | 
				
			||||||
# CONFIG_LLC2 is not set
 | 
					# CONFIG_LLC2 is not set
 | 
				
			||||||
| 
						 | 
					@ -332,26 +360,23 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_LAPB is not set
 | 
					# CONFIG_LAPB is not set
 | 
				
			||||||
# CONFIG_ECONET is not set
 | 
					# CONFIG_ECONET is not set
 | 
				
			||||||
# CONFIG_WAN_ROUTER is not set
 | 
					# CONFIG_WAN_ROUTER is not set
 | 
				
			||||||
 | 
					# CONFIG_PHONET is not set
 | 
				
			||||||
# CONFIG_NET_SCHED is not set
 | 
					# CONFIG_NET_SCHED is not set
 | 
				
			||||||
 | 
					# CONFIG_DCB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Network testing
 | 
					# Network testing
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_NET_PKTGEN is not set
 | 
					# CONFIG_NET_PKTGEN is not set
 | 
				
			||||||
# CONFIG_NET_TCPPROBE is not set
 | 
					# CONFIG_NET_TCPPROBE is not set
 | 
				
			||||||
 | 
					# CONFIG_NET_DROP_MONITOR is not set
 | 
				
			||||||
# CONFIG_HAMRADIO is not set
 | 
					# CONFIG_HAMRADIO is not set
 | 
				
			||||||
# CONFIG_CAN is not set
 | 
					# CONFIG_CAN is not set
 | 
				
			||||||
# CONFIG_IRDA is not set
 | 
					# CONFIG_IRDA is not set
 | 
				
			||||||
# CONFIG_BT is not set
 | 
					# CONFIG_BT is not set
 | 
				
			||||||
# CONFIG_AF_RXRPC is not set
 | 
					# CONFIG_AF_RXRPC is not set
 | 
				
			||||||
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
#
 | 
					# CONFIG_WIMAX is not set
 | 
				
			||||||
# Wireless
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_CFG80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_WIRELESS_EXT is not set
 | 
					 | 
				
			||||||
# CONFIG_MAC80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_IEEE80211 is not set
 | 
					 | 
				
			||||||
# CONFIG_RFKILL is not set
 | 
					# CONFIG_RFKILL is not set
 | 
				
			||||||
# CONFIG_NET_9P is not set
 | 
					# CONFIG_NET_9P is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -366,12 +391,15 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
 | 
				
			||||||
CONFIG_STANDALONE=y
 | 
					CONFIG_STANDALONE=y
 | 
				
			||||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
 | 
					CONFIG_PREVENT_FIRMWARE_BUILD=y
 | 
				
			||||||
CONFIG_FW_LOADER=y
 | 
					CONFIG_FW_LOADER=y
 | 
				
			||||||
 | 
					CONFIG_FIRMWARE_IN_KERNEL=y
 | 
				
			||||||
 | 
					CONFIG_EXTRA_FIRMWARE=""
 | 
				
			||||||
# CONFIG_SYS_HYPERVISOR is not set
 | 
					# CONFIG_SYS_HYPERVISOR is not set
 | 
				
			||||||
# CONFIG_CONNECTOR is not set
 | 
					# CONFIG_CONNECTOR is not set
 | 
				
			||||||
CONFIG_MTD=y
 | 
					CONFIG_MTD=y
 | 
				
			||||||
# CONFIG_MTD_DEBUG is not set
 | 
					# CONFIG_MTD_DEBUG is not set
 | 
				
			||||||
# CONFIG_MTD_CONCAT is not set
 | 
					# CONFIG_MTD_CONCAT is not set
 | 
				
			||||||
CONFIG_MTD_PARTITIONS=y
 | 
					CONFIG_MTD_PARTITIONS=y
 | 
				
			||||||
 | 
					# CONFIG_MTD_TESTS is not set
 | 
				
			||||||
# CONFIG_MTD_REDBOOT_PARTS is not set
 | 
					# CONFIG_MTD_REDBOOT_PARTS is not set
 | 
				
			||||||
CONFIG_MTD_CMDLINE_PARTS=y
 | 
					CONFIG_MTD_CMDLINE_PARTS=y
 | 
				
			||||||
# CONFIG_MTD_AFS_PARTS is not set
 | 
					# CONFIG_MTD_AFS_PARTS is not set
 | 
				
			||||||
| 
						 | 
					@ -426,9 +454,7 @@ CONFIG_MTD_CFI_UTIL=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
					# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
				
			||||||
CONFIG_MTD_PHYSMAP=y
 | 
					CONFIG_MTD_PHYSMAP=y
 | 
				
			||||||
CONFIG_MTD_PHYSMAP_START=0x00000000
 | 
					# CONFIG_MTD_PHYSMAP_COMPAT is not set
 | 
				
			||||||
CONFIG_MTD_PHYSMAP_LEN=0x0
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
 | 
					 | 
				
			||||||
# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
					# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
				
			||||||
# CONFIG_MTD_PLATRAM is not set
 | 
					# CONFIG_MTD_PLATRAM is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -451,6 +477,11 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
 | 
				
			||||||
# CONFIG_MTD_NAND is not set
 | 
					# CONFIG_MTD_NAND is not set
 | 
				
			||||||
# CONFIG_MTD_ONENAND is not set
 | 
					# CONFIG_MTD_ONENAND is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# LPDDR flash memory drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MTD_LPDDR is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# UBI - Unsorted block images
 | 
					# UBI - Unsorted block images
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -477,7 +508,7 @@ CONFIG_HAVE_IDE=y
 | 
				
			||||||
# CONFIG_ATA is not set
 | 
					# CONFIG_ATA is not set
 | 
				
			||||||
# CONFIG_MD is not set
 | 
					# CONFIG_MD is not set
 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					CONFIG_NETDEVICES=y
 | 
				
			||||||
# CONFIG_NETDEVICES_MULTIQUEUE is not set
 | 
					CONFIG_COMPAT_NET_DEV_OPS=y
 | 
				
			||||||
# CONFIG_DUMMY is not set
 | 
					# CONFIG_DUMMY is not set
 | 
				
			||||||
# CONFIG_BONDING is not set
 | 
					# CONFIG_BONDING is not set
 | 
				
			||||||
# CONFIG_MACVLAN is not set
 | 
					# CONFIG_MACVLAN is not set
 | 
				
			||||||
| 
						 | 
					@ -491,12 +522,20 @@ CONFIG_NET_ETHERNET=y
 | 
				
			||||||
# CONFIG_SMC91X is not set
 | 
					# CONFIG_SMC91X is not set
 | 
				
			||||||
# CONFIG_DM9000 is not set
 | 
					# CONFIG_DM9000 is not set
 | 
				
			||||||
# CONFIG_ENC28J60 is not set
 | 
					# CONFIG_ENC28J60 is not set
 | 
				
			||||||
 | 
					# CONFIG_ETHOC is not set
 | 
				
			||||||
 | 
					# CONFIG_SMC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_SMSC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_DNET is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
					# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
					# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
 | 
				
			||||||
# CONFIG_B44 is not set
 | 
					# CONFIG_B44 is not set
 | 
				
			||||||
CONFIG_FEC_OLD=y
 | 
					CONFIG_FEC=y
 | 
				
			||||||
 | 
					# CONFIG_FEC2 is not set
 | 
				
			||||||
# CONFIG_NETDEV_1000 is not set
 | 
					# CONFIG_NETDEV_1000 is not set
 | 
				
			||||||
# CONFIG_NETDEV_10000 is not set
 | 
					# CONFIG_NETDEV_10000 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -505,7 +544,10 @@ CONFIG_FEC_OLD=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_WLAN_PRE80211 is not set
 | 
					# CONFIG_WLAN_PRE80211 is not set
 | 
				
			||||||
# CONFIG_WLAN_80211 is not set
 | 
					# CONFIG_WLAN_80211 is not set
 | 
				
			||||||
# CONFIG_IWLWIFI_LEDS is not set
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Enable WiMAX (Networking options) to see the WiMAX drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# CONFIG_WAN is not set
 | 
					# CONFIG_WAN is not set
 | 
				
			||||||
# CONFIG_PPP is not set
 | 
					# CONFIG_PPP is not set
 | 
				
			||||||
# CONFIG_SLIP is not set
 | 
					# CONFIG_SLIP is not set
 | 
				
			||||||
| 
						 | 
					@ -541,12 +583,15 @@ CONFIG_INPUT_TOUCHSCREEN=y
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_FUJITSU is not set
 | 
					# CONFIG_TOUCHSCREEN_FUJITSU is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_GUNZE is not set
 | 
					# CONFIG_TOUCHSCREEN_GUNZE is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_ELO is not set
 | 
					# CONFIG_TOUCHSCREEN_ELO is not set
 | 
				
			||||||
 | 
					# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_MTOUCH is not set
 | 
					# CONFIG_TOUCHSCREEN_MTOUCH is not set
 | 
				
			||||||
 | 
					# CONFIG_TOUCHSCREEN_INEXIO is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_MK712 is not set
 | 
					# CONFIG_TOUCHSCREEN_MK712 is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_PENMOUNT is not set
 | 
					# CONFIG_TOUCHSCREEN_PENMOUNT is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
 | 
					# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
 | 
					# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
 | 
				
			||||||
# CONFIG_TOUCHSCREEN_UCB1400 is not set
 | 
					# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
 | 
				
			||||||
 | 
					# CONFIG_TOUCHSCREEN_TSC2007 is not set
 | 
				
			||||||
# CONFIG_INPUT_MISC is not set
 | 
					# CONFIG_INPUT_MISC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -559,6 +604,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
 | 
				
			||||||
# Character devices
 | 
					# Character devices
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_VT=y
 | 
					CONFIG_VT=y
 | 
				
			||||||
 | 
					CONFIG_CONSOLE_TRANSLATIONS=y
 | 
				
			||||||
CONFIG_VT_CONSOLE=y
 | 
					CONFIG_VT_CONSOLE=y
 | 
				
			||||||
CONFIG_HW_CONSOLE=y
 | 
					CONFIG_HW_CONSOLE=y
 | 
				
			||||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
 | 
					# CONFIG_VT_HW_CONSOLE_BINDING is not set
 | 
				
			||||||
| 
						 | 
					@ -573,42 +619,55 @@ CONFIG_DEVKMEM=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Non-8250 serial port support
 | 
					# Non-8250 serial port support
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_SERIAL_MAX3100 is not set
 | 
				
			||||||
CONFIG_SERIAL_IMX=y
 | 
					CONFIG_SERIAL_IMX=y
 | 
				
			||||||
CONFIG_SERIAL_IMX_CONSOLE=y
 | 
					CONFIG_SERIAL_IMX_CONSOLE=y
 | 
				
			||||||
CONFIG_SERIAL_CORE=y
 | 
					CONFIG_SERIAL_CORE=y
 | 
				
			||||||
CONFIG_SERIAL_CORE_CONSOLE=y
 | 
					CONFIG_SERIAL_CORE_CONSOLE=y
 | 
				
			||||||
CONFIG_UNIX98_PTYS=y
 | 
					CONFIG_UNIX98_PTYS=y
 | 
				
			||||||
 | 
					# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
 | 
				
			||||||
# CONFIG_LEGACY_PTYS is not set
 | 
					# CONFIG_LEGACY_PTYS is not set
 | 
				
			||||||
# CONFIG_IPMI_HANDLER is not set
 | 
					# CONFIG_IPMI_HANDLER is not set
 | 
				
			||||||
# CONFIG_HW_RANDOM is not set
 | 
					# CONFIG_HW_RANDOM is not set
 | 
				
			||||||
# CONFIG_NVRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_R3964 is not set
 | 
					# CONFIG_R3964 is not set
 | 
				
			||||||
# CONFIG_RAW_DRIVER is not set
 | 
					# CONFIG_RAW_DRIVER is not set
 | 
				
			||||||
# CONFIG_TCG_TPM is not set
 | 
					# CONFIG_TCG_TPM is not set
 | 
				
			||||||
CONFIG_I2C=y
 | 
					CONFIG_I2C=y
 | 
				
			||||||
CONFIG_I2C_BOARDINFO=y
 | 
					CONFIG_I2C_BOARDINFO=y
 | 
				
			||||||
# CONFIG_I2C_CHARDEV is not set
 | 
					CONFIG_I2C_CHARDEV=y
 | 
				
			||||||
 | 
					CONFIG_I2C_HELPER_AUTO=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# I2C Hardware Bus support
 | 
					# I2C Hardware Bus support
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# I2C system bus drivers (mostly embedded / system-on-chip)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# CONFIG_I2C_GPIO is not set
 | 
					# CONFIG_I2C_GPIO is not set
 | 
				
			||||||
 | 
					CONFIG_I2C_IMX=y
 | 
				
			||||||
# CONFIG_I2C_OCORES is not set
 | 
					# CONFIG_I2C_OCORES is not set
 | 
				
			||||||
# CONFIG_I2C_PARPORT_LIGHT is not set
 | 
					 | 
				
			||||||
# CONFIG_I2C_SIMTEC is not set
 | 
					# CONFIG_I2C_SIMTEC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# External I2C/SMBus adapter drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_I2C_PARPORT_LIGHT is not set
 | 
				
			||||||
# CONFIG_I2C_TAOS_EVM is not set
 | 
					# CONFIG_I2C_TAOS_EVM is not set
 | 
				
			||||||
# CONFIG_I2C_STUB is not set
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Other I2C/SMBus bus drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# CONFIG_I2C_PCA_PLATFORM is not set
 | 
					# CONFIG_I2C_PCA_PLATFORM is not set
 | 
				
			||||||
 | 
					# CONFIG_I2C_STUB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Miscellaneous I2C Chip support
 | 
					# Miscellaneous I2C Chip support
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_DS1682 is not set
 | 
					# CONFIG_DS1682 is not set
 | 
				
			||||||
# CONFIG_EEPROM_LEGACY is not set
 | 
					 | 
				
			||||||
# CONFIG_SENSORS_PCF8574 is not set
 | 
					# CONFIG_SENSORS_PCF8574 is not set
 | 
				
			||||||
# CONFIG_PCF8575 is not set
 | 
					# CONFIG_PCF8575 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PCF8591 is not set
 | 
					# CONFIG_SENSORS_PCA9539 is not set
 | 
				
			||||||
# CONFIG_TPS65010 is not set
 | 
					 | 
				
			||||||
# CONFIG_SENSORS_MAX6875 is not set
 | 
					# CONFIG_SENSORS_MAX6875 is not set
 | 
				
			||||||
# CONFIG_SENSORS_TSL2550 is not set
 | 
					# CONFIG_SENSORS_TSL2550 is not set
 | 
				
			||||||
# CONFIG_I2C_DEBUG_CORE is not set
 | 
					# CONFIG_I2C_DEBUG_CORE is not set
 | 
				
			||||||
| 
						 | 
					@ -622,47 +681,83 @@ CONFIG_SPI_MASTER=y
 | 
				
			||||||
# SPI Master Controller Drivers
 | 
					# SPI Master Controller Drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_SPI_BITBANG=y
 | 
					CONFIG_SPI_BITBANG=y
 | 
				
			||||||
 | 
					# CONFIG_SPI_GPIO is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# SPI Protocol Masters
 | 
					# SPI Protocol Masters
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_EEPROM_AT25 is not set
 | 
					 | 
				
			||||||
# CONFIG_SPI_SPIDEV is not set
 | 
					# CONFIG_SPI_SPIDEV is not set
 | 
				
			||||||
# CONFIG_SPI_TLE62X0 is not set
 | 
					# CONFIG_SPI_TLE62X0 is not set
 | 
				
			||||||
CONFIG_HAVE_GPIO_LIB=y
 | 
					CONFIG_ARCH_REQUIRE_GPIOLIB=y
 | 
				
			||||||
 | 
					CONFIG_GPIOLIB=y
 | 
				
			||||||
 | 
					# CONFIG_GPIO_SYSFS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# GPIO Support
 | 
					# Memory mapped GPIO expanders:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# I2C GPIO expanders:
 | 
					# I2C GPIO expanders:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_GPIO_MAX732X is not set
 | 
				
			||||||
# CONFIG_GPIO_PCA953X is not set
 | 
					# CONFIG_GPIO_PCA953X is not set
 | 
				
			||||||
# CONFIG_GPIO_PCF857X is not set
 | 
					# CONFIG_GPIO_PCF857X is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# PCI GPIO expanders:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# SPI GPIO expanders:
 | 
					# SPI GPIO expanders:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_GPIO_MAX7301 is not set
 | 
				
			||||||
# CONFIG_GPIO_MCP23S08 is not set
 | 
					# CONFIG_GPIO_MCP23S08 is not set
 | 
				
			||||||
# CONFIG_W1 is not set
 | 
					CONFIG_W1=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 1-wire Bus Masters
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_W1_MASTER_DS2482 is not set
 | 
				
			||||||
 | 
					CONFIG_W1_MASTER_MXC=y
 | 
				
			||||||
 | 
					# CONFIG_W1_MASTER_GPIO is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 1-wire Slaves
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_W1_SLAVE_THERM=y
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_SMEM is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_DS2431 is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_DS2433 is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_DS2760 is not set
 | 
				
			||||||
 | 
					# CONFIG_W1_SLAVE_BQ27000 is not set
 | 
				
			||||||
# CONFIG_POWER_SUPPLY is not set
 | 
					# CONFIG_POWER_SUPPLY is not set
 | 
				
			||||||
# CONFIG_HWMON is not set
 | 
					# CONFIG_HWMON is not set
 | 
				
			||||||
 | 
					# CONFIG_THERMAL is not set
 | 
				
			||||||
 | 
					# CONFIG_THERMAL_HWMON is not set
 | 
				
			||||||
# CONFIG_WATCHDOG is not set
 | 
					# CONFIG_WATCHDOG is not set
 | 
				
			||||||
 | 
					CONFIG_SSB_POSSIBLE=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Sonics Silicon Backplane
 | 
					# Sonics Silicon Backplane
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_SSB_POSSIBLE=y
 | 
					 | 
				
			||||||
# CONFIG_SSB is not set
 | 
					# CONFIG_SSB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Multifunction device drivers
 | 
					# Multifunction device drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MFD_CORE is not set
 | 
				
			||||||
# CONFIG_MFD_SM501 is not set
 | 
					# CONFIG_MFD_SM501 is not set
 | 
				
			||||||
# CONFIG_MFD_ASIC3 is not set
 | 
					# CONFIG_MFD_ASIC3 is not set
 | 
				
			||||||
# CONFIG_HTC_EGPIO is not set
 | 
					# CONFIG_HTC_EGPIO is not set
 | 
				
			||||||
# CONFIG_HTC_PASIC3 is not set
 | 
					# CONFIG_HTC_PASIC3 is not set
 | 
				
			||||||
 | 
					# CONFIG_TPS65010 is not set
 | 
				
			||||||
 | 
					# CONFIG_TWL4030_CORE is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_TMIO is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_TC6393XB is not set
 | 
				
			||||||
 | 
					# CONFIG_PMIC_DA903X is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_WM8400 is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_WM8350_I2C is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_PCF50633 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Multimedia devices
 | 
					# Multimedia devices
 | 
				
			||||||
| 
						 | 
					@ -683,7 +778,7 @@ CONFIG_VIDEO_MEDIA=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MEDIA_ATTACH is not set
 | 
					# CONFIG_MEDIA_ATTACH is not set
 | 
				
			||||||
CONFIG_MEDIA_TUNER=y
 | 
					CONFIG_MEDIA_TUNER=y
 | 
				
			||||||
# CONFIG_MEDIA_TUNER_CUSTOMIZE is not set
 | 
					# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
 | 
				
			||||||
CONFIG_MEDIA_TUNER_SIMPLE=y
 | 
					CONFIG_MEDIA_TUNER_SIMPLE=y
 | 
				
			||||||
CONFIG_MEDIA_TUNER_TDA8290=y
 | 
					CONFIG_MEDIA_TUNER_TDA8290=y
 | 
				
			||||||
CONFIG_MEDIA_TUNER_TDA9887=y
 | 
					CONFIG_MEDIA_TUNER_TDA9887=y
 | 
				
			||||||
| 
						 | 
					@ -692,16 +787,17 @@ CONFIG_MEDIA_TUNER_TEA5767=y
 | 
				
			||||||
CONFIG_MEDIA_TUNER_MT20XX=y
 | 
					CONFIG_MEDIA_TUNER_MT20XX=y
 | 
				
			||||||
CONFIG_MEDIA_TUNER_XC2028=y
 | 
					CONFIG_MEDIA_TUNER_XC2028=y
 | 
				
			||||||
CONFIG_MEDIA_TUNER_XC5000=y
 | 
					CONFIG_MEDIA_TUNER_XC5000=y
 | 
				
			||||||
 | 
					CONFIG_MEDIA_TUNER_MC44S803=y
 | 
				
			||||||
CONFIG_VIDEO_V4L2=y
 | 
					CONFIG_VIDEO_V4L2=y
 | 
				
			||||||
CONFIG_VIDEO_V4L1=y
 | 
					CONFIG_VIDEO_V4L1=y
 | 
				
			||||||
CONFIG_VIDEO_CAPTURE_DRIVERS=y
 | 
					CONFIG_VIDEO_CAPTURE_DRIVERS=y
 | 
				
			||||||
# CONFIG_VIDEO_ADV_DEBUG is not set
 | 
					# CONFIG_VIDEO_ADV_DEBUG is not set
 | 
				
			||||||
 | 
					# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
 | 
				
			||||||
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
 | 
					CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
 | 
				
			||||||
# CONFIG_VIDEO_VIVI is not set
 | 
					# CONFIG_VIDEO_VIVI is not set
 | 
				
			||||||
# CONFIG_VIDEO_CPIA is not set
 | 
					# CONFIG_VIDEO_CPIA is not set
 | 
				
			||||||
# CONFIG_VIDEO_SAA5246A is not set
 | 
					# CONFIG_VIDEO_SAA5246A is not set
 | 
				
			||||||
# CONFIG_VIDEO_SAA5249 is not set
 | 
					# CONFIG_VIDEO_SAA5249 is not set
 | 
				
			||||||
# CONFIG_TUNER_3036 is not set
 | 
					 | 
				
			||||||
# CONFIG_SOC_CAMERA is not set
 | 
					# CONFIG_SOC_CAMERA is not set
 | 
				
			||||||
# CONFIG_RADIO_ADAPTERS is not set
 | 
					# CONFIG_RADIO_ADAPTERS is not set
 | 
				
			||||||
# CONFIG_DAB is not set
 | 
					# CONFIG_DAB is not set
 | 
				
			||||||
| 
						 | 
					@ -714,9 +810,10 @@ CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
 | 
				
			||||||
CONFIG_FB=y
 | 
					CONFIG_FB=y
 | 
				
			||||||
# CONFIG_FIRMWARE_EDID is not set
 | 
					# CONFIG_FIRMWARE_EDID is not set
 | 
				
			||||||
# CONFIG_FB_DDC is not set
 | 
					# CONFIG_FB_DDC is not set
 | 
				
			||||||
# CONFIG_FB_CFB_FILLRECT is not set
 | 
					# CONFIG_FB_BOOT_VESA_SUPPORT is not set
 | 
				
			||||||
# CONFIG_FB_CFB_COPYAREA is not set
 | 
					CONFIG_FB_CFB_FILLRECT=y
 | 
				
			||||||
# CONFIG_FB_CFB_IMAGEBLIT is not set
 | 
					CONFIG_FB_CFB_COPYAREA=y
 | 
				
			||||||
 | 
					CONFIG_FB_CFB_IMAGEBLIT=y
 | 
				
			||||||
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
 | 
					# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
 | 
				
			||||||
# CONFIG_FB_SYS_FILLRECT is not set
 | 
					# CONFIG_FB_SYS_FILLRECT is not set
 | 
				
			||||||
# CONFIG_FB_SYS_COPYAREA is not set
 | 
					# CONFIG_FB_SYS_COPYAREA is not set
 | 
				
			||||||
| 
						 | 
					@ -732,8 +829,12 @@ CONFIG_FB=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Frame buffer hardware drivers
 | 
					# Frame buffer hardware drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_FB_IMX=y
 | 
				
			||||||
# CONFIG_FB_S1D13XXX is not set
 | 
					# CONFIG_FB_S1D13XXX is not set
 | 
				
			||||||
# CONFIG_FB_VIRTUAL is not set
 | 
					# CONFIG_FB_VIRTUAL is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_METRONOME is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_MB862XX is not set
 | 
				
			||||||
 | 
					# CONFIG_FB_BROADSHEET is not set
 | 
				
			||||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
 | 
					# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -761,14 +862,29 @@ CONFIG_FONT_8x8=y
 | 
				
			||||||
# CONFIG_FONT_SUN12x22 is not set
 | 
					# CONFIG_FONT_SUN12x22 is not set
 | 
				
			||||||
# CONFIG_FONT_10x18 is not set
 | 
					# CONFIG_FONT_10x18 is not set
 | 
				
			||||||
# CONFIG_LOGO is not set
 | 
					# CONFIG_LOGO is not set
 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Sound
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_SOUND is not set
 | 
					# CONFIG_SOUND is not set
 | 
				
			||||||
# CONFIG_HID_SUPPORT is not set
 | 
					# CONFIG_HID_SUPPORT is not set
 | 
				
			||||||
# CONFIG_USB_SUPPORT is not set
 | 
					# CONFIG_USB_SUPPORT is not set
 | 
				
			||||||
# CONFIG_MMC is not set
 | 
					CONFIG_MMC=y
 | 
				
			||||||
 | 
					# CONFIG_MMC_DEBUG is not set
 | 
				
			||||||
 | 
					# CONFIG_MMC_UNSAFE_RESUME is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# MMC/SD/SDIO Card Drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_MMC_BLOCK=y
 | 
				
			||||||
 | 
					CONFIG_MMC_BLOCK_BOUNCE=y
 | 
				
			||||||
 | 
					# CONFIG_SDIO_UART is not set
 | 
				
			||||||
 | 
					# CONFIG_MMC_TEST is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# MMC/SD/SDIO Host Controller Drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MMC_SDHCI is not set
 | 
				
			||||||
 | 
					CONFIG_MMC_MXC=y
 | 
				
			||||||
 | 
					# CONFIG_MMC_SPI is not set
 | 
				
			||||||
 | 
					# CONFIG_MEMSTICK is not set
 | 
				
			||||||
 | 
					# CONFIG_ACCESSIBILITY is not set
 | 
				
			||||||
# CONFIG_NEW_LEDS is not set
 | 
					# CONFIG_NEW_LEDS is not set
 | 
				
			||||||
CONFIG_RTC_LIB=y
 | 
					CONFIG_RTC_LIB=y
 | 
				
			||||||
CONFIG_RTC_CLASS=y
 | 
					CONFIG_RTC_CLASS=y
 | 
				
			||||||
| 
						 | 
					@ -800,42 +916,56 @@ CONFIG_RTC_DRV_PCF8563=y
 | 
				
			||||||
# CONFIG_RTC_DRV_M41T80 is not set
 | 
					# CONFIG_RTC_DRV_M41T80 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_S35390A is not set
 | 
					# CONFIG_RTC_DRV_S35390A is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_FM3130 is not set
 | 
					# CONFIG_RTC_DRV_FM3130 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_RX8581 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# SPI RTC drivers
 | 
					# SPI RTC drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_M41T94 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_DS1305 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_DS1390 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_MAX6902 is not set
 | 
					# CONFIG_RTC_DRV_MAX6902 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_R9701 is not set
 | 
					# CONFIG_RTC_DRV_R9701 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_RS5C348 is not set
 | 
					# CONFIG_RTC_DRV_RS5C348 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_DS3234 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Platform RTC drivers
 | 
					# Platform RTC drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_RTC_DRV_CMOS is not set
 | 
					# CONFIG_RTC_DRV_CMOS is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_DS1286 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_DS1511 is not set
 | 
					# CONFIG_RTC_DRV_DS1511 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_DS1553 is not set
 | 
					# CONFIG_RTC_DRV_DS1553 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_DS1742 is not set
 | 
					# CONFIG_RTC_DRV_DS1742 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_STK17TA8 is not set
 | 
					# CONFIG_RTC_DRV_STK17TA8 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_M48T86 is not set
 | 
					# CONFIG_RTC_DRV_M48T86 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_M48T35 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_M48T59 is not set
 | 
					# CONFIG_RTC_DRV_M48T59 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_BQ4802 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_V3020 is not set
 | 
					# CONFIG_RTC_DRV_V3020 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# on-CPU RTC drivers
 | 
					# on-CPU RTC drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_DMADEVICES is not set
 | 
				
			||||||
 | 
					# CONFIG_AUXDISPLAY is not set
 | 
				
			||||||
 | 
					# CONFIG_REGULATOR is not set
 | 
				
			||||||
# CONFIG_UIO is not set
 | 
					# CONFIG_UIO is not set
 | 
				
			||||||
 | 
					# CONFIG_STAGING is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# File systems
 | 
					# File systems
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_EXT2_FS is not set
 | 
					# CONFIG_EXT2_FS is not set
 | 
				
			||||||
# CONFIG_EXT3_FS is not set
 | 
					# CONFIG_EXT3_FS is not set
 | 
				
			||||||
# CONFIG_EXT4DEV_FS is not set
 | 
					# CONFIG_EXT4_FS is not set
 | 
				
			||||||
# CONFIG_REISERFS_FS is not set
 | 
					# CONFIG_REISERFS_FS is not set
 | 
				
			||||||
# CONFIG_JFS_FS is not set
 | 
					# CONFIG_JFS_FS is not set
 | 
				
			||||||
# CONFIG_FS_POSIX_ACL is not set
 | 
					# CONFIG_FS_POSIX_ACL is not set
 | 
				
			||||||
 | 
					CONFIG_FILE_LOCKING=y
 | 
				
			||||||
# CONFIG_XFS_FS is not set
 | 
					# CONFIG_XFS_FS is not set
 | 
				
			||||||
# CONFIG_OCFS2_FS is not set
 | 
					# CONFIG_OCFS2_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_BTRFS_FS is not set
 | 
				
			||||||
# CONFIG_DNOTIFY is not set
 | 
					# CONFIG_DNOTIFY is not set
 | 
				
			||||||
# CONFIG_INOTIFY is not set
 | 
					# CONFIG_INOTIFY is not set
 | 
				
			||||||
# CONFIG_QUOTA is not set
 | 
					# CONFIG_QUOTA is not set
 | 
				
			||||||
| 
						 | 
					@ -843,6 +973,11 @@ CONFIG_RTC_DRV_PCF8563=y
 | 
				
			||||||
# CONFIG_AUTOFS4_FS is not set
 | 
					# CONFIG_AUTOFS4_FS is not set
 | 
				
			||||||
# CONFIG_FUSE_FS is not set
 | 
					# CONFIG_FUSE_FS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Caches
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FSCACHE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CD-ROM/DVD Filesystems
 | 
					# CD-ROM/DVD Filesystems
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -861,15 +996,13 @@ CONFIG_RTC_DRV_PCF8563=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_PROC_FS=y
 | 
					CONFIG_PROC_FS=y
 | 
				
			||||||
CONFIG_PROC_SYSCTL=y
 | 
					CONFIG_PROC_SYSCTL=y
 | 
				
			||||||
 | 
					# CONFIG_PROC_PAGE_MONITOR is not set
 | 
				
			||||||
CONFIG_SYSFS=y
 | 
					CONFIG_SYSFS=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
# CONFIG_TMPFS_POSIX_ACL is not set
 | 
					# CONFIG_TMPFS_POSIX_ACL is not set
 | 
				
			||||||
# CONFIG_HUGETLB_PAGE is not set
 | 
					# CONFIG_HUGETLB_PAGE is not set
 | 
				
			||||||
# CONFIG_CONFIGFS_FS is not set
 | 
					# CONFIG_CONFIGFS_FS is not set
 | 
				
			||||||
 | 
					CONFIG_MISC_FILESYSTEMS=y
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Miscellaneous filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_ADFS_FS is not set
 | 
					# CONFIG_ADFS_FS is not set
 | 
				
			||||||
# CONFIG_AFFS_FS is not set
 | 
					# CONFIG_AFFS_FS is not set
 | 
				
			||||||
# CONFIG_HFS_FS is not set
 | 
					# CONFIG_HFS_FS is not set
 | 
				
			||||||
| 
						 | 
					@ -889,25 +1022,27 @@ CONFIG_JFFS2_ZLIB=y
 | 
				
			||||||
CONFIG_JFFS2_RTIME=y
 | 
					CONFIG_JFFS2_RTIME=y
 | 
				
			||||||
# CONFIG_JFFS2_RUBIN is not set
 | 
					# CONFIG_JFFS2_RUBIN is not set
 | 
				
			||||||
# CONFIG_CRAMFS is not set
 | 
					# CONFIG_CRAMFS is not set
 | 
				
			||||||
 | 
					# CONFIG_SQUASHFS is not set
 | 
				
			||||||
# CONFIG_VXFS_FS is not set
 | 
					# CONFIG_VXFS_FS is not set
 | 
				
			||||||
# CONFIG_MINIX_FS is not set
 | 
					# CONFIG_MINIX_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_OMFS_FS is not set
 | 
				
			||||||
# CONFIG_HPFS_FS is not set
 | 
					# CONFIG_HPFS_FS is not set
 | 
				
			||||||
# CONFIG_QNX4FS_FS is not set
 | 
					# CONFIG_QNX4FS_FS is not set
 | 
				
			||||||
# CONFIG_ROMFS_FS is not set
 | 
					# CONFIG_ROMFS_FS is not set
 | 
				
			||||||
# CONFIG_SYSV_FS is not set
 | 
					# CONFIG_SYSV_FS is not set
 | 
				
			||||||
# CONFIG_UFS_FS is not set
 | 
					# CONFIG_UFS_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_NILFS2_FS is not set
 | 
				
			||||||
CONFIG_NETWORK_FILESYSTEMS=y
 | 
					CONFIG_NETWORK_FILESYSTEMS=y
 | 
				
			||||||
CONFIG_NFS_FS=y
 | 
					CONFIG_NFS_FS=y
 | 
				
			||||||
CONFIG_NFS_V3=y
 | 
					CONFIG_NFS_V3=y
 | 
				
			||||||
# CONFIG_NFS_V3_ACL is not set
 | 
					# CONFIG_NFS_V3_ACL is not set
 | 
				
			||||||
# CONFIG_NFS_V4 is not set
 | 
					# CONFIG_NFS_V4 is not set
 | 
				
			||||||
# CONFIG_NFSD is not set
 | 
					 | 
				
			||||||
CONFIG_ROOT_NFS=y
 | 
					CONFIG_ROOT_NFS=y
 | 
				
			||||||
 | 
					# CONFIG_NFSD is not set
 | 
				
			||||||
CONFIG_LOCKD=y
 | 
					CONFIG_LOCKD=y
 | 
				
			||||||
CONFIG_LOCKD_V4=y
 | 
					CONFIG_LOCKD_V4=y
 | 
				
			||||||
CONFIG_NFS_COMMON=y
 | 
					CONFIG_NFS_COMMON=y
 | 
				
			||||||
CONFIG_SUNRPC=y
 | 
					CONFIG_SUNRPC=y
 | 
				
			||||||
# CONFIG_SUNRPC_BIND34 is not set
 | 
					 | 
				
			||||||
# 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
 | 
				
			||||||
| 
						 | 
					@ -972,12 +1107,41 @@ CONFIG_ENABLE_MUST_CHECK=y
 | 
				
			||||||
CONFIG_FRAME_WARN=1024
 | 
					CONFIG_FRAME_WARN=1024
 | 
				
			||||||
# CONFIG_MAGIC_SYSRQ is not set
 | 
					# CONFIG_MAGIC_SYSRQ is not set
 | 
				
			||||||
# CONFIG_UNUSED_SYMBOLS is not set
 | 
					# CONFIG_UNUSED_SYMBOLS is not set
 | 
				
			||||||
# CONFIG_DEBUG_FS is not set
 | 
					CONFIG_DEBUG_FS=y
 | 
				
			||||||
# CONFIG_HEADERS_CHECK is not set
 | 
					# CONFIG_HEADERS_CHECK is not set
 | 
				
			||||||
# CONFIG_DEBUG_KERNEL is not set
 | 
					# CONFIG_DEBUG_KERNEL is not set
 | 
				
			||||||
 | 
					CONFIG_STACKTRACE=y
 | 
				
			||||||
# CONFIG_DEBUG_BUGVERBOSE is not set
 | 
					# CONFIG_DEBUG_BUGVERBOSE is not set
 | 
				
			||||||
CONFIG_FRAME_POINTER=y
 | 
					# CONFIG_DEBUG_MEMORY_INIT is not set
 | 
				
			||||||
 | 
					# CONFIG_RCU_CPU_STALL_DETECTOR is not set
 | 
				
			||||||
 | 
					# CONFIG_LATENCYTOP is not set
 | 
				
			||||||
 | 
					CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
				
			||||||
 | 
					CONFIG_NOP_TRACER=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_FUNCTION_TRACER=y
 | 
				
			||||||
 | 
					CONFIG_RING_BUFFER=y
 | 
				
			||||||
 | 
					CONFIG_TRACING=y
 | 
				
			||||||
 | 
					CONFIG_TRACING_SUPPORT=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Tracers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FUNCTION_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_IRQSOFF_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_SCHED_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_EVENT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BOOT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_TRACE_BRANCH_PROFILING is not set
 | 
				
			||||||
 | 
					# CONFIG_STACK_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_KMEMTRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_WORKQUEUE_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_FTRACE_STARTUP_TEST is not set
 | 
				
			||||||
 | 
					# CONFIG_DYNAMIC_DEBUG is not set
 | 
				
			||||||
# CONFIG_SAMPLES is not set
 | 
					# CONFIG_SAMPLES is not set
 | 
				
			||||||
 | 
					CONFIG_HAVE_ARCH_KGDB=y
 | 
				
			||||||
 | 
					CONFIG_ARM_UNWIND=y
 | 
				
			||||||
# CONFIG_DEBUG_USER is not set
 | 
					# CONFIG_DEBUG_USER is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -985,24 +1149,26 @@ CONFIG_FRAME_POINTER=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_KEYS is not set
 | 
					# CONFIG_KEYS is not set
 | 
				
			||||||
# CONFIG_SECURITY is not set
 | 
					# CONFIG_SECURITY is not set
 | 
				
			||||||
 | 
					# CONFIG_SECURITYFS is not set
 | 
				
			||||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
					# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
				
			||||||
# CONFIG_CRYPTO is not set
 | 
					# CONFIG_CRYPTO is not set
 | 
				
			||||||
 | 
					CONFIG_BINARY_PRINTF=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Library routines
 | 
					# Library routines
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_BITREVERSE=y
 | 
					CONFIG_BITREVERSE=y
 | 
				
			||||||
# CONFIG_GENERIC_FIND_FIRST_BIT is not set
 | 
					CONFIG_GENERIC_FIND_LAST_BIT=y
 | 
				
			||||||
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
 | 
					 | 
				
			||||||
# CONFIG_CRC_CCITT is not set
 | 
					# CONFIG_CRC_CCITT is not set
 | 
				
			||||||
# CONFIG_CRC16 is not set
 | 
					# CONFIG_CRC16 is not set
 | 
				
			||||||
 | 
					# CONFIG_CRC_T10DIF is not set
 | 
				
			||||||
# CONFIG_CRC_ITU_T is not set
 | 
					# CONFIG_CRC_ITU_T is not set
 | 
				
			||||||
CONFIG_CRC32=y
 | 
					CONFIG_CRC32=y
 | 
				
			||||||
# CONFIG_CRC7 is not set
 | 
					# CONFIG_CRC7 is not set
 | 
				
			||||||
# CONFIG_LIBCRC32C is not set
 | 
					# CONFIG_LIBCRC32C is not set
 | 
				
			||||||
CONFIG_ZLIB_INFLATE=y
 | 
					CONFIG_ZLIB_INFLATE=y
 | 
				
			||||||
CONFIG_ZLIB_DEFLATE=y
 | 
					CONFIG_ZLIB_DEFLATE=y
 | 
				
			||||||
CONFIG_PLIST=y
 | 
					 | 
				
			||||||
CONFIG_HAS_IOMEM=y
 | 
					CONFIG_HAS_IOMEM=y
 | 
				
			||||||
CONFIG_HAS_IOPORT=y
 | 
					CONFIG_HAS_IOPORT=y
 | 
				
			||||||
CONFIG_HAS_DMA=y
 | 
					CONFIG_HAS_DMA=y
 | 
				
			||||||
 | 
					CONFIG_NLATTR=y
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Automatically generated make config: don't edit
 | 
					# Automatically generated make config: don't edit
 | 
				
			||||||
# Linux kernel version: 2.6.27-rc4
 | 
					# Linux kernel version: 2.6.30-rc4
 | 
				
			||||||
# Fri Aug 22 12:38:51 2008
 | 
					# Mon May  4 14:07:25 2009
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_ARM=y
 | 
					CONFIG_ARM=y
 | 
				
			||||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
					CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 | 
				
			||||||
| 
						 | 
					@ -22,8 +22,6 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y
 | 
				
			||||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
					# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
				
			||||||
CONFIG_GENERIC_HWEIGHT=y
 | 
					CONFIG_GENERIC_HWEIGHT=y
 | 
				
			||||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
					CONFIG_GENERIC_CALIBRATE_DELAY=y
 | 
				
			||||||
CONFIG_ARCH_SUPPORTS_AOUT=y
 | 
					 | 
				
			||||||
CONFIG_ZONE_DMA=y
 | 
					 | 
				
			||||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 | 
					CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 | 
				
			||||||
CONFIG_VECTORS_BASE=0xffff0000
 | 
					CONFIG_VECTORS_BASE=0xffff0000
 | 
				
			||||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 | 
					CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 | 
				
			||||||
| 
						 | 
					@ -44,10 +42,19 @@ CONFIG_SYSVIPC_SYSCTL=y
 | 
				
			||||||
# CONFIG_BSD_PROCESS_ACCT is not set
 | 
					# CONFIG_BSD_PROCESS_ACCT is not set
 | 
				
			||||||
# CONFIG_TASKSTATS is not set
 | 
					# CONFIG_TASKSTATS is not set
 | 
				
			||||||
# CONFIG_AUDIT is not set
 | 
					# CONFIG_AUDIT is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# RCU Subsystem
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
 | 
					# CONFIG_TREE_RCU is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_RCU is not set
 | 
				
			||||||
 | 
					# CONFIG_TREE_RCU_TRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_PREEMPT_RCU_TRACE is not set
 | 
				
			||||||
# CONFIG_IKCONFIG is not set
 | 
					# CONFIG_IKCONFIG is not set
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=14
 | 
					CONFIG_LOG_BUF_SHIFT=14
 | 
				
			||||||
# CONFIG_CGROUPS is not set
 | 
					 | 
				
			||||||
# CONFIG_GROUP_SCHED is not set
 | 
					# CONFIG_GROUP_SCHED is not set
 | 
				
			||||||
 | 
					# CONFIG_CGROUPS is not set
 | 
				
			||||||
CONFIG_SYSFS_DEPRECATED=y
 | 
					CONFIG_SYSFS_DEPRECATED=y
 | 
				
			||||||
CONFIG_SYSFS_DEPRECATED_V2=y
 | 
					CONFIG_SYSFS_DEPRECATED_V2=y
 | 
				
			||||||
# CONFIG_RELAY is not set
 | 
					# CONFIG_RELAY is not set
 | 
				
			||||||
| 
						 | 
					@ -55,48 +62,45 @@ CONFIG_SYSFS_DEPRECATED_V2=y
 | 
				
			||||||
# CONFIG_BLK_DEV_INITRD is not set
 | 
					# CONFIG_BLK_DEV_INITRD is not set
 | 
				
			||||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 | 
					CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 | 
				
			||||||
CONFIG_SYSCTL=y
 | 
					CONFIG_SYSCTL=y
 | 
				
			||||||
 | 
					CONFIG_ANON_INODES=y
 | 
				
			||||||
CONFIG_EMBEDDED=y
 | 
					CONFIG_EMBEDDED=y
 | 
				
			||||||
CONFIG_UID16=y
 | 
					CONFIG_UID16=y
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL=y
 | 
					CONFIG_SYSCTL_SYSCALL=y
 | 
				
			||||||
CONFIG_KALLSYMS=y
 | 
					CONFIG_KALLSYMS=y
 | 
				
			||||||
CONFIG_KALLSYMS_ALL=y
 | 
					CONFIG_KALLSYMS_ALL=y
 | 
				
			||||||
# CONFIG_KALLSYMS_EXTRA_PASS is not set
 | 
					# CONFIG_KALLSYMS_EXTRA_PASS is not set
 | 
				
			||||||
 | 
					# CONFIG_STRIP_ASM_SYMS is not set
 | 
				
			||||||
CONFIG_HOTPLUG=y
 | 
					CONFIG_HOTPLUG=y
 | 
				
			||||||
CONFIG_PRINTK=y
 | 
					CONFIG_PRINTK=y
 | 
				
			||||||
CONFIG_BUG=y
 | 
					CONFIG_BUG=y
 | 
				
			||||||
CONFIG_ELF_CORE=y
 | 
					CONFIG_ELF_CORE=y
 | 
				
			||||||
CONFIG_COMPAT_BRK=y
 | 
					 | 
				
			||||||
CONFIG_BASE_FULL=y
 | 
					CONFIG_BASE_FULL=y
 | 
				
			||||||
CONFIG_FUTEX=y
 | 
					CONFIG_FUTEX=y
 | 
				
			||||||
CONFIG_ANON_INODES=y
 | 
					 | 
				
			||||||
CONFIG_EPOLL=y
 | 
					CONFIG_EPOLL=y
 | 
				
			||||||
CONFIG_SIGNALFD=y
 | 
					CONFIG_SIGNALFD=y
 | 
				
			||||||
CONFIG_TIMERFD=y
 | 
					CONFIG_TIMERFD=y
 | 
				
			||||||
CONFIG_EVENTFD=y
 | 
					CONFIG_EVENTFD=y
 | 
				
			||||||
CONFIG_SHMEM=y
 | 
					CONFIG_SHMEM=y
 | 
				
			||||||
 | 
					CONFIG_AIO=y
 | 
				
			||||||
CONFIG_VM_EVENT_COUNTERS=y
 | 
					CONFIG_VM_EVENT_COUNTERS=y
 | 
				
			||||||
 | 
					CONFIG_PCI_QUIRKS=y
 | 
				
			||||||
# CONFIG_SLUB_DEBUG is not set
 | 
					# CONFIG_SLUB_DEBUG is not set
 | 
				
			||||||
 | 
					CONFIG_COMPAT_BRK=y
 | 
				
			||||||
# CONFIG_SLAB is not set
 | 
					# CONFIG_SLAB is not set
 | 
				
			||||||
CONFIG_SLUB=y
 | 
					CONFIG_SLUB=y
 | 
				
			||||||
# CONFIG_SLOB is not set
 | 
					# CONFIG_SLOB is not set
 | 
				
			||||||
CONFIG_PROFILING=y
 | 
					CONFIG_PROFILING=y
 | 
				
			||||||
 | 
					CONFIG_TRACEPOINTS=y
 | 
				
			||||||
# CONFIG_MARKERS is not set
 | 
					# CONFIG_MARKERS is not set
 | 
				
			||||||
CONFIG_OPROFILE=y
 | 
					CONFIG_OPROFILE=y
 | 
				
			||||||
CONFIG_HAVE_OPROFILE=y
 | 
					CONFIG_HAVE_OPROFILE=y
 | 
				
			||||||
CONFIG_KPROBES=y
 | 
					CONFIG_KPROBES=y
 | 
				
			||||||
# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
 | 
					 | 
				
			||||||
CONFIG_KRETPROBES=y
 | 
					CONFIG_KRETPROBES=y
 | 
				
			||||||
# CONFIG_HAVE_IOREMAP_PROT is not set
 | 
					 | 
				
			||||||
CONFIG_HAVE_KPROBES=y
 | 
					CONFIG_HAVE_KPROBES=y
 | 
				
			||||||
CONFIG_HAVE_KRETPROBES=y
 | 
					CONFIG_HAVE_KRETPROBES=y
 | 
				
			||||||
# CONFIG_HAVE_ARCH_TRACEHOOK is not set
 | 
					# CONFIG_SLOW_WORK is not set
 | 
				
			||||||
# CONFIG_HAVE_DMA_ATTRS is not set
 | 
					 | 
				
			||||||
# CONFIG_USE_GENERIC_SMP_HELPERS is not set
 | 
					 | 
				
			||||||
# CONFIG_HAVE_CLK is not set
 | 
					 | 
				
			||||||
CONFIG_PROC_PAGE_MONITOR=y
 | 
					 | 
				
			||||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
					CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 | 
				
			||||||
CONFIG_RT_MUTEXES=y
 | 
					CONFIG_RT_MUTEXES=y
 | 
				
			||||||
# CONFIG_TINY_SHMEM is not set
 | 
					 | 
				
			||||||
CONFIG_BASE_SMALL=0
 | 
					CONFIG_BASE_SMALL=0
 | 
				
			||||||
CONFIG_MODULES=y
 | 
					CONFIG_MODULES=y
 | 
				
			||||||
# CONFIG_MODULE_FORCE_LOAD is not set
 | 
					# CONFIG_MODULE_FORCE_LOAD is not set
 | 
				
			||||||
| 
						 | 
					@ -104,11 +108,8 @@ CONFIG_MODULE_UNLOAD=y
 | 
				
			||||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
 | 
					# CONFIG_MODULE_FORCE_UNLOAD is not set
 | 
				
			||||||
# CONFIG_MODVERSIONS is not set
 | 
					# CONFIG_MODVERSIONS is not set
 | 
				
			||||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
					# CONFIG_MODULE_SRCVERSION_ALL is not set
 | 
				
			||||||
CONFIG_KMOD=y
 | 
					 | 
				
			||||||
CONFIG_BLOCK=y
 | 
					CONFIG_BLOCK=y
 | 
				
			||||||
# CONFIG_LBD is not set
 | 
					# CONFIG_LBD is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
					 | 
				
			||||||
# CONFIG_LSF is not set
 | 
					 | 
				
			||||||
# CONFIG_BLK_DEV_BSG is not set
 | 
					# CONFIG_BLK_DEV_BSG is not set
 | 
				
			||||||
# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
					# CONFIG_BLK_DEV_INTEGRITY is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -124,7 +125,7 @@ CONFIG_IOSCHED_CFQ=y
 | 
				
			||||||
CONFIG_DEFAULT_CFQ=y
 | 
					CONFIG_DEFAULT_CFQ=y
 | 
				
			||||||
# CONFIG_DEFAULT_NOOP is not set
 | 
					# CONFIG_DEFAULT_NOOP is not set
 | 
				
			||||||
CONFIG_DEFAULT_IOSCHED="cfq"
 | 
					CONFIG_DEFAULT_IOSCHED="cfq"
 | 
				
			||||||
CONFIG_CLASSIC_RCU=y
 | 
					# CONFIG_FREEZER is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# System Type
 | 
					# System Type
 | 
				
			||||||
| 
						 | 
					@ -134,10 +135,10 @@ CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
# CONFIG_ARCH_REALVIEW is not set
 | 
					# CONFIG_ARCH_REALVIEW is not set
 | 
				
			||||||
# CONFIG_ARCH_VERSATILE is not set
 | 
					# CONFIG_ARCH_VERSATILE is not set
 | 
				
			||||||
# CONFIG_ARCH_AT91 is not set
 | 
					# CONFIG_ARCH_AT91 is not set
 | 
				
			||||||
# CONFIG_ARCH_CLPS7500 is not set
 | 
					 | 
				
			||||||
# CONFIG_ARCH_CLPS711X is not set
 | 
					# CONFIG_ARCH_CLPS711X is not set
 | 
				
			||||||
# CONFIG_ARCH_EBSA110 is not set
 | 
					# CONFIG_ARCH_EBSA110 is not set
 | 
				
			||||||
# CONFIG_ARCH_EP93XX is not set
 | 
					# CONFIG_ARCH_EP93XX is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_GEMINI is not set
 | 
				
			||||||
# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
					# CONFIG_ARCH_FOOTBRIDGE is not set
 | 
				
			||||||
# CONFIG_ARCH_NETX is not set
 | 
					# CONFIG_ARCH_NETX is not set
 | 
				
			||||||
# CONFIG_ARCH_H720X is not set
 | 
					# CONFIG_ARCH_H720X is not set
 | 
				
			||||||
| 
						 | 
					@ -158,14 +159,17 @@ CONFIG_CLASSIC_RCU=y
 | 
				
			||||||
CONFIG_ARCH_ORION5X=y
 | 
					CONFIG_ARCH_ORION5X=y
 | 
				
			||||||
# CONFIG_ARCH_PNX4008 is not set
 | 
					# CONFIG_ARCH_PNX4008 is not set
 | 
				
			||||||
# CONFIG_ARCH_PXA is not set
 | 
					# CONFIG_ARCH_PXA is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_MMP is not set
 | 
				
			||||||
# CONFIG_ARCH_RPC is not set
 | 
					# CONFIG_ARCH_RPC is not set
 | 
				
			||||||
# CONFIG_ARCH_SA1100 is not set
 | 
					# CONFIG_ARCH_SA1100 is not set
 | 
				
			||||||
# CONFIG_ARCH_S3C2410 is not set
 | 
					# CONFIG_ARCH_S3C2410 is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_S3C64XX is not set
 | 
				
			||||||
# CONFIG_ARCH_SHARK is not set
 | 
					# CONFIG_ARCH_SHARK is not set
 | 
				
			||||||
# CONFIG_ARCH_LH7A40X is not set
 | 
					# CONFIG_ARCH_LH7A40X is not set
 | 
				
			||||||
# CONFIG_ARCH_DAVINCI is not set
 | 
					# CONFIG_ARCH_DAVINCI is not set
 | 
				
			||||||
# CONFIG_ARCH_OMAP is not set
 | 
					# CONFIG_ARCH_OMAP is not set
 | 
				
			||||||
# CONFIG_ARCH_MSM7X00A is not set
 | 
					# CONFIG_ARCH_MSM is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_W90X900 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Orion Implementations
 | 
					# Orion Implementations
 | 
				
			||||||
| 
						 | 
					@ -175,6 +179,7 @@ CONFIG_MACH_RD88F5182=y
 | 
				
			||||||
CONFIG_MACH_KUROBOX_PRO=y
 | 
					CONFIG_MACH_KUROBOX_PRO=y
 | 
				
			||||||
CONFIG_MACH_DNS323=y
 | 
					CONFIG_MACH_DNS323=y
 | 
				
			||||||
CONFIG_MACH_TS209=y
 | 
					CONFIG_MACH_TS209=y
 | 
				
			||||||
 | 
					CONFIG_MACH_TERASTATION_PRO2=y
 | 
				
			||||||
CONFIG_MACH_LINKSTATION_PRO=y
 | 
					CONFIG_MACH_LINKSTATION_PRO=y
 | 
				
			||||||
CONFIG_MACH_LINKSTATION_MINI=y
 | 
					CONFIG_MACH_LINKSTATION_MINI=y
 | 
				
			||||||
CONFIG_MACH_TS409=y
 | 
					CONFIG_MACH_TS409=y
 | 
				
			||||||
| 
						 | 
					@ -187,14 +192,6 @@ CONFIG_MACH_WNR854T=y
 | 
				
			||||||
CONFIG_MACH_RD88F5181L_GE=y
 | 
					CONFIG_MACH_RD88F5181L_GE=y
 | 
				
			||||||
CONFIG_MACH_RD88F5181L_FXO=y
 | 
					CONFIG_MACH_RD88F5181L_FXO=y
 | 
				
			||||||
CONFIG_MACH_RD88F6183AP_GE=y
 | 
					CONFIG_MACH_RD88F6183AP_GE=y
 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Boot options
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Power management
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
CONFIG_PLAT_ORION=y
 | 
					CONFIG_PLAT_ORION=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -228,6 +225,8 @@ CONFIG_PCI_SYSCALL=y
 | 
				
			||||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
 | 
					# CONFIG_ARCH_SUPPORTS_MSI is not set
 | 
				
			||||||
CONFIG_PCI_LEGACY=y
 | 
					CONFIG_PCI_LEGACY=y
 | 
				
			||||||
# CONFIG_PCI_DEBUG is not set
 | 
					# CONFIG_PCI_DEBUG is not set
 | 
				
			||||||
 | 
					# CONFIG_PCI_STUB is not set
 | 
				
			||||||
 | 
					# CONFIG_PCI_IOV is not set
 | 
				
			||||||
# CONFIG_PCCARD is not set
 | 
					# CONFIG_PCCARD is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -237,25 +236,32 @@ CONFIG_TICK_ONESHOT=y
 | 
				
			||||||
CONFIG_NO_HZ=y
 | 
					CONFIG_NO_HZ=y
 | 
				
			||||||
CONFIG_HIGH_RES_TIMERS=y
 | 
					CONFIG_HIGH_RES_TIMERS=y
 | 
				
			||||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
					CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 | 
				
			||||||
 | 
					CONFIG_VMSPLIT_3G=y
 | 
				
			||||||
 | 
					# CONFIG_VMSPLIT_2G is not set
 | 
				
			||||||
 | 
					# CONFIG_VMSPLIT_1G is not set
 | 
				
			||||||
 | 
					CONFIG_PAGE_OFFSET=0xC0000000
 | 
				
			||||||
CONFIG_PREEMPT=y
 | 
					CONFIG_PREEMPT=y
 | 
				
			||||||
CONFIG_HZ=100
 | 
					CONFIG_HZ=100
 | 
				
			||||||
CONFIG_AEABI=y
 | 
					CONFIG_AEABI=y
 | 
				
			||||||
CONFIG_OABI_COMPAT=y
 | 
					CONFIG_OABI_COMPAT=y
 | 
				
			||||||
# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
 | 
					CONFIG_ARCH_FLATMEM_HAS_HOLES=y
 | 
				
			||||||
 | 
					# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 | 
				
			||||||
 | 
					# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 | 
				
			||||||
 | 
					# CONFIG_HIGHMEM is not set
 | 
				
			||||||
CONFIG_SELECT_MEMORY_MODEL=y
 | 
					CONFIG_SELECT_MEMORY_MODEL=y
 | 
				
			||||||
CONFIG_FLATMEM_MANUAL=y
 | 
					CONFIG_FLATMEM_MANUAL=y
 | 
				
			||||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
					# CONFIG_DISCONTIGMEM_MANUAL is not set
 | 
				
			||||||
# CONFIG_SPARSEMEM_MANUAL is not set
 | 
					# CONFIG_SPARSEMEM_MANUAL is not set
 | 
				
			||||||
CONFIG_FLATMEM=y
 | 
					CONFIG_FLATMEM=y
 | 
				
			||||||
CONFIG_FLAT_NODE_MEM_MAP=y
 | 
					CONFIG_FLAT_NODE_MEM_MAP=y
 | 
				
			||||||
# CONFIG_SPARSEMEM_STATIC is not set
 | 
					 | 
				
			||||||
# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
 | 
					 | 
				
			||||||
CONFIG_PAGEFLAGS_EXTENDED=y
 | 
					CONFIG_PAGEFLAGS_EXTENDED=y
 | 
				
			||||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
					CONFIG_SPLIT_PTLOCK_CPUS=4096
 | 
				
			||||||
# CONFIG_RESOURCES_64BIT is not set
 | 
					# CONFIG_PHYS_ADDR_T_64BIT is not set
 | 
				
			||||||
CONFIG_ZONE_DMA_FLAG=1
 | 
					CONFIG_ZONE_DMA_FLAG=0
 | 
				
			||||||
CONFIG_BOUNCE=y
 | 
					 | 
				
			||||||
CONFIG_VIRT_TO_BUS=y
 | 
					CONFIG_VIRT_TO_BUS=y
 | 
				
			||||||
 | 
					CONFIG_UNEVICTABLE_LRU=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCK=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_MLOCKED_PAGE_BIT=y
 | 
				
			||||||
CONFIG_LEDS=y
 | 
					CONFIG_LEDS=y
 | 
				
			||||||
CONFIG_LEDS_CPU=y
 | 
					CONFIG_LEDS_CPU=y
 | 
				
			||||||
CONFIG_ALIGNMENT_TRAP=y
 | 
					CONFIG_ALIGNMENT_TRAP=y
 | 
				
			||||||
| 
						 | 
					@ -269,6 +275,11 @@ CONFIG_CMDLINE=""
 | 
				
			||||||
# CONFIG_XIP_KERNEL is not set
 | 
					# CONFIG_XIP_KERNEL is not set
 | 
				
			||||||
# CONFIG_KEXEC is not set
 | 
					# CONFIG_KEXEC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CPU Power Management
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CPU_IDLE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Floating point emulation
 | 
					# Floating point emulation
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -285,13 +296,18 @@ CONFIG_VFP=y
 | 
				
			||||||
# Userspace binary formats
 | 
					# Userspace binary formats
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_BINFMT_ELF=y
 | 
					CONFIG_BINFMT_ELF=y
 | 
				
			||||||
 | 
					# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
 | 
				
			||||||
 | 
					CONFIG_HAVE_AOUT=y
 | 
				
			||||||
# CONFIG_BINFMT_AOUT is not set
 | 
					# CONFIG_BINFMT_AOUT is not set
 | 
				
			||||||
# CONFIG_BINFMT_MISC is not set
 | 
					# CONFIG_BINFMT_MISC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Power management options
 | 
					# Power management options
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_PM is not set
 | 
					CONFIG_PM=y
 | 
				
			||||||
 | 
					# CONFIG_PM_DEBUG is not set
 | 
				
			||||||
 | 
					# CONFIG_SUSPEND is not set
 | 
				
			||||||
 | 
					# CONFIG_APM_EMULATION is not set
 | 
				
			||||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
					CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
				
			||||||
CONFIG_NET=y
 | 
					CONFIG_NET=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -328,7 +344,7 @@ CONFIG_IP_PNP_BOOTP=y
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=y
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=y
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=y
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=y
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=y
 | 
					CONFIG_INET_XFRM_MODE_BEET=y
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					CONFIG_INET_LRO=y
 | 
				
			||||||
CONFIG_INET_DIAG=y
 | 
					CONFIG_INET_DIAG=y
 | 
				
			||||||
CONFIG_INET_TCP_DIAG=y
 | 
					CONFIG_INET_TCP_DIAG=y
 | 
				
			||||||
# CONFIG_TCP_CONG_ADVANCED is not set
 | 
					# CONFIG_TCP_CONG_ADVANCED is not set
 | 
				
			||||||
| 
						 | 
					@ -343,6 +359,15 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_TIPC is not set
 | 
					# CONFIG_TIPC is not set
 | 
				
			||||||
# CONFIG_ATM is not set
 | 
					# CONFIG_ATM is not set
 | 
				
			||||||
# CONFIG_BRIDGE is not set
 | 
					# CONFIG_BRIDGE is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DSA=y
 | 
				
			||||||
 | 
					CONFIG_NET_DSA_TAG_DSA=y
 | 
				
			||||||
 | 
					CONFIG_NET_DSA_TAG_EDSA=y
 | 
				
			||||||
 | 
					# CONFIG_NET_DSA_TAG_TRAILER is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DSA_MV88E6XXX=y
 | 
				
			||||||
 | 
					# CONFIG_NET_DSA_MV88E6060 is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
 | 
				
			||||||
 | 
					CONFIG_NET_DSA_MV88E6131=y
 | 
				
			||||||
 | 
					CONFIG_NET_DSA_MV88E6123_61_65=y
 | 
				
			||||||
# CONFIG_VLAN_8021Q is not set
 | 
					# CONFIG_VLAN_8021Q is not set
 | 
				
			||||||
# CONFIG_DECNET is not set
 | 
					# CONFIG_DECNET is not set
 | 
				
			||||||
# CONFIG_LLC2 is not set
 | 
					# CONFIG_LLC2 is not set
 | 
				
			||||||
| 
						 | 
					@ -352,27 +377,29 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 | 
				
			||||||
# CONFIG_LAPB is not set
 | 
					# CONFIG_LAPB is not set
 | 
				
			||||||
# CONFIG_ECONET is not set
 | 
					# CONFIG_ECONET is not set
 | 
				
			||||||
# CONFIG_WAN_ROUTER is not set
 | 
					# CONFIG_WAN_ROUTER is not set
 | 
				
			||||||
 | 
					# CONFIG_PHONET is not set
 | 
				
			||||||
# CONFIG_NET_SCHED is not set
 | 
					# CONFIG_NET_SCHED is not set
 | 
				
			||||||
 | 
					# CONFIG_DCB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Network testing
 | 
					# Network testing
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_NET_PKTGEN=m
 | 
					CONFIG_NET_PKTGEN=m
 | 
				
			||||||
# CONFIG_NET_TCPPROBE is not set
 | 
					# CONFIG_NET_TCPPROBE is not set
 | 
				
			||||||
 | 
					# CONFIG_NET_DROP_MONITOR is not set
 | 
				
			||||||
# CONFIG_HAMRADIO is not set
 | 
					# CONFIG_HAMRADIO is not set
 | 
				
			||||||
# CONFIG_CAN is not set
 | 
					# CONFIG_CAN is not set
 | 
				
			||||||
# CONFIG_IRDA is not set
 | 
					# CONFIG_IRDA is not set
 | 
				
			||||||
# CONFIG_BT is not set
 | 
					# CONFIG_BT is not set
 | 
				
			||||||
# CONFIG_AF_RXRPC is not set
 | 
					# CONFIG_AF_RXRPC is not set
 | 
				
			||||||
 | 
					CONFIG_WIRELESS=y
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Wireless
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_CFG80211 is not set
 | 
					# CONFIG_CFG80211 is not set
 | 
				
			||||||
 | 
					# CONFIG_WIRELESS_OLD_REGULATORY is not set
 | 
				
			||||||
CONFIG_WIRELESS_EXT=y
 | 
					CONFIG_WIRELESS_EXT=y
 | 
				
			||||||
CONFIG_WIRELESS_EXT_SYSFS=y
 | 
					CONFIG_WIRELESS_EXT_SYSFS=y
 | 
				
			||||||
 | 
					# CONFIG_LIB80211 is not set
 | 
				
			||||||
# CONFIG_MAC80211 is not set
 | 
					# CONFIG_MAC80211 is not set
 | 
				
			||||||
# CONFIG_IEEE80211 is not set
 | 
					# CONFIG_WIMAX is not set
 | 
				
			||||||
# CONFIG_RFKILL is not set
 | 
					# CONFIG_RFKILL is not set
 | 
				
			||||||
# CONFIG_NET_9P is not set
 | 
					# CONFIG_NET_9P is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -397,6 +424,7 @@ CONFIG_MTD=y
 | 
				
			||||||
# CONFIG_MTD_DEBUG is not set
 | 
					# CONFIG_MTD_DEBUG is not set
 | 
				
			||||||
# CONFIG_MTD_CONCAT is not set
 | 
					# CONFIG_MTD_CONCAT is not set
 | 
				
			||||||
CONFIG_MTD_PARTITIONS=y
 | 
					CONFIG_MTD_PARTITIONS=y
 | 
				
			||||||
 | 
					# CONFIG_MTD_TESTS is not set
 | 
				
			||||||
# CONFIG_MTD_REDBOOT_PARTS is not set
 | 
					# CONFIG_MTD_REDBOOT_PARTS is not set
 | 
				
			||||||
CONFIG_MTD_CMDLINE_PARTS=y
 | 
					CONFIG_MTD_CMDLINE_PARTS=y
 | 
				
			||||||
# CONFIG_MTD_AFS_PARTS is not set
 | 
					# CONFIG_MTD_AFS_PARTS is not set
 | 
				
			||||||
| 
						 | 
					@ -450,9 +478,7 @@ CONFIG_MTD_CFI_UTIL=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
					# CONFIG_MTD_COMPLEX_MAPPINGS is not set
 | 
				
			||||||
CONFIG_MTD_PHYSMAP=y
 | 
					CONFIG_MTD_PHYSMAP=y
 | 
				
			||||||
CONFIG_MTD_PHYSMAP_START=0x0
 | 
					# CONFIG_MTD_PHYSMAP_COMPAT is not set
 | 
				
			||||||
CONFIG_MTD_PHYSMAP_LEN=0x0
 | 
					 | 
				
			||||||
CONFIG_MTD_PHYSMAP_BANKWIDTH=0
 | 
					 | 
				
			||||||
# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
					# CONFIG_MTD_ARM_INTEGRATOR is not set
 | 
				
			||||||
# CONFIG_MTD_IMPA7 is not set
 | 
					# CONFIG_MTD_IMPA7 is not set
 | 
				
			||||||
# CONFIG_MTD_INTEL_VR_NOR is not set
 | 
					# CONFIG_MTD_INTEL_VR_NOR is not set
 | 
				
			||||||
| 
						 | 
					@ -477,6 +503,7 @@ CONFIG_MTD_NAND=y
 | 
				
			||||||
CONFIG_MTD_NAND_VERIFY_WRITE=y
 | 
					CONFIG_MTD_NAND_VERIFY_WRITE=y
 | 
				
			||||||
# CONFIG_MTD_NAND_ECC_SMC is not set
 | 
					# CONFIG_MTD_NAND_ECC_SMC is not set
 | 
				
			||||||
# CONFIG_MTD_NAND_MUSEUM_IDS is not set
 | 
					# CONFIG_MTD_NAND_MUSEUM_IDS is not set
 | 
				
			||||||
 | 
					# CONFIG_MTD_NAND_GPIO is not set
 | 
				
			||||||
CONFIG_MTD_NAND_IDS=y
 | 
					CONFIG_MTD_NAND_IDS=y
 | 
				
			||||||
# CONFIG_MTD_NAND_DISKONCHIP is not set
 | 
					# CONFIG_MTD_NAND_DISKONCHIP is not set
 | 
				
			||||||
# CONFIG_MTD_NAND_CAFE is not set
 | 
					# CONFIG_MTD_NAND_CAFE is not set
 | 
				
			||||||
| 
						 | 
					@ -486,6 +513,11 @@ CONFIG_MTD_NAND_PLATFORM=y
 | 
				
			||||||
CONFIG_MTD_NAND_ORION=y
 | 
					CONFIG_MTD_NAND_ORION=y
 | 
				
			||||||
# CONFIG_MTD_ONENAND is not set
 | 
					# CONFIG_MTD_ONENAND is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# LPDDR flash memory drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_MTD_LPDDR is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# UBI - Unsorted block images
 | 
					# UBI - Unsorted block images
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -507,11 +539,20 @@ CONFIG_BLK_DEV_LOOP=y
 | 
				
			||||||
# CONFIG_ATA_OVER_ETH is not set
 | 
					# CONFIG_ATA_OVER_ETH is not set
 | 
				
			||||||
CONFIG_MISC_DEVICES=y
 | 
					CONFIG_MISC_DEVICES=y
 | 
				
			||||||
# CONFIG_PHANTOM is not set
 | 
					# CONFIG_PHANTOM is not set
 | 
				
			||||||
# CONFIG_EEPROM_93CX6 is not set
 | 
					 | 
				
			||||||
# CONFIG_SGI_IOC4 is not set
 | 
					# CONFIG_SGI_IOC4 is not set
 | 
				
			||||||
# CONFIG_TIFM_CORE is not set
 | 
					# CONFIG_TIFM_CORE is not set
 | 
				
			||||||
 | 
					# CONFIG_ICS932S401 is not set
 | 
				
			||||||
# CONFIG_ENCLOSURE_SERVICES is not set
 | 
					# CONFIG_ENCLOSURE_SERVICES is not set
 | 
				
			||||||
# CONFIG_HP_ILO is not set
 | 
					# CONFIG_HP_ILO is not set
 | 
				
			||||||
 | 
					# CONFIG_ISL29003 is not set
 | 
				
			||||||
 | 
					# CONFIG_C2PORT is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# EEPROM support
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_EEPROM_AT24 is not set
 | 
				
			||||||
 | 
					# CONFIG_EEPROM_LEGACY is not set
 | 
				
			||||||
 | 
					# CONFIG_EEPROM_93CX6 is not set
 | 
				
			||||||
CONFIG_HAVE_IDE=y
 | 
					CONFIG_HAVE_IDE=y
 | 
				
			||||||
# CONFIG_IDE is not set
 | 
					# CONFIG_IDE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -569,7 +610,11 @@ CONFIG_SCSI_LOWLEVEL=y
 | 
				
			||||||
# 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_MEGARAID_SAS is not set
 | 
					# CONFIG_MEGARAID_SAS is not set
 | 
				
			||||||
 | 
					# CONFIG_SCSI_MPT2SAS is not set
 | 
				
			||||||
# CONFIG_SCSI_HPTIOP is not set
 | 
					# CONFIG_SCSI_HPTIOP is not set
 | 
				
			||||||
 | 
					# CONFIG_LIBFC is not set
 | 
				
			||||||
 | 
					# CONFIG_LIBFCOE is not set
 | 
				
			||||||
 | 
					# CONFIG_FCOE is not set
 | 
				
			||||||
# CONFIG_SCSI_DMX3191D is not set
 | 
					# CONFIG_SCSI_DMX3191D is not set
 | 
				
			||||||
# CONFIG_SCSI_FUTURE_DOMAIN is not set
 | 
					# CONFIG_SCSI_FUTURE_DOMAIN is not set
 | 
				
			||||||
# CONFIG_SCSI_IPS is not set
 | 
					# CONFIG_SCSI_IPS is not set
 | 
				
			||||||
| 
						 | 
					@ -589,6 +634,7 @@ CONFIG_SCSI_LOWLEVEL=y
 | 
				
			||||||
# CONFIG_SCSI_DEBUG is not set
 | 
					# CONFIG_SCSI_DEBUG is not set
 | 
				
			||||||
# CONFIG_SCSI_SRP is not set
 | 
					# CONFIG_SCSI_SRP is not set
 | 
				
			||||||
# CONFIG_SCSI_DH is not set
 | 
					# CONFIG_SCSI_DH is not set
 | 
				
			||||||
 | 
					# CONFIG_SCSI_OSD_INITIATOR is not set
 | 
				
			||||||
CONFIG_ATA=y
 | 
					CONFIG_ATA=y
 | 
				
			||||||
# CONFIG_ATA_NONSTANDARD is not set
 | 
					# CONFIG_ATA_NONSTANDARD is not set
 | 
				
			||||||
CONFIG_SATA_PMP=y
 | 
					CONFIG_SATA_PMP=y
 | 
				
			||||||
| 
						 | 
					@ -663,6 +709,7 @@ CONFIG_SATA_MV=y
 | 
				
			||||||
# CONFIG_IEEE1394 is not set
 | 
					# CONFIG_IEEE1394 is not set
 | 
				
			||||||
# CONFIG_I2O is not set
 | 
					# CONFIG_I2O is not set
 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					CONFIG_NETDEVICES=y
 | 
				
			||||||
 | 
					CONFIG_COMPAT_NET_DEV_OPS=y
 | 
				
			||||||
# CONFIG_DUMMY is not set
 | 
					# CONFIG_DUMMY is not set
 | 
				
			||||||
# CONFIG_BONDING is not set
 | 
					# CONFIG_BONDING is not set
 | 
				
			||||||
# CONFIG_MACVLAN is not set
 | 
					# CONFIG_MACVLAN is not set
 | 
				
			||||||
| 
						 | 
					@ -670,7 +717,26 @@ CONFIG_NETDEVICES=y
 | 
				
			||||||
# CONFIG_TUN is not set
 | 
					# CONFIG_TUN is not set
 | 
				
			||||||
# CONFIG_VETH is not set
 | 
					# CONFIG_VETH is not set
 | 
				
			||||||
# CONFIG_ARCNET is not set
 | 
					# CONFIG_ARCNET is not set
 | 
				
			||||||
# CONFIG_PHYLIB is not set
 | 
					CONFIG_PHYLIB=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# MII PHY device drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					CONFIG_MARVELL_PHY=y
 | 
				
			||||||
 | 
					# CONFIG_DAVICOM_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_QSEMI_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_LXT_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_CICADA_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_VITESSE_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_SMSC_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_BROADCOM_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_ICPLUS_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_REALTEK_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_NATIONAL_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_STE10XP is not set
 | 
				
			||||||
 | 
					# CONFIG_LSI_ET1011C_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_FIXED_PHY is not set
 | 
				
			||||||
 | 
					# CONFIG_MDIO_BITBANG is not set
 | 
				
			||||||
CONFIG_NET_ETHERNET=y
 | 
					CONFIG_NET_ETHERNET=y
 | 
				
			||||||
CONFIG_MII=y
 | 
					CONFIG_MII=y
 | 
				
			||||||
# CONFIG_AX88796 is not set
 | 
					# CONFIG_AX88796 is not set
 | 
				
			||||||
| 
						 | 
					@ -680,19 +746,25 @@ CONFIG_MII=y
 | 
				
			||||||
# CONFIG_NET_VENDOR_3COM is not set
 | 
					# CONFIG_NET_VENDOR_3COM is not set
 | 
				
			||||||
# CONFIG_SMC91X is not set
 | 
					# CONFIG_SMC91X is not set
 | 
				
			||||||
# CONFIG_DM9000 is not set
 | 
					# CONFIG_DM9000 is not set
 | 
				
			||||||
 | 
					# CONFIG_ETHOC is not set
 | 
				
			||||||
 | 
					# CONFIG_SMC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_SMSC911X is not set
 | 
				
			||||||
 | 
					# CONFIG_DNET is not set
 | 
				
			||||||
# CONFIG_NET_TULIP is not set
 | 
					# CONFIG_NET_TULIP is not set
 | 
				
			||||||
# CONFIG_HP100 is not set
 | 
					# CONFIG_HP100 is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_ZMII is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
					# CONFIG_IBM_NEW_EMAC_RGMII is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
					# CONFIG_IBM_NEW_EMAC_TAH is not set
 | 
				
			||||||
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
					# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
 | 
				
			||||||
 | 
					# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
 | 
				
			||||||
CONFIG_NET_PCI=y
 | 
					CONFIG_NET_PCI=y
 | 
				
			||||||
# CONFIG_PCNET32 is not set
 | 
					# CONFIG_PCNET32 is not set
 | 
				
			||||||
# CONFIG_AMD8111_ETH is not set
 | 
					# CONFIG_AMD8111_ETH is not set
 | 
				
			||||||
# CONFIG_ADAPTEC_STARFIRE is not set
 | 
					# CONFIG_ADAPTEC_STARFIRE is not set
 | 
				
			||||||
# CONFIG_B44 is not set
 | 
					# CONFIG_B44 is not set
 | 
				
			||||||
# CONFIG_FORCEDETH is not set
 | 
					# CONFIG_FORCEDETH is not set
 | 
				
			||||||
# CONFIG_EEPRO100 is not set
 | 
					 | 
				
			||||||
# CONFIG_E100 is not set
 | 
					# CONFIG_E100 is not set
 | 
				
			||||||
# CONFIG_FEALNX is not set
 | 
					# CONFIG_FEALNX is not set
 | 
				
			||||||
# CONFIG_NATSEMI is not set
 | 
					# CONFIG_NATSEMI is not set
 | 
				
			||||||
| 
						 | 
					@ -702,10 +774,12 @@ CONFIG_NET_PCI=y
 | 
				
			||||||
# CONFIG_R6040 is not set
 | 
					# CONFIG_R6040 is not set
 | 
				
			||||||
# CONFIG_SIS900 is not set
 | 
					# CONFIG_SIS900 is not set
 | 
				
			||||||
# CONFIG_EPIC100 is not set
 | 
					# CONFIG_EPIC100 is not set
 | 
				
			||||||
 | 
					# CONFIG_SMSC9420 is not set
 | 
				
			||||||
# CONFIG_SUNDANCE is not set
 | 
					# CONFIG_SUNDANCE is not set
 | 
				
			||||||
# CONFIG_TLAN is not set
 | 
					# CONFIG_TLAN is not set
 | 
				
			||||||
# CONFIG_VIA_RHINE is not set
 | 
					# CONFIG_VIA_RHINE is not set
 | 
				
			||||||
# CONFIG_SC92031 is not set
 | 
					# CONFIG_SC92031 is not set
 | 
				
			||||||
 | 
					# CONFIG_ATL2 is not set
 | 
				
			||||||
CONFIG_NETDEV_1000=y
 | 
					CONFIG_NETDEV_1000=y
 | 
				
			||||||
# CONFIG_ACENIC is not set
 | 
					# CONFIG_ACENIC is not set
 | 
				
			||||||
# CONFIG_DL2K is not set
 | 
					# CONFIG_DL2K is not set
 | 
				
			||||||
| 
						 | 
					@ -713,6 +787,7 @@ CONFIG_NETDEV_1000=y
 | 
				
			||||||
# CONFIG_E1000E is not set
 | 
					# CONFIG_E1000E is not set
 | 
				
			||||||
# CONFIG_IP1000 is not set
 | 
					# CONFIG_IP1000 is not set
 | 
				
			||||||
# CONFIG_IGB is not set
 | 
					# CONFIG_IGB is not set
 | 
				
			||||||
 | 
					# CONFIG_IGBVF is not set
 | 
				
			||||||
# CONFIG_NS83820 is not set
 | 
					# CONFIG_NS83820 is not set
 | 
				
			||||||
# CONFIG_HAMACHI is not set
 | 
					# CONFIG_HAMACHI is not set
 | 
				
			||||||
# CONFIG_YELLOWFIN is not set
 | 
					# CONFIG_YELLOWFIN is not set
 | 
				
			||||||
| 
						 | 
					@ -727,6 +802,8 @@ CONFIG_MV643XX_ETH=y
 | 
				
			||||||
# CONFIG_QLA3XXX is not set
 | 
					# CONFIG_QLA3XXX is not set
 | 
				
			||||||
# CONFIG_ATL1 is not set
 | 
					# CONFIG_ATL1 is not set
 | 
				
			||||||
# CONFIG_ATL1E is not set
 | 
					# CONFIG_ATL1E is not set
 | 
				
			||||||
 | 
					# CONFIG_ATL1C is not set
 | 
				
			||||||
 | 
					# CONFIG_JME is not set
 | 
				
			||||||
# CONFIG_NETDEV_10000 is not set
 | 
					# CONFIG_NETDEV_10000 is not set
 | 
				
			||||||
# CONFIG_TR is not set
 | 
					# CONFIG_TR is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -735,7 +812,10 @@ CONFIG_MV643XX_ETH=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_WLAN_PRE80211 is not set
 | 
					# CONFIG_WLAN_PRE80211 is not set
 | 
				
			||||||
# CONFIG_WLAN_80211 is not set
 | 
					# CONFIG_WLAN_80211 is not set
 | 
				
			||||||
# CONFIG_IWLWIFI_LEDS is not set
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Enable WiMAX (Networking options) to see the WiMAX drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# USB Network Adapters
 | 
					# USB Network Adapters
 | 
				
			||||||
| 
						 | 
					@ -819,11 +899,11 @@ CONFIG_SERIAL_CORE=y
 | 
				
			||||||
CONFIG_SERIAL_CORE_CONSOLE=y
 | 
					CONFIG_SERIAL_CORE_CONSOLE=y
 | 
				
			||||||
# CONFIG_SERIAL_JSM is not set
 | 
					# CONFIG_SERIAL_JSM is not set
 | 
				
			||||||
CONFIG_UNIX98_PTYS=y
 | 
					CONFIG_UNIX98_PTYS=y
 | 
				
			||||||
 | 
					# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
 | 
				
			||||||
CONFIG_LEGACY_PTYS=y
 | 
					CONFIG_LEGACY_PTYS=y
 | 
				
			||||||
CONFIG_LEGACY_PTY_COUNT=16
 | 
					CONFIG_LEGACY_PTY_COUNT=16
 | 
				
			||||||
# CONFIG_IPMI_HANDLER is not set
 | 
					# CONFIG_IPMI_HANDLER is not set
 | 
				
			||||||
# CONFIG_HW_RANDOM is not set
 | 
					# CONFIG_HW_RANDOM is not set
 | 
				
			||||||
# CONFIG_NVRAM is not set
 | 
					 | 
				
			||||||
# CONFIG_R3964 is not set
 | 
					# CONFIG_R3964 is not set
 | 
				
			||||||
# CONFIG_APPLICOM is not set
 | 
					# CONFIG_APPLICOM is not set
 | 
				
			||||||
# CONFIG_RAW_DRIVER is not set
 | 
					# CONFIG_RAW_DRIVER is not set
 | 
				
			||||||
| 
						 | 
					@ -886,12 +966,9 @@ CONFIG_I2C_MV64XXX=y
 | 
				
			||||||
# Miscellaneous I2C Chip support
 | 
					# Miscellaneous I2C Chip support
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_DS1682 is not set
 | 
					# CONFIG_DS1682 is not set
 | 
				
			||||||
# CONFIG_EEPROM_AT24 is not set
 | 
					 | 
				
			||||||
# CONFIG_EEPROM_LEGACY is not set
 | 
					 | 
				
			||||||
# CONFIG_SENSORS_PCF8574 is not set
 | 
					# CONFIG_SENSORS_PCF8574 is not set
 | 
				
			||||||
# CONFIG_PCF8575 is not set
 | 
					# CONFIG_PCF8575 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PCA9539 is not set
 | 
					# CONFIG_SENSORS_PCA9539 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PCF8591 is not set
 | 
					 | 
				
			||||||
# CONFIG_SENSORS_MAX6875 is not set
 | 
					# CONFIG_SENSORS_MAX6875 is not set
 | 
				
			||||||
# CONFIG_SENSORS_TSL2550 is not set
 | 
					# CONFIG_SENSORS_TSL2550 is not set
 | 
				
			||||||
# CONFIG_I2C_DEBUG_CORE is not set
 | 
					# CONFIG_I2C_DEBUG_CORE is not set
 | 
				
			||||||
| 
						 | 
					@ -911,14 +988,17 @@ CONFIG_HWMON=y
 | 
				
			||||||
# CONFIG_SENSORS_ADM1029 is not set
 | 
					# CONFIG_SENSORS_ADM1029 is not set
 | 
				
			||||||
# CONFIG_SENSORS_ADM1031 is not set
 | 
					# CONFIG_SENSORS_ADM1031 is not set
 | 
				
			||||||
# CONFIG_SENSORS_ADM9240 is not set
 | 
					# CONFIG_SENSORS_ADM9240 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_ADT7462 is not set
 | 
				
			||||||
# CONFIG_SENSORS_ADT7470 is not set
 | 
					# CONFIG_SENSORS_ADT7470 is not set
 | 
				
			||||||
# CONFIG_SENSORS_ADT7473 is not set
 | 
					# CONFIG_SENSORS_ADT7473 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_ADT7475 is not set
 | 
				
			||||||
# CONFIG_SENSORS_ATXP1 is not set
 | 
					# CONFIG_SENSORS_ATXP1 is not set
 | 
				
			||||||
# CONFIG_SENSORS_DS1621 is not set
 | 
					# CONFIG_SENSORS_DS1621 is not set
 | 
				
			||||||
# CONFIG_SENSORS_I5K_AMB is not set
 | 
					# CONFIG_SENSORS_I5K_AMB is not set
 | 
				
			||||||
# CONFIG_SENSORS_F71805F is not set
 | 
					# CONFIG_SENSORS_F71805F is not set
 | 
				
			||||||
# CONFIG_SENSORS_F71882FG is not set
 | 
					# CONFIG_SENSORS_F71882FG is not set
 | 
				
			||||||
# CONFIG_SENSORS_F75375S is not set
 | 
					# CONFIG_SENSORS_F75375S is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_G760A is not set
 | 
				
			||||||
# CONFIG_SENSORS_GL518SM is not set
 | 
					# CONFIG_SENSORS_GL518SM is not set
 | 
				
			||||||
# CONFIG_SENSORS_GL520SM is not set
 | 
					# CONFIG_SENSORS_GL520SM is not set
 | 
				
			||||||
# CONFIG_SENSORS_IT87 is not set
 | 
					# CONFIG_SENSORS_IT87 is not set
 | 
				
			||||||
| 
						 | 
					@ -933,10 +1013,15 @@ CONFIG_SENSORS_LM75=y
 | 
				
			||||||
# CONFIG_SENSORS_LM90 is not set
 | 
					# CONFIG_SENSORS_LM90 is not set
 | 
				
			||||||
# CONFIG_SENSORS_LM92 is not set
 | 
					# CONFIG_SENSORS_LM92 is not set
 | 
				
			||||||
# CONFIG_SENSORS_LM93 is not set
 | 
					# CONFIG_SENSORS_LM93 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_LTC4215 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_LTC4245 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_LM95241 is not set
 | 
				
			||||||
# CONFIG_SENSORS_MAX1619 is not set
 | 
					# CONFIG_SENSORS_MAX1619 is not set
 | 
				
			||||||
# CONFIG_SENSORS_MAX6650 is not set
 | 
					# CONFIG_SENSORS_MAX6650 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PC87360 is not set
 | 
					# CONFIG_SENSORS_PC87360 is not set
 | 
				
			||||||
# CONFIG_SENSORS_PC87427 is not set
 | 
					# CONFIG_SENSORS_PC87427 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_PCF8591 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSORS_SHT15 is not set
 | 
				
			||||||
# CONFIG_SENSORS_SIS5595 is not set
 | 
					# CONFIG_SENSORS_SIS5595 is not set
 | 
				
			||||||
# CONFIG_SENSORS_DME1737 is not set
 | 
					# CONFIG_SENSORS_DME1737 is not set
 | 
				
			||||||
# CONFIG_SENSORS_SMSC47M1 is not set
 | 
					# CONFIG_SENSORS_SMSC47M1 is not set
 | 
				
			||||||
| 
						 | 
					@ -956,12 +1041,14 @@ CONFIG_SENSORS_LM75=y
 | 
				
			||||||
# CONFIG_SENSORS_W83627HF is not set
 | 
					# CONFIG_SENSORS_W83627HF is not set
 | 
				
			||||||
# CONFIG_SENSORS_W83627EHF is not set
 | 
					# CONFIG_SENSORS_W83627EHF is not set
 | 
				
			||||||
# CONFIG_HWMON_DEBUG_CHIP is not set
 | 
					# CONFIG_HWMON_DEBUG_CHIP is not set
 | 
				
			||||||
 | 
					# CONFIG_THERMAL is not set
 | 
				
			||||||
 | 
					# CONFIG_THERMAL_HWMON is not set
 | 
				
			||||||
# CONFIG_WATCHDOG is not set
 | 
					# CONFIG_WATCHDOG is not set
 | 
				
			||||||
 | 
					CONFIG_SSB_POSSIBLE=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Sonics Silicon Backplane
 | 
					# Sonics Silicon Backplane
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_SSB_POSSIBLE=y
 | 
					 | 
				
			||||||
# CONFIG_SSB is not set
 | 
					# CONFIG_SSB is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -970,9 +1057,12 @@ CONFIG_SSB_POSSIBLE=y
 | 
				
			||||||
# CONFIG_MFD_CORE is not set
 | 
					# CONFIG_MFD_CORE is not set
 | 
				
			||||||
# CONFIG_MFD_SM501 is not set
 | 
					# CONFIG_MFD_SM501 is not set
 | 
				
			||||||
# CONFIG_HTC_PASIC3 is not set
 | 
					# CONFIG_HTC_PASIC3 is not set
 | 
				
			||||||
 | 
					# CONFIG_TWL4030_CORE is not set
 | 
				
			||||||
# CONFIG_MFD_TMIO is not set
 | 
					# CONFIG_MFD_TMIO is not set
 | 
				
			||||||
# CONFIG_MFD_T7L66XB is not set
 | 
					# CONFIG_PMIC_DA903X is not set
 | 
				
			||||||
# CONFIG_MFD_TC6387XB is not set
 | 
					# CONFIG_MFD_WM8400 is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_WM8350_I2C is not set
 | 
				
			||||||
 | 
					# CONFIG_MFD_PCF50633 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Multimedia devices
 | 
					# Multimedia devices
 | 
				
			||||||
| 
						 | 
					@ -1013,9 +1103,36 @@ CONFIG_HID=y
 | 
				
			||||||
# USB Input Devices
 | 
					# USB Input Devices
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_USB_HID=y
 | 
					CONFIG_USB_HID=y
 | 
				
			||||||
# CONFIG_USB_HIDINPUT_POWERBOOK is not set
 | 
					# CONFIG_HID_PID is not set
 | 
				
			||||||
# CONFIG_HID_FF is not set
 | 
					 | 
				
			||||||
# CONFIG_USB_HIDDEV is not set
 | 
					# CONFIG_USB_HIDDEV is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Special HID drivers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_HID_A4TECH is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_APPLE is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_BELKIN is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_CHERRY is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_CHICONY is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_CYPRESS is not set
 | 
				
			||||||
 | 
					# CONFIG_DRAGONRISE_FF is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_EZKEY is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_KYE is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_GYRATION is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_KENSINGTON is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_LOGITECH is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_MICROSOFT is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_MONTEREY is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_NTRIG is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_PANTHERLORD is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_PETALYNX is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_SAMSUNG is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_SONY is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_SUNPLUS is not set
 | 
				
			||||||
 | 
					# CONFIG_GREENASIA_FF is not set
 | 
				
			||||||
 | 
					# CONFIG_HID_TOPSEED is not set
 | 
				
			||||||
 | 
					# CONFIG_THRUSTMASTER_FF is not set
 | 
				
			||||||
 | 
					# CONFIG_ZEROPLUS_FF is not set
 | 
				
			||||||
CONFIG_USB_SUPPORT=y
 | 
					CONFIG_USB_SUPPORT=y
 | 
				
			||||||
CONFIG_USB_ARCH_HAS_HCD=y
 | 
					CONFIG_USB_ARCH_HAS_HCD=y
 | 
				
			||||||
CONFIG_USB_ARCH_HAS_OHCI=y
 | 
					CONFIG_USB_ARCH_HAS_OHCI=y
 | 
				
			||||||
| 
						 | 
					@ -1030,10 +1147,13 @@ CONFIG_USB=y
 | 
				
			||||||
CONFIG_USB_DEVICEFS=y
 | 
					CONFIG_USB_DEVICEFS=y
 | 
				
			||||||
CONFIG_USB_DEVICE_CLASS=y
 | 
					CONFIG_USB_DEVICE_CLASS=y
 | 
				
			||||||
# CONFIG_USB_DYNAMIC_MINORS is not set
 | 
					# CONFIG_USB_DYNAMIC_MINORS is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_SUSPEND is not set
 | 
				
			||||||
# CONFIG_USB_OTG is not set
 | 
					# CONFIG_USB_OTG is not set
 | 
				
			||||||
# CONFIG_USB_OTG_WHITELIST is not set
 | 
					# CONFIG_USB_OTG_WHITELIST is not set
 | 
				
			||||||
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
 | 
					# CONFIG_USB_OTG_BLACKLIST_HUB is not set
 | 
				
			||||||
# CONFIG_USB_MON is not set
 | 
					# CONFIG_USB_MON is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_WUSB is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_WUSB_CBAF is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# USB Host Controller Drivers
 | 
					# USB Host Controller Drivers
 | 
				
			||||||
| 
						 | 
					@ -1042,12 +1162,15 @@ CONFIG_USB_DEVICE_CLASS=y
 | 
				
			||||||
CONFIG_USB_EHCI_HCD=y
 | 
					CONFIG_USB_EHCI_HCD=y
 | 
				
			||||||
CONFIG_USB_EHCI_ROOT_HUB_TT=y
 | 
					CONFIG_USB_EHCI_ROOT_HUB_TT=y
 | 
				
			||||||
CONFIG_USB_EHCI_TT_NEWSCHED=y
 | 
					CONFIG_USB_EHCI_TT_NEWSCHED=y
 | 
				
			||||||
 | 
					# CONFIG_USB_OXU210HP_HCD is not set
 | 
				
			||||||
# CONFIG_USB_ISP116X_HCD is not set
 | 
					# CONFIG_USB_ISP116X_HCD is not set
 | 
				
			||||||
# CONFIG_USB_ISP1760_HCD is not set
 | 
					# CONFIG_USB_ISP1760_HCD is not set
 | 
				
			||||||
# CONFIG_USB_OHCI_HCD is not set
 | 
					# CONFIG_USB_OHCI_HCD is not set
 | 
				
			||||||
# CONFIG_USB_UHCI_HCD is not set
 | 
					# CONFIG_USB_UHCI_HCD is not set
 | 
				
			||||||
# CONFIG_USB_SL811_HCD is not set
 | 
					# CONFIG_USB_SL811_HCD is not set
 | 
				
			||||||
# CONFIG_USB_R8A66597_HCD is not set
 | 
					# CONFIG_USB_R8A66597_HCD is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_WHCI_HCD is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_HWA_HCD is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# USB Device Class drivers
 | 
					# USB Device Class drivers
 | 
				
			||||||
| 
						 | 
					@ -1055,20 +1178,20 @@ CONFIG_USB_EHCI_TT_NEWSCHED=y
 | 
				
			||||||
# CONFIG_USB_ACM is not set
 | 
					# CONFIG_USB_ACM is not set
 | 
				
			||||||
CONFIG_USB_PRINTER=y
 | 
					CONFIG_USB_PRINTER=y
 | 
				
			||||||
# CONFIG_USB_WDM is not set
 | 
					# CONFIG_USB_WDM is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_TMC is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
 | 
					# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# may also be needed; see USB_STORAGE Help for more information
 | 
					# also be needed; see USB_STORAGE Help for more info
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_USB_STORAGE=y
 | 
					CONFIG_USB_STORAGE=y
 | 
				
			||||||
# CONFIG_USB_STORAGE_DEBUG is not set
 | 
					# CONFIG_USB_STORAGE_DEBUG is not set
 | 
				
			||||||
CONFIG_USB_STORAGE_DATAFAB=y
 | 
					CONFIG_USB_STORAGE_DATAFAB=y
 | 
				
			||||||
CONFIG_USB_STORAGE_FREECOM=y
 | 
					CONFIG_USB_STORAGE_FREECOM=y
 | 
				
			||||||
# CONFIG_USB_STORAGE_ISD200 is not set
 | 
					# CONFIG_USB_STORAGE_ISD200 is not set
 | 
				
			||||||
CONFIG_USB_STORAGE_DPCM=y
 | 
					 | 
				
			||||||
# CONFIG_USB_STORAGE_USBAT is not set
 | 
					# CONFIG_USB_STORAGE_USBAT is not set
 | 
				
			||||||
CONFIG_USB_STORAGE_SDDR09=y
 | 
					CONFIG_USB_STORAGE_SDDR09=y
 | 
				
			||||||
CONFIG_USB_STORAGE_SDDR55=y
 | 
					CONFIG_USB_STORAGE_SDDR55=y
 | 
				
			||||||
| 
						 | 
					@ -1076,7 +1199,6 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
 | 
				
			||||||
# CONFIG_USB_STORAGE_ALAUDA is not set
 | 
					# CONFIG_USB_STORAGE_ALAUDA is not set
 | 
				
			||||||
# CONFIG_USB_STORAGE_ONETOUCH is not set
 | 
					# CONFIG_USB_STORAGE_ONETOUCH is not set
 | 
				
			||||||
# CONFIG_USB_STORAGE_KARMA is not set
 | 
					# CONFIG_USB_STORAGE_KARMA is not set
 | 
				
			||||||
# CONFIG_USB_STORAGE_SIERRA is not set
 | 
					 | 
				
			||||||
# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
 | 
					# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
 | 
				
			||||||
# CONFIG_USB_LIBUSUAL is not set
 | 
					# CONFIG_USB_LIBUSUAL is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1097,6 +1219,7 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
 | 
				
			||||||
# CONFIG_USB_EMI62 is not set
 | 
					# CONFIG_USB_EMI62 is not set
 | 
				
			||||||
# CONFIG_USB_EMI26 is not set
 | 
					# CONFIG_USB_EMI26 is not set
 | 
				
			||||||
# CONFIG_USB_ADUTUX is not set
 | 
					# CONFIG_USB_ADUTUX is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_SEVSEG is not set
 | 
				
			||||||
# CONFIG_USB_RIO500 is not set
 | 
					# CONFIG_USB_RIO500 is not set
 | 
				
			||||||
# CONFIG_USB_LEGOTOWER is not set
 | 
					# CONFIG_USB_LEGOTOWER is not set
 | 
				
			||||||
# CONFIG_USB_LCD is not set
 | 
					# CONFIG_USB_LCD is not set
 | 
				
			||||||
| 
						 | 
					@ -1104,7 +1227,6 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
 | 
				
			||||||
# CONFIG_USB_LED is not set
 | 
					# CONFIG_USB_LED is not set
 | 
				
			||||||
# CONFIG_USB_CYPRESS_CY7C63 is not set
 | 
					# CONFIG_USB_CYPRESS_CY7C63 is not set
 | 
				
			||||||
# CONFIG_USB_CYTHERM is not set
 | 
					# CONFIG_USB_CYTHERM is not set
 | 
				
			||||||
# CONFIG_USB_PHIDGET is not set
 | 
					 | 
				
			||||||
# CONFIG_USB_IDMOUSE is not set
 | 
					# CONFIG_USB_IDMOUSE is not set
 | 
				
			||||||
# CONFIG_USB_FTDI_ELAN is not set
 | 
					# CONFIG_USB_FTDI_ELAN is not set
 | 
				
			||||||
# CONFIG_USB_APPLEDISPLAY is not set
 | 
					# CONFIG_USB_APPLEDISPLAY is not set
 | 
				
			||||||
| 
						 | 
					@ -1114,8 +1236,18 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
 | 
				
			||||||
# CONFIG_USB_IOWARRIOR is not set
 | 
					# CONFIG_USB_IOWARRIOR is not set
 | 
				
			||||||
# CONFIG_USB_TEST is not set
 | 
					# CONFIG_USB_TEST is not set
 | 
				
			||||||
# CONFIG_USB_ISIGHTFW is not set
 | 
					# CONFIG_USB_ISIGHTFW is not set
 | 
				
			||||||
 | 
					# CONFIG_USB_VST is not set
 | 
				
			||||||
# CONFIG_USB_GADGET is not set
 | 
					# CONFIG_USB_GADGET is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# OTG and related infrastructure
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_USB_GPIO_VBUS is not set
 | 
				
			||||||
 | 
					# CONFIG_NOP_USB_XCEIV is not set
 | 
				
			||||||
 | 
					# CONFIG_UWB is not set
 | 
				
			||||||
# CONFIG_MMC is not set
 | 
					# CONFIG_MMC is not set
 | 
				
			||||||
 | 
					# CONFIG_MEMSTICK is not set
 | 
				
			||||||
 | 
					# CONFIG_ACCESSIBILITY is not set
 | 
				
			||||||
CONFIG_NEW_LEDS=y
 | 
					CONFIG_NEW_LEDS=y
 | 
				
			||||||
CONFIG_LEDS_CLASS=y
 | 
					CONFIG_LEDS_CLASS=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1124,7 +1256,10 @@ CONFIG_LEDS_CLASS=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_LEDS_PCA9532 is not set
 | 
					# CONFIG_LEDS_PCA9532 is not set
 | 
				
			||||||
CONFIG_LEDS_GPIO=y
 | 
					CONFIG_LEDS_GPIO=y
 | 
				
			||||||
 | 
					CONFIG_LEDS_GPIO_PLATFORM=y
 | 
				
			||||||
 | 
					# CONFIG_LEDS_LP5521 is not set
 | 
				
			||||||
# CONFIG_LEDS_PCA955X is not set
 | 
					# CONFIG_LEDS_PCA955X is not set
 | 
				
			||||||
 | 
					# CONFIG_LEDS_BD2802 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# LED Triggers
 | 
					# LED Triggers
 | 
				
			||||||
| 
						 | 
					@ -1132,7 +1267,12 @@ CONFIG_LEDS_GPIO=y
 | 
				
			||||||
CONFIG_LEDS_TRIGGERS=y
 | 
					CONFIG_LEDS_TRIGGERS=y
 | 
				
			||||||
CONFIG_LEDS_TRIGGER_TIMER=y
 | 
					CONFIG_LEDS_TRIGGER_TIMER=y
 | 
				
			||||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
 | 
					CONFIG_LEDS_TRIGGER_HEARTBEAT=y
 | 
				
			||||||
 | 
					# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
 | 
				
			||||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
 | 
					CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# iptables trigger is under Netfilter config (LED target)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
CONFIG_RTC_LIB=y
 | 
					CONFIG_RTC_LIB=y
 | 
				
			||||||
CONFIG_RTC_CLASS=y
 | 
					CONFIG_RTC_CLASS=y
 | 
				
			||||||
CONFIG_RTC_HCTOSYS=y
 | 
					CONFIG_RTC_HCTOSYS=y
 | 
				
			||||||
| 
						 | 
					@ -1164,6 +1304,7 @@ CONFIG_RTC_DRV_M41T80=y
 | 
				
			||||||
# CONFIG_RTC_DRV_M41T80_WDT is not set
 | 
					# CONFIG_RTC_DRV_M41T80_WDT is not set
 | 
				
			||||||
CONFIG_RTC_DRV_S35390A=y
 | 
					CONFIG_RTC_DRV_S35390A=y
 | 
				
			||||||
# CONFIG_RTC_DRV_FM3130 is not set
 | 
					# CONFIG_RTC_DRV_FM3130 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_RX8581 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# SPI RTC drivers
 | 
					# SPI RTC drivers
 | 
				
			||||||
| 
						 | 
					@ -1173,12 +1314,15 @@ CONFIG_RTC_DRV_S35390A=y
 | 
				
			||||||
# Platform RTC drivers
 | 
					# Platform RTC drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_RTC_DRV_CMOS is not set
 | 
					# CONFIG_RTC_DRV_CMOS is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_DS1286 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_DS1511 is not set
 | 
					# CONFIG_RTC_DRV_DS1511 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_DS1553 is not set
 | 
					# CONFIG_RTC_DRV_DS1553 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_DS1742 is not set
 | 
					# CONFIG_RTC_DRV_DS1742 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_STK17TA8 is not set
 | 
					# CONFIG_RTC_DRV_STK17TA8 is not set
 | 
				
			||||||
CONFIG_RTC_DRV_M48T86=y
 | 
					CONFIG_RTC_DRV_M48T86=y
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_M48T35 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_M48T59 is not set
 | 
					# CONFIG_RTC_DRV_M48T59 is not set
 | 
				
			||||||
 | 
					# CONFIG_RTC_DRV_BQ4802 is not set
 | 
				
			||||||
# CONFIG_RTC_DRV_V3020 is not set
 | 
					# CONFIG_RTC_DRV_V3020 is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -1196,16 +1340,12 @@ CONFIG_DMA_ENGINE=y
 | 
				
			||||||
# DMA Clients
 | 
					# DMA Clients
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_NET_DMA is not set
 | 
					# CONFIG_NET_DMA is not set
 | 
				
			||||||
 | 
					# CONFIG_ASYNC_TX_DMA is not set
 | 
				
			||||||
# CONFIG_DMATEST is not set
 | 
					# CONFIG_DMATEST is not set
 | 
				
			||||||
 | 
					# CONFIG_AUXDISPLAY is not set
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Voltage and Current regulators
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_REGULATOR is not set
 | 
					# CONFIG_REGULATOR is not set
 | 
				
			||||||
# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
 | 
					 | 
				
			||||||
# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
 | 
					 | 
				
			||||||
# CONFIG_REGULATOR_BQ24022 is not set
 | 
					 | 
				
			||||||
# CONFIG_UIO is not set
 | 
					# CONFIG_UIO is not set
 | 
				
			||||||
 | 
					# CONFIG_STAGING is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# File systems
 | 
					# File systems
 | 
				
			||||||
| 
						 | 
					@ -1214,14 +1354,25 @@ CONFIG_EXT2_FS=y
 | 
				
			||||||
# CONFIG_EXT2_FS_XATTR is not set
 | 
					# CONFIG_EXT2_FS_XATTR is not set
 | 
				
			||||||
# CONFIG_EXT2_FS_XIP is not set
 | 
					# CONFIG_EXT2_FS_XIP is not set
 | 
				
			||||||
CONFIG_EXT3_FS=y
 | 
					CONFIG_EXT3_FS=y
 | 
				
			||||||
 | 
					# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
 | 
				
			||||||
# CONFIG_EXT3_FS_XATTR is not set
 | 
					# CONFIG_EXT3_FS_XATTR is not set
 | 
				
			||||||
# CONFIG_EXT4DEV_FS is not set
 | 
					CONFIG_EXT4_FS=m
 | 
				
			||||||
 | 
					# CONFIG_EXT4DEV_COMPAT is not set
 | 
				
			||||||
 | 
					CONFIG_EXT4_FS_XATTR=y
 | 
				
			||||||
 | 
					# CONFIG_EXT4_FS_POSIX_ACL is not set
 | 
				
			||||||
 | 
					# CONFIG_EXT4_FS_SECURITY is not set
 | 
				
			||||||
CONFIG_JBD=y
 | 
					CONFIG_JBD=y
 | 
				
			||||||
 | 
					# CONFIG_JBD_DEBUG is not set
 | 
				
			||||||
 | 
					CONFIG_JBD2=m
 | 
				
			||||||
 | 
					# CONFIG_JBD2_DEBUG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_MBCACHE=m
 | 
				
			||||||
# CONFIG_REISERFS_FS is not set
 | 
					# CONFIG_REISERFS_FS is not set
 | 
				
			||||||
# CONFIG_JFS_FS is not set
 | 
					# CONFIG_JFS_FS is not set
 | 
				
			||||||
# CONFIG_FS_POSIX_ACL is not set
 | 
					# CONFIG_FS_POSIX_ACL is not set
 | 
				
			||||||
 | 
					CONFIG_FILE_LOCKING=y
 | 
				
			||||||
# CONFIG_XFS_FS is not set
 | 
					# CONFIG_XFS_FS is not set
 | 
				
			||||||
# CONFIG_OCFS2_FS is not set
 | 
					# CONFIG_OCFS2_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_BTRFS_FS is not set
 | 
				
			||||||
CONFIG_DNOTIFY=y
 | 
					CONFIG_DNOTIFY=y
 | 
				
			||||||
CONFIG_INOTIFY=y
 | 
					CONFIG_INOTIFY=y
 | 
				
			||||||
CONFIG_INOTIFY_USER=y
 | 
					CONFIG_INOTIFY_USER=y
 | 
				
			||||||
| 
						 | 
					@ -1230,6 +1381,11 @@ CONFIG_INOTIFY_USER=y
 | 
				
			||||||
# CONFIG_AUTOFS4_FS is not set
 | 
					# CONFIG_AUTOFS4_FS is not set
 | 
				
			||||||
# CONFIG_FUSE_FS is not set
 | 
					# CONFIG_FUSE_FS is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Caches
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FSCACHE is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CD-ROM/DVD Filesystems
 | 
					# CD-ROM/DVD Filesystems
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -1254,15 +1410,13 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_PROC_FS=y
 | 
					CONFIG_PROC_FS=y
 | 
				
			||||||
CONFIG_PROC_SYSCTL=y
 | 
					CONFIG_PROC_SYSCTL=y
 | 
				
			||||||
 | 
					CONFIG_PROC_PAGE_MONITOR=y
 | 
				
			||||||
CONFIG_SYSFS=y
 | 
					CONFIG_SYSFS=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
# CONFIG_TMPFS_POSIX_ACL is not set
 | 
					# CONFIG_TMPFS_POSIX_ACL is not set
 | 
				
			||||||
# CONFIG_HUGETLB_PAGE is not set
 | 
					# CONFIG_HUGETLB_PAGE is not set
 | 
				
			||||||
# CONFIG_CONFIGFS_FS is not set
 | 
					# CONFIG_CONFIGFS_FS is not set
 | 
				
			||||||
 | 
					CONFIG_MISC_FILESYSTEMS=y
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Miscellaneous filesystems
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# CONFIG_ADFS_FS is not set
 | 
					# CONFIG_ADFS_FS is not set
 | 
				
			||||||
# CONFIG_AFFS_FS is not set
 | 
					# CONFIG_AFFS_FS is not set
 | 
				
			||||||
# CONFIG_HFS_FS is not set
 | 
					# CONFIG_HFS_FS is not set
 | 
				
			||||||
| 
						 | 
					@ -1282,6 +1436,7 @@ CONFIG_JFFS2_ZLIB=y
 | 
				
			||||||
CONFIG_JFFS2_RTIME=y
 | 
					CONFIG_JFFS2_RTIME=y
 | 
				
			||||||
# CONFIG_JFFS2_RUBIN is not set
 | 
					# CONFIG_JFFS2_RUBIN is not set
 | 
				
			||||||
CONFIG_CRAMFS=y
 | 
					CONFIG_CRAMFS=y
 | 
				
			||||||
 | 
					# CONFIG_SQUASHFS is not set
 | 
				
			||||||
# CONFIG_VXFS_FS is not set
 | 
					# CONFIG_VXFS_FS is not set
 | 
				
			||||||
# CONFIG_MINIX_FS is not set
 | 
					# CONFIG_MINIX_FS is not set
 | 
				
			||||||
# CONFIG_OMFS_FS is not set
 | 
					# CONFIG_OMFS_FS is not set
 | 
				
			||||||
| 
						 | 
					@ -1290,6 +1445,7 @@ CONFIG_CRAMFS=y
 | 
				
			||||||
# CONFIG_ROMFS_FS is not set
 | 
					# CONFIG_ROMFS_FS is not set
 | 
				
			||||||
# CONFIG_SYSV_FS is not set
 | 
					# CONFIG_SYSV_FS is not set
 | 
				
			||||||
# CONFIG_UFS_FS is not set
 | 
					# CONFIG_UFS_FS is not set
 | 
				
			||||||
 | 
					# CONFIG_NILFS2_FS is not set
 | 
				
			||||||
CONFIG_NETWORK_FILESYSTEMS=y
 | 
					CONFIG_NETWORK_FILESYSTEMS=y
 | 
				
			||||||
CONFIG_NFS_FS=y
 | 
					CONFIG_NFS_FS=y
 | 
				
			||||||
CONFIG_NFS_V3=y
 | 
					CONFIG_NFS_V3=y
 | 
				
			||||||
| 
						 | 
					@ -1381,13 +1537,16 @@ CONFIG_ENABLE_MUST_CHECK=y
 | 
				
			||||||
CONFIG_FRAME_WARN=1024
 | 
					CONFIG_FRAME_WARN=1024
 | 
				
			||||||
CONFIG_MAGIC_SYSRQ=y
 | 
					CONFIG_MAGIC_SYSRQ=y
 | 
				
			||||||
# CONFIG_UNUSED_SYMBOLS is not set
 | 
					# CONFIG_UNUSED_SYMBOLS is not set
 | 
				
			||||||
# CONFIG_DEBUG_FS is not set
 | 
					CONFIG_DEBUG_FS=y
 | 
				
			||||||
# CONFIG_HEADERS_CHECK is not set
 | 
					# CONFIG_HEADERS_CHECK is not set
 | 
				
			||||||
CONFIG_DEBUG_KERNEL=y
 | 
					CONFIG_DEBUG_KERNEL=y
 | 
				
			||||||
# CONFIG_DEBUG_SHIRQ is not set
 | 
					# CONFIG_DEBUG_SHIRQ is not set
 | 
				
			||||||
CONFIG_DETECT_SOFTLOCKUP=y
 | 
					CONFIG_DETECT_SOFTLOCKUP=y
 | 
				
			||||||
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
 | 
					# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
 | 
				
			||||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
 | 
					CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
 | 
				
			||||||
 | 
					CONFIG_DETECT_HUNG_TASK=y
 | 
				
			||||||
 | 
					# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
 | 
				
			||||||
 | 
					CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
 | 
				
			||||||
CONFIG_SCHED_DEBUG=y
 | 
					CONFIG_SCHED_DEBUG=y
 | 
				
			||||||
CONFIG_SCHEDSTATS=y
 | 
					CONFIG_SCHEDSTATS=y
 | 
				
			||||||
# CONFIG_TIMER_STATS is not set
 | 
					# CONFIG_TIMER_STATS is not set
 | 
				
			||||||
| 
						 | 
					@ -1411,25 +1570,46 @@ CONFIG_DEBUG_INFO=y
 | 
				
			||||||
# CONFIG_DEBUG_MEMORY_INIT is not set
 | 
					# CONFIG_DEBUG_MEMORY_INIT is not set
 | 
				
			||||||
# CONFIG_DEBUG_LIST is not set
 | 
					# CONFIG_DEBUG_LIST is not set
 | 
				
			||||||
# CONFIG_DEBUG_SG is not set
 | 
					# CONFIG_DEBUG_SG is not set
 | 
				
			||||||
 | 
					# CONFIG_DEBUG_NOTIFIERS is not set
 | 
				
			||||||
CONFIG_FRAME_POINTER=y
 | 
					CONFIG_FRAME_POINTER=y
 | 
				
			||||||
# CONFIG_BOOT_PRINTK_DELAY is not set
 | 
					# CONFIG_BOOT_PRINTK_DELAY is not set
 | 
				
			||||||
# CONFIG_RCU_TORTURE_TEST is not set
 | 
					# CONFIG_RCU_TORTURE_TEST is not set
 | 
				
			||||||
 | 
					# CONFIG_RCU_CPU_STALL_DETECTOR is not set
 | 
				
			||||||
# CONFIG_KPROBES_SANITY_TEST is not set
 | 
					# CONFIG_KPROBES_SANITY_TEST is not set
 | 
				
			||||||
# CONFIG_BACKTRACE_SELF_TEST is not set
 | 
					# CONFIG_BACKTRACE_SELF_TEST is not set
 | 
				
			||||||
 | 
					# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
 | 
				
			||||||
# CONFIG_LKDTM is not set
 | 
					# CONFIG_LKDTM is not set
 | 
				
			||||||
# CONFIG_FAULT_INJECTION is not set
 | 
					# CONFIG_FAULT_INJECTION is not set
 | 
				
			||||||
CONFIG_LATENCYTOP=y
 | 
					CONFIG_LATENCYTOP=y
 | 
				
			||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
					CONFIG_SYSCTL_SYSCALL_CHECK=y
 | 
				
			||||||
CONFIG_HAVE_FTRACE=y
 | 
					# CONFIG_PAGE_POISONING is not set
 | 
				
			||||||
CONFIG_HAVE_DYNAMIC_FTRACE=y
 | 
					CONFIG_NOP_TRACER=y
 | 
				
			||||||
# CONFIG_FTRACE is not set
 | 
					CONFIG_HAVE_FUNCTION_TRACER=y
 | 
				
			||||||
 | 
					CONFIG_RING_BUFFER=y
 | 
				
			||||||
 | 
					CONFIG_TRACING=y
 | 
				
			||||||
 | 
					CONFIG_TRACING_SUPPORT=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Tracers
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_FUNCTION_TRACER is not set
 | 
				
			||||||
# CONFIG_IRQSOFF_TRACER is not set
 | 
					# CONFIG_IRQSOFF_TRACER is not set
 | 
				
			||||||
# CONFIG_PREEMPT_TRACER is not set
 | 
					# CONFIG_PREEMPT_TRACER is not set
 | 
				
			||||||
# CONFIG_SCHED_TRACER is not set
 | 
					# CONFIG_SCHED_TRACER is not set
 | 
				
			||||||
# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
					# CONFIG_CONTEXT_SWITCH_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_EVENT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BOOT_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_TRACE_BRANCH_PROFILING is not set
 | 
				
			||||||
 | 
					# CONFIG_STACK_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_KMEMTRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_WORKQUEUE_TRACER is not set
 | 
				
			||||||
 | 
					# CONFIG_BLK_DEV_IO_TRACE is not set
 | 
				
			||||||
 | 
					# CONFIG_FTRACE_STARTUP_TEST is not set
 | 
				
			||||||
 | 
					# CONFIG_DYNAMIC_DEBUG is not set
 | 
				
			||||||
# CONFIG_SAMPLES is not set
 | 
					# CONFIG_SAMPLES is not set
 | 
				
			||||||
CONFIG_HAVE_ARCH_KGDB=y
 | 
					CONFIG_HAVE_ARCH_KGDB=y
 | 
				
			||||||
# CONFIG_KGDB is not set
 | 
					# CONFIG_KGDB is not set
 | 
				
			||||||
 | 
					CONFIG_ARM_UNWIND=y
 | 
				
			||||||
CONFIG_DEBUG_USER=y
 | 
					CONFIG_DEBUG_USER=y
 | 
				
			||||||
CONFIG_DEBUG_ERRORS=y
 | 
					CONFIG_DEBUG_ERRORS=y
 | 
				
			||||||
# CONFIG_DEBUG_STACK_USAGE is not set
 | 
					# CONFIG_DEBUG_STACK_USAGE is not set
 | 
				
			||||||
| 
						 | 
					@ -1441,18 +1621,27 @@ CONFIG_DEBUG_LL=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_KEYS is not set
 | 
					# CONFIG_KEYS is not set
 | 
				
			||||||
# CONFIG_SECURITY is not set
 | 
					# CONFIG_SECURITY is not set
 | 
				
			||||||
 | 
					# CONFIG_SECURITYFS is not set
 | 
				
			||||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
					# CONFIG_SECURITY_FILE_CAPABILITIES is not set
 | 
				
			||||||
CONFIG_ASYNC_CORE=y
 | 
					 | 
				
			||||||
CONFIG_CRYPTO=y
 | 
					CONFIG_CRYPTO=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Crypto core or helper
 | 
					# Crypto core or helper
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_FIPS is not set
 | 
				
			||||||
CONFIG_CRYPTO_ALGAPI=m
 | 
					CONFIG_CRYPTO_ALGAPI=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_ALGAPI2=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AEAD2=m
 | 
				
			||||||
CONFIG_CRYPTO_BLKCIPHER=m
 | 
					CONFIG_CRYPTO_BLKCIPHER=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_BLKCIPHER2=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_HASH2=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_RNG2=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_PCOMP=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=m
 | 
					CONFIG_CRYPTO_MANAGER=m
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_MANAGER2=m
 | 
				
			||||||
# CONFIG_CRYPTO_GF128MUL is not set
 | 
					# CONFIG_CRYPTO_GF128MUL is not set
 | 
				
			||||||
# CONFIG_CRYPTO_NULL is not set
 | 
					# CONFIG_CRYPTO_NULL is not set
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_WORKQUEUE=m
 | 
				
			||||||
# CONFIG_CRYPTO_CRYPTD is not set
 | 
					# CONFIG_CRYPTO_CRYPTD is not set
 | 
				
			||||||
# CONFIG_CRYPTO_AUTHENC is not set
 | 
					# CONFIG_CRYPTO_AUTHENC is not set
 | 
				
			||||||
# CONFIG_CRYPTO_TEST is not set
 | 
					# CONFIG_CRYPTO_TEST is not set
 | 
				
			||||||
| 
						 | 
					@ -1521,18 +1710,24 @@ CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
# Compression
 | 
					# Compression
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# CONFIG_CRYPTO_DEFLATE is not set
 | 
					# CONFIG_CRYPTO_DEFLATE is not set
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ZLIB is not set
 | 
				
			||||||
# CONFIG_CRYPTO_LZO is not set
 | 
					# CONFIG_CRYPTO_LZO is not set
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Random Number Generation
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_CRYPTO_ANSI_CPRNG is not set
 | 
				
			||||||
CONFIG_CRYPTO_HW=y
 | 
					CONFIG_CRYPTO_HW=y
 | 
				
			||||||
# CONFIG_CRYPTO_DEV_HIFN_795X is not set
 | 
					# CONFIG_CRYPTO_DEV_HIFN_795X is not set
 | 
				
			||||||
 | 
					CONFIG_BINARY_PRINTF=y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Library routines
 | 
					# Library routines
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_BITREVERSE=y
 | 
					CONFIG_BITREVERSE=y
 | 
				
			||||||
# CONFIG_GENERIC_FIND_FIRST_BIT is not set
 | 
					CONFIG_GENERIC_FIND_LAST_BIT=y
 | 
				
			||||||
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
 | 
					 | 
				
			||||||
# CONFIG_CRC_CCITT is not set
 | 
					# CONFIG_CRC_CCITT is not set
 | 
				
			||||||
# CONFIG_CRC16 is not set
 | 
					CONFIG_CRC16=m
 | 
				
			||||||
CONFIG_CRC_T10DIF=y
 | 
					CONFIG_CRC_T10DIF=y
 | 
				
			||||||
CONFIG_CRC_ITU_T=m
 | 
					CONFIG_CRC_ITU_T=m
 | 
				
			||||||
CONFIG_CRC32=y
 | 
					CONFIG_CRC32=y
 | 
				
			||||||
| 
						 | 
					@ -1540,7 +1735,7 @@ CONFIG_CRC32=y
 | 
				
			||||||
# CONFIG_LIBCRC32C is not set
 | 
					# CONFIG_LIBCRC32C is not set
 | 
				
			||||||
CONFIG_ZLIB_INFLATE=y
 | 
					CONFIG_ZLIB_INFLATE=y
 | 
				
			||||||
CONFIG_ZLIB_DEFLATE=y
 | 
					CONFIG_ZLIB_DEFLATE=y
 | 
				
			||||||
CONFIG_PLIST=y
 | 
					 | 
				
			||||||
CONFIG_HAS_IOMEM=y
 | 
					CONFIG_HAS_IOMEM=y
 | 
				
			||||||
CONFIG_HAS_IOPORT=y
 | 
					CONFIG_HAS_IOPORT=y
 | 
				
			||||||
CONFIG_HAS_DMA=y
 | 
					CONFIG_HAS_DMA=y
 | 
				
			||||||
 | 
					CONFIG_NLATTR=y
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
					@ -298,7 +298,6 @@ CONFIG_CPU_FREQ_GOV_POWERSAVE=m
 | 
				
			||||||
CONFIG_CPU_FREQ_GOV_USERSPACE=m
 | 
					CONFIG_CPU_FREQ_GOV_USERSPACE=m
 | 
				
			||||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
 | 
					CONFIG_CPU_FREQ_GOV_ONDEMAND=m
 | 
				
			||||||
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
 | 
					CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
 | 
				
			||||||
CONFIG_CPU_FREQ_PXA=y
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Floating point emulation
 | 
					# Floating point emulation
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -45,13 +45,15 @@ typedef struct user_fp elf_fpregset_t;
 | 
				
			||||||
#define EF_ARM_HASENTRY		0x00000002	/* All */
 | 
					#define EF_ARM_HASENTRY		0x00000002	/* All */
 | 
				
			||||||
#define EF_ARM_RELEXEC		0x00000001	/* All */
 | 
					#define EF_ARM_RELEXEC		0x00000001	/* All */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define R_ARM_NONE	0
 | 
					#define R_ARM_NONE		0
 | 
				
			||||||
#define R_ARM_PC24	1
 | 
					#define R_ARM_PC24		1
 | 
				
			||||||
#define R_ARM_ABS32	2
 | 
					#define R_ARM_ABS32		2
 | 
				
			||||||
#define R_ARM_CALL	28
 | 
					#define R_ARM_CALL		28
 | 
				
			||||||
#define R_ARM_JUMP24	29
 | 
					#define R_ARM_JUMP24		29
 | 
				
			||||||
#define R_ARM_V4BX	40
 | 
					#define R_ARM_V4BX		40
 | 
				
			||||||
#define R_ARM_PREL31	42
 | 
					#define R_ARM_PREL31		42
 | 
				
			||||||
 | 
					#define R_ARM_MOVW_ABS_NC	43
 | 
				
			||||||
 | 
					#define R_ARM_MOVT_ABS		44
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * These are used to set parameters in the core dumps.
 | 
					 * These are used to set parameters in the core dumps.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -32,6 +32,7 @@
 | 
				
			||||||
#define SZ_4K                           0x00001000
 | 
					#define SZ_4K                           0x00001000
 | 
				
			||||||
#define SZ_8K                           0x00002000
 | 
					#define SZ_8K                           0x00002000
 | 
				
			||||||
#define SZ_16K                          0x00004000
 | 
					#define SZ_16K                          0x00004000
 | 
				
			||||||
 | 
					#define SZ_32K                          0x00008000
 | 
				
			||||||
#define SZ_64K                          0x00010000
 | 
					#define SZ_64K                          0x00010000
 | 
				
			||||||
#define SZ_128K                         0x00020000
 | 
					#define SZ_128K                         0x00020000
 | 
				
			||||||
#define SZ_256K                         0x00040000
 | 
					#define SZ_256K                         0x00040000
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,6 +36,8 @@
 | 
				
			||||||
struct mmu_gather {
 | 
					struct mmu_gather {
 | 
				
			||||||
	struct mm_struct	*mm;
 | 
						struct mm_struct	*mm;
 | 
				
			||||||
	unsigned int		fullmm;
 | 
						unsigned int		fullmm;
 | 
				
			||||||
 | 
						unsigned long		range_start;
 | 
				
			||||||
 | 
						unsigned long		range_end;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
DECLARE_PER_CPU(struct mmu_gather, mmu_gathers);
 | 
					DECLARE_PER_CPU(struct mmu_gather, mmu_gathers);
 | 
				
			||||||
| 
						 | 
					@ -63,7 +65,19 @@ tlb_finish_mmu(struct mmu_gather *tlb, unsigned long start, unsigned long end)
 | 
				
			||||||
	put_cpu_var(mmu_gathers);
 | 
						put_cpu_var(mmu_gathers);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define tlb_remove_tlb_entry(tlb,ptep,address)	do { } while (0)
 | 
					/*
 | 
				
			||||||
 | 
					 * Memorize the range for the TLB flush.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					static inline void
 | 
				
			||||||
 | 
					tlb_remove_tlb_entry(struct mmu_gather *tlb, pte_t *ptep, unsigned long addr)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if (!tlb->fullmm) {
 | 
				
			||||||
 | 
							if (addr < tlb->range_start)
 | 
				
			||||||
 | 
								tlb->range_start = addr;
 | 
				
			||||||
 | 
							if (addr + PAGE_SIZE > tlb->range_end)
 | 
				
			||||||
 | 
								tlb->range_end = addr + PAGE_SIZE;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * In the case of tlb vma handling, we can optimise these away in the
 | 
					 * In the case of tlb vma handling, we can optimise these away in the
 | 
				
			||||||
| 
						 | 
					@ -73,15 +87,18 @@ tlb_finish_mmu(struct mmu_gather *tlb, unsigned long start, unsigned long end)
 | 
				
			||||||
static inline void
 | 
					static inline void
 | 
				
			||||||
tlb_start_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
 | 
					tlb_start_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if (!tlb->fullmm)
 | 
						if (!tlb->fullmm) {
 | 
				
			||||||
		flush_cache_range(vma, vma->vm_start, vma->vm_end);
 | 
							flush_cache_range(vma, vma->vm_start, vma->vm_end);
 | 
				
			||||||
 | 
							tlb->range_start = TASK_SIZE;
 | 
				
			||||||
 | 
							tlb->range_end = 0;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static inline void
 | 
					static inline void
 | 
				
			||||||
tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
 | 
					tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if (!tlb->fullmm)
 | 
						if (!tlb->fullmm && tlb->range_end > 0)
 | 
				
			||||||
		flush_tlb_range(vma, vma->vm_start, vma->vm_end);
 | 
							flush_tlb_range(vma, tlb->range_start, tlb->range_end);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define tlb_remove_page(tlb,page)	free_page_and_swap_cache(page)
 | 
					#define tlb_remove_page(tlb,page)	free_page_and_swap_cache(page)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -387,6 +387,8 @@
 | 
				
			||||||
#define __NR_dup3			(__NR_SYSCALL_BASE+358)
 | 
					#define __NR_dup3			(__NR_SYSCALL_BASE+358)
 | 
				
			||||||
#define __NR_pipe2			(__NR_SYSCALL_BASE+359)
 | 
					#define __NR_pipe2			(__NR_SYSCALL_BASE+359)
 | 
				
			||||||
#define __NR_inotify_init1		(__NR_SYSCALL_BASE+360)
 | 
					#define __NR_inotify_init1		(__NR_SYSCALL_BASE+360)
 | 
				
			||||||
 | 
					#define __NR_preadv			(__NR_SYSCALL_BASE+361)
 | 
				
			||||||
 | 
					#define __NR_pwritev			(__NR_SYSCALL_BASE+362)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * The following SWIs are ARM private.
 | 
					 * The following SWIs are ARM private.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -370,6 +370,8 @@
 | 
				
			||||||
		CALL(sys_dup3)
 | 
							CALL(sys_dup3)
 | 
				
			||||||
		CALL(sys_pipe2)
 | 
							CALL(sys_pipe2)
 | 
				
			||||||
/* 360 */	CALL(sys_inotify_init1)
 | 
					/* 360 */	CALL(sys_inotify_init1)
 | 
				
			||||||
 | 
							CALL(sys_preadv)
 | 
				
			||||||
 | 
							CALL(sys_pwritev)
 | 
				
			||||||
#ifndef syscalls_counted
 | 
					#ifndef syscalls_counted
 | 
				
			||||||
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
 | 
					.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
 | 
				
			||||||
#define syscalls_counted
 | 
					#define syscalls_counted
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -169,6 +169,21 @@ apply_relocate(Elf32_Shdr *sechdrs, const char *strtab, unsigned int symindex,
 | 
				
			||||||
			*(u32 *)loc = offset & 0x7fffffff;
 | 
								*(u32 *)loc = offset & 0x7fffffff;
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							case R_ARM_MOVW_ABS_NC:
 | 
				
			||||||
 | 
							case R_ARM_MOVT_ABS:
 | 
				
			||||||
 | 
								offset = *(u32 *)loc;
 | 
				
			||||||
 | 
								offset = ((offset & 0xf0000) >> 4) | (offset & 0xfff);
 | 
				
			||||||
 | 
								offset = (offset ^ 0x8000) - 0x8000;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								offset += sym->st_value;
 | 
				
			||||||
 | 
								if (ELF32_R_TYPE(rel->r_info) == R_ARM_MOVT_ABS)
 | 
				
			||||||
 | 
									offset >>= 16;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								*(u32 *)loc &= 0xfff0f000;
 | 
				
			||||||
 | 
								*(u32 *)loc |= ((offset & 0xf000) << 4) |
 | 
				
			||||||
 | 
										(offset & 0x0fff);
 | 
				
			||||||
 | 
								break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		default:
 | 
							default:
 | 
				
			||||||
			printk(KERN_ERR "%s: unknown relocation: %u\n",
 | 
								printk(KERN_ERR "%s: unknown relocation: %u\n",
 | 
				
			||||||
			       module->name, ELF32_R_TYPE(rel->r_info));
 | 
								       module->name, ELF32_R_TYPE(rel->r_info));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -83,6 +83,7 @@
 | 
				
			||||||
#include <linux/net.h>
 | 
					#include <linux/net.h>
 | 
				
			||||||
#include <linux/ipc.h>
 | 
					#include <linux/ipc.h>
 | 
				
			||||||
#include <linux/uaccess.h>
 | 
					#include <linux/uaccess.h>
 | 
				
			||||||
 | 
					#include <linux/slab.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct oldabi_stat64 {
 | 
					struct oldabi_stat64 {
 | 
				
			||||||
	unsigned long long st_dev;
 | 
						unsigned long long st_dev;
 | 
				
			||||||
| 
						 | 
					@ -176,21 +177,12 @@ asmlinkage long sys_oabi_fstatat64(int dfd,
 | 
				
			||||||
				   int flag)
 | 
									   int flag)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct kstat stat;
 | 
						struct kstat stat;
 | 
				
			||||||
	int error = -EINVAL;
 | 
						int error;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if ((flag & ~AT_SYMLINK_NOFOLLOW) != 0)
 | 
						error = vfs_fstatat(dfd, filename, &stat, flag);
 | 
				
			||||||
		goto out;
 | 
						if (error)
 | 
				
			||||||
 | 
							return error;
 | 
				
			||||||
	if (flag & AT_SYMLINK_NOFOLLOW)
 | 
						return cp_oldabi_stat64(&stat, statbuf);
 | 
				
			||||||
		error = vfs_lstat_fd(dfd, filename, &stat);
 | 
					 | 
				
			||||||
	else
 | 
					 | 
				
			||||||
		error = vfs_stat_fd(dfd, filename, &stat);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (!error)
 | 
					 | 
				
			||||||
	error = cp_oldabi_stat64(&stat, statbuf);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
out:
 | 
					 | 
				
			||||||
	return error;
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct oabi_flock64 {
 | 
					struct oabi_flock64 {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -85,7 +85,7 @@ static struct irqaction at91rm9200_timer_irq = {
 | 
				
			||||||
	.handler	= at91rm9200_timer_interrupt
 | 
						.handler	= at91rm9200_timer_interrupt
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static cycle_t read_clk32k(void)
 | 
					static cycle_t read_clk32k(struct clocksource *cs)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	return read_CRTR();
 | 
						return read_CRTR();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -31,7 +31,7 @@ static u32 pit_cnt;		/* access only w/system irq blocked */
 | 
				
			||||||
 * Clocksource:  just a monotonic counter of MCK/16 cycles.
 | 
					 * Clocksource:  just a monotonic counter of MCK/16 cycles.
 | 
				
			||||||
 * We don't care whether or not PIT irqs are enabled.
 | 
					 * We don't care whether or not PIT irqs are enabled.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
static cycle_t read_pit_clk(void)
 | 
					static cycle_t read_pit_clk(struct clocksource *cs)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	unsigned long flags;
 | 
						unsigned long flags;
 | 
				
			||||||
	u32 elapsed;
 | 
						u32 elapsed;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -87,7 +87,7 @@ extern void __init at91_add_device_eth(struct at91_eth_data *data);
 | 
				
			||||||
 /* USB Host */
 | 
					 /* USB Host */
 | 
				
			||||||
struct at91_usbh_data {
 | 
					struct at91_usbh_data {
 | 
				
			||||||
	u8		ports;		/* number of ports on root hub */
 | 
						u8		ports;		/* number of ports on root hub */
 | 
				
			||||||
	u8		vbus_pin[];	/* port power-control pin */
 | 
						u8		vbus_pin[2];	/* port power-control pin */
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
extern void __init at91_add_device_usbh(struct at91_usbh_data *data);
 | 
					extern void __init at91_add_device_usbh(struct at91_usbh_data *data);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,19 +4,56 @@ menu "TI DaVinci Implementations"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
comment "DaVinci Core Type"
 | 
					comment "DaVinci Core Type"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config ARCH_DAVINCI644x
 | 
					config ARCH_DAVINCI_DM644x
 | 
				
			||||||
	default y
 | 
					 | 
				
			||||||
	bool "DaVinci 644x based system"
 | 
						bool "DaVinci 644x based system"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
comment "DaVinci Board Type"
 | 
					comment "DaVinci Board Type"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config MACH_DAVINCI_EVM
 | 
					config MACH_DAVINCI_EVM
 | 
				
			||||||
	bool "TI DaVinci EVM"
 | 
						bool "TI DM644x EVM"
 | 
				
			||||||
	default y
 | 
						default y
 | 
				
			||||||
	depends on ARCH_DAVINCI644x
 | 
						depends on ARCH_DAVINCI_DM644x
 | 
				
			||||||
	help
 | 
						help
 | 
				
			||||||
	  Configure this option to specify the whether the board used
 | 
						  Configure this option to specify the whether the board used
 | 
				
			||||||
	  for development is a DaVinci EVM
 | 
						  for development is a DM644x EVM
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config DAVINCI_MUX
 | 
				
			||||||
 | 
						bool "DAVINCI multiplexing support"
 | 
				
			||||||
 | 
						depends on ARCH_DAVINCI
 | 
				
			||||||
 | 
						default y
 | 
				
			||||||
 | 
						help
 | 
				
			||||||
 | 
						  Pin multiplexing support for DAVINCI boards. If your bootloader
 | 
				
			||||||
 | 
						  sets the multiplexing correctly, say N. Otherwise, or if unsure,
 | 
				
			||||||
 | 
						  say Y.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config DAVINCI_MUX_DEBUG
 | 
				
			||||||
 | 
					        bool "Multiplexing debug output"
 | 
				
			||||||
 | 
					        depends on DAVINCI_MUX
 | 
				
			||||||
 | 
					        help
 | 
				
			||||||
 | 
					          Makes the multiplexing functions print out a lot of debug info.
 | 
				
			||||||
 | 
					          This is useful if you want to find out the correct values of the
 | 
				
			||||||
 | 
					          multiplexing registers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config DAVINCI_MUX_WARNINGS
 | 
				
			||||||
 | 
					        bool "Warn about pins the bootloader didn't set up"
 | 
				
			||||||
 | 
					        depends on DAVINCI_MUX
 | 
				
			||||||
 | 
					        help
 | 
				
			||||||
 | 
					          Choose Y here to warn whenever driver initialization logic needs
 | 
				
			||||||
 | 
					          to change the pin multiplexing setup.  When there are no warnings
 | 
				
			||||||
 | 
					          printed, it's safe to deselect DAVINCI_MUX for your product.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config DAVINCI_RESET_CLOCKS
 | 
				
			||||||
 | 
						bool "Reset unused clocks during boot"
 | 
				
			||||||
 | 
						depends on ARCH_DAVINCI
 | 
				
			||||||
 | 
						help
 | 
				
			||||||
 | 
						  Say Y if you want to reset unused clocks during boot.
 | 
				
			||||||
 | 
						  This option saves power, but assumes all drivers are
 | 
				
			||||||
 | 
						  using the clock framework. Broken drivers that do not
 | 
				
			||||||
 | 
						  yet use clock framework may not work with this option.
 | 
				
			||||||
 | 
						  If you are booting from another operating system, you
 | 
				
			||||||
 | 
						  probably do not want this option enabled until your
 | 
				
			||||||
 | 
						  device drivers work properly.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
endmenu
 | 
					endmenu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,7 +5,12 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Common objects
 | 
					# Common objects
 | 
				
			||||||
obj-y 			:= time.o irq.o clock.o serial.o io.o id.o psc.o \
 | 
					obj-y 			:= time.o irq.o clock.o serial.o io.o id.o psc.o \
 | 
				
			||||||
			   gpio.o mux.o devices.o usb.o
 | 
								   gpio.o devices.o dma.o usb.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					obj-$(CONFIG_DAVINCI_MUX)		+= mux.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Chip specific
 | 
				
			||||||
 | 
					obj-$(CONFIG_ARCH_DAVINCI_DM644x)       += dm644x.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Board specific
 | 
					# Board specific
 | 
				
			||||||
obj-$(CONFIG_MACH_DAVINCI_EVM)  += board-evm.o
 | 
					obj-$(CONFIG_MACH_DAVINCI_EVM)  	+= board-dm644x-evm.o
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,15 +15,20 @@
 | 
				
			||||||
#include <linux/platform_device.h>
 | 
					#include <linux/platform_device.h>
 | 
				
			||||||
#include <linux/gpio.h>
 | 
					#include <linux/gpio.h>
 | 
				
			||||||
#include <linux/leds.h>
 | 
					#include <linux/leds.h>
 | 
				
			||||||
 | 
					#include <linux/memory.h>
 | 
				
			||||||
 | 
					#include <linux/etherdevice.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <linux/i2c.h>
 | 
					#include <linux/i2c.h>
 | 
				
			||||||
#include <linux/i2c/pcf857x.h>
 | 
					#include <linux/i2c/pcf857x.h>
 | 
				
			||||||
#include <linux/i2c/at24.h>
 | 
					#include <linux/i2c/at24.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <linux/mtd/mtd.h>
 | 
					#include <linux/mtd/mtd.h>
 | 
				
			||||||
 | 
					#include <linux/mtd/nand.h>
 | 
				
			||||||
#include <linux/mtd/partitions.h>
 | 
					#include <linux/mtd/partitions.h>
 | 
				
			||||||
#include <linux/mtd/physmap.h>
 | 
					#include <linux/mtd/physmap.h>
 | 
				
			||||||
#include <linux/io.h>
 | 
					#include <linux/io.h>
 | 
				
			||||||
 | 
					#include <linux/phy.h>
 | 
				
			||||||
 | 
					#include <linux/clk.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <asm/setup.h>
 | 
					#include <asm/setup.h>
 | 
				
			||||||
#include <asm/mach-types.h>
 | 
					#include <asm/mach-types.h>
 | 
				
			||||||
| 
						 | 
					@ -32,25 +37,34 @@
 | 
				
			||||||
#include <asm/mach/map.h>
 | 
					#include <asm/mach/map.h>
 | 
				
			||||||
#include <asm/mach/flash.h>
 | 
					#include <asm/mach/flash.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <mach/hardware.h>
 | 
					#include <mach/dm644x.h>
 | 
				
			||||||
#include <mach/common.h>
 | 
					#include <mach/common.h>
 | 
				
			||||||
#include <mach/i2c.h>
 | 
					#include <mach/i2c.h>
 | 
				
			||||||
 | 
					#include <mach/serial.h>
 | 
				
			||||||
 | 
					#include <mach/mux.h>
 | 
				
			||||||
 | 
					#include <mach/psc.h>
 | 
				
			||||||
 | 
					#include <mach/nand.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* other misc. init functions */
 | 
					#define DM644X_EVM_PHY_MASK		(0x2)
 | 
				
			||||||
void __init davinci_psc_init(void);
 | 
					#define DM644X_EVM_MDIO_FREQUENCY	(2200000) /* PHY bus frequency */
 | 
				
			||||||
void __init davinci_irq_init(void);
 | 
					 | 
				
			||||||
void __init davinci_map_common_io(void);
 | 
					 | 
				
			||||||
void __init davinci_init_common_hw(void);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(CONFIG_MTD_PHYSMAP) || \
 | 
					#define DAVINCI_CFC_ATA_BASE		  0x01C66000
 | 
				
			||||||
    defined(CONFIG_MTD_PHYSMAP_MODULE)
 | 
					
 | 
				
			||||||
 | 
					#define DAVINCI_ASYNC_EMIF_CONTROL_BASE   0x01e00000
 | 
				
			||||||
 | 
					#define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE  0x02000000
 | 
				
			||||||
 | 
					#define DAVINCI_ASYNC_EMIF_DATA_CE1_BASE  0x04000000
 | 
				
			||||||
 | 
					#define DAVINCI_ASYNC_EMIF_DATA_CE2_BASE  0x06000000
 | 
				
			||||||
 | 
					#define DAVINCI_ASYNC_EMIF_DATA_CE3_BASE  0x08000000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define LXT971_PHY_ID	(0x001378e2)
 | 
				
			||||||
 | 
					#define LXT971_PHY_MASK	(0xfffffff0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct mtd_partition davinci_evm_norflash_partitions[] = {
 | 
					static struct mtd_partition davinci_evm_norflash_partitions[] = {
 | 
				
			||||||
	/* bootloader (U-Boot, etc) in first 4 sectors */
 | 
						/* bootloader (UBL, U-Boot, etc) in first 5 sectors */
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		.name		= "bootloader",
 | 
							.name		= "bootloader",
 | 
				
			||||||
		.offset		= 0,
 | 
							.offset		= 0,
 | 
				
			||||||
		.size		= 4 * SZ_64K,
 | 
							.size		= 5 * SZ_64K,
 | 
				
			||||||
		.mask_flags	= MTD_WRITEABLE, /* force read-only */
 | 
							.mask_flags	= MTD_WRITEABLE, /* force read-only */
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	/* bootloader params in the next 1 sectors */
 | 
						/* bootloader params in the next 1 sectors */
 | 
				
			||||||
| 
						 | 
					@ -100,10 +114,89 @@ static struct platform_device davinci_evm_norflash_device = {
 | 
				
			||||||
	.resource	= &davinci_evm_norflash_resource,
 | 
						.resource	= &davinci_evm_norflash_resource,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					/* DM644x EVM includes a 64 MByte small-page NAND flash (16K blocks).
 | 
				
			||||||
 | 
					 * It may used instead of the (default) NOR chip to boot, using TI's
 | 
				
			||||||
 | 
					 * tools to install the secondary boot loader (UBL) and U-Boot.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					struct mtd_partition davinci_evm_nandflash_partition[] = {
 | 
				
			||||||
 | 
						/* Bootloader layout depends on whose u-boot is installed, but we
 | 
				
			||||||
 | 
						 * can hide all the details.
 | 
				
			||||||
 | 
						 *  - block 0 for u-boot environment ... in mainline u-boot
 | 
				
			||||||
 | 
						 *  - block 1 for UBL (plus up to four backup copies in blocks 2..5)
 | 
				
			||||||
 | 
						 *  - blocks 6...? for u-boot
 | 
				
			||||||
 | 
						 *  - blocks 16..23 for u-boot environment ... in TI's u-boot
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.name		= "bootloader",
 | 
				
			||||||
 | 
							.offset		= 0,
 | 
				
			||||||
 | 
							.size		= SZ_256K + SZ_128K,
 | 
				
			||||||
 | 
							.mask_flags	= MTD_WRITEABLE,	/* force read-only */
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						/* Kernel */
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.name		= "kernel",
 | 
				
			||||||
 | 
							.offset		= MTDPART_OFS_APPEND,
 | 
				
			||||||
 | 
							.size		= SZ_4M,
 | 
				
			||||||
 | 
							.mask_flags	= 0,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						/* File system (older GIT kernels started this on the 5MB mark) */
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.name		= "filesystem",
 | 
				
			||||||
 | 
							.offset		= MTDPART_OFS_APPEND,
 | 
				
			||||||
 | 
							.size		= MTDPART_SIZ_FULL,
 | 
				
			||||||
 | 
							.mask_flags	= 0,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						/* A few blocks at end hold a flash BBT ... created by TI's CCS
 | 
				
			||||||
 | 
						 * using flashwriter_nand.out, but ignored by TI's versions of
 | 
				
			||||||
 | 
						 * Linux and u-boot.  We boot faster by using them.
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(CONFIG_BLK_DEV_PALMCHIP_BK3710) || \
 | 
					static struct davinci_nand_pdata davinci_evm_nandflash_data = {
 | 
				
			||||||
    defined(CONFIG_BLK_DEV_PALMCHIP_BK3710_MODULE)
 | 
						.parts		= davinci_evm_nandflash_partition,
 | 
				
			||||||
 | 
						.nr_parts	= ARRAY_SIZE(davinci_evm_nandflash_partition),
 | 
				
			||||||
 | 
						.ecc_mode	= NAND_ECC_HW,
 | 
				
			||||||
 | 
						.options	= NAND_USE_FLASH_BBT,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct resource davinci_evm_nandflash_resource[] = {
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.start		= DAVINCI_ASYNC_EMIF_DATA_CE0_BASE,
 | 
				
			||||||
 | 
							.end		= DAVINCI_ASYNC_EMIF_DATA_CE0_BASE + SZ_16M - 1,
 | 
				
			||||||
 | 
							.flags		= IORESOURCE_MEM,
 | 
				
			||||||
 | 
						}, {
 | 
				
			||||||
 | 
							.start		= DAVINCI_ASYNC_EMIF_CONTROL_BASE,
 | 
				
			||||||
 | 
							.end		= DAVINCI_ASYNC_EMIF_CONTROL_BASE + SZ_4K - 1,
 | 
				
			||||||
 | 
							.flags		= IORESOURCE_MEM,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct platform_device davinci_evm_nandflash_device = {
 | 
				
			||||||
 | 
						.name		= "davinci_nand",
 | 
				
			||||||
 | 
						.id		= 0,
 | 
				
			||||||
 | 
						.dev		= {
 | 
				
			||||||
 | 
							.platform_data	= &davinci_evm_nandflash_data,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						.num_resources	= ARRAY_SIZE(davinci_evm_nandflash_resource),
 | 
				
			||||||
 | 
						.resource	= davinci_evm_nandflash_resource,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static u64 davinci_fb_dma_mask = DMA_BIT_MASK(32);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct platform_device davinci_fb_device = {
 | 
				
			||||||
 | 
						.name		= "davincifb",
 | 
				
			||||||
 | 
						.id		= -1,
 | 
				
			||||||
 | 
						.dev = {
 | 
				
			||||||
 | 
							.dma_mask		= &davinci_fb_dma_mask,
 | 
				
			||||||
 | 
							.coherent_dma_mask      = DMA_BIT_MASK(32),
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						.num_resources = 0,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct platform_device rtc_dev = {
 | 
				
			||||||
 | 
						.name           = "rtc_davinci_evm",
 | 
				
			||||||
 | 
						.id             = -1,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct resource ide_resources[] = {
 | 
					static struct resource ide_resources[] = {
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
| 
						 | 
					@ -131,8 +224,6 @@ static struct platform_device ide_dev = {
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*----------------------------------------------------------------------*/
 | 
					/*----------------------------------------------------------------------*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					@ -311,7 +402,9 @@ evm_u35_setup(struct i2c_client *client, int gpio, unsigned ngpio, void *c)
 | 
				
			||||||
	gpio_request(gpio + 7, "nCF_SEL");
 | 
						gpio_request(gpio + 7, "nCF_SEL");
 | 
				
			||||||
	gpio_direction_output(gpio + 7, 1);
 | 
						gpio_direction_output(gpio + 7, 1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* irlml6401 sustains over 3A, switches 5V in under 8 msec */
 | 
						/* irlml6401 switches over 1A, in under 8 msec;
 | 
				
			||||||
 | 
						 * now it can be managed by nDRV_VBUS ...
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
	setup_usb(500, 8);
 | 
						setup_usb(500, 8);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
| 
						 | 
					@ -343,13 +436,119 @@ static struct pcf857x_platform_data pcf_data_u35 = {
 | 
				
			||||||
 *  - 0x0039, 1 byte NTSC vs PAL (bit 0x80 == PAL)
 | 
					 *  - 0x0039, 1 byte NTSC vs PAL (bit 0x80 == PAL)
 | 
				
			||||||
 *  - ... newer boards may have more
 | 
					 *  - ... newer boards may have more
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					static struct memory_accessor *at24_mem_acc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void at24_setup(struct memory_accessor *mem_acc, void *context)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						DECLARE_MAC_BUF(mac_str);
 | 
				
			||||||
 | 
						char mac_addr[6];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						at24_mem_acc = mem_acc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Read MAC addr from EEPROM */
 | 
				
			||||||
 | 
						if (at24_mem_acc->read(at24_mem_acc, mac_addr, 0x7f00, 6) == 6) {
 | 
				
			||||||
 | 
							printk(KERN_INFO "Read MAC addr from EEPROM: %s\n",
 | 
				
			||||||
 | 
							       print_mac(mac_str, mac_addr));
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct at24_platform_data eeprom_info = {
 | 
					static struct at24_platform_data eeprom_info = {
 | 
				
			||||||
	.byte_len	= (256*1024) / 8,
 | 
						.byte_len	= (256*1024) / 8,
 | 
				
			||||||
	.page_size	= 64,
 | 
						.page_size	= 64,
 | 
				
			||||||
	.flags		= AT24_FLAG_ADDR16,
 | 
						.flags		= AT24_FLAG_ADDR16,
 | 
				
			||||||
 | 
						.setup          = at24_setup,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int dm6446evm_eeprom_read(void *buf, off_t off, size_t count)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if (at24_mem_acc)
 | 
				
			||||||
 | 
							return at24_mem_acc->read(at24_mem_acc, buf, off, count);
 | 
				
			||||||
 | 
						return -ENODEV;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					EXPORT_SYMBOL(dm6446evm_eeprom_read);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int dm6446evm_eeprom_write(void *buf, off_t off, size_t count)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if (at24_mem_acc)
 | 
				
			||||||
 | 
							return at24_mem_acc->write(at24_mem_acc, buf, off, count);
 | 
				
			||||||
 | 
						return -ENODEV;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					EXPORT_SYMBOL(dm6446evm_eeprom_write);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * MSP430 supports RTC, card detection, input from IR remote, and
 | 
				
			||||||
 | 
					 * a bit more.  It triggers interrupts on GPIO(7) from pressing
 | 
				
			||||||
 | 
					 * buttons on the IR remote, and for card detect switches.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					static struct i2c_client *dm6446evm_msp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int dm6446evm_msp_probe(struct i2c_client *client,
 | 
				
			||||||
 | 
							const struct i2c_device_id *id)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						dm6446evm_msp = client;
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int dm6446evm_msp_remove(struct i2c_client *client)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						dm6446evm_msp = NULL;
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static const struct i2c_device_id dm6446evm_msp_ids[] = {
 | 
				
			||||||
 | 
						{ "dm6446evm_msp", 0, },
 | 
				
			||||||
 | 
						{ /* end of list */ },
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct i2c_driver dm6446evm_msp_driver = {
 | 
				
			||||||
 | 
						.driver.name	= "dm6446evm_msp",
 | 
				
			||||||
 | 
						.id_table	= dm6446evm_msp_ids,
 | 
				
			||||||
 | 
						.probe		= dm6446evm_msp_probe,
 | 
				
			||||||
 | 
						.remove		= dm6446evm_msp_remove,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int dm6444evm_msp430_get_pins(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						static const char txbuf[2] = { 2, 4, };
 | 
				
			||||||
 | 
						char buf[4];
 | 
				
			||||||
 | 
						struct i2c_msg msg[2] = {
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								.addr = dm6446evm_msp->addr,
 | 
				
			||||||
 | 
								.flags = 0,
 | 
				
			||||||
 | 
								.len = 2,
 | 
				
			||||||
 | 
								.buf = (void __force *)txbuf,
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								.addr = dm6446evm_msp->addr,
 | 
				
			||||||
 | 
								.flags = I2C_M_RD,
 | 
				
			||||||
 | 
								.len = 4,
 | 
				
			||||||
 | 
								.buf = buf,
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
						int status;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!dm6446evm_msp)
 | 
				
			||||||
 | 
							return -ENXIO;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Command 4 == get input state, returns port 2 and port3 data
 | 
				
			||||||
 | 
						 *   S Addr W [A] len=2 [A] cmd=4 [A]
 | 
				
			||||||
 | 
						 *   RS Addr R [A] [len=4] A [cmd=4] A [port2] A [port3] N P
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						status = i2c_transfer(dm6446evm_msp->adapter, msg, 2);
 | 
				
			||||||
 | 
						if (status < 0)
 | 
				
			||||||
 | 
							return status;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						dev_dbg(&dm6446evm_msp->dev,
 | 
				
			||||||
 | 
							"PINS: %02x %02x %02x %02x\n",
 | 
				
			||||||
 | 
							buf[0], buf[1], buf[2], buf[3]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return (buf[3] << 8) | buf[2];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct i2c_board_info __initdata i2c_info[] =  {
 | 
					static struct i2c_board_info __initdata i2c_info[] =  {
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							I2C_BOARD_INFO("dm6446evm_msp", 0x23),
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		I2C_BOARD_INFO("pcf8574", 0x38),
 | 
							I2C_BOARD_INFO("pcf8574", 0x38),
 | 
				
			||||||
		.platform_data	= &pcf_data_u2,
 | 
							.platform_data	= &pcf_data_u2,
 | 
				
			||||||
| 
						 | 
					@ -368,7 +567,6 @@ static struct i2c_board_info __initdata i2c_info[] =  {
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	/* ALSO:
 | 
						/* ALSO:
 | 
				
			||||||
	 * - tvl320aic33 audio codec (0x1b)
 | 
						 * - tvl320aic33 audio codec (0x1b)
 | 
				
			||||||
	 * - msp430 microcontroller (0x23)
 | 
					 | 
				
			||||||
	 * - tvp5146 video decoder (0x5d)
 | 
						 * - tvp5146 video decoder (0x5d)
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
| 
						 | 
					@ -384,51 +582,109 @@ static struct davinci_i2c_platform_data i2c_pdata = {
 | 
				
			||||||
static void __init evm_init_i2c(void)
 | 
					static void __init evm_init_i2c(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	davinci_init_i2c(&i2c_pdata);
 | 
						davinci_init_i2c(&i2c_pdata);
 | 
				
			||||||
 | 
						i2c_add_driver(&dm6446evm_msp_driver);
 | 
				
			||||||
	i2c_register_board_info(1, i2c_info, ARRAY_SIZE(i2c_info));
 | 
						i2c_register_board_info(1, i2c_info, ARRAY_SIZE(i2c_info));
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct platform_device *davinci_evm_devices[] __initdata = {
 | 
					static struct platform_device *davinci_evm_devices[] __initdata = {
 | 
				
			||||||
#if defined(CONFIG_MTD_PHYSMAP) || \
 | 
						&davinci_fb_device,
 | 
				
			||||||
    defined(CONFIG_MTD_PHYSMAP_MODULE)
 | 
						&rtc_dev,
 | 
				
			||||||
	&davinci_evm_norflash_device,
 | 
					};
 | 
				
			||||||
#endif
 | 
					
 | 
				
			||||||
#if defined(CONFIG_BLK_DEV_PALMCHIP_BK3710) || \
 | 
					static struct davinci_uart_config uart_config __initdata = {
 | 
				
			||||||
    defined(CONFIG_BLK_DEV_PALMCHIP_BK3710_MODULE)
 | 
						.enabled_uarts = (1 << 0),
 | 
				
			||||||
	&ide_dev,
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void __init
 | 
					static void __init
 | 
				
			||||||
davinci_evm_map_io(void)
 | 
					davinci_evm_map_io(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	davinci_map_common_io();
 | 
						davinci_map_common_io();
 | 
				
			||||||
 | 
						dm644x_init();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static __init void davinci_evm_init(void)
 | 
					static int davinci_phy_fixup(struct phy_device *phydev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	davinci_psc_init();
 | 
						unsigned int control;
 | 
				
			||||||
 | 
						/* CRITICAL: Fix for increasing PHY signal drive strength for
 | 
				
			||||||
 | 
						 * TX lockup issue. On DaVinci EVM, the Intel LXT971 PHY
 | 
				
			||||||
 | 
						 * signal strength was low causing  TX to fail randomly. The
 | 
				
			||||||
 | 
						 * fix is to Set bit 11 (Increased MII drive strength) of PHY
 | 
				
			||||||
 | 
						 * register 26 (Digital Config register) on this phy. */
 | 
				
			||||||
 | 
						control = phy_read(phydev, 26);
 | 
				
			||||||
 | 
						phy_write(phydev, 26, (control | 0x800));
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(CONFIG_BLK_DEV_PALMCHIP_BK3710) || \
 | 
					#if defined(CONFIG_BLK_DEV_PALMCHIP_BK3710) || \
 | 
				
			||||||
    defined(CONFIG_BLK_DEV_PALMCHIP_BK3710_MODULE)
 | 
					    defined(CONFIG_BLK_DEV_PALMCHIP_BK3710_MODULE)
 | 
				
			||||||
 | 
					#define HAS_ATA 1
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					#define HAS_ATA 0
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(CONFIG_MTD_PHYSMAP) || \
 | 
					#if defined(CONFIG_MTD_PHYSMAP) || \
 | 
				
			||||||
    defined(CONFIG_MTD_PHYSMAP_MODULE)
 | 
					    defined(CONFIG_MTD_PHYSMAP_MODULE)
 | 
				
			||||||
	printk(KERN_WARNING "WARNING: both IDE and NOR flash are enabled, "
 | 
					#define HAS_NOR 1
 | 
				
			||||||
	       "but share pins.\n\t Disable IDE for NOR support.\n");
 | 
					#else
 | 
				
			||||||
 | 
					#define HAS_NOR 0
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if defined(CONFIG_MTD_NAND_DAVINCI) || \
 | 
				
			||||||
 | 
					    defined(CONFIG_MTD_NAND_DAVINCI_MODULE)
 | 
				
			||||||
 | 
					#define HAS_NAND 1
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					#define HAS_NAND 0
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static __init void davinci_evm_init(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						struct clk *aemif_clk;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						aemif_clk = clk_get(NULL, "aemif");
 | 
				
			||||||
 | 
						clk_enable(aemif_clk);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (HAS_ATA) {
 | 
				
			||||||
 | 
							if (HAS_NAND || HAS_NOR)
 | 
				
			||||||
 | 
								pr_warning("WARNING: both IDE and Flash are "
 | 
				
			||||||
 | 
									"enabled, but they share AEMIF pins.\n"
 | 
				
			||||||
 | 
									"\tDisable IDE for NAND/NOR support.\n");
 | 
				
			||||||
 | 
							davinci_cfg_reg(DM644X_HPIEN_DISABLE);
 | 
				
			||||||
 | 
							davinci_cfg_reg(DM644X_ATAEN);
 | 
				
			||||||
 | 
							davinci_cfg_reg(DM644X_HDIREN);
 | 
				
			||||||
 | 
							platform_device_register(&ide_dev);
 | 
				
			||||||
 | 
						} else if (HAS_NAND || HAS_NOR) {
 | 
				
			||||||
 | 
							davinci_cfg_reg(DM644X_HPIEN_DISABLE);
 | 
				
			||||||
 | 
							davinci_cfg_reg(DM644X_ATAEN_DISABLE);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							/* only one device will be jumpered and detected */
 | 
				
			||||||
 | 
							if (HAS_NAND) {
 | 
				
			||||||
 | 
								platform_device_register(&davinci_evm_nandflash_device);
 | 
				
			||||||
 | 
								evm_leds[7].default_trigger = "nand-disk";
 | 
				
			||||||
 | 
								if (HAS_NOR)
 | 
				
			||||||
 | 
									pr_warning("WARNING: both NAND and NOR flash "
 | 
				
			||||||
 | 
										"are enabled; disable one of them.\n");
 | 
				
			||||||
 | 
							} else if (HAS_NOR)
 | 
				
			||||||
 | 
								platform_device_register(&davinci_evm_norflash_device);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	platform_add_devices(davinci_evm_devices,
 | 
						platform_add_devices(davinci_evm_devices,
 | 
				
			||||||
			     ARRAY_SIZE(davinci_evm_devices));
 | 
								     ARRAY_SIZE(davinci_evm_devices));
 | 
				
			||||||
	evm_init_i2c();
 | 
						evm_init_i2c();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						davinci_serial_init(&uart_config);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Register the fixup for PHY on DaVinci */
 | 
				
			||||||
 | 
						phy_register_fixup_for_uid(LXT971_PHY_ID, LXT971_PHY_MASK,
 | 
				
			||||||
 | 
										davinci_phy_fixup);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static __init void davinci_evm_irq_init(void)
 | 
					static __init void davinci_evm_irq_init(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	davinci_init_common_hw();
 | 
					 | 
				
			||||||
	davinci_irq_init();
 | 
						davinci_irq_init();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MACHINE_START(DAVINCI_EVM, "DaVinci EVM")
 | 
					MACHINE_START(DAVINCI_EVM, "DaVinci DM644x EVM")
 | 
				
			||||||
	/* Maintainer: MontaVista Software <source@mvista.com> */
 | 
						/* Maintainer: MontaVista Software <source@mvista.com> */
 | 
				
			||||||
	.phys_io      = IO_PHYS,
 | 
						.phys_io      = IO_PHYS,
 | 
				
			||||||
	.io_pg_offst  = (__IO_ADDRESS(IO_PHYS) >> 18) & 0xfffc,
 | 
						.io_pg_offst  = (__IO_ADDRESS(IO_PHYS) >> 18) & 0xfffc,
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,8 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * TI DaVinci clock config file
 | 
					 * Clock and PLL control for DaVinci devices
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * Copyright (C) 2006 Texas Instruments.
 | 
					 * Copyright (C) 2006-2007 Texas Instruments.
 | 
				
			||||||
 | 
					 * Copyright (C) 2008-2009 Deep Root Systems, LLC
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * This program is free software; you can redistribute it and/or modify
 | 
					 * This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 * it under the terms of the GNU General Public License as published by
 | 
				
			||||||
| 
						 | 
					@ -13,6 +14,7 @@
 | 
				
			||||||
#include <linux/kernel.h>
 | 
					#include <linux/kernel.h>
 | 
				
			||||||
#include <linux/init.h>
 | 
					#include <linux/init.h>
 | 
				
			||||||
#include <linux/errno.h>
 | 
					#include <linux/errno.h>
 | 
				
			||||||
 | 
					#include <linux/clk.h>
 | 
				
			||||||
#include <linux/err.h>
 | 
					#include <linux/err.h>
 | 
				
			||||||
#include <linux/mutex.h>
 | 
					#include <linux/mutex.h>
 | 
				
			||||||
#include <linux/platform_device.h>
 | 
					#include <linux/platform_device.h>
 | 
				
			||||||
| 
						 | 
					@ -21,98 +23,50 @@
 | 
				
			||||||
#include <mach/hardware.h>
 | 
					#include <mach/hardware.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <mach/psc.h>
 | 
					#include <mach/psc.h>
 | 
				
			||||||
 | 
					#include <mach/cputype.h>
 | 
				
			||||||
#include "clock.h"
 | 
					#include "clock.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* PLL/Reset register offsets */
 | 
					 | 
				
			||||||
#define PLLM		0x110
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static LIST_HEAD(clocks);
 | 
					static LIST_HEAD(clocks);
 | 
				
			||||||
static DEFINE_MUTEX(clocks_mutex);
 | 
					static DEFINE_MUTEX(clocks_mutex);
 | 
				
			||||||
static DEFINE_SPINLOCK(clockfw_lock);
 | 
					static DEFINE_SPINLOCK(clockfw_lock);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static unsigned int commonrate;
 | 
					static unsigned psc_domain(struct clk *clk)
 | 
				
			||||||
static unsigned int armrate;
 | 
					 | 
				
			||||||
static unsigned int fixedrate = 27000000;	/* 27 MHZ */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
extern void davinci_psc_config(unsigned int domain, unsigned int id, char enable);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 * Returns a clock. Note that we first try to use device id on the bus
 | 
					 | 
				
			||||||
 * and clock name. If this fails, we try to use clock name only.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
struct clk *clk_get(struct device *dev, const char *id)
 | 
					 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct clk *p, *clk = ERR_PTR(-ENOENT);
 | 
						return (clk->flags & PSC_DSP)
 | 
				
			||||||
	int idno;
 | 
							? DAVINCI_GPSC_DSPDOMAIN
 | 
				
			||||||
 | 
							: DAVINCI_GPSC_ARMDOMAIN;
 | 
				
			||||||
	if (dev == NULL || dev->bus != &platform_bus_type)
 | 
					 | 
				
			||||||
		idno = -1;
 | 
					 | 
				
			||||||
	else
 | 
					 | 
				
			||||||
		idno = to_platform_device(dev)->id;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	mutex_lock(&clocks_mutex);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	list_for_each_entry(p, &clocks, node) {
 | 
					 | 
				
			||||||
		if (p->id == idno &&
 | 
					 | 
				
			||||||
		    strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
 | 
					 | 
				
			||||||
			clk = p;
 | 
					 | 
				
			||||||
			goto found;
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	list_for_each_entry(p, &clocks, node) {
 | 
					 | 
				
			||||||
		if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
 | 
					 | 
				
			||||||
			clk = p;
 | 
					 | 
				
			||||||
			break;
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
found:
 | 
					 | 
				
			||||||
	mutex_unlock(&clocks_mutex);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return clk;
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_get);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
void clk_put(struct clk *clk)
 | 
					static void __clk_enable(struct clk *clk)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if (clk && !IS_ERR(clk))
 | 
						if (clk->parent)
 | 
				
			||||||
		module_put(clk->owner);
 | 
							__clk_enable(clk->parent);
 | 
				
			||||||
}
 | 
						if (clk->usecount++ == 0 && (clk->flags & CLK_PSC))
 | 
				
			||||||
EXPORT_SYMBOL(clk_put);
 | 
							davinci_psc_config(psc_domain(clk), clk->lpsc, 1);
 | 
				
			||||||
 | 
					 | 
				
			||||||
static int __clk_enable(struct clk *clk)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	if (clk->flags & ALWAYS_ENABLED)
 | 
					 | 
				
			||||||
		return 0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	davinci_psc_config(DAVINCI_GPSC_ARMDOMAIN, clk->lpsc, 1);
 | 
					 | 
				
			||||||
	return 0;
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void __clk_disable(struct clk *clk)
 | 
					static void __clk_disable(struct clk *clk)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if (clk->usecount)
 | 
						if (WARN_ON(clk->usecount == 0))
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
 | 
						if (--clk->usecount == 0 && !(clk->flags & CLK_PLL))
 | 
				
			||||||
	davinci_psc_config(DAVINCI_GPSC_ARMDOMAIN, clk->lpsc, 0);
 | 
							davinci_psc_config(psc_domain(clk), clk->lpsc, 0);
 | 
				
			||||||
 | 
						if (clk->parent)
 | 
				
			||||||
 | 
							__clk_disable(clk->parent);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int clk_enable(struct clk *clk)
 | 
					int clk_enable(struct clk *clk)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	unsigned long flags;
 | 
						unsigned long flags;
 | 
				
			||||||
	int ret = 0;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (clk == NULL || IS_ERR(clk))
 | 
						if (clk == NULL || IS_ERR(clk))
 | 
				
			||||||
		return -EINVAL;
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (clk->usecount++ == 0) {
 | 
						spin_lock_irqsave(&clockfw_lock, flags);
 | 
				
			||||||
		spin_lock_irqsave(&clockfw_lock, flags);
 | 
						__clk_enable(clk);
 | 
				
			||||||
		ret = __clk_enable(clk);
 | 
						spin_unlock_irqrestore(&clockfw_lock, flags);
 | 
				
			||||||
		spin_unlock_irqrestore(&clockfw_lock, flags);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return ret;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_enable);
 | 
					EXPORT_SYMBOL(clk_enable);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -123,11 +77,9 @@ void clk_disable(struct clk *clk)
 | 
				
			||||||
	if (clk == NULL || IS_ERR(clk))
 | 
						if (clk == NULL || IS_ERR(clk))
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (clk->usecount > 0 && !(--clk->usecount)) {
 | 
						spin_lock_irqsave(&clockfw_lock, flags);
 | 
				
			||||||
		spin_lock_irqsave(&clockfw_lock, flags);
 | 
						__clk_disable(clk);
 | 
				
			||||||
		__clk_disable(clk);
 | 
						spin_unlock_irqrestore(&clockfw_lock, flags);
 | 
				
			||||||
		spin_unlock_irqrestore(&clockfw_lock, flags);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_disable);
 | 
					EXPORT_SYMBOL(clk_disable);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -136,7 +88,7 @@ unsigned long clk_get_rate(struct clk *clk)
 | 
				
			||||||
	if (clk == NULL || IS_ERR(clk))
 | 
						if (clk == NULL || IS_ERR(clk))
 | 
				
			||||||
		return -EINVAL;
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return *(clk->rate);
 | 
						return clk->rate;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_get_rate);
 | 
					EXPORT_SYMBOL(clk_get_rate);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -145,7 +97,7 @@ long clk_round_rate(struct clk *clk, unsigned long rate)
 | 
				
			||||||
	if (clk == NULL || IS_ERR(clk))
 | 
						if (clk == NULL || IS_ERR(clk))
 | 
				
			||||||
		return -EINVAL;
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return *(clk->rate);
 | 
						return clk->rate;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_round_rate);
 | 
					EXPORT_SYMBOL(clk_round_rate);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -164,10 +116,23 @@ int clk_register(struct clk *clk)
 | 
				
			||||||
	if (clk == NULL || IS_ERR(clk))
 | 
						if (clk == NULL || IS_ERR(clk))
 | 
				
			||||||
		return -EINVAL;
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (WARN(clk->parent && !clk->parent->rate,
 | 
				
			||||||
 | 
								"CLK: %s parent %s has no rate!\n",
 | 
				
			||||||
 | 
								clk->name, clk->parent->name))
 | 
				
			||||||
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	mutex_lock(&clocks_mutex);
 | 
						mutex_lock(&clocks_mutex);
 | 
				
			||||||
	list_add(&clk->node, &clocks);
 | 
						list_add_tail(&clk->node, &clocks);
 | 
				
			||||||
	mutex_unlock(&clocks_mutex);
 | 
						mutex_unlock(&clocks_mutex);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* If rate is already set, use it */
 | 
				
			||||||
 | 
						if (clk->rate)
 | 
				
			||||||
 | 
							return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Otherwise, default to parent rate */
 | 
				
			||||||
 | 
						if (clk->parent)
 | 
				
			||||||
 | 
							clk->rate = clk->parent->rate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_register);
 | 
					EXPORT_SYMBOL(clk_register);
 | 
				
			||||||
| 
						 | 
					@ -183,84 +148,150 @@ void clk_unregister(struct clk *clk)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL(clk_unregister);
 | 
					EXPORT_SYMBOL(clk_unregister);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct clk davinci_clks[] = {
 | 
					#ifdef CONFIG_DAVINCI_RESET_CLOCKS
 | 
				
			||||||
	{
 | 
					/*
 | 
				
			||||||
		.name = "ARMCLK",
 | 
					 * Disable any unused clocks left on by the bootloader
 | 
				
			||||||
		.rate = &armrate,
 | 
					 */
 | 
				
			||||||
		.lpsc = -1,
 | 
					static int __init clk_disable_unused(void)
 | 
				
			||||||
		.flags = ALWAYS_ENABLED,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "UART",
 | 
					 | 
				
			||||||
		.rate = &fixedrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_UART0,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "EMACCLK",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_EMAC_WRAPPER,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "I2CCLK",
 | 
					 | 
				
			||||||
		.rate = &fixedrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_I2C,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "IDECLK",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_ATA,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "McBSPCLK",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_McBSP,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "MMCSDCLK",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_MMC_SD,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "SPICLK",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_SPI,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "gpio",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_GPIO,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "usb",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_USB,
 | 
					 | 
				
			||||||
	},
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		.name = "AEMIFCLK",
 | 
					 | 
				
			||||||
		.rate = &commonrate,
 | 
					 | 
				
			||||||
		.lpsc = DAVINCI_LPSC_AEMIF,
 | 
					 | 
				
			||||||
		.usecount = 1,
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int __init davinci_clk_init(void)
 | 
					 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct clk *clkp;
 | 
						struct clk *ck;
 | 
				
			||||||
	int count = 0;
 | 
					 | 
				
			||||||
	u32 pll_mult;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pll_mult = davinci_readl(DAVINCI_PLL_CNTRL0_BASE + PLLM);
 | 
						spin_lock_irq(&clockfw_lock);
 | 
				
			||||||
	commonrate = ((pll_mult + 1) * 27000000) / 6;
 | 
						list_for_each_entry(ck, &clocks, node) {
 | 
				
			||||||
	armrate = ((pll_mult + 1) * 27000000) / 2;
 | 
							if (ck->usecount > 0)
 | 
				
			||||||
 | 
								continue;
 | 
				
			||||||
 | 
							if (!(ck->flags & CLK_PSC))
 | 
				
			||||||
 | 
								continue;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (clkp = davinci_clks; count < ARRAY_SIZE(davinci_clks);
 | 
							/* ignore if in Disabled or SwRstDisable states */
 | 
				
			||||||
	     count++, clkp++) {
 | 
							if (!davinci_psc_is_clk_active(ck->lpsc))
 | 
				
			||||||
		clk_register(clkp);
 | 
								continue;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/* Turn on clocks that have been enabled in the
 | 
							pr_info("Clocks: disable unused %s\n", ck->name);
 | 
				
			||||||
		 * table above */
 | 
							davinci_psc_config(psc_domain(ck), ck->lpsc, 0);
 | 
				
			||||||
		if (clkp->usecount)
 | 
						}
 | 
				
			||||||
			clk_enable(clkp);
 | 
						spin_unlock_irq(&clockfw_lock);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					late_initcall(clk_disable_unused);
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void clk_sysclk_recalc(struct clk *clk)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						u32 v, plldiv;
 | 
				
			||||||
 | 
						struct pll_data *pll;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* If this is the PLL base clock, no more calculations needed */
 | 
				
			||||||
 | 
						if (clk->pll_data)
 | 
				
			||||||
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (WARN_ON(!clk->parent))
 | 
				
			||||||
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						clk->rate = clk->parent->rate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Otherwise, the parent must be a PLL */
 | 
				
			||||||
 | 
						if (WARN_ON(!clk->parent->pll_data))
 | 
				
			||||||
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pll = clk->parent->pll_data;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* If pre-PLL, source clock is before the multiplier and divider(s) */
 | 
				
			||||||
 | 
						if (clk->flags & PRE_PLL)
 | 
				
			||||||
 | 
							clk->rate = pll->input_rate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!clk->div_reg)
 | 
				
			||||||
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						v = __raw_readl(pll->base + clk->div_reg);
 | 
				
			||||||
 | 
						if (v & PLLDIV_EN) {
 | 
				
			||||||
 | 
							plldiv = (v & PLLDIV_RATIO_MASK) + 1;
 | 
				
			||||||
 | 
							if (plldiv)
 | 
				
			||||||
 | 
								clk->rate /= plldiv;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void __init clk_pll_init(struct clk *clk)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						u32 ctrl, mult = 1, prediv = 1, postdiv = 1;
 | 
				
			||||||
 | 
						u8 bypass;
 | 
				
			||||||
 | 
						struct pll_data *pll = clk->pll_data;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pll->base = IO_ADDRESS(pll->phys_base);
 | 
				
			||||||
 | 
						ctrl = __raw_readl(pll->base + PLLCTL);
 | 
				
			||||||
 | 
						clk->rate = pll->input_rate = clk->parent->rate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (ctrl & PLLCTL_PLLEN) {
 | 
				
			||||||
 | 
							bypass = 0;
 | 
				
			||||||
 | 
							mult = __raw_readl(pll->base + PLLM);
 | 
				
			||||||
 | 
							mult = (mult & PLLM_PLLM_MASK) + 1;
 | 
				
			||||||
 | 
						} else
 | 
				
			||||||
 | 
							bypass = 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (pll->flags & PLL_HAS_PREDIV) {
 | 
				
			||||||
 | 
							prediv = __raw_readl(pll->base + PREDIV);
 | 
				
			||||||
 | 
							if (prediv & PLLDIV_EN)
 | 
				
			||||||
 | 
								prediv = (prediv & PLLDIV_RATIO_MASK) + 1;
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								prediv = 1;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* pre-divider is fixed, but (some?) chips won't report that */
 | 
				
			||||||
 | 
						if (cpu_is_davinci_dm355() && pll->num == 1)
 | 
				
			||||||
 | 
							prediv = 8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (pll->flags & PLL_HAS_POSTDIV) {
 | 
				
			||||||
 | 
							postdiv = __raw_readl(pll->base + POSTDIV);
 | 
				
			||||||
 | 
							if (postdiv & PLLDIV_EN)
 | 
				
			||||||
 | 
								postdiv = (postdiv & PLLDIV_RATIO_MASK) + 1;
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								postdiv = 1;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!bypass) {
 | 
				
			||||||
 | 
							clk->rate /= prediv;
 | 
				
			||||||
 | 
							clk->rate *= mult;
 | 
				
			||||||
 | 
							clk->rate /= postdiv;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pr_debug("PLL%d: input = %lu MHz [ ",
 | 
				
			||||||
 | 
							 pll->num, clk->parent->rate / 1000000);
 | 
				
			||||||
 | 
						if (bypass)
 | 
				
			||||||
 | 
							pr_debug("bypass ");
 | 
				
			||||||
 | 
						if (prediv > 1)
 | 
				
			||||||
 | 
							pr_debug("/ %d ", prediv);
 | 
				
			||||||
 | 
						if (mult > 1)
 | 
				
			||||||
 | 
							pr_debug("* %d ", mult);
 | 
				
			||||||
 | 
						if (postdiv > 1)
 | 
				
			||||||
 | 
							pr_debug("/ %d ", postdiv);
 | 
				
			||||||
 | 
						pr_debug("] --> %lu MHz output.\n", clk->rate / 1000000);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int __init davinci_clk_init(struct davinci_clk *clocks)
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
						struct davinci_clk *c;
 | 
				
			||||||
 | 
						struct clk *clk;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						for (c = clocks; c->lk.clk; c++) {
 | 
				
			||||||
 | 
							clk = c->lk.clk;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (clk->pll_data)
 | 
				
			||||||
 | 
								clk_pll_init(clk);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							/* Calculate rates for PLL-derived clocks */
 | 
				
			||||||
 | 
							else if (clk->flags & CLK_PLL)
 | 
				
			||||||
 | 
								clk_sysclk_recalc(clk);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (clk->lpsc)
 | 
				
			||||||
 | 
								clk->flags |= CLK_PSC;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							clkdev_add(&c->lk);
 | 
				
			||||||
 | 
							clk_register(clk);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							/* Turn on clocks that Linux doesn't otherwise manage */
 | 
				
			||||||
 | 
							if (clk->flags & ALWAYS_ENABLED)
 | 
				
			||||||
 | 
								clk_enable(clk);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
| 
						 | 
					@ -285,12 +316,52 @@ static void davinci_ck_stop(struct seq_file *m, void *v)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define CLKNAME_MAX	10		/* longest clock name */
 | 
				
			||||||
 | 
					#define NEST_DELTA	2
 | 
				
			||||||
 | 
					#define NEST_MAX	4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void
 | 
				
			||||||
 | 
					dump_clock(struct seq_file *s, unsigned nest, struct clk *parent)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						char		*state;
 | 
				
			||||||
 | 
						char		buf[CLKNAME_MAX + NEST_DELTA * NEST_MAX];
 | 
				
			||||||
 | 
						struct clk	*clk;
 | 
				
			||||||
 | 
						unsigned	i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (parent->flags & CLK_PLL)
 | 
				
			||||||
 | 
							state = "pll";
 | 
				
			||||||
 | 
						else if (parent->flags & CLK_PSC)
 | 
				
			||||||
 | 
							state = "psc";
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							state = "";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* <nest spaces> name <pad to end> */
 | 
				
			||||||
 | 
						memset(buf, ' ', sizeof(buf) - 1);
 | 
				
			||||||
 | 
						buf[sizeof(buf) - 1] = 0;
 | 
				
			||||||
 | 
						i = strlen(parent->name);
 | 
				
			||||||
 | 
						memcpy(buf + nest, parent->name,
 | 
				
			||||||
 | 
								min(i, (unsigned)(sizeof(buf) - 1 - nest)));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						seq_printf(s, "%s users=%2d %-3s %9ld Hz\n",
 | 
				
			||||||
 | 
							   buf, parent->usecount, state, clk_get_rate(parent));
 | 
				
			||||||
 | 
						/* REVISIT show device associations too */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* cost is now small, but not linear... */
 | 
				
			||||||
 | 
						list_for_each_entry(clk, &clocks, node) {
 | 
				
			||||||
 | 
							if (clk->parent == parent)
 | 
				
			||||||
 | 
								dump_clock(s, nest + NEST_DELTA, clk);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int davinci_ck_show(struct seq_file *m, void *v)
 | 
					static int davinci_ck_show(struct seq_file *m, void *v)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct clk *cp;
 | 
						/* Show clock tree; we know the main oscillator is first.
 | 
				
			||||||
 | 
						 * We trust nonzero usecounts equate to PSC enables...
 | 
				
			||||||
	list_for_each_entry(cp, &clocks, node)
 | 
						 */
 | 
				
			||||||
		seq_printf(m,"%s %d %d\n", cp->name, *(cp->rate), cp->usecount);
 | 
						mutex_lock(&clocks_mutex);
 | 
				
			||||||
 | 
						if (!list_empty(&clocks))
 | 
				
			||||||
 | 
							dump_clock(m, 0, list_first_entry(&clocks, struct clk, node));
 | 
				
			||||||
 | 
						mutex_unlock(&clocks_mutex);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -321,4 +392,4 @@ static int __init davinci_ck_proc_init(void)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
__initcall(davinci_ck_proc_init);
 | 
					__initcall(davinci_ck_proc_init);
 | 
				
			||||||
#endif	/* CONFIG_DEBUG_PROC_FS */
 | 
					#endif /* CONFIG_DEBUG_PROC_FS */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,8 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * TI DaVinci clock definitions
 | 
					 * TI DaVinci clock definitions
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * Copyright (C) 2006 Texas Instruments.
 | 
					 * Copyright (C) 2006-2007 Texas Instruments.
 | 
				
			||||||
 | 
					 * Copyright (C) 2008-2009 Deep Root Systems, LLC
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * This program is free software; you can redistribute it and/or modify
 | 
					 * 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
 | 
					 * it under the terms of the GNU General Public License version 2 as
 | 
				
			||||||
| 
						 | 
					@ -11,23 +12,85 @@
 | 
				
			||||||
#ifndef __ARCH_ARM_DAVINCI_CLOCK_H
 | 
					#ifndef __ARCH_ARM_DAVINCI_CLOCK_H
 | 
				
			||||||
#define __ARCH_ARM_DAVINCI_CLOCK_H
 | 
					#define __ARCH_ARM_DAVINCI_CLOCK_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <linux/list.h>
 | 
				
			||||||
 | 
					#include <asm/clkdev.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define DAVINCI_PLL1_BASE 0x01c40800
 | 
				
			||||||
 | 
					#define DAVINCI_PLL2_BASE 0x01c40c00
 | 
				
			||||||
 | 
					#define MAX_PLL 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* PLL/Reset register offsets */
 | 
				
			||||||
 | 
					#define PLLCTL          0x100
 | 
				
			||||||
 | 
					#define PLLCTL_PLLEN    BIT(0)
 | 
				
			||||||
 | 
					#define PLLCTL_CLKMODE  BIT(8)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define PLLM		0x110
 | 
				
			||||||
 | 
					#define PLLM_PLLM_MASK  0xff
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define PREDIV          0x114
 | 
				
			||||||
 | 
					#define PLLDIV1         0x118
 | 
				
			||||||
 | 
					#define PLLDIV2         0x11c
 | 
				
			||||||
 | 
					#define PLLDIV3         0x120
 | 
				
			||||||
 | 
					#define POSTDIV         0x128
 | 
				
			||||||
 | 
					#define BPDIV           0x12c
 | 
				
			||||||
 | 
					#define PLLCMD		0x138
 | 
				
			||||||
 | 
					#define PLLSTAT		0x13c
 | 
				
			||||||
 | 
					#define PLLALNCTL	0x140
 | 
				
			||||||
 | 
					#define PLLDCHANGE	0x144
 | 
				
			||||||
 | 
					#define PLLCKEN		0x148
 | 
				
			||||||
 | 
					#define PLLCKSTAT	0x14c
 | 
				
			||||||
 | 
					#define PLLSYSTAT	0x150
 | 
				
			||||||
 | 
					#define PLLDIV4         0x160
 | 
				
			||||||
 | 
					#define PLLDIV5         0x164
 | 
				
			||||||
 | 
					#define PLLDIV6         0x168
 | 
				
			||||||
 | 
					#define PLLDIV7         0x16c
 | 
				
			||||||
 | 
					#define PLLDIV8         0x170
 | 
				
			||||||
 | 
					#define PLLDIV9         0x174
 | 
				
			||||||
 | 
					#define PLLDIV_EN       BIT(15)
 | 
				
			||||||
 | 
					#define PLLDIV_RATIO_MASK 0x1f
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					struct pll_data {
 | 
				
			||||||
 | 
						u32 phys_base;
 | 
				
			||||||
 | 
						void __iomem *base;
 | 
				
			||||||
 | 
						u32 num;
 | 
				
			||||||
 | 
						u32 flags;
 | 
				
			||||||
 | 
						u32 input_rate;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					#define PLL_HAS_PREDIV          0x01
 | 
				
			||||||
 | 
					#define PLL_HAS_POSTDIV         0x02
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct clk {
 | 
					struct clk {
 | 
				
			||||||
	struct list_head	node;
 | 
						struct list_head	node;
 | 
				
			||||||
	struct module		*owner;
 | 
						struct module		*owner;
 | 
				
			||||||
	const char		*name;
 | 
						const char		*name;
 | 
				
			||||||
	unsigned int		*rate;
 | 
						unsigned long		rate;
 | 
				
			||||||
	int			id;
 | 
						u8			usecount;
 | 
				
			||||||
	__s8			usecount;
 | 
						u8			flags;
 | 
				
			||||||
	__u8			flags;
 | 
						u8			lpsc;
 | 
				
			||||||
	__u8			lpsc;
 | 
						struct clk              *parent;
 | 
				
			||||||
 | 
						struct pll_data         *pll_data;
 | 
				
			||||||
 | 
						u32                     div_reg;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Clock flags */
 | 
					/* Clock flags */
 | 
				
			||||||
#define RATE_CKCTL		1
 | 
					#define ALWAYS_ENABLED		BIT(1)
 | 
				
			||||||
#define RATE_FIXED		2
 | 
					#define CLK_PSC                 BIT(2)
 | 
				
			||||||
#define RATE_PROPAGATES		4
 | 
					#define PSC_DSP                 BIT(3) /* PSC uses DSP domain, not ARM */
 | 
				
			||||||
#define VIRTUAL_CLOCK		8
 | 
					#define CLK_PLL			BIT(4) /* PLL-derived clock */
 | 
				
			||||||
#define ALWAYS_ENABLED		16
 | 
					#define PRE_PLL                 BIT(5) /* source is before PLL mult/div */
 | 
				
			||||||
#define ENABLE_REG_32BIT	32
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					struct davinci_clk {
 | 
				
			||||||
 | 
						struct clk_lookup lk;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define CLK(dev, con, ck) 		\
 | 
				
			||||||
 | 
						{				\
 | 
				
			||||||
 | 
							.lk = {			\
 | 
				
			||||||
 | 
								.dev_id = dev,	\
 | 
				
			||||||
 | 
								.con_id = con,	\
 | 
				
			||||||
 | 
								.clk = ck,	\
 | 
				
			||||||
 | 
							},			\
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int davinci_clk_init(struct davinci_clk *clocks);
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,6 +21,10 @@
 | 
				
			||||||
#include <mach/hardware.h>
 | 
					#include <mach/hardware.h>
 | 
				
			||||||
#include <mach/i2c.h>
 | 
					#include <mach/i2c.h>
 | 
				
			||||||
#include <mach/irqs.h>
 | 
					#include <mach/irqs.h>
 | 
				
			||||||
 | 
					#include <mach/cputype.h>
 | 
				
			||||||
 | 
					#include <mach/mux.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define DAVINCI_I2C_BASE	     0x01C21000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct resource i2c_resources[] = {
 | 
					static struct resource i2c_resources[] = {
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
| 
						 | 
					@ -43,6 +47,9 @@ static struct platform_device davinci_i2c_device = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void __init davinci_init_i2c(struct davinci_i2c_platform_data *pdata)
 | 
					void __init davinci_init_i2c(struct davinci_i2c_platform_data *pdata)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						if (cpu_is_davinci_dm644x())
 | 
				
			||||||
 | 
							davinci_cfg_reg(DM644X_I2C);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	davinci_i2c_device.dev.platform_data = pdata;
 | 
						davinci_i2c_device.dev.platform_data = pdata;
 | 
				
			||||||
	(void) platform_device_register(&davinci_i2c_device);
 | 
						(void) platform_device_register(&davinci_i2c_device);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										461
									
								
								arch/arm/mach-davinci/dm644x.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										461
									
								
								arch/arm/mach-davinci/dm644x.c
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,461 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * TI DaVinci DM644x chip specific setup
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * Author: Kevin Hilman, Deep Root Systems, LLC
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * 2007 (c) Deep Root Systems, LLC. This file is licensed under
 | 
				
			||||||
 | 
					 * the terms of the GNU General Public License version 2. This program
 | 
				
			||||||
 | 
					 * is licensed "as is" without any warranty of any kind, whether express
 | 
				
			||||||
 | 
					 * or implied.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					#include <linux/kernel.h>
 | 
				
			||||||
 | 
					#include <linux/init.h>
 | 
				
			||||||
 | 
					#include <linux/clk.h>
 | 
				
			||||||
 | 
					#include <linux/platform_device.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <mach/dm644x.h>
 | 
				
			||||||
 | 
					#include <mach/clock.h>
 | 
				
			||||||
 | 
					#include <mach/cputype.h>
 | 
				
			||||||
 | 
					#include <mach/edma.h>
 | 
				
			||||||
 | 
					#include <mach/irqs.h>
 | 
				
			||||||
 | 
					#include <mach/psc.h>
 | 
				
			||||||
 | 
					#include <mach/mux.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "clock.h"
 | 
				
			||||||
 | 
					#include "mux.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * Device specific clocks
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					#define DM644X_REF_FREQ		27000000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct pll_data pll1_data = {
 | 
				
			||||||
 | 
						.num       = 1,
 | 
				
			||||||
 | 
						.phys_base = DAVINCI_PLL1_BASE,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct pll_data pll2_data = {
 | 
				
			||||||
 | 
						.num       = 2,
 | 
				
			||||||
 | 
						.phys_base = DAVINCI_PLL2_BASE,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk ref_clk = {
 | 
				
			||||||
 | 
						.name = "ref_clk",
 | 
				
			||||||
 | 
						.rate = DM644X_REF_FREQ,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_clk = {
 | 
				
			||||||
 | 
						.name = "pll1",
 | 
				
			||||||
 | 
						.parent = &ref_clk,
 | 
				
			||||||
 | 
						.pll_data = &pll1_data,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_sysclk1 = {
 | 
				
			||||||
 | 
						.name = "pll1_sysclk1",
 | 
				
			||||||
 | 
						.parent = &pll1_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
						.div_reg = PLLDIV1,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_sysclk2 = {
 | 
				
			||||||
 | 
						.name = "pll1_sysclk2",
 | 
				
			||||||
 | 
						.parent = &pll1_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
						.div_reg = PLLDIV2,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_sysclk3 = {
 | 
				
			||||||
 | 
						.name = "pll1_sysclk3",
 | 
				
			||||||
 | 
						.parent = &pll1_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
						.div_reg = PLLDIV3,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_sysclk5 = {
 | 
				
			||||||
 | 
						.name = "pll1_sysclk5",
 | 
				
			||||||
 | 
						.parent = &pll1_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
						.div_reg = PLLDIV5,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_aux_clk = {
 | 
				
			||||||
 | 
						.name = "pll1_aux_clk",
 | 
				
			||||||
 | 
						.parent = &pll1_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL | PRE_PLL,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll1_sysclkbp = {
 | 
				
			||||||
 | 
						.name = "pll1_sysclkbp",
 | 
				
			||||||
 | 
						.parent = &pll1_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL | PRE_PLL,
 | 
				
			||||||
 | 
						.div_reg = BPDIV
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll2_clk = {
 | 
				
			||||||
 | 
						.name = "pll2",
 | 
				
			||||||
 | 
						.parent = &ref_clk,
 | 
				
			||||||
 | 
						.pll_data = &pll2_data,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll2_sysclk1 = {
 | 
				
			||||||
 | 
						.name = "pll2_sysclk1",
 | 
				
			||||||
 | 
						.parent = &pll2_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
						.div_reg = PLLDIV1,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll2_sysclk2 = {
 | 
				
			||||||
 | 
						.name = "pll2_sysclk2",
 | 
				
			||||||
 | 
						.parent = &pll2_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL,
 | 
				
			||||||
 | 
						.div_reg = PLLDIV2,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pll2_sysclkbp = {
 | 
				
			||||||
 | 
						.name = "pll2_sysclkbp",
 | 
				
			||||||
 | 
						.parent = &pll2_clk,
 | 
				
			||||||
 | 
						.flags = CLK_PLL | PRE_PLL,
 | 
				
			||||||
 | 
						.div_reg = BPDIV
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk dsp_clk = {
 | 
				
			||||||
 | 
						.name = "dsp",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk1,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_GEM,
 | 
				
			||||||
 | 
						.flags = PSC_DSP,
 | 
				
			||||||
 | 
						.usecount = 1,			/* REVISIT how to disable? */
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk arm_clk = {
 | 
				
			||||||
 | 
						.name = "arm",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk2,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_ARM,
 | 
				
			||||||
 | 
						.flags = ALWAYS_ENABLED,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk vicp_clk = {
 | 
				
			||||||
 | 
						.name = "vicp",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk2,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_IMCOP,
 | 
				
			||||||
 | 
						.flags = PSC_DSP,
 | 
				
			||||||
 | 
						.usecount = 1,			/* REVISIT how to disable? */
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk vpss_master_clk = {
 | 
				
			||||||
 | 
						.name = "vpss_master",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk3,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_VPSSMSTR,
 | 
				
			||||||
 | 
						.flags = CLK_PSC,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk vpss_slave_clk = {
 | 
				
			||||||
 | 
						.name = "vpss_slave",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk3,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_VPSSSLV,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk uart0_clk = {
 | 
				
			||||||
 | 
						.name = "uart0",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_UART0,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk uart1_clk = {
 | 
				
			||||||
 | 
						.name = "uart1",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_UART1,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk uart2_clk = {
 | 
				
			||||||
 | 
						.name = "uart2",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_UART2,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk emac_clk = {
 | 
				
			||||||
 | 
						.name = "emac",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_EMAC_WRAPPER,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk i2c_clk = {
 | 
				
			||||||
 | 
						.name = "i2c",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_I2C,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk ide_clk = {
 | 
				
			||||||
 | 
						.name = "ide",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_ATA,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk asp_clk = {
 | 
				
			||||||
 | 
						.name = "asp0",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_McBSP,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk mmcsd_clk = {
 | 
				
			||||||
 | 
						.name = "mmcsd",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_MMC_SD,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk spi_clk = {
 | 
				
			||||||
 | 
						.name = "spi",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_SPI,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk gpio_clk = {
 | 
				
			||||||
 | 
						.name = "gpio",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_GPIO,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk usb_clk = {
 | 
				
			||||||
 | 
						.name = "usb",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_USB,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk vlynq_clk = {
 | 
				
			||||||
 | 
						.name = "vlynq",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_VLYNQ,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk aemif_clk = {
 | 
				
			||||||
 | 
						.name = "aemif",
 | 
				
			||||||
 | 
						.parent = &pll1_sysclk5,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_AEMIF,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pwm0_clk = {
 | 
				
			||||||
 | 
						.name = "pwm0",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_PWM0,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pwm1_clk = {
 | 
				
			||||||
 | 
						.name = "pwm1",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_PWM1,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk pwm2_clk = {
 | 
				
			||||||
 | 
						.name = "pwm2",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_PWM2,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk timer0_clk = {
 | 
				
			||||||
 | 
						.name = "timer0",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_TIMER0,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk timer1_clk = {
 | 
				
			||||||
 | 
						.name = "timer1",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_TIMER1,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct clk timer2_clk = {
 | 
				
			||||||
 | 
						.name = "timer2",
 | 
				
			||||||
 | 
						.parent = &pll1_aux_clk,
 | 
				
			||||||
 | 
						.lpsc = DAVINCI_LPSC_TIMER2,
 | 
				
			||||||
 | 
						.usecount = 1,              /* REVISIT: why cant' this be disabled? */
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					struct davinci_clk dm644x_clks[] = {
 | 
				
			||||||
 | 
						CLK(NULL, "ref", &ref_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1", &pll1_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1_sysclk1", &pll1_sysclk1),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1_sysclk2", &pll1_sysclk2),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1_sysclk3", &pll1_sysclk3),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1_sysclk5", &pll1_sysclk5),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1_aux", &pll1_aux_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pll1_sysclkbp", &pll1_sysclkbp),
 | 
				
			||||||
 | 
						CLK(NULL, "pll2", &pll2_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pll2_sysclk1", &pll2_sysclk1),
 | 
				
			||||||
 | 
						CLK(NULL, "pll2_sysclk2", &pll2_sysclk2),
 | 
				
			||||||
 | 
						CLK(NULL, "pll2_sysclkbp", &pll2_sysclkbp),
 | 
				
			||||||
 | 
						CLK(NULL, "dsp", &dsp_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "arm", &arm_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "vicp", &vicp_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "vpss_master", &vpss_master_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "vpss_slave", &vpss_slave_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "arm", &arm_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "uart0", &uart0_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "uart1", &uart1_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "uart2", &uart2_clk),
 | 
				
			||||||
 | 
						CLK("davinci_emac.1", NULL, &emac_clk),
 | 
				
			||||||
 | 
						CLK("i2c_davinci.1", NULL, &i2c_clk),
 | 
				
			||||||
 | 
						CLK("palm_bk3710", NULL, &ide_clk),
 | 
				
			||||||
 | 
						CLK("soc-audio.0", NULL, &asp_clk),
 | 
				
			||||||
 | 
						CLK("davinci_mmc.0", NULL, &mmcsd_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "spi", &spi_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "gpio", &gpio_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "usb", &usb_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "vlynq", &vlynq_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "aemif", &aemif_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pwm0", &pwm0_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pwm1", &pwm1_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "pwm2", &pwm2_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "timer0", &timer0_clk),
 | 
				
			||||||
 | 
						CLK(NULL, "timer1", &timer1_clk),
 | 
				
			||||||
 | 
						CLK("watchdog", NULL, &timer2_clk),
 | 
				
			||||||
 | 
						CLK(NULL, NULL, NULL),
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if defined(CONFIG_TI_DAVINCI_EMAC) || defined(CONFIG_TI_DAVINCI_EMAC_MODULE)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct resource dm644x_emac_resources[] = {
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.start	= DM644X_EMAC_BASE,
 | 
				
			||||||
 | 
							.end	= DM644X_EMAC_BASE + 0x47ff,
 | 
				
			||||||
 | 
							.flags	= IORESOURCE_MEM,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.start = IRQ_EMACINT,
 | 
				
			||||||
 | 
							.end   = IRQ_EMACINT,
 | 
				
			||||||
 | 
							.flags = IORESOURCE_IRQ,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct platform_device dm644x_emac_device = {
 | 
				
			||||||
 | 
					       .name		= "davinci_emac",
 | 
				
			||||||
 | 
					       .id		= 1,
 | 
				
			||||||
 | 
					       .num_resources	= ARRAY_SIZE(dm644x_emac_resources),
 | 
				
			||||||
 | 
					       .resource	= dm644x_emac_resources,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * Device specific mux setup
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 *	soc	description	mux  mode   mode  mux	 dbg
 | 
				
			||||||
 | 
					 *				reg  offset mask  mode
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					static const struct mux_config dm644x_pins[] = {
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, HDIREN,		0,   16,    1,	  1,	 true)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, ATAEN,		0,   17,    1,	  1,	 true)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, ATAEN_DISABLE,	0,   17,    1,	  0,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, HPIEN_DISABLE,	0,   29,    1,	  0,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, AEAW,		0,   0,     31,	  31,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, MSTK,		1,   9,     1,	  0,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, I2C,		1,   7,     1,	  1,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, MCBSP,		1,   10,    1,	  1,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, UART1,		1,   1,     1,	  1,	 true)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, UART2,		1,   2,     1,	  1,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, PWM0,		1,   4,     1,	  1,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, PWM1,		1,   5,     1,	  1,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, PWM2,		1,   6,     1,	  1,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, VLYNQEN,	0,   15,    1,	  1,	 false)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, VLSCREN,	0,   14,    1,	  1,	 false)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, VLYNQWD,	0,   12,    3,	  3,	 false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, EMACEN,		0,   31,    1,	  1,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, GPIO3V,		0,   31,    1,	  0,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, GPIO0,		0,   24,    1,	  0,	 true)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, GPIO3,		0,   25,    1,	  0,	 false)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, GPIO43_44,	1,   7,     1,	  0,	 false)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, GPIO46_47,	0,   22,    1,	  0,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, RGB666,		0,   22,    1,	  1,	 true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, LOEEN,		0,   24,    1,	  1,	 true)
 | 
				
			||||||
 | 
					MUX_CFG(DM644X, LFLDEN,		0,   25,    1,	  1,	 false)
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*----------------------------------------------------------------------*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static const s8 dma_chan_dm644x_no_event[] = {
 | 
				
			||||||
 | 
						 0,  1, 12, 13, 14,
 | 
				
			||||||
 | 
						15, 25, 30, 31, 45,
 | 
				
			||||||
 | 
						46, 47, 55, 56, 57,
 | 
				
			||||||
 | 
						58, 59, 60, 61, 62,
 | 
				
			||||||
 | 
						63,
 | 
				
			||||||
 | 
						-1
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct edma_soc_info dm644x_edma_info = {
 | 
				
			||||||
 | 
						.n_channel	= 64,
 | 
				
			||||||
 | 
						.n_region	= 4,
 | 
				
			||||||
 | 
						.n_slot		= 128,
 | 
				
			||||||
 | 
						.n_tc		= 2,
 | 
				
			||||||
 | 
						.noevent	= dma_chan_dm644x_no_event,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct resource edma_resources[] = {
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.name	= "edma_cc",
 | 
				
			||||||
 | 
							.start	= 0x01c00000,
 | 
				
			||||||
 | 
							.end	= 0x01c00000 + SZ_64K - 1,
 | 
				
			||||||
 | 
							.flags	= IORESOURCE_MEM,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.name	= "edma_tc0",
 | 
				
			||||||
 | 
							.start	= 0x01c10000,
 | 
				
			||||||
 | 
							.end	= 0x01c10000 + SZ_1K - 1,
 | 
				
			||||||
 | 
							.flags	= IORESOURCE_MEM,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.name	= "edma_tc1",
 | 
				
			||||||
 | 
							.start	= 0x01c10400,
 | 
				
			||||||
 | 
							.end	= 0x01c10400 + SZ_1K - 1,
 | 
				
			||||||
 | 
							.flags	= IORESOURCE_MEM,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.start	= IRQ_CCINT0,
 | 
				
			||||||
 | 
							.flags	= IORESOURCE_IRQ,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							.start	= IRQ_CCERRINT,
 | 
				
			||||||
 | 
							.flags	= IORESOURCE_IRQ,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						/* not using TC*_ERR */
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct platform_device dm644x_edma_device = {
 | 
				
			||||||
 | 
						.name			= "edma",
 | 
				
			||||||
 | 
						.id			= -1,
 | 
				
			||||||
 | 
						.dev.platform_data	= &dm644x_edma_info,
 | 
				
			||||||
 | 
						.num_resources		= ARRAY_SIZE(edma_resources),
 | 
				
			||||||
 | 
						.resource		= edma_resources,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*----------------------------------------------------------------------*/
 | 
				
			||||||
 | 
					void __init dm644x_init(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						davinci_clk_init(dm644x_clks);
 | 
				
			||||||
 | 
						davinci_mux_register(dm644x_pins, ARRAY_SIZE(dm644x_pins));
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int __init dm644x_init_devices(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if (!cpu_is_davinci_dm644x())
 | 
				
			||||||
 | 
							return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						platform_device_register(&dm644x_edma_device);
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					postcore_initcall(dm644x_init_devices);
 | 
				
			||||||
							
								
								
									
										1135
									
								
								arch/arm/mach-davinci/dma.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1135
									
								
								arch/arm/mach-davinci/dma.c
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
					@ -20,6 +20,7 @@
 | 
				
			||||||
#include <linux/irq.h>
 | 
					#include <linux/irq.h>
 | 
				
			||||||
#include <linux/bitops.h>
 | 
					#include <linux/bitops.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <mach/cputype.h>
 | 
				
			||||||
#include <mach/irqs.h>
 | 
					#include <mach/irqs.h>
 | 
				
			||||||
#include <mach/hardware.h>
 | 
					#include <mach/hardware.h>
 | 
				
			||||||
#include <mach/gpio.h>
 | 
					#include <mach/gpio.h>
 | 
				
			||||||
| 
						 | 
					@ -36,9 +37,10 @@ struct davinci_gpio {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct davinci_gpio chips[DIV_ROUND_UP(DAVINCI_N_GPIO, 32)];
 | 
					static struct davinci_gpio chips[DIV_ROUND_UP(DAVINCI_N_GPIO, 32)];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static unsigned __initdata ngpio;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* create a non-inlined version */
 | 
					/* create a non-inlined version */
 | 
				
			||||||
static struct gpio_controller *__iomem __init gpio2controller(unsigned gpio)
 | 
					static struct gpio_controller __iomem * __init gpio2controller(unsigned gpio)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	return __gpio_to_controller(gpio);
 | 
						return __gpio_to_controller(gpio);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -114,9 +116,30 @@ static int __init davinci_gpio_setup(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int i, base;
 | 
						int i, base;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0, base = 0;
 | 
						/* The gpio banks conceptually expose a segmented bitmap,
 | 
				
			||||||
			i < ARRAY_SIZE(chips);
 | 
						 * and "ngpio" is one more than the largest zero-based
 | 
				
			||||||
			i++, base += 32) {
 | 
						 * bit index that's valid.
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						if (cpu_is_davinci_dm355()) {		/* or dm335() */
 | 
				
			||||||
 | 
							ngpio = 104;
 | 
				
			||||||
 | 
						} else if (cpu_is_davinci_dm644x()) {	/* or dm337() */
 | 
				
			||||||
 | 
							ngpio = 71;
 | 
				
			||||||
 | 
						} else if (cpu_is_davinci_dm646x()) {
 | 
				
			||||||
 | 
							/* NOTE:  each bank has several "reserved" bits,
 | 
				
			||||||
 | 
							 * unusable as GPIOs.  Only 33 of the GPIO numbers
 | 
				
			||||||
 | 
							 * are usable, and we're not rejecting the others.
 | 
				
			||||||
 | 
							 */
 | 
				
			||||||
 | 
							ngpio = 43;
 | 
				
			||||||
 | 
						} else {
 | 
				
			||||||
 | 
							/* if cpu_is_davinci_dm643x() ngpio = 111 */
 | 
				
			||||||
 | 
							pr_err("GPIO setup:  how many GPIOs?\n");
 | 
				
			||||||
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (WARN_ON(DAVINCI_N_GPIO < ngpio))
 | 
				
			||||||
 | 
							ngpio = DAVINCI_N_GPIO;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						for (i = 0, base = 0; base < ngpio; i++, base += 32) {
 | 
				
			||||||
		chips[i].chip.label = "DaVinci";
 | 
							chips[i].chip.label = "DaVinci";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		chips[i].chip.direction_input = davinci_direction_in;
 | 
							chips[i].chip.direction_input = davinci_direction_in;
 | 
				
			||||||
| 
						 | 
					@ -125,7 +148,7 @@ static int __init davinci_gpio_setup(void)
 | 
				
			||||||
		chips[i].chip.set = davinci_gpio_set;
 | 
							chips[i].chip.set = davinci_gpio_set;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		chips[i].chip.base = base;
 | 
							chips[i].chip.base = base;
 | 
				
			||||||
		chips[i].chip.ngpio = DAVINCI_N_GPIO - base;
 | 
							chips[i].chip.ngpio = ngpio - base;
 | 
				
			||||||
		if (chips[i].chip.ngpio > 32)
 | 
							if (chips[i].chip.ngpio > 32)
 | 
				
			||||||
			chips[i].chip.ngpio = 32;
 | 
								chips[i].chip.ngpio = 32;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -143,11 +166,11 @@ pure_initcall(davinci_gpio_setup);
 | 
				
			||||||
 * We expect irqs will normally be set up as input pins, but they can also be
 | 
					 * We expect irqs will normally be set up as input pins, but they can also be
 | 
				
			||||||
 * used as output pins ... which is convenient for testing.
 | 
					 * used as output pins ... which is convenient for testing.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * NOTE:  GPIO0..GPIO7 also have direct INTC hookups, which work in addition
 | 
					 * NOTE:  The first few GPIOs also have direct INTC hookups in addition
 | 
				
			||||||
 * to their GPIOBNK0 irq (but with a bit less overhead).  But we don't have
 | 
					 * to their GPIOBNK0 irq, with a bit less overhead but less flexibility
 | 
				
			||||||
 * a good way to hook those up ...
 | 
					 * on triggering (e.g. no edge options).  We don't try to use those.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * All those INTC hookups (GPIO0..GPIO7 plus five IRQ banks) can also
 | 
					 * All those INTC hookups (direct, plus several IRQ banks) can also
 | 
				
			||||||
 * serve as EDMA event triggers.
 | 
					 * serve as EDMA event triggers.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -235,29 +258,42 @@ gpio_irq_handler(unsigned irq, struct irq_desc *desc)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * NOTE:  for suspend/resume, probably best to make a sysdev (and class)
 | 
					 * NOTE:  for suspend/resume, probably best to make a platform_device with
 | 
				
			||||||
 * with its suspend/resume calls hooking into the results of the set_wake()
 | 
					 * suspend_late/resume_resume calls hooking into results of the set_wake()
 | 
				
			||||||
 * calls ... so if no gpios are wakeup events the clock can be disabled,
 | 
					 * calls ... so if no gpios are wakeup events the clock can be disabled,
 | 
				
			||||||
 * with outputs left at previously set levels, and so that VDD3P3V.IOPWDN0
 | 
					 * with outputs left at previously set levels, and so that VDD3P3V.IOPWDN0
 | 
				
			||||||
 * can be set appropriately for GPIOV33 pins.
 | 
					 * (dm6446) can be set appropriately for GPIOV33 pins.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init davinci_gpio_irq_setup(void)
 | 
					static int __init davinci_gpio_irq_setup(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	unsigned	gpio, irq, bank;
 | 
						unsigned	gpio, irq, bank;
 | 
				
			||||||
 | 
						unsigned	bank_irq;
 | 
				
			||||||
	struct clk	*clk;
 | 
						struct clk	*clk;
 | 
				
			||||||
 | 
						u32		binten = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (cpu_is_davinci_dm355()) {		/* or dm335() */
 | 
				
			||||||
 | 
							bank_irq = IRQ_DM355_GPIOBNK0;
 | 
				
			||||||
 | 
						} else if (cpu_is_davinci_dm644x()) {
 | 
				
			||||||
 | 
							bank_irq = IRQ_GPIOBNK0;
 | 
				
			||||||
 | 
						} else if (cpu_is_davinci_dm646x()) {
 | 
				
			||||||
 | 
							bank_irq = IRQ_DM646X_GPIOBNK0;
 | 
				
			||||||
 | 
						} else {
 | 
				
			||||||
 | 
							printk(KERN_ERR "Don't know first GPIO bank IRQ.\n");
 | 
				
			||||||
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	clk = clk_get(NULL, "gpio");
 | 
						clk = clk_get(NULL, "gpio");
 | 
				
			||||||
	if (IS_ERR(clk)) {
 | 
						if (IS_ERR(clk)) {
 | 
				
			||||||
		printk(KERN_ERR "Error %ld getting gpio clock?\n",
 | 
							printk(KERN_ERR "Error %ld getting gpio clock?\n",
 | 
				
			||||||
		       PTR_ERR(clk));
 | 
							       PTR_ERR(clk));
 | 
				
			||||||
		return 0;
 | 
							return PTR_ERR(clk);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					 | 
				
			||||||
	clk_enable(clk);
 | 
						clk_enable(clk);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (gpio = 0, irq = gpio_to_irq(0), bank = IRQ_GPIOBNK0;
 | 
						for (gpio = 0, irq = gpio_to_irq(0), bank = 0;
 | 
				
			||||||
	     gpio < DAVINCI_N_GPIO; bank++) {
 | 
								gpio < ngpio;
 | 
				
			||||||
 | 
								bank++, bank_irq++) {
 | 
				
			||||||
		struct gpio_controller	*__iomem g = gpio2controller(gpio);
 | 
							struct gpio_controller	*__iomem g = gpio2controller(gpio);
 | 
				
			||||||
		unsigned		i;
 | 
							unsigned		i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -265,28 +301,28 @@ static int __init davinci_gpio_irq_setup(void)
 | 
				
			||||||
		__raw_writel(~0, &g->clr_rising);
 | 
							__raw_writel(~0, &g->clr_rising);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/* set up all irqs in this bank */
 | 
							/* set up all irqs in this bank */
 | 
				
			||||||
		set_irq_chained_handler(bank, gpio_irq_handler);
 | 
							set_irq_chained_handler(bank_irq, gpio_irq_handler);
 | 
				
			||||||
		set_irq_chip_data(bank, g);
 | 
							set_irq_chip_data(bank_irq, g);
 | 
				
			||||||
		set_irq_data(bank, (void *)irq);
 | 
							set_irq_data(bank_irq, (void *)irq);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		for (i = 0; i < 16 && gpio < DAVINCI_N_GPIO;
 | 
							for (i = 0; i < 16 && gpio < ngpio; i++, irq++, gpio++) {
 | 
				
			||||||
		     i++, irq++, gpio++) {
 | 
					 | 
				
			||||||
			set_irq_chip(irq, &gpio_irqchip);
 | 
								set_irq_chip(irq, &gpio_irqchip);
 | 
				
			||||||
			set_irq_chip_data(irq, g);
 | 
								set_irq_chip_data(irq, g);
 | 
				
			||||||
			set_irq_handler(irq, handle_simple_irq);
 | 
								set_irq_handler(irq, handle_simple_irq);
 | 
				
			||||||
			set_irq_flags(irq, IRQF_VALID);
 | 
								set_irq_flags(irq, IRQF_VALID);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							binten |= BIT(bank);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* BINTEN -- per-bank interrupt enable. genirq would also let these
 | 
						/* BINTEN -- per-bank interrupt enable. genirq would also let these
 | 
				
			||||||
	 * bits be set/cleared dynamically.
 | 
						 * bits be set/cleared dynamically.
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	__raw_writel(0x1f, (void *__iomem)
 | 
						__raw_writel(binten, (void *__iomem)
 | 
				
			||||||
		     IO_ADDRESS(DAVINCI_GPIO_BASE + 0x08));
 | 
							     IO_ADDRESS(DAVINCI_GPIO_BASE + 0x08));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	printk(KERN_INFO "DaVinci: %d gpio irqs\n", irq - gpio_to_irq(0));
 | 
						printk(KERN_INFO "DaVinci: %d gpio irqs\n", irq - gpio_to_irq(0));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
arch_initcall(davinci_gpio_irq_setup);
 | 
					arch_initcall(davinci_gpio_irq_setup);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,7 +15,9 @@
 | 
				
			||||||
#include <linux/init.h>
 | 
					#include <linux/init.h>
 | 
				
			||||||
#include <linux/io.h>
 | 
					#include <linux/io.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define JTAG_ID_BASE		0x01c40028
 | 
					#define JTAG_ID_BASE		IO_ADDRESS(0x01c40028)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static unsigned int davinci_revision;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct davinci_id {
 | 
					struct davinci_id {
 | 
				
			||||||
	u8	variant;	/* JTAG ID bits 31:28 */
 | 
						u8	variant;	/* JTAG ID bits 31:28 */
 | 
				
			||||||
| 
						 | 
					@ -33,6 +35,20 @@ static struct davinci_id davinci_ids[] __initdata = {
 | 
				
			||||||
		.manufacturer = 0x017,
 | 
							.manufacturer = 0x017,
 | 
				
			||||||
		.type	      = 0x64460000,
 | 
							.type	      = 0x64460000,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							/* DM646X */
 | 
				
			||||||
 | 
							.part_no      = 0xb770,
 | 
				
			||||||
 | 
							.variant      = 0x0,
 | 
				
			||||||
 | 
							.manufacturer = 0x017,
 | 
				
			||||||
 | 
							.type         = 0x64670000,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							/* DM355 */
 | 
				
			||||||
 | 
							.part_no	= 0xb73b,
 | 
				
			||||||
 | 
							.variant	= 0x0,
 | 
				
			||||||
 | 
							.manufacturer	= 0x00f,
 | 
				
			||||||
 | 
							.type		= 0x03550000,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					@ -42,7 +58,7 @@ static u16 __init davinci_get_part_no(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	u32 dev_id, part_no;
 | 
						u32 dev_id, part_no;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dev_id = davinci_readl(JTAG_ID_BASE);
 | 
						dev_id = __raw_readl(JTAG_ID_BASE);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	part_no = ((dev_id >> 12) & 0xffff);
 | 
						part_no = ((dev_id >> 12) & 0xffff);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -56,13 +72,19 @@ static u8 __init davinci_get_variant(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	u32 variant;
 | 
						u32 variant;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	variant = davinci_readl(JTAG_ID_BASE);
 | 
						variant = __raw_readl(JTAG_ID_BASE);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	variant = (variant >> 28) & 0xf;
 | 
						variant = (variant >> 28) & 0xf;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return variant;
 | 
						return variant;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					unsigned int davinci_rev(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						return davinci_revision >> 16;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					EXPORT_SYMBOL(davinci_rev);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void __init davinci_check_revision(void)
 | 
					void __init davinci_check_revision(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int i;
 | 
						int i;
 | 
				
			||||||
| 
						 | 
					@ -75,7 +97,7 @@ void __init davinci_check_revision(void)
 | 
				
			||||||
	/* First check only the major version in a safe way */
 | 
						/* First check only the major version in a safe way */
 | 
				
			||||||
	for (i = 0; i < ARRAY_SIZE(davinci_ids); i++) {
 | 
						for (i = 0; i < ARRAY_SIZE(davinci_ids); i++) {
 | 
				
			||||||
		if (part_no == (davinci_ids[i].part_no)) {
 | 
							if (part_no == (davinci_ids[i].part_no)) {
 | 
				
			||||||
			system_rev = davinci_ids[i].type;
 | 
								davinci_revision = davinci_ids[i].type;
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -84,10 +106,11 @@ void __init davinci_check_revision(void)
 | 
				
			||||||
	for (i = 0; i < ARRAY_SIZE(davinci_ids); i++) {
 | 
						for (i = 0; i < ARRAY_SIZE(davinci_ids); i++) {
 | 
				
			||||||
		if (part_no == davinci_ids[i].part_no &&
 | 
							if (part_no == davinci_ids[i].part_no &&
 | 
				
			||||||
		    variant == davinci_ids[i].variant) {
 | 
							    variant == davinci_ids[i].variant) {
 | 
				
			||||||
			system_rev = davinci_ids[i].type;
 | 
								davinci_revision = davinci_ids[i].type;
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	printk("DaVinci DM%04x variant 0x%x\n", system_rev >> 16, variant);
 | 
						printk(KERN_INFO "DaVinci DM%04x variant 0x%x\n",
 | 
				
			||||||
 | 
						       davinci_rev(), variant);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
		Reference in a new issue