Merge remote branch 'gcl/next' into next
This commit is contained in:
		
						commit
						eed0ba0b4a
					
				
							
								
								
									
										83
									
								
								Documentation/ABI/testing/sysfs-bus-rbd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								Documentation/ABI/testing/sysfs-bus-rbd
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,83 @@ | ||||
| What:		/sys/bus/rbd/ | ||||
| Date:		November 2010 | ||||
| Contact:	Yehuda Sadeh <yehuda@hq.newdream.net>, | ||||
| 		Sage Weil <sage@newdream.net> | ||||
| Description: | ||||
| 
 | ||||
| Being used for adding and removing rbd block devices. | ||||
| 
 | ||||
| Usage: <mon ip addr> <options> <pool name> <rbd image name> [snap name] | ||||
| 
 | ||||
|  $ echo "192.168.0.1 name=admin rbd foo" > /sys/bus/rbd/add | ||||
| 
 | ||||
| The snapshot name can be "-" or omitted to map the image read/write. A <dev-id> | ||||
| will be assigned for any registered block device. If snapshot is used, it will | ||||
| be mapped read-only. | ||||
| 
 | ||||
| Removal of a device: | ||||
| 
 | ||||
|   $ echo <dev-id> > /sys/bus/rbd/remove | ||||
| 
 | ||||
| Entries under /sys/bus/rbd/devices/<dev-id>/ | ||||
| -------------------------------------------- | ||||
| 
 | ||||
| client_id | ||||
| 
 | ||||
| 	The ceph unique client id that was assigned for this specific session. | ||||
| 
 | ||||
| major | ||||
| 
 | ||||
| 	The block device major number. | ||||
| 
 | ||||
| name | ||||
| 
 | ||||
| 	The name of the rbd image. | ||||
| 
 | ||||
| pool | ||||
| 
 | ||||
| 	The pool where this rbd image resides. The pool-name pair is unique | ||||
| 	per rados system. | ||||
| 
 | ||||
| size | ||||
| 
 | ||||
| 	The size (in bytes) of the mapped block device. | ||||
| 
 | ||||
| refresh | ||||
| 
 | ||||
| 	Writing to this file will reread the image header data and set | ||||
| 	all relevant datastructures accordingly. | ||||
| 
 | ||||
| current_snap | ||||
| 
 | ||||
| 	The current snapshot for which the device is mapped. | ||||
| 
 | ||||
| create_snap | ||||
| 
 | ||||
| 	Create a snapshot: | ||||
| 
 | ||||
| 	 $ echo <snap-name> > /sys/bus/rbd/devices/<dev-id>/snap_create | ||||
| 
 | ||||
| rollback_snap | ||||
| 
 | ||||
| 	Rolls back data to the specified snapshot. This goes over the entire | ||||
| 	list of rados blocks and sends a rollback command to each. | ||||
| 
 | ||||
| 	 $ echo <snap-name> > /sys/bus/rbd/devices/<dev-id>/snap_rollback | ||||
| 
 | ||||
| snap_* | ||||
| 
 | ||||
| 	A directory per each snapshot | ||||
| 
 | ||||
| 
 | ||||
| Entries under /sys/bus/rbd/devices/<dev-id>/snap_<snap-name> | ||||
| ------------------------------------------------------------- | ||||
| 
 | ||||
| id | ||||
| 
 | ||||
| 	The rados internal snapshot id assigned for this snapshot | ||||
| 
 | ||||
| size | ||||
| 
 | ||||
| 	The size of the image when this snapshot was taken. | ||||
| 
 | ||||
| 
 | ||||
| @ -47,6 +47,20 @@ Date:		January 2007 | ||||
| KernelVersion:	2.6.20 | ||||
| Contact:	"Corentin Chary" <corentincj@iksaif.net> | ||||
| Description: | ||||
| 		Control the bluetooth device. 1 means on, 0 means off. | ||||
| 		Control the wlan device. 1 means on, 0 means off. | ||||
| 		This may control the led, the device or both. | ||||
| Users:		Lapsus | ||||
| 
 | ||||
| What:		/sys/devices/platform/asus_laptop/wimax | ||||
| Date:		October 2010 | ||||
| KernelVersion:	2.6.37 | ||||
| Contact:	"Corentin Chary" <corentincj@iksaif.net> | ||||
| Description: | ||||
| 		Control the wimax device. 1 means on, 0 means off. | ||||
| 
 | ||||
| What:		/sys/devices/platform/asus_laptop/wwan | ||||
| Date:		October 2010 | ||||
| KernelVersion:	2.6.37 | ||||
| Contact:	"Corentin Chary" <corentincj@iksaif.net> | ||||
| Description: | ||||
| 		Control the wwan (3G) device. 1 means on, 0 means off. | ||||
|  | ||||
							
								
								
									
										10
									
								
								Documentation/ABI/testing/sysfs-platform-eeepc-wmi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								Documentation/ABI/testing/sysfs-platform-eeepc-wmi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,10 @@ | ||||
| What:		/sys/devices/platform/eeepc-wmi/cpufv | ||||
| Date:		Oct 2010 | ||||
| KernelVersion:	2.6.37 | ||||
| Contact:	"Corentin Chary" <corentincj@iksaif.net> | ||||
| Description: | ||||
| 		Change CPU clock configuration (write-only). | ||||
| 		There are three available clock configuration: | ||||
| 		    * 0 -> Super Performance Mode | ||||
| 		    * 1 -> High Performance Mode | ||||
| 		    * 2 -> Power Saving Mode | ||||
| @ -516,6 +516,7 @@ int main(int argc, char *argv[]) | ||||
| 			default: | ||||
| 				fprintf(stderr, "Unknown nla_type %d\n", | ||||
| 					na->nla_type); | ||||
| 			case TASKSTATS_TYPE_NULL: | ||||
| 				break; | ||||
| 			} | ||||
| 			na = (struct nlattr *) (GENLMSG_DATA(&msg) + len); | ||||
|  | ||||
| @ -1,129 +0,0 @@ | ||||
| 
 | ||||
| Device Interfaces | ||||
| 
 | ||||
| Introduction | ||||
| ~~~~~~~~~~~~ | ||||
| 
 | ||||
| Device interfaces are the logical interfaces of device classes that correlate | ||||
| directly to userspace interfaces, like device nodes.  | ||||
|     | ||||
| Each device class may have multiple interfaces through which you can  | ||||
| access the same device. An input device may support the mouse interface,  | ||||
| the 'evdev' interface, and the touchscreen interface. A SCSI disk would  | ||||
| support the disk interface, the SCSI generic interface, and possibly a raw  | ||||
| device interface.  | ||||
| 
 | ||||
| Device interfaces are registered with the class they belong to. As devices | ||||
| are added to the class, they are added to each interface registered with | ||||
| the class. The interface is responsible for determining whether the device | ||||
| supports the interface or not.  | ||||
| 
 | ||||
| 
 | ||||
| Programming Interface | ||||
| ~~~~~~~~~~~~~~~~~~~~~ | ||||
| 
 | ||||
| struct device_interface { | ||||
| 	char			* name; | ||||
| 	rwlock_t		lock; | ||||
| 	u32			devnum; | ||||
| 	struct device_class	* devclass; | ||||
| 
 | ||||
| 	struct list_head	node; | ||||
| 	struct driver_dir_entry	dir; | ||||
| 
 | ||||
| 	int (*add_device)(struct device *); | ||||
| 	int (*add_device)(struct intf_data *); | ||||
| }; | ||||
| 
 | ||||
| int interface_register(struct device_interface *); | ||||
| void interface_unregister(struct device_interface *); | ||||
| 
 | ||||
| 
 | ||||
| An interface must specify the device class it belongs to. It is added | ||||
| to that class's list of interfaces on registration. | ||||
| 
 | ||||
| 
 | ||||
| Interfaces can be added to a device class at any time. Whenever it is | ||||
| added, each device in the class is passed to the interface's | ||||
| add_device callback. When an interface is removed, each device is | ||||
| removed from the interface. | ||||
| 
 | ||||
| 
 | ||||
| Devices | ||||
| ~~~~~~~ | ||||
| Once a device is added to a device class, it is added to each | ||||
| interface that is registered with the device class. The class | ||||
| is expected to place a class-specific data structure in  | ||||
| struct device::class_data. The interface can use that (along with | ||||
| other fields of struct device) to determine whether or not the driver | ||||
| and/or device support that particular interface. | ||||
| 
 | ||||
| 
 | ||||
| Data | ||||
| ~~~~ | ||||
| 
 | ||||
| struct intf_data { | ||||
| 	struct list_head	node; | ||||
| 	struct device_interface	* intf; | ||||
| 	struct device 		* dev; | ||||
| 	u32			intf_num; | ||||
| }; | ||||
| 
 | ||||
| int interface_add_data(struct interface_data *); | ||||
| 
 | ||||
| The interface is responsible for allocating and initializing a struct  | ||||
| intf_data and calling interface_add_data() to add it to the device's list | ||||
| of interfaces it belongs to. This list will be iterated over when the device | ||||
| is removed from the class (instead of all possible interfaces for a class). | ||||
| This structure should probably be embedded in whatever per-device data  | ||||
| structure the interface is allocating anyway. | ||||
|     | ||||
| Devices are enumerated within the interface. This happens in interface_add_data() | ||||
| and the enumerated value is stored in the struct intf_data for that device.  | ||||
| 
 | ||||
| sysfs | ||||
| ~~~~~ | ||||
| Each interface is given a directory in the directory of the device | ||||
| class it belongs to: | ||||
| 
 | ||||
| Interfaces get a directory in the class's directory as well: | ||||
| 
 | ||||
|    class/ | ||||
|    `-- input | ||||
|        |-- devices | ||||
|        |-- drivers | ||||
|        |-- mouse | ||||
|        `-- evdev | ||||
| 
 | ||||
| When a device is added to the interface, a symlink is created that points  | ||||
| to the device's directory in the physical hierarchy: | ||||
| 
 | ||||
|    class/ | ||||
|    `-- input | ||||
|        |-- devices | ||||
|        |   `-- 1 -> ../../../root/pci0/00:1f.0/usb_bus/00:1f.2-1:0/ | ||||
|        |-- drivers | ||||
|        |   `-- usb:usb_mouse -> ../../../bus/drivers/usb_mouse/ | ||||
|        |-- mouse | ||||
|        |   `-- 1 -> ../../../root/pci0/00:1f.0/usb_bus/00:1f.2-1:0/ | ||||
|        `-- evdev | ||||
|            `-- 1 -> ../../../root/pci0/00:1f.0/usb_bus/00:1f.2-1:0/ | ||||
| 
 | ||||
| 
 | ||||
| Future Plans | ||||
| ~~~~~~~~~~~~ | ||||
| A device interface is correlated directly with a userspace interface | ||||
| for a device, specifically a device node. For instance, a SCSI disk | ||||
| exposes at least two interfaces to userspace: the standard SCSI disk | ||||
| interface and the SCSI generic interface. It might also export a raw | ||||
| device interface.  | ||||
| 
 | ||||
| Many interfaces have a major number associated with them and each | ||||
| device gets a minor number. Or, multiple interfaces might share one | ||||
| major number, and each will receive a range of minor numbers (like in | ||||
| the case of input devices). | ||||
| 
 | ||||
| These major and minor numbers could be stored in the interface | ||||
| structure. Major and minor allocations could happen when the interface | ||||
| is registered with the class, or via a helper function.  | ||||
| 
 | ||||
| @ -196,7 +196,7 @@ csrow3. | ||||
| The representation of the above is reflected in the directory tree | ||||
| in EDAC's sysfs interface. Starting in directory | ||||
| /sys/devices/system/edac/mc each memory controller will be represented | ||||
| by its own 'mcX' directory, where 'X" is the index of the MC. | ||||
| by its own 'mcX' directory, where 'X' is the index of the MC. | ||||
| 
 | ||||
| 
 | ||||
| 	..../edac/mc/ | ||||
| @ -207,7 +207,7 @@ by its own 'mcX' directory, where 'X" is the index of the MC. | ||||
| 		   .... | ||||
| 
 | ||||
| Under each 'mcX' directory each 'csrowX' is again represented by a | ||||
| 'csrowX', where 'X" is the csrow index: | ||||
| 'csrowX', where 'X' is the csrow index: | ||||
| 
 | ||||
| 
 | ||||
| 	.../mc/mc0/ | ||||
| @ -232,7 +232,7 @@ EDAC control and attribute files. | ||||
| 
 | ||||
| 
 | ||||
| In 'mcX' directories are EDAC control and attribute files for | ||||
| this 'X" instance of the memory controllers: | ||||
| this 'X' instance of the memory controllers: | ||||
| 
 | ||||
| 
 | ||||
| Counter reset control file: | ||||
| @ -343,7 +343,7 @@ Sdram memory scrubbing rate: | ||||
| 'csrowX' DIRECTORIES | ||||
| 
 | ||||
| In the 'csrowX' directories are EDAC control and attribute files for | ||||
| this 'X" instance of csrow: | ||||
| this 'X' instance of csrow: | ||||
| 
 | ||||
| 
 | ||||
| Total Uncorrectable Errors count attribute file: | ||||
|  | ||||
| @ -173,12 +173,13 @@ prototypes: | ||||
| 	sector_t (*bmap)(struct address_space *, sector_t); | ||||
| 	int (*invalidatepage) (struct page *, unsigned long); | ||||
| 	int (*releasepage) (struct page *, int); | ||||
| 	void (*freepage)(struct page *); | ||||
| 	int (*direct_IO)(int, struct kiocb *, const struct iovec *iov, | ||||
| 			loff_t offset, unsigned long nr_segs); | ||||
| 	int (*launder_page) (struct page *); | ||||
| 
 | ||||
| locking rules: | ||||
| 	All except set_page_dirty may block | ||||
| 	All except set_page_dirty and freepage may block | ||||
| 
 | ||||
| 			BKL	PageLocked(page)	i_mutex | ||||
| writepage:		no	yes, unlocks (see below) | ||||
| @ -193,6 +194,7 @@ perform_write:		no	n/a			yes | ||||
| bmap:			no | ||||
| invalidatepage:		no	yes | ||||
| releasepage:		no	yes | ||||
| freepage:		no	yes | ||||
| direct_IO:		no | ||||
| launder_page:		no	yes | ||||
| 
 | ||||
| @ -288,6 +290,9 @@ buffers from the page in preparation for freeing it.  It returns zero to | ||||
| indicate that the buffers are (or may be) freeable.  If ->releasepage is zero, | ||||
| the kernel assumes that the fs has no private interest in the buffers. | ||||
| 
 | ||||
| 	->freepage() is called when the kernel is done dropping the page | ||||
| from the page cache. | ||||
| 
 | ||||
| 	->launder_page() may be called prior to releasing a page if | ||||
| it is still found to be dirty. It returns zero if the page was successfully | ||||
| cleaned, or an error value if not. Note that in order to prevent the page | ||||
|  | ||||
| @ -534,6 +534,7 @@ struct address_space_operations { | ||||
| 	sector_t (*bmap)(struct address_space *, sector_t); | ||||
| 	int (*invalidatepage) (struct page *, unsigned long); | ||||
| 	int (*releasepage) (struct page *, int); | ||||
| 	void (*freepage)(struct page *); | ||||
| 	ssize_t (*direct_IO)(int, struct kiocb *, const struct iovec *iov, | ||||
| 			loff_t offset, unsigned long nr_segs); | ||||
| 	struct page* (*get_xip_page)(struct address_space *, sector_t, | ||||
| @ -660,11 +661,10 @@ struct address_space_operations { | ||||
|   releasepage: releasepage is called on PagePrivate pages to indicate | ||||
|         that the page should be freed if possible.  ->releasepage | ||||
|         should remove any private data from the page and clear the | ||||
|         PagePrivate flag.  It may also remove the page from the | ||||
|         address_space.  If this fails for some reason, it may indicate | ||||
|         failure with a 0 return value. | ||||
| 	This is used in two distinct though related cases.  The first | ||||
|         is when the VM finds a clean page with no active users and | ||||
|         PagePrivate flag. If releasepage() fails for some reason, it must | ||||
| 	indicate failure with a 0 return value. | ||||
| 	releasepage() is used in two distinct though related cases.  The | ||||
| 	first is when the VM finds a clean page with no active users and | ||||
|         wants to make it a free page.  If ->releasepage succeeds, the | ||||
|         page will be removed from the address_space and become free. | ||||
| 
 | ||||
| @ -679,6 +679,12 @@ struct address_space_operations { | ||||
|         need to ensure this.  Possibly it can clear the PageUptodate | ||||
|         bit if it cannot free private data yet. | ||||
| 
 | ||||
|   freepage: freepage is called once the page is no longer visible in | ||||
|         the page cache in order to allow the cleanup of any private | ||||
| 	data. Since it may be called by the memory reclaimer, it | ||||
| 	should not assume that the original address_space mapping still | ||||
| 	exists, and it should not block. | ||||
| 
 | ||||
|   direct_IO: called by the generic read/write routines to perform | ||||
|         direct_IO - that is IO requests which bypass the page cache | ||||
|         and transfer data directly between the storage and the | ||||
|  | ||||
| @ -2183,11 +2183,6 @@ and is between 256 and 4096 characters. It is defined in the file | ||||
| 	reset_devices	[KNL] Force drivers to reset the underlying device | ||||
| 			during initialization. | ||||
| 
 | ||||
| 	resource_alloc_from_bottom | ||||
| 			Allocate new resources from the beginning of available | ||||
| 			space, not the end.  If you need to use this, please | ||||
| 			report a bug. | ||||
| 
 | ||||
| 	resume=		[SWSUSP] | ||||
| 			Specify the partition device for software suspend | ||||
| 
 | ||||
|  | ||||
| @ -144,6 +144,7 @@ tcp_adv_win_scale - INTEGER | ||||
| 	Count buffering overhead as bytes/2^tcp_adv_win_scale | ||||
| 	(if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale), | ||||
| 	if it is <= 0. | ||||
| 	Possible values are [-31, 31], inclusive. | ||||
| 	Default: 2 | ||||
| 
 | ||||
| tcp_allowed_congestion_control - STRING | ||||
|  | ||||
| @ -379,8 +379,8 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h: | ||||
|       zero) | ||||
| 
 | ||||
|   bool pm_runtime_suspended(struct device *dev); | ||||
|     - return true if the device's runtime PM status is 'suspended', or false | ||||
|       otherwise | ||||
|     - return true if the device's runtime PM status is 'suspended' and its | ||||
|       'power.disable_depth' field is equal to zero, or false otherwise | ||||
| 
 | ||||
|   void pm_runtime_allow(struct device *dev); | ||||
|     - set the power.runtime_auto flag for the device and decrease its usage | ||||
|  | ||||
| @ -1044,9 +1044,9 @@ Details: | ||||
| 
 | ||||
| 
 | ||||
| /** | ||||
|  *      queuecommand - queue scsi command, invoke 'done' on completion | ||||
|  *      queuecommand - queue scsi command, invoke scp->scsi_done on completion | ||||
|  *      @shost: pointer to the scsi host object | ||||
|  *      @scp: pointer to scsi command object | ||||
|  *      @done: function pointer to be invoked on completion | ||||
|  * | ||||
|  *      Returns 0 on success. | ||||
|  * | ||||
| @ -1074,42 +1074,45 @@ Details: | ||||
|  * | ||||
|  *      Other types of errors that are detected immediately may be | ||||
|  *      flagged by setting scp->result to an appropriate value, | ||||
|  *      invoking the 'done' callback, and then returning 0 from this | ||||
|  *      function. If the command is not performed immediately (and the | ||||
|  *      LLD is starting (or will start) the given command) then this | ||||
|  *      function should place 0 in scp->result and return 0. | ||||
|  *      invoking the scp->scsi_done callback, and then returning 0 | ||||
|  *      from this function. If the command is not performed | ||||
|  *      immediately (and the LLD is starting (or will start) the given | ||||
|  *      command) then this function should place 0 in scp->result and | ||||
|  *      return 0. | ||||
|  * | ||||
|  *      Command ownership.  If the driver returns zero, it owns the | ||||
|  *      command and must take responsibility for ensuring the 'done' | ||||
|  *      callback is executed.  Note: the driver may call done before | ||||
|  *      returning zero, but after it has called done, it may not | ||||
|  *      return any value other than zero.  If the driver makes a | ||||
|  *      non-zero return, it must not execute the command's done | ||||
|  *      callback at any time. | ||||
|  *      command and must take responsibility for ensuring the | ||||
|  *      scp->scsi_done callback is executed.  Note: the driver may | ||||
|  *      call scp->scsi_done before returning zero, but after it has | ||||
|  *      called scp->scsi_done, it may not return any value other than | ||||
|  *      zero.  If the driver makes a non-zero return, it must not | ||||
|  *      execute the command's scsi_done callback at any time. | ||||
|  * | ||||
|  *      Locks: struct Scsi_Host::host_lock held on entry (with "irqsave") | ||||
|  *             and is expected to be held on return. | ||||
|  *      Locks: up to and including 2.6.36, struct Scsi_Host::host_lock | ||||
|  *             held on entry (with "irqsave") and is expected to be | ||||
|  *             held on return. From 2.6.37 onwards, queuecommand is | ||||
|  *             called without any locks held. | ||||
|  * | ||||
|  *      Calling context: in interrupt (soft irq) or process context | ||||
|  * | ||||
|  *      Notes: This function should be relatively fast. Normally it will | ||||
|  *      not wait for IO to complete. Hence the 'done' callback is invoked  | ||||
|  *      (often directly from an interrupt service routine) some time after | ||||
|  *      this function has returned. In some cases (e.g. pseudo adapter  | ||||
|  *      drivers that manufacture the response to a SCSI INQUIRY) | ||||
|  *      the 'done' callback may be invoked before this function returns. | ||||
|  *      If the 'done' callback is not invoked within a certain period | ||||
|  *      the SCSI mid level will commence error processing. | ||||
|  *      If a status of CHECK CONDITION is placed in "result" when the | ||||
|  *      'done' callback is invoked, then the LLD driver should  | ||||
|  *      perform autosense and fill in the struct scsi_cmnd::sense_buffer | ||||
|  *      Notes: This function should be relatively fast. Normally it | ||||
|  *      will not wait for IO to complete. Hence the scp->scsi_done | ||||
|  *      callback is invoked (often directly from an interrupt service | ||||
|  *      routine) some time after this function has returned. In some | ||||
|  *      cases (e.g. pseudo adapter drivers that manufacture the | ||||
|  *      response to a SCSI INQUIRY) the scp->scsi_done callback may be | ||||
|  *      invoked before this function returns.  If the scp->scsi_done | ||||
|  *      callback is not invoked within a certain period the SCSI mid | ||||
|  *      level will commence error processing.  If a status of CHECK | ||||
|  *      CONDITION is placed in "result" when the scp->scsi_done | ||||
|  *      callback is invoked, then the LLD driver should perform | ||||
|  *      autosense and fill in the struct scsi_cmnd::sense_buffer | ||||
|  *      array. The scsi_cmnd::sense_buffer array is zeroed prior to | ||||
|  *      the mid level queuing a command to an LLD. | ||||
|  * | ||||
|  *      Defined in: LLD | ||||
|  **/ | ||||
|     int queuecommand(struct scsi_cmnd * scp,  | ||||
|                      void (*done)(struct scsi_cmnd *)) | ||||
|     int queuecommand(struct Scsi_Host *shost, struct scsi_cmnd * scp) | ||||
| 
 | ||||
| 
 | ||||
| /** | ||||
|  | ||||
| @ -373,9 +373,18 @@ EVENT_PROCESS: | ||||
| 				print "         $regex_lru_isolate/o\n"; | ||||
| 				next; | ||||
| 			} | ||||
| 			my $isolate_mode = $1; | ||||
| 			my $nr_scanned = $4; | ||||
| 			my $nr_contig_dirty = $7; | ||||
| 			$perprocesspid{$process_pid}->{HIGH_NR_SCANNED} += $nr_scanned; | ||||
| 
 | ||||
| 			# To closer match vmstat scanning statistics, only count isolate_both | ||||
| 			# and isolate_inactive as scanning. isolate_active is rotation | ||||
| 			# isolate_inactive == 0 | ||||
| 			# isolate_active   == 1 | ||||
| 			# isolate_both     == 2 | ||||
| 			if ($isolate_mode != 1) { | ||||
| 				$perprocesspid{$process_pid}->{HIGH_NR_SCANNED} += $nr_scanned; | ||||
| 			} | ||||
| 			$perprocesspid{$process_pid}->{HIGH_NR_CONTIG_DIRTY} += $nr_contig_dirty; | ||||
| 		} elsif ($tracepoint eq "mm_vmscan_lru_shrink_inactive") { | ||||
| 			$details = $5; | ||||
|  | ||||
							
								
								
									
										27
									
								
								MAINTAINERS
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								MAINTAINERS
									
									
									
									
									
								
							| @ -405,7 +405,7 @@ S:	Supported | ||||
| F:	drivers/usb/gadget/amd5536udc.* | ||||
| 
 | ||||
| AMD GEODE PROCESSOR/CHIPSET SUPPORT | ||||
| P:	Jordan Crouse | ||||
| P:	Andres Salomon <dilinger@queued.net> | ||||
| L:	linux-geode@lists.infradead.org (moderated for non-subscribers) | ||||
| W:	http://www.amd.com/us-en/ConnectivitySolutions/TechnicalResources/0,,50_2334_2452_11363,00.html | ||||
| S:	Supported | ||||
| @ -559,14 +559,14 @@ W:	http://maxim.org.za/at91_26.html | ||||
| S:	Maintained | ||||
| 
 | ||||
| ARM/BCMRING ARM ARCHITECTURE | ||||
| M:	Leo Chen <leochen@broadcom.com> | ||||
| M:	Jiandong Zheng <jdzheng@broadcom.com> | ||||
| M:	Scott Branden <sbranden@broadcom.com> | ||||
| L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) | ||||
| S:	Maintained | ||||
| F:	arch/arm/mach-bcmring | ||||
| 
 | ||||
| ARM/BCMRING MTD NAND DRIVER | ||||
| M:	Leo Chen <leochen@broadcom.com> | ||||
| M:	Jiandong Zheng <jdzheng@broadcom.com> | ||||
| M:	Scott Branden <sbranden@broadcom.com> | ||||
| L:	linux-mtd@lists.infradead.org | ||||
| S:	Maintained | ||||
| @ -815,7 +815,7 @@ F:	drivers/mmc/host/msm_sdcc.c | ||||
| F:	drivers/mmc/host/msm_sdcc.h | ||||
| F:	drivers/serial/msm_serial.h | ||||
| F:	drivers/serial/msm_serial.c | ||||
| T:	git git://codeaurora.org/quic/kernel/dwalker/linux-msm.git | ||||
| T:	git git://codeaurora.org/quic/kernel/davidb/linux-msm.git | ||||
| S:	Maintained | ||||
| 
 | ||||
| ARM/TOSA MACHINE SUPPORT | ||||
| @ -2060,7 +2060,7 @@ F:	Documentation/blockdev/drbd/ | ||||
| 
 | ||||
| DRIVER CORE, KOBJECTS, DEBUGFS AND SYSFS | ||||
| M:	Greg Kroah-Hartman <gregkh@suse.de> | ||||
| T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/ | ||||
| T:	git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6.git | ||||
| S:	Supported | ||||
| F:	Documentation/kobject.txt | ||||
| F:	drivers/base/ | ||||
| @ -2080,7 +2080,7 @@ F:	include/drm/ | ||||
| 
 | ||||
| INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets) | ||||
| M:	Chris Wilson <chris@chris-wilson.co.uk> | ||||
| L:	intel-gfx@lists.freedesktop.org | ||||
| L:	intel-gfx@lists.freedesktop.org (subscribers-only) | ||||
| L:	dri-devel@lists.freedesktop.org | ||||
| T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel.git | ||||
| S:	Supported | ||||
| @ -4064,9 +4064,8 @@ F:	drivers/scsi/NCR_D700.* | ||||
| 
 | ||||
| NETEFFECT IWARP RNIC DRIVER (IW_NES) | ||||
| M:	Faisal Latif <faisal.latif@intel.com> | ||||
| M:	Chien Tung <chien.tin.tung@intel.com> | ||||
| L:	linux-rdma@vger.kernel.org | ||||
| W:	http://www.neteffect.com | ||||
| W:	http://www.intel.com/Products/Server/Adapters/Server-Cluster/Server-Cluster-overview.htm | ||||
| S:	Supported | ||||
| F:	drivers/infiniband/hw/nes/ | ||||
| 
 | ||||
| @ -4591,7 +4590,7 @@ F:	drivers/pcmcia/ | ||||
| F:	include/pcmcia/ | ||||
| 
 | ||||
| PCNET32 NETWORK DRIVER | ||||
| M:	Don Fry <pcnet32@verizon.net> | ||||
| M:	Don Fry <pcnet32@frontier.com> | ||||
| L:	netdev@vger.kernel.org | ||||
| S:	Maintained | ||||
| F:	drivers/net/pcnet32.c | ||||
| @ -5933,7 +5932,6 @@ F:	include/linux/tty.h | ||||
| 
 | ||||
| TULIP NETWORK DRIVERS | ||||
| M:	Grant Grundler <grundler@parisc-linux.org> | ||||
| M:	Kyle McMartin <kyle@mcmartin.ca> | ||||
| L:	netdev@vger.kernel.org | ||||
| S:	Maintained | ||||
| F:	drivers/net/tulip/ | ||||
| @ -6585,6 +6583,15 @@ F:	include/linux/mfd/wm8400* | ||||
| F:	include/sound/wm????.h | ||||
| F:	sound/soc/codecs/wm* | ||||
| 
 | ||||
| WORKQUEUE | ||||
| M:	Tejun Heo <tj@kernel.org> | ||||
| L:	linux-kernel@vger.kernel.org | ||||
| T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git | ||||
| S:	Maintained | ||||
| F:	include/linux/workqueue.h | ||||
| F:	kernel/workqueue.c | ||||
| F:	Documentation/workqueue.txt | ||||
| 
 | ||||
| X.25 NETWORK LAYER | ||||
| M:	Andrew Hendry <andrew.hendry@gmail.com> | ||||
| L:	linux-x25@vger.kernel.org | ||||
|  | ||||
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							| @ -1,7 +1,7 @@ | ||||
| VERSION = 2 | ||||
| PATCHLEVEL = 6 | ||||
| SUBLEVEL = 37 | ||||
| EXTRAVERSION = -rc3 | ||||
| EXTRAVERSION = -rc8 | ||||
| NAME = Flesh-Eating Bats with Fangs | ||||
| 
 | ||||
| # *DOCUMENTATION*
 | ||||
|  | ||||
| @ -9,7 +9,7 @@ config ARM | ||||
| 	select GENERIC_ATOMIC64 if (!CPU_32v6K || !AEABI) | ||||
| 	select HAVE_OPROFILE if (HAVE_PERF_EVENTS) | ||||
| 	select HAVE_ARCH_KGDB | ||||
| 	select HAVE_KPROBES if (!XIP_KERNEL) | ||||
| 	select HAVE_KPROBES if (!XIP_KERNEL && !THUMB2_KERNEL) | ||||
| 	select HAVE_KRETPROBES if (HAVE_KPROBES) | ||||
| 	select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) | ||||
| 	select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL) | ||||
| @ -1311,7 +1311,7 @@ config HZ | ||||
| 
 | ||||
| config THUMB2_KERNEL | ||||
| 	bool "Compile the kernel in Thumb-2 mode" | ||||
| 	depends on CPU_V7 && EXPERIMENTAL | ||||
| 	depends on CPU_V7 && !CPU_V6 && EXPERIMENTAL | ||||
| 	select AEABI | ||||
| 	select ARM_ASM_UNIFIED | ||||
| 	help | ||||
| @ -1759,7 +1759,7 @@ comment "At least one emulation must be selected" | ||||
| 
 | ||||
| config FPE_NWFPE | ||||
| 	bool "NWFPE math emulation" | ||||
| 	depends on !AEABI || OABI_COMPAT | ||||
| 	depends on (!AEABI || OABI_COMPAT) && !THUMB2_KERNEL | ||||
| 	---help--- | ||||
| 	  Say Y to include the NWFPE floating point emulator in the kernel. | ||||
| 	  This is necessary to run most binaries. Linux does not currently | ||||
|  | ||||
| @ -70,12 +70,7 @@ else | ||||
| $(obj)/uImage: LOADADDR=$(ZRELADDR) | ||||
| endif | ||||
| 
 | ||||
| ifeq ($(CONFIG_THUMB2_KERNEL),y) | ||||
| # Set bit 0 to 1 so that "mov pc, rx" switches to Thumb-2 mode
 | ||||
| $(obj)/uImage: STARTADDR=$(shell echo $(LOADADDR) | sed -e "s/.$$/1/") | ||||
| else | ||||
| $(obj)/uImage: STARTADDR=$(LOADADDR) | ||||
| endif | ||||
| 
 | ||||
| $(obj)/uImage:	$(obj)/zImage FORCE | ||||
| 	$(call if_changed,uimage) | ||||
|  | ||||
| @ -73,6 +73,8 @@ move:		ldmia	r4!, {r7 - r10}		@ move 32-bytes at a time | ||||
| 
 | ||||
| 		.size	_start, . - _start | ||||
| 
 | ||||
| 		.align | ||||
| 
 | ||||
| 		.type	data,#object | ||||
| data:		.word	initrd_start		@ source initrd address | ||||
| 		.word	initrd_phys		@ destination initrd address
 | ||||
|  | ||||
| @ -125,9 +125,13 @@ wait:		mrc	p14, 0, pc, c0, c1, 0 | ||||
|  * sort out different calling conventions | ||||
|  */ | ||||
| 		.align | ||||
| 		.arm				@ Always enter in ARM state
 | ||||
| start: | ||||
| 		.type	start,#function | ||||
| 		.rept	8
 | ||||
|  THUMB(		adr	r12, BSYM(1f)	) | ||||
|  THUMB(		bx	r12		) | ||||
|  THUMB(		.rept	6		) | ||||
|  ARM(		.rept	8		) | ||||
| 		mov	r0, r0 | ||||
| 		.endr | ||||
| 
 | ||||
| @ -135,6 +139,7 @@ start: | ||||
| 		.word	0x016f2818		@ Magic numbers to help the loader
 | ||||
| 		.word	start			@ absolute load/run zImage address
 | ||||
| 		.word	_edata			@ zImage end address
 | ||||
|  THUMB(		.thumb			) | ||||
| 1:		mov	r7, r1			@ save architecture ID
 | ||||
| 		mov	r8, r2			@ save atags pointer
 | ||||
| 
 | ||||
| @ -174,7 +179,8 @@ not_angel: | ||||
| 		ldr	sp, [r0, #28] | ||||
| #ifdef CONFIG_AUTO_ZRELADDR | ||||
| 		@ determine final kernel image address
 | ||||
| 		and	r4, pc, #0xf8000000 | ||||
| 		mov	r4, pc | ||||
| 		and	r4, r4, #0xf8000000 | ||||
| 		add	r4, r4, #TEXT_OFFSET | ||||
| #else | ||||
| 		ldr	r4, =zreladdr | ||||
| @ -445,7 +451,8 @@ __setup_mmu:	sub	r3, r4, #16384		@ Page directory size | ||||
|  */ | ||||
| 		mov	r1, #0x1e | ||||
| 		orr	r1, r1, #3 << 10 | ||||
| 		mov	r2, pc, lsr #20 | ||||
| 		mov	r2, pc | ||||
| 		mov	r2, r2, lsr #20 | ||||
| 		orr	r1, r1, r2, lsl #20 | ||||
| 		add	r0, r3, r2, lsl #2 | ||||
| 		str	r1, [r0], #4 | ||||
|  | ||||
| @ -146,9 +146,15 @@ static int gic_set_cpu(unsigned int irq, const struct cpumask *mask_val) | ||||
| 	unsigned int shift = (irq % 4) * 8; | ||||
| 	unsigned int cpu = cpumask_first(mask_val); | ||||
| 	u32 val; | ||||
| 	struct irq_desc *desc; | ||||
| 
 | ||||
| 	spin_lock(&irq_controller_lock); | ||||
| 	irq_desc[irq].node = cpu; | ||||
| 	desc = irq_to_desc(irq); | ||||
| 	if (desc == NULL) { | ||||
| 		spin_unlock(&irq_controller_lock); | ||||
| 		return -EINVAL; | ||||
| 	} | ||||
| 	desc->node = cpu; | ||||
| 	val = readl(reg) & ~(0xff << shift); | ||||
| 	val |= 1 << (cpu + shift); | ||||
| 	writel(val, reg); | ||||
| @ -210,7 +216,7 @@ void __init gic_cascade_irq(unsigned int gic_nr, unsigned int irq) | ||||
| void __init gic_dist_init(unsigned int gic_nr, void __iomem *base, | ||||
| 			  unsigned int irq_start) | ||||
| { | ||||
| 	unsigned int max_irq, i; | ||||
| 	unsigned int gic_irqs, irq_limit, i; | ||||
| 	u32 cpumask = 1 << smp_processor_id(); | ||||
| 
 | ||||
| 	if (gic_nr >= MAX_GIC_NR) | ||||
| @ -226,47 +232,49 @@ void __init gic_dist_init(unsigned int gic_nr, void __iomem *base, | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Find out how many interrupts are supported. | ||||
| 	 */ | ||||
| 	max_irq = readl(base + GIC_DIST_CTR) & 0x1f; | ||||
| 	max_irq = (max_irq + 1) * 32; | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * The GIC only supports up to 1020 interrupt sources. | ||||
| 	 * Limit this to either the architected maximum, or the | ||||
| 	 * platform maximum. | ||||
| 	 */ | ||||
| 	if (max_irq > max(1020, NR_IRQS)) | ||||
| 		max_irq = max(1020, NR_IRQS); | ||||
| 	gic_irqs = readl(base + GIC_DIST_CTR) & 0x1f; | ||||
| 	gic_irqs = (gic_irqs + 1) * 32; | ||||
| 	if (gic_irqs > 1020) | ||||
| 		gic_irqs = 1020; | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Set all global interrupts to be level triggered, active low. | ||||
| 	 */ | ||||
| 	for (i = 32; i < max_irq; i += 16) | ||||
| 	for (i = 32; i < gic_irqs; i += 16) | ||||
| 		writel(0, base + GIC_DIST_CONFIG + i * 4 / 16); | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Set all global interrupts to this CPU only. | ||||
| 	 */ | ||||
| 	for (i = 32; i < max_irq; i += 4) | ||||
| 	for (i = 32; i < gic_irqs; i += 4) | ||||
| 		writel(cpumask, base + GIC_DIST_TARGET + i * 4 / 4); | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Set priority on all global interrupts. | ||||
| 	 */ | ||||
| 	for (i = 32; i < max_irq; i += 4) | ||||
| 	for (i = 32; i < gic_irqs; i += 4) | ||||
| 		writel(0xa0a0a0a0, base + GIC_DIST_PRI + i * 4 / 4); | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Disable all interrupts.  Leave the PPI and SGIs alone | ||||
| 	 * as these enables are banked registers. | ||||
| 	 */ | ||||
| 	for (i = 32; i < max_irq; i += 32) | ||||
| 	for (i = 32; i < gic_irqs; i += 32) | ||||
| 		writel(0xffffffff, base + GIC_DIST_ENABLE_CLEAR + i * 4 / 32); | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Limit number of interrupts registered to the platform maximum | ||||
| 	 */ | ||||
| 	irq_limit = gic_data[gic_nr].irq_offset + gic_irqs; | ||||
| 	if (WARN_ON(irq_limit > NR_IRQS)) | ||||
| 		irq_limit = NR_IRQS; | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Setup the Linux IRQ subsystem. | ||||
| 	 */ | ||||
| 	for (i = irq_start; i < gic_data[gic_nr].irq_offset + max_irq; i++) { | ||||
| 	for (i = irq_start; i < irq_limit; i++) { | ||||
| 		set_irq_chip(i, &gic_chip); | ||||
| 		set_irq_chip_data(i, &gic_data[gic_nr]); | ||||
| 		set_irq_handler(i, handle_level_irq); | ||||
|  | ||||
| @ -352,3 +352,4 @@ struct pci_bus * __init it8152_pci_scan_bus(int nr, struct pci_sys_data *sys) | ||||
| 	return pci_scan_bus(nr, &it8152_ops, sys); | ||||
| } | ||||
| 
 | ||||
| EXPORT_SYMBOL(dma_set_coherent_mask); | ||||
|  | ||||
							
								
								
									
										341
									
								
								arch/arm/configs/at91rm9200_defconfig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										341
									
								
								arch/arm/configs/at91rm9200_defconfig
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,341 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_LOCALVERSION_AUTO is not set | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_IKCONFIG=y | ||||
| CONFIG_IKCONFIG_PROC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_SYSFS_DEPRECATED_V2=y | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_FORCE_LOAD=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| CONFIG_MODVERSIONS=y | ||||
| CONFIG_MODULE_SRCVERSION_ALL=y | ||||
| # CONFIG_BLK_DEV_BSG is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_ONEARM=y | ||||
| CONFIG_ARCH_AT91RM9200DK=y | ||||
| CONFIG_MACH_AT91RM9200EK=y | ||||
| CONFIG_MACH_CSB337=y | ||||
| CONFIG_MACH_CSB637=y | ||||
| CONFIG_MACH_CARMEVA=y | ||||
| CONFIG_MACH_ATEB9200=y | ||||
| CONFIG_MACH_KB9200=y | ||||
| CONFIG_MACH_PICOTUX2XX=y | ||||
| CONFIG_MACH_KAFA=y | ||||
| CONFIG_MACH_ECBAT91=y | ||||
| CONFIG_MACH_YL9200=y | ||||
| CONFIG_MACH_CPUAT91=y | ||||
| CONFIG_MACH_ECO920=y | ||||
| CONFIG_MTD_AT91_DATAFLASH_CARD=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| CONFIG_AT91_TIMER_HZ=100 | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PCCARD=y | ||||
| CONFIG_AT91_CF=y | ||||
| CONFIG_NO_HZ=y | ||||
| CONFIG_HIGH_RES_TIMERS=y | ||||
| CONFIG_PREEMPT=y | ||||
| CONFIG_AEABI=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_LEDS_CPU=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x10000000 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x20040000 | ||||
| CONFIG_KEXEC=y | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_BINFMT_MISC=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_XFRM_USER=m | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_MULTICAST=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_DHCP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| CONFIG_NET_IPIP=m | ||||
| CONFIG_NET_IPGRE=m | ||||
| CONFIG_INET_AH=m | ||||
| CONFIG_INET_ESP=m | ||||
| CONFIG_INET_IPCOMP=m | ||||
| CONFIG_INET_XFRM_MODE_TRANSPORT=m | ||||
| CONFIG_INET_XFRM_MODE_TUNNEL=m | ||||
| CONFIG_INET_XFRM_MODE_BEET=m | ||||
| CONFIG_IPV6_PRIVACY=y | ||||
| CONFIG_IPV6_ROUTER_PREF=y | ||||
| CONFIG_IPV6_ROUTE_INFO=y | ||||
| CONFIG_INET6_AH=m | ||||
| CONFIG_INET6_ESP=m | ||||
| CONFIG_INET6_IPCOMP=m | ||||
| CONFIG_IPV6_MIP6=m | ||||
| CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m | ||||
| CONFIG_IPV6_TUNNEL=m | ||||
| CONFIG_BRIDGE=m | ||||
| CONFIG_VLAN_8021Q=m | ||||
| CONFIG_BT=m | ||||
| CONFIG_BT_L2CAP=m | ||||
| CONFIG_BT_SCO=m | ||||
| CONFIG_BT_RFCOMM=m | ||||
| CONFIG_BT_RFCOMM_TTY=y | ||||
| CONFIG_BT_BNEP=m | ||||
| CONFIG_BT_BNEP_MC_FILTER=y | ||||
| CONFIG_BT_BNEP_PROTO_FILTER=y | ||||
| CONFIG_BT_HIDP=m | ||||
| CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_CONCAT=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_AFS_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_JEDECPROBE=y | ||||
| CONFIG_MTD_CFI_INTELEXT=y | ||||
| CONFIG_MTD_CFI_AMDSTD=y | ||||
| CONFIG_MTD_COMPLEX_MAPPINGS=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_MTD_PLATRAM=y | ||||
| CONFIG_MTD_DATAFLASH=y | ||||
| CONFIG_MTD_NAND=y | ||||
| CONFIG_MTD_NAND_ATMEL=y | ||||
| CONFIG_MTD_NAND_PLATFORM=y | ||||
| CONFIG_MTD_UBI=y | ||||
| CONFIG_MTD_UBI_GLUEBI=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_BLK_DEV_NBD=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| CONFIG_ATMEL_TCLIB=y | ||||
| CONFIG_EEPROM_LEGACY=m | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_BLK_DEV_SD=y | ||||
| CONFIG_BLK_DEV_SR=m | ||||
| CONFIG_BLK_DEV_SR_VENDOR=y | ||||
| CONFIG_CHR_DEV_SG=m | ||||
| CONFIG_SCSI_MULTI_LUN=y | ||||
| # CONFIG_SCSI_LOWLEVEL is not set | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_TUN=m | ||||
| CONFIG_PHYLIB=y | ||||
| CONFIG_DAVICOM_PHY=y | ||||
| CONFIG_SMSC_PHY=y | ||||
| CONFIG_MICREL_PHY=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_NETDEV_1000 is not set | ||||
| # CONFIG_NETDEV_10000 is not set | ||||
| CONFIG_USB_CATC=m | ||||
| CONFIG_USB_KAWETH=m | ||||
| CONFIG_USB_PEGASUS=m | ||||
| CONFIG_USB_RTL8150=m | ||||
| CONFIG_USB_USBNET=m | ||||
| CONFIG_USB_NET_DM9601=m | ||||
| CONFIG_USB_NET_GL620A=m | ||||
| CONFIG_USB_NET_PLUSB=m | ||||
| CONFIG_USB_NET_RNDIS_HOST=m | ||||
| CONFIG_USB_ALI_M5632=y | ||||
| CONFIG_USB_AN2720=y | ||||
| CONFIG_USB_EPSON2888=y | ||||
| CONFIG_PPP=y | ||||
| CONFIG_PPP_MULTILINK=y | ||||
| CONFIG_PPP_FILTER=y | ||||
| CONFIG_PPP_ASYNC=y | ||||
| CONFIG_PPP_DEFLATE=y | ||||
| CONFIG_PPP_BSDCOMP=y | ||||
| CONFIG_PPP_MPPE=m | ||||
| CONFIG_PPPOE=m | ||||
| CONFIG_SLIP=m | ||||
| CONFIG_SLIP_COMPRESSED=y | ||||
| CONFIG_SLIP_SMART=y | ||||
| CONFIG_SLIP_MODE_SLIP6=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| CONFIG_INPUT_MOUSEDEV_SCREEN_X=640 | ||||
| CONFIG_INPUT_MOUSEDEV_SCREEN_Y=480 | ||||
| CONFIG_INPUT_EVDEV=y | ||||
| CONFIG_KEYBOARD_GPIO=y | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| CONFIG_INPUT_TOUCHSCREEN=y | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_LEGACY_PTY_COUNT=32 | ||||
| CONFIG_HW_RANDOM=y | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_I2C_GPIO=y | ||||
| CONFIG_SPI=y | ||||
| CONFIG_SPI_ATMEL=y | ||||
| CONFIG_SPI_BITBANG=y | ||||
| CONFIG_GPIO_SYSFS=y | ||||
| CONFIG_HWMON=m | ||||
| CONFIG_SENSORS_ADM1021=m | ||||
| CONFIG_SENSORS_ADM1025=m | ||||
| CONFIG_SENSORS_ADM1026=m | ||||
| CONFIG_SENSORS_ADM1029=m | ||||
| CONFIG_SENSORS_ADM1031=m | ||||
| CONFIG_SENSORS_ADM9240=m | ||||
| CONFIG_SENSORS_DS1621=m | ||||
| CONFIG_SENSORS_GL518SM=m | ||||
| CONFIG_SENSORS_GL520SM=m | ||||
| CONFIG_SENSORS_IT87=m | ||||
| CONFIG_SENSORS_LM63=m | ||||
| CONFIG_SENSORS_LM73=m | ||||
| CONFIG_SENSORS_LM75=m | ||||
| CONFIG_SENSORS_LM77=m | ||||
| CONFIG_SENSORS_LM78=m | ||||
| CONFIG_SENSORS_LM80=m | ||||
| CONFIG_SENSORS_LM83=m | ||||
| CONFIG_SENSORS_LM85=m | ||||
| CONFIG_SENSORS_LM87=m | ||||
| CONFIG_SENSORS_LM90=m | ||||
| CONFIG_SENSORS_LM92=m | ||||
| CONFIG_SENSORS_MAX1619=m | ||||
| CONFIG_SENSORS_PCF8591=m | ||||
| CONFIG_SENSORS_SMSC47B397=m | ||||
| CONFIG_SENSORS_W83781D=m | ||||
| CONFIG_SENSORS_W83791D=m | ||||
| CONFIG_SENSORS_W83792D=m | ||||
| CONFIG_SENSORS_W83793=m | ||||
| CONFIG_SENSORS_W83L785TS=m | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| CONFIG_FB=y | ||||
| CONFIG_FB_MODE_HELPERS=y | ||||
| CONFIG_FB_TILEBLITTING=y | ||||
| CONFIG_FB_S1D13XXX=y | ||||
| CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||||
| CONFIG_LCD_CLASS_DEVICE=y | ||||
| CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||||
| # CONFIG_BACKLIGHT_GENERIC is not set | ||||
| CONFIG_DISPLAY_SUPPORT=y | ||||
| CONFIG_FRAMEBUFFER_CONSOLE=y | ||||
| CONFIG_FONTS=y | ||||
| CONFIG_FONT_MINI_4x6=y | ||||
| CONFIG_LOGO=y | ||||
| # CONFIG_LOGO_LINUX_MONO is not set | ||||
| # CONFIG_LOGO_LINUX_VGA16 is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| # CONFIG_USB_DEVICE_CLASS is not set | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_ACM=m | ||||
| CONFIG_USB_PRINTER=m | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_SERIAL=y | ||||
| CONFIG_USB_SERIAL_CONSOLE=y | ||||
| CONFIG_USB_SERIAL_GENERIC=y | ||||
| CONFIG_USB_SERIAL_FTDI_SIO=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_MPR=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28X=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA18X=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19W=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA49W=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y | ||||
| CONFIG_USB_SERIAL_MCT_U232=y | ||||
| CONFIG_USB_SERIAL_PL2303=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_USB_ETH=m | ||||
| CONFIG_USB_MASS_STORAGE=m | ||||
| CONFIG_MMC=y | ||||
| CONFIG_MMC_AT91=y | ||||
| CONFIG_NEW_LEDS=y | ||||
| CONFIG_LEDS_CLASS=y | ||||
| CONFIG_LEDS_GPIO=y | ||||
| CONFIG_LEDS_TRIGGERS=y | ||||
| CONFIG_LEDS_TRIGGER_TIMER=y | ||||
| CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||||
| CONFIG_LEDS_TRIGGER_GPIO=y | ||||
| CONFIG_LEDS_TRIGGER_DEFAULT_ON=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| # CONFIG_RTC_HCTOSYS is not set | ||||
| CONFIG_RTC_DRV_DS1307=y | ||||
| CONFIG_RTC_DRV_PCF8563=y | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_EXT2_FS_XATTR=y | ||||
| CONFIG_EXT3_FS=y | ||||
| # CONFIG_EXT3_FS_XATTR is not set | ||||
| CONFIG_REISERFS_FS=y | ||||
| CONFIG_AUTOFS4_FS=y | ||||
| CONFIG_ISO9660_FS=y | ||||
| CONFIG_JOLIET=y | ||||
| CONFIG_ZISOFS=y | ||||
| CONFIG_UDF_FS=y | ||||
| CONFIG_MSDOS_FS=y | ||||
| CONFIG_VFAT_FS=y | ||||
| CONFIG_NTFS_FS=m | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CONFIGFS_FS=y | ||||
| CONFIG_JFFS2_FS=y | ||||
| CONFIG_JFFS2_SUMMARY=y | ||||
| CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||||
| CONFIG_JFFS2_LZO=y | ||||
| CONFIG_JFFS2_RUBIN=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_MINIX_FS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V3_ACL=y | ||||
| CONFIG_NFS_V4=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_NFSD=y | ||||
| CONFIG_SMB_FS=m | ||||
| CONFIG_CIFS=m | ||||
| CONFIG_PARTITION_ADVANCED=y | ||||
| CONFIG_MAC_PARTITION=y | ||||
| CONFIG_NLS_CODEPAGE_437=y | ||||
| CONFIG_NLS_CODEPAGE_737=m | ||||
| CONFIG_NLS_CODEPAGE_775=m | ||||
| CONFIG_NLS_CODEPAGE_850=m | ||||
| CONFIG_NLS_CODEPAGE_852=m | ||||
| CONFIG_NLS_CODEPAGE_855=m | ||||
| CONFIG_NLS_CODEPAGE_857=m | ||||
| CONFIG_NLS_CODEPAGE_860=m | ||||
| CONFIG_NLS_CODEPAGE_861=m | ||||
| CONFIG_NLS_CODEPAGE_862=m | ||||
| CONFIG_NLS_CODEPAGE_863=m | ||||
| CONFIG_NLS_CODEPAGE_864=m | ||||
| CONFIG_NLS_CODEPAGE_865=m | ||||
| CONFIG_NLS_CODEPAGE_866=m | ||||
| CONFIG_NLS_CODEPAGE_869=m | ||||
| CONFIG_NLS_CODEPAGE_936=m | ||||
| CONFIG_NLS_CODEPAGE_950=m | ||||
| CONFIG_NLS_CODEPAGE_932=m | ||||
| CONFIG_NLS_CODEPAGE_949=m | ||||
| CONFIG_NLS_CODEPAGE_874=m | ||||
| CONFIG_NLS_ISO8859_8=m | ||||
| CONFIG_NLS_CODEPAGE_1250=m | ||||
| CONFIG_NLS_CODEPAGE_1251=m | ||||
| CONFIG_NLS_ASCII=m | ||||
| CONFIG_NLS_ISO8859_1=y | ||||
| CONFIG_NLS_ISO8859_2=m | ||||
| CONFIG_NLS_ISO8859_3=m | ||||
| CONFIG_NLS_ISO8859_4=m | ||||
| CONFIG_NLS_ISO8859_5=m | ||||
| CONFIG_NLS_ISO8859_6=m | ||||
| CONFIG_NLS_ISO8859_7=m | ||||
| CONFIG_NLS_ISO8859_9=m | ||||
| CONFIG_NLS_ISO8859_13=m | ||||
| CONFIG_NLS_ISO8859_14=m | ||||
| CONFIG_NLS_ISO8859_15=m | ||||
| CONFIG_NLS_KOI8_R=m | ||||
| CONFIG_NLS_KOI8_U=m | ||||
| CONFIG_NLS_UTF8=y | ||||
| CONFIG_MAGIC_SYSRQ=y | ||||
| CONFIG_DEBUG_FS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||||
| # CONFIG_FTRACE is not set | ||||
| CONFIG_CRYPTO_PCBC=y | ||||
| CONFIG_CRYPTO_SHA1=y | ||||
| @ -1,72 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_ARCH_AT91RM9200DK=y | ||||
| CONFIG_MACH_ECO920=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PCCARD=y | ||||
| CONFIG_AT91_CF=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="mem=32M console=ttyS0,115200 initrd=0x20410000,3145728 root=/dev/ram0 rw" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_JEDECPROBE=y | ||||
| CONFIG_MTD_CFI_AMDSTD=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_I2C_GPIO=y | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| # CONFIG_USB_HID is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEBUG=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_MMC=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_DEBUG_LL=y | ||||
| @ -1,73 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_LOCALVERSION_AUTO is not set | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_AT91RM9200EK=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_LEDS_CPU=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="mem=32M console=ttyS0,115200 initrd=0x20410000,3145728 root=/dev/ram0 rw" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_JEDECPROBE=y | ||||
| CONFIG_MTD_CFI_AMDSTD=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_I2C_GPIO=y | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| CONFIG_FB=y | ||||
| CONFIG_FB_S1D13XXX=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| # CONFIG_USB_HID is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEBUG=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_MMC=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_DEBUG_LL=y | ||||
| @ -1,131 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_EMBEDDED=y | ||||
| CONFIG_SLAB=y | ||||
| CONFIG_PROFILING=y | ||||
| CONFIG_OPROFILE=m | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_ATEB9200=y | ||||
| CONFIG_PCCARD=m | ||||
| CONFIG_AT91_CF=m | ||||
| CONFIG_PREEMPT=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_PM=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_NET_KEY=y | ||||
| CONFIG_INET=y | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_BRIDGE=m | ||||
| CONFIG_VLAN_8021Q=m | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK_RO=y | ||||
| CONFIG_BLK_DEV_LOOP=m | ||||
| CONFIG_BLK_DEV_NBD=m | ||||
| CONFIG_SCSI=m | ||||
| CONFIG_BLK_DEV_SD=m | ||||
| CONFIG_BLK_DEV_SR=m | ||||
| CONFIG_BLK_DEV_SR_VENDOR=y | ||||
| CONFIG_CHR_DEV_SG=m | ||||
| CONFIG_SCSI_MULTI_LUN=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_DUMMY=m | ||||
| CONFIG_TUN=m | ||||
| CONFIG_PHYLIB=y | ||||
| CONFIG_DAVICOM_PHY=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| CONFIG_USB_USBNET=y | ||||
| CONFIG_USB_NET_GL620A=y | ||||
| CONFIG_USB_NET_PLUSB=y | ||||
| CONFIG_USB_NET_RNDIS_HOST=y | ||||
| CONFIG_USB_ALI_M5632=y | ||||
| CONFIG_USB_AN2720=y | ||||
| CONFIG_USB_EPSON2888=y | ||||
| CONFIG_PPP=m | ||||
| CONFIG_PPP_ASYNC=m | ||||
| CONFIG_PPP_SYNC_TTY=m | ||||
| CONFIG_PPP_DEFLATE=m | ||||
| CONFIG_PPP_BSDCOMP=m | ||||
| CONFIG_PPPOE=m | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_I2C=m | ||||
| CONFIG_I2C_CHARDEV=m | ||||
| CONFIG_I2C_GPIO=m | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| CONFIG_SOUND=y | ||||
| CONFIG_USB_HID=m | ||||
| CONFIG_HID_PID=y | ||||
| CONFIG_USB_HIDDEV=y | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_ACM=m | ||||
| CONFIG_USB_PRINTER=m | ||||
| CONFIG_USB_STORAGE=m | ||||
| CONFIG_USB_STORAGE_DATAFAB=m | ||||
| CONFIG_USB_STORAGE_FREECOM=m | ||||
| CONFIG_USB_STORAGE_USBAT=m | ||||
| CONFIG_USB_STORAGE_SDDR09=m | ||||
| CONFIG_USB_STORAGE_SDDR55=m | ||||
| CONFIG_USB_STORAGE_JUMPSHOT=m | ||||
| CONFIG_USB_SERIAL=m | ||||
| CONFIG_USB_SERIAL_GENERIC=y | ||||
| CONFIG_USB_SERIAL_FTDI_SIO=m | ||||
| CONFIG_USB_SERIAL_PL2303=m | ||||
| CONFIG_USB_GADGET=m | ||||
| CONFIG_USB_ETH=m | ||||
| CONFIG_USB_GADGETFS=m | ||||
| CONFIG_USB_FILE_STORAGE=m | ||||
| CONFIG_USB_G_SERIAL=m | ||||
| CONFIG_MMC=m | ||||
| CONFIG_MMC_DEBUG=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| # CONFIG_RTC_HCTOSYS is not set | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=m | ||||
| CONFIG_EXT3_FS=m | ||||
| CONFIG_REISERFS_FS=m | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_ISO9660_FS=m | ||||
| CONFIG_JOLIET=y | ||||
| CONFIG_ZISOFS=y | ||||
| CONFIG_UDF_FS=m | ||||
| CONFIG_MSDOS_FS=m | ||||
| CONFIG_VFAT_FS=m | ||||
| CONFIG_NTFS_FS=m | ||||
| CONFIG_NTFS_RW=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_NFS_FS=m | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V3_ACL=y | ||||
| CONFIG_NFS_V4=y | ||||
| CONFIG_NFSD=m | ||||
| CONFIG_NFSD_V4=y | ||||
| CONFIG_PARTITION_ADVANCED=y | ||||
| CONFIG_MAC_PARTITION=y | ||||
| CONFIG_BSD_DISKLABEL=y | ||||
| CONFIG_MINIX_SUBPARTITION=y | ||||
| CONFIG_SOLARIS_X86_PARTITION=y | ||||
| CONFIG_UNIXWARE_DISKLABEL=y | ||||
| CONFIG_NLS_CODEPAGE_932=m | ||||
| CONFIG_NLS_ASCII=m | ||||
| CONFIG_NLS_ISO8859_15=m | ||||
| CONFIG_NLS_UTF8=m | ||||
| CONFIG_CRYPTO_MD5=y | ||||
| CONFIG_CRYPTO_MICHAEL_MIC=m | ||||
| CONFIG_CRYPTO_ARC4=m | ||||
| CONFIG_CRC16=m | ||||
| CONFIG_LIBCRC32C=m | ||||
| @ -1,47 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_EMBEDDED=y | ||||
| # CONFIG_HOTPLUG is not set | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| CONFIG_MODULE_FORCE_UNLOAD=y | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_CARMEVA=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_MULTICAST=y | ||||
| CONFIG_IP_PNP=y | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_MOUSEDEV is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| CONFIG_SERIO=m | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| CONFIG_MMC=m | ||||
| CONFIG_MMC_DEBUG=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_EXT2_FS_XATTR=y | ||||
| # CONFIG_DNOTIFY is not set | ||||
| CONFIG_JFFS2_FS=y | ||||
| CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V4=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_NFSD=y | ||||
| @ -1,112 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_LOCALVERSION_AUTO is not set | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_SYSFS_DEPRECATED_V2=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_BLK_DEV_BSG is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_CPUAT91=y | ||||
| CONFIG_AT91_TIMER_HZ=100 | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PREEMPT=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| # 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_IPV6 is not set | ||||
| CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_CFI_INTELEXT=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_MTD_PLATRAM=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_BLK_DEV_NBD=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| # CONFIG_MISC_DEVICES is not set | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_BLK_DEV_SD=y | ||||
| CONFIG_SCSI_MULTI_LUN=y | ||||
| # CONFIG_SCSI_LOWLEVEL is not set | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_PHYLIB=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_NETDEV_1000 is not set | ||||
| # CONFIG_NETDEV_10000 is not set | ||||
| CONFIG_PPP=y | ||||
| CONFIG_PPP_ASYNC=y | ||||
| CONFIG_PPP_DEFLATE=y | ||||
| CONFIG_PPP_BSDCOMP=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_LEGACY_PTY_COUNT=32 | ||||
| # CONFIG_HW_RANDOM is not set | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_I2C_GPIO=y | ||||
| CONFIG_GPIO_SYSFS=y | ||||
| # CONFIG_HWMON is not set | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| # CONFIG_HID_SUPPORT is not set | ||||
| CONFIG_USB=y | ||||
| # CONFIG_USB_DEVICE_CLASS is not set | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_USB_ETH=m | ||||
| CONFIG_MMC=y | ||||
| CONFIG_MMC_AT91=m | ||||
| CONFIG_NEW_LEDS=y | ||||
| CONFIG_LEDS_CLASS=y | ||||
| CONFIG_LEDS_GPIO=y | ||||
| CONFIG_LEDS_TRIGGERS=y | ||||
| CONFIG_LEDS_TRIGGER_TIMER=y | ||||
| CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||||
| CONFIG_LEDS_TRIGGER_GPIO=y | ||||
| CONFIG_LEDS_TRIGGER_DEFAULT_ON=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| # CONFIG_RTC_HCTOSYS is not set | ||||
| CONFIG_RTC_DRV_DS1307=y | ||||
| CONFIG_RTC_DRV_PCF8563=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_EXT3_FS=y | ||||
| # CONFIG_EXT3_FS_XATTR is not set | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_AUTOFS4_FS=y | ||||
| CONFIG_MSDOS_FS=y | ||||
| CONFIG_VFAT_FS=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_JFFS2_FS=y | ||||
| CONFIG_JFFS2_SUMMARY=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_MINIX_FS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_PARTITION_ADVANCED=y | ||||
| CONFIG_NLS_CODEPAGE_437=y | ||||
| CONFIG_NLS_ISO8859_1=y | ||||
| CONFIG_NLS_UTF8=y | ||||
| # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||||
| @ -1,104 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_BLK_DEV_BSG is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_CSB337=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PCCARD=y | ||||
| CONFIG_AT91_CF=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_LEDS_CPU=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="mem=32M console=ttyS0,38400 initrd=0x20410000,3145728 root=/dev/ram0 rw" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_DHCP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| # CONFIG_INET_LRO is not set | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_CFI_INTELEXT=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| CONFIG_ATMEL_SSC=y | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| # CONFIG_HW_RANDOM is not set | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_I2C_GPIO=y | ||||
| # CONFIG_HWMON is not set | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| # CONFIG_USB_HID is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEBUG=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_SERIAL=y | ||||
| CONFIG_USB_SERIAL_CONSOLE=y | ||||
| CONFIG_USB_SERIAL_GENERIC=y | ||||
| CONFIG_USB_SERIAL_FTDI_SIO=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_MPR=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28X=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA18X=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19W=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA49W=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y | ||||
| CONFIG_USB_SERIAL_MCT_U232=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_MMC=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| CONFIG_RTC_HCTOSYS_DEVICE="rtc1" | ||||
| # CONFIG_RTC_INTF_SYSFS is not set | ||||
| CONFIG_RTC_DRV_DS1307=y | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V4=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_DEBUG_LL=y | ||||
| @ -1,98 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_SYSFS_DEPRECATED_V2=y | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_BLK_DEV_BSG is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_CSB637=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PCCARD=y | ||||
| CONFIG_AT91_CF=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_LEDS_CPU=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="mem=32M console=ttyS0,38400 initrd=0x20410000,3145728 root=/dev/ram0 rw" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_DHCP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| # CONFIG_INET_LRO is not set | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_CFI_INTELEXT=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| # CONFIG_USB_HID is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEBUG=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_SERIAL=y | ||||
| CONFIG_USB_SERIAL_CONSOLE=y | ||||
| CONFIG_USB_SERIAL_GENERIC=y | ||||
| CONFIG_USB_SERIAL_FTDI_SIO=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_MPR=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28X=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA18X=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19W=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA49W=y | ||||
| CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y | ||||
| CONFIG_USB_SERIAL_MCT_U232=y | ||||
| CONFIG_NEW_LEDS=y | ||||
| CONFIG_LEDS_CLASS=y | ||||
| CONFIG_LEDS_GPIO=y | ||||
| CONFIG_LEDS_TRIGGERS=y | ||||
| CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V4=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_DEBUG_LL=y | ||||
| @ -1,99 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_IKCONFIG=y | ||||
| CONFIG_IKCONFIG_PROC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_SLAB=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_ECBAT91=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| CONFIG_PCCARD=y | ||||
| CONFIG_AT91_CF=y | ||||
| CONFIG_PREEMPT=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_LEDS_CPU=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="rootfstype=reiserfs root=/dev/mmcblk0p1 console=ttyS0,115200n8 rootdelay=1" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_DHCP=y | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_CFG80211=y | ||||
| CONFIG_MAC80211=y | ||||
| # CONFIG_STANDALONE is not set | ||||
| # CONFIG_PREVENT_FIRMWARE_BUILD is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_AFS_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_DATAFLASH=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_BLK_DEV_SD=y | ||||
| CONFIG_CHR_DEV_SG=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_NETDEV_1000 is not set | ||||
| # CONFIG_NETDEV_10000 is not set | ||||
| CONFIG_PPP=y | ||||
| CONFIG_PPP_MULTILINK=y | ||||
| CONFIG_PPP_FILTER=y | ||||
| CONFIG_PPP_ASYNC=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_HW_RANDOM=y | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_SPI=y | ||||
| CONFIG_SPI_BITBANG=y | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| # CONFIG_USB_HID is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| # CONFIG_USB_DEVICE_CLASS is not set | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_PRINTER=y | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_MMC=y | ||||
| CONFIG_MMC_DEBUG=y | ||||
| CONFIG_MMC_AT91=m | ||||
| CONFIG_NEW_LEDS=y | ||||
| CONFIG_LEDS_CLASS=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| # CONFIG_RTC_HCTOSYS is not set | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_EXT3_FS=y | ||||
| CONFIG_REISERFS_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CONFIGFS_FS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V3_ACL=y | ||||
| CONFIG_NFS_V4=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_PARTITION_ADVANCED=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_CRYPTO_PCBC=y | ||||
| CONFIG_CRYPTO_SHA1=y | ||||
| @ -1,61 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_LOCALVERSION_AUTO is not set | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_SLAB=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_KAFA=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PREEMPT=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_LEDS_CPU=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="mem=32M console=ttyS0,115200 initrd=0x20800000,10M root=/dev/ram0 rw" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_BINFMT_MISC=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| # CONFIG_INET_DIAG is not set | ||||
| # CONFIG_IPV6 is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK_RO=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_PHYLIB=y | ||||
| CONFIG_DAVICOM_PHY=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| CONFIG_LEGACY_PTY_COUNT=32 | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_I2C_GPIO=y | ||||
| # CONFIG_HWMON is not set | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| CONFIG_RTC_CLASS=y | ||||
| # CONFIG_RTC_HCTOSYS is not set | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT3_FS=y | ||||
| # CONFIG_EXT3_FS_XATTR is not set | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_NFS_FS=m | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_CRYPTO_MD5=y | ||||
| CONFIG_CRYPTO_DES=y | ||||
| @ -1,127 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_POSIX_MQUEUE=y | ||||
| CONFIG_BSD_PROCESS_ACCT=y | ||||
| CONFIG_AUDIT=y | ||||
| CONFIG_IKCONFIG=y | ||||
| CONFIG_IKCONFIG_PROC=y | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_KALLSYMS_EXTRA_PASS=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| CONFIG_MODVERSIONS=y | ||||
| CONFIG_MODULE_SRCVERSION_ALL=y | ||||
| # CONFIG_BLK_DEV_BSG is not set | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_KB9200=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| CONFIG_NO_HZ=y | ||||
| CONFIG_HIGH_RES_TIMERS=y | ||||
| CONFIG_PREEMPT=y | ||||
| CONFIG_AEABI=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x10000000 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x20040000 | ||||
| CONFIG_CMDLINE="noinitrd root=/dev/mtdblock0 rootfstype=jffs2 mem=64M" | ||||
| CONFIG_KEXEC=y | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_BINFMT_MISC=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_DHCP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| # 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_IPV6 is not set | ||||
| CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||||
| # CONFIG_FIRMWARE_IN_KERNEL is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_CONCAT=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_CFI_INTELEXT=y | ||||
| CONFIG_MTD_COMPLEX_MAPPINGS=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_MTD_NAND=y | ||||
| CONFIG_MTD_NAND_ATMEL=y | ||||
| CONFIG_MTD_UBI=y | ||||
| CONFIG_MTD_UBI_GLUEBI=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=16384 | ||||
| CONFIG_ATMEL_TCLIB=y | ||||
| CONFIG_ATMEL_SSC=y | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_BLK_DEV_SD=y | ||||
| CONFIG_CHR_DEV_SG=y | ||||
| CONFIG_SCSI_MULTI_LUN=y | ||||
| CONFIG_SCSI_CONSTANTS=y | ||||
| CONFIG_SCSI_LOGGING=y | ||||
| CONFIG_SCSI_SPI_ATTRS=m | ||||
| # CONFIG_SCSI_LOWLEVEL is not set | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_NETDEV_1000 is not set | ||||
| # CONFIG_NETDEV_10000 is not set | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| # CONFIG_LEGACY_PTYS is not set | ||||
| # CONFIG_HW_RANDOM is not set | ||||
| # CONFIG_HWMON is not set | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| CONFIG_FB=y | ||||
| CONFIG_FB_MODE_HELPERS=y | ||||
| CONFIG_FB_TILEBLITTING=y | ||||
| CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||||
| # CONFIG_LCD_CLASS_DEVICE is not set | ||||
| CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||||
| # CONFIG_BACKLIGHT_GENERIC is not set | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| CONFIG_FRAMEBUFFER_CONSOLE=y | ||||
| CONFIG_FONTS=y | ||||
| CONFIG_FONT_MINI_4x6=y | ||||
| # CONFIG_HID_SUPPORT is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_LIBUSUAL=y | ||||
| CONFIG_MMC=y | ||||
| CONFIG_MMC_AT91=m | ||||
| CONFIG_RTC_CLASS=y | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_EXT3_FS=y | ||||
| # CONFIG_DNOTIFY is not set | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_VFAT_FS=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CONFIGFS_FS=y | ||||
| CONFIG_JFFS2_FS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_NLS_CODEPAGE_437=y | ||||
| CONFIG_NLS_UTF8=y | ||||
| CONFIG_MAGIC_SYSRQ=y | ||||
| CONFIG_DEBUG_FS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| # CONFIG_SCHED_DEBUG is not set | ||||
| # CONFIG_DEBUG_PREEMPT is not set | ||||
| # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||||
| @ -1,80 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| CONFIG_EMBEDDED=y | ||||
| CONFIG_SLAB=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_ONEARM=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_PCCARD=y | ||||
| CONFIG_AT91_CF=y | ||||
| CONFIG_LEDS=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/nfs ip=bootp mem=64M" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| CONFIG_IPV6=y | ||||
| # CONFIG_INET6_XFRM_MODE_TRANSPORT is not set | ||||
| # CONFIG_INET6_XFRM_MODE_TUNNEL is not set | ||||
| # CONFIG_INET6_XFRM_MODE_BEET is not set | ||||
| # CONFIG_IPV6_SIT is not set | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_JEDECPROBE=y | ||||
| CONFIG_MTD_CFI_AMDSTD=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_BLK_DEV_NBD=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| # CONFIG_VT is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| # CONFIG_HW_RANDOM is not set | ||||
| CONFIG_I2C=y | ||||
| CONFIG_I2C_CHARDEV=y | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=y | ||||
| # CONFIG_USB_HID is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEBUG=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_MMC=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_NFS_FS=y | ||||
| CONFIG_NFS_V3=y | ||||
| CONFIG_NFS_V3_ACL=y | ||||
| CONFIG_ROOT_NFS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_DEBUG_LL=y | ||||
| @ -1,242 +0,0 @@ | ||||
| CONFIG_EXPERIMENTAL=y | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_IKCONFIG=m | ||||
| CONFIG_IKCONFIG_PROC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_EMBEDDED=y | ||||
| # CONFIG_KALLSYMS is not set | ||||
| CONFIG_SLAB=y | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_MACH_PICOTUX2XX=y | ||||
| CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||||
| CONFIG_AEABI=y | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_KEXEC=y | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_BINFMT_MISC=m | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=m | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_XFRM_USER=m | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_BOOTP=y | ||||
| CONFIG_NET_IPIP=m | ||||
| CONFIG_NET_IPGRE=m | ||||
| CONFIG_INET_AH=m | ||||
| CONFIG_INET_ESP=m | ||||
| CONFIG_INET_IPCOMP=m | ||||
| CONFIG_INET_XFRM_MODE_TRANSPORT=m | ||||
| CONFIG_INET_XFRM_MODE_TUNNEL=m | ||||
| CONFIG_INET_XFRM_MODE_BEET=m | ||||
| CONFIG_INET_DIAG=m | ||||
| CONFIG_IPV6_PRIVACY=y | ||||
| CONFIG_IPV6_ROUTER_PREF=y | ||||
| CONFIG_IPV6_ROUTE_INFO=y | ||||
| CONFIG_INET6_AH=m | ||||
| CONFIG_INET6_ESP=m | ||||
| CONFIG_INET6_IPCOMP=m | ||||
| CONFIG_IPV6_MIP6=m | ||||
| CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m | ||||
| CONFIG_IPV6_TUNNEL=m | ||||
| CONFIG_BRIDGE=m | ||||
| CONFIG_VLAN_8021Q=m | ||||
| CONFIG_BT=m | ||||
| CONFIG_BT_L2CAP=m | ||||
| CONFIG_BT_SCO=m | ||||
| CONFIG_BT_RFCOMM=m | ||||
| CONFIG_BT_RFCOMM_TTY=y | ||||
| CONFIG_BT_BNEP=m | ||||
| CONFIG_BT_BNEP_MC_FILTER=y | ||||
| CONFIG_BT_BNEP_PROTO_FILTER=y | ||||
| CONFIG_BT_HIDP=m | ||||
| CONFIG_FW_LOADER=m | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_CFI_AMDSTD=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_BLK_DEV_LOOP=m | ||||
| CONFIG_EEPROM_LEGACY=m | ||||
| CONFIG_SCSI=m | ||||
| CONFIG_BLK_DEV_SD=m | ||||
| CONFIG_BLK_DEV_SR=m | ||||
| CONFIG_BLK_DEV_SR_VENDOR=y | ||||
| CONFIG_CHR_DEV_SG=m | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_TUN=m | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| CONFIG_USB_CATC=m | ||||
| CONFIG_USB_KAWETH=m | ||||
| CONFIG_USB_PEGASUS=m | ||||
| CONFIG_USB_RTL8150=m | ||||
| CONFIG_USB_USBNET=m | ||||
| CONFIG_USB_NET_DM9601=m | ||||
| CONFIG_USB_NET_GL620A=m | ||||
| CONFIG_USB_NET_PLUSB=m | ||||
| CONFIG_USB_NET_MCS7830=m | ||||
| CONFIG_USB_NET_RNDIS_HOST=m | ||||
| CONFIG_USB_ALI_M5632=y | ||||
| CONFIG_USB_AN2720=y | ||||
| CONFIG_USB_EPSON2888=y | ||||
| CONFIG_USB_KC2190=y | ||||
| CONFIG_PPP=m | ||||
| CONFIG_PPP_FILTER=y | ||||
| CONFIG_PPP_ASYNC=m | ||||
| CONFIG_PPP_DEFLATE=m | ||||
| CONFIG_PPP_BSDCOMP=m | ||||
| CONFIG_PPP_MPPE=m | ||||
| CONFIG_PPPOE=m | ||||
| CONFIG_SLIP=m | ||||
| CONFIG_SLIP_COMPRESSED=y | ||||
| CONFIG_SLIP_SMART=y | ||||
| CONFIG_SLIP_MODE_SLIP6=y | ||||
| # CONFIG_INPUT_MOUSEDEV is not set | ||||
| # CONFIG_INPUT_KEYBOARD is not set | ||||
| # CONFIG_INPUT_MOUSE is not set | ||||
| # CONFIG_SERIO is not set | ||||
| # CONFIG_VT is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| # CONFIG_LEGACY_PTYS is not set | ||||
| CONFIG_I2C=m | ||||
| CONFIG_I2C_CHARDEV=m | ||||
| CONFIG_I2C_GPIO=m | ||||
| CONFIG_HWMON=m | ||||
| CONFIG_SENSORS_ADM1021=m | ||||
| CONFIG_SENSORS_ADM1025=m | ||||
| CONFIG_SENSORS_ADM1026=m | ||||
| CONFIG_SENSORS_ADM1029=m | ||||
| CONFIG_SENSORS_ADM1031=m | ||||
| CONFIG_SENSORS_ADM9240=m | ||||
| CONFIG_SENSORS_DS1621=m | ||||
| CONFIG_SENSORS_GL518SM=m | ||||
| CONFIG_SENSORS_GL520SM=m | ||||
| CONFIG_SENSORS_IT87=m | ||||
| CONFIG_SENSORS_LM63=m | ||||
| CONFIG_SENSORS_LM75=m | ||||
| CONFIG_SENSORS_LM77=m | ||||
| CONFIG_SENSORS_LM78=m | ||||
| CONFIG_SENSORS_LM80=m | ||||
| CONFIG_SENSORS_LM83=m | ||||
| CONFIG_SENSORS_LM85=m | ||||
| CONFIG_SENSORS_LM87=m | ||||
| CONFIG_SENSORS_LM90=m | ||||
| CONFIG_SENSORS_LM92=m | ||||
| CONFIG_SENSORS_MAX1619=m | ||||
| CONFIG_SENSORS_PCF8591=m | ||||
| CONFIG_SENSORS_SMSC47B397=m | ||||
| CONFIG_SENSORS_W83781D=m | ||||
| CONFIG_SENSORS_W83791D=m | ||||
| CONFIG_SENSORS_W83792D=m | ||||
| CONFIG_SENSORS_W83793=m | ||||
| CONFIG_SENSORS_W83L785TS=m | ||||
| CONFIG_WATCHDOG=y | ||||
| CONFIG_WATCHDOG_NOWAYOUT=y | ||||
| CONFIG_AT91RM9200_WATCHDOG=m | ||||
| CONFIG_HID=m | ||||
| CONFIG_USB=m | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| CONFIG_USB_OHCI_HCD=m | ||||
| CONFIG_USB_ACM=m | ||||
| CONFIG_USB_PRINTER=m | ||||
| CONFIG_USB_STORAGE=m | ||||
| CONFIG_USB_SERIAL=m | ||||
| CONFIG_USB_SERIAL_GENERIC=y | ||||
| CONFIG_USB_SERIAL_PL2303=m | ||||
| CONFIG_MMC=m | ||||
| CONFIG_MMC_AT91=m | ||||
| CONFIG_RTC_CLASS=m | ||||
| CONFIG_RTC_DRV_AT91RM9200=m | ||||
| CONFIG_EXT2_FS=m | ||||
| CONFIG_EXT3_FS=m | ||||
| # CONFIG_EXT3_FS_XATTR is not set | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_ISO9660_FS=m | ||||
| CONFIG_JOLIET=y | ||||
| CONFIG_UDF_FS=m | ||||
| CONFIG_MSDOS_FS=m | ||||
| CONFIG_VFAT_FS=m | ||||
| CONFIG_NTFS_FS=m | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_JFFS2_FS=y | ||||
| CONFIG_JFFS2_SUMMARY=y | ||||
| CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||||
| CONFIG_NFS_FS=m | ||||
| CONFIG_SMB_FS=m | ||||
| CONFIG_CIFS=m | ||||
| CONFIG_PARTITION_ADVANCED=y | ||||
| CONFIG_AMIGA_PARTITION=y | ||||
| CONFIG_NLS_DEFAULT="utf-8" | ||||
| CONFIG_NLS_CODEPAGE_437=m | ||||
| CONFIG_NLS_CODEPAGE_737=m | ||||
| CONFIG_NLS_CODEPAGE_775=m | ||||
| CONFIG_NLS_CODEPAGE_850=m | ||||
| CONFIG_NLS_CODEPAGE_852=m | ||||
| CONFIG_NLS_CODEPAGE_855=m | ||||
| CONFIG_NLS_CODEPAGE_857=m | ||||
| CONFIG_NLS_CODEPAGE_860=m | ||||
| CONFIG_NLS_CODEPAGE_861=m | ||||
| CONFIG_NLS_CODEPAGE_862=m | ||||
| CONFIG_NLS_CODEPAGE_863=m | ||||
| CONFIG_NLS_CODEPAGE_864=m | ||||
| CONFIG_NLS_CODEPAGE_865=m | ||||
| CONFIG_NLS_CODEPAGE_866=m | ||||
| CONFIG_NLS_CODEPAGE_869=m | ||||
| CONFIG_NLS_CODEPAGE_936=m | ||||
| CONFIG_NLS_CODEPAGE_950=m | ||||
| CONFIG_NLS_CODEPAGE_932=m | ||||
| CONFIG_NLS_CODEPAGE_949=m | ||||
| CONFIG_NLS_CODEPAGE_874=m | ||||
| CONFIG_NLS_ISO8859_8=m | ||||
| CONFIG_NLS_CODEPAGE_1250=m | ||||
| CONFIG_NLS_CODEPAGE_1251=m | ||||
| CONFIG_NLS_ASCII=m | ||||
| CONFIG_NLS_ISO8859_1=m | ||||
| CONFIG_NLS_ISO8859_2=m | ||||
| CONFIG_NLS_ISO8859_3=m | ||||
| CONFIG_NLS_ISO8859_4=m | ||||
| CONFIG_NLS_ISO8859_5=m | ||||
| CONFIG_NLS_ISO8859_6=m | ||||
| CONFIG_NLS_ISO8859_7=m | ||||
| CONFIG_NLS_ISO8859_9=m | ||||
| CONFIG_NLS_ISO8859_13=m | ||||
| CONFIG_NLS_ISO8859_14=m | ||||
| CONFIG_NLS_ISO8859_15=m | ||||
| CONFIG_NLS_KOI8_R=m | ||||
| CONFIG_NLS_KOI8_U=m | ||||
| CONFIG_NLS_UTF8=m | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| # CONFIG_DEBUG_BUGVERBOSE is not set | ||||
| CONFIG_DEBUG_LL=y | ||||
| CONFIG_CRYPTO_NULL=m | ||||
| CONFIG_CRYPTO_TEST=m | ||||
| CONFIG_CRYPTO_LRW=m | ||||
| CONFIG_CRYPTO_PCBC=m | ||||
| CONFIG_CRYPTO_XCBC=m | ||||
| CONFIG_CRYPTO_MD4=m | ||||
| CONFIG_CRYPTO_MICHAEL_MIC=m | ||||
| CONFIG_CRYPTO_SHA256=m | ||||
| CONFIG_CRYPTO_SHA512=m | ||||
| CONFIG_CRYPTO_TGR192=m | ||||
| CONFIG_CRYPTO_WP512=m | ||||
| CONFIG_CRYPTO_ANUBIS=m | ||||
| CONFIG_CRYPTO_BLOWFISH=m | ||||
| CONFIG_CRYPTO_CAMELLIA=m | ||||
| CONFIG_CRYPTO_CAST5=m | ||||
| CONFIG_CRYPTO_CAST6=m | ||||
| CONFIG_CRYPTO_FCRYPT=m | ||||
| CONFIG_CRYPTO_KHAZAD=m | ||||
| CONFIG_CRYPTO_SERPENT=m | ||||
| CONFIG_CRYPTO_TEA=m | ||||
| CONFIG_CRYPTO_TWOFISH=m | ||||
| CONFIG_LIBCRC32C=m | ||||
| @ -1,137 +0,0 @@ | ||||
| # CONFIG_SWAP is not set | ||||
| CONFIG_SYSVIPC=y | ||||
| CONFIG_LOG_BUF_SHIFT=14 | ||||
| CONFIG_BLK_DEV_INITRD=y | ||||
| # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||||
| CONFIG_MODULES=y | ||||
| CONFIG_MODULE_UNLOAD=y | ||||
| # CONFIG_IOSCHED_DEADLINE is not set | ||||
| # CONFIG_IOSCHED_CFQ is not set | ||||
| CONFIG_ARCH_AT91=y | ||||
| CONFIG_ARCH_AT91RM9200DK=y | ||||
| CONFIG_MACH_YL9200=y | ||||
| # CONFIG_ARM_THUMB is not set | ||||
| CONFIG_ZBOOT_ROM_TEXT=0x0 | ||||
| CONFIG_ZBOOT_ROM_BSS=0x0 | ||||
| CONFIG_CMDLINE="mem=32M console=ttyS0,115200 initrd=0x20410000,3145728 root=/dev/ram0 rw" | ||||
| CONFIG_FPE_NWFPE=y | ||||
| CONFIG_NET=y | ||||
| CONFIG_PACKET=y | ||||
| CONFIG_UNIX=y | ||||
| CONFIG_INET=y | ||||
| CONFIG_IP_PNP=y | ||||
| CONFIG_IP_PNP_DHCP=y | ||||
| # 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_IPV6 is not set | ||||
| CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||||
| CONFIG_MTD=y | ||||
| CONFIG_MTD_CONCAT=y | ||||
| CONFIG_MTD_PARTITIONS=y | ||||
| CONFIG_MTD_CMDLINE_PARTS=y | ||||
| CONFIG_MTD_CHAR=y | ||||
| CONFIG_MTD_BLOCK=y | ||||
| CONFIG_MTD_CFI=y | ||||
| CONFIG_MTD_JEDECPROBE=y | ||||
| CONFIG_MTD_CFI_INTELEXT=y | ||||
| CONFIG_MTD_COMPLEX_MAPPINGS=y | ||||
| CONFIG_MTD_PHYSMAP=y | ||||
| CONFIG_MTD_PLATRAM=y | ||||
| CONFIG_MTD_NAND=y | ||||
| CONFIG_MTD_NAND_ATMEL=y | ||||
| CONFIG_MTD_NAND_PLATFORM=y | ||||
| CONFIG_BLK_DEV_LOOP=y | ||||
| CONFIG_BLK_DEV_RAM=y | ||||
| CONFIG_BLK_DEV_RAM_COUNT=3 | ||||
| CONFIG_BLK_DEV_RAM_SIZE=8192 | ||||
| # CONFIG_MISC_DEVICES is not set | ||||
| CONFIG_BLK_DEV_SD=y | ||||
| CONFIG_ATA=y | ||||
| CONFIG_NETDEVICES=y | ||||
| CONFIG_PHYLIB=y | ||||
| CONFIG_DAVICOM_PHY=y | ||||
| CONFIG_NET_ETHERNET=y | ||||
| CONFIG_ARM_AT91_ETHER=y | ||||
| # CONFIG_NETDEV_1000 is not set | ||||
| # CONFIG_NETDEV_10000 is not set | ||||
| # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||||
| CONFIG_INPUT_MOUSEDEV_SCREEN_X=640 | ||||
| CONFIG_INPUT_MOUSEDEV_SCREEN_Y=480 | ||||
| CONFIG_INPUT_EVDEV=y | ||||
| # CONFIG_KEYBOARD_ATKBD is not set | ||||
| CONFIG_KEYBOARD_GPIO=y | ||||
| CONFIG_INPUT_TOUCHSCREEN=y | ||||
| CONFIG_TOUCHSCREEN_ADS7846=y | ||||
| # CONFIG_SERIO_SERPORT is not set | ||||
| CONFIG_SERIAL_ATMEL=y | ||||
| CONFIG_SERIAL_ATMEL_CONSOLE=y | ||||
| # CONFIG_HW_RANDOM is not set | ||||
| CONFIG_I2C=y | ||||
| CONFIG_SPI=y | ||||
| CONFIG_SPI_DEBUG=y | ||||
| CONFIG_SPI_ATMEL=y | ||||
| CONFIG_FB=y | ||||
| CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||||
| CONFIG_LCD_CLASS_DEVICE=y | ||||
| CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||||
| CONFIG_DISPLAY_SUPPORT=y | ||||
| # CONFIG_VGA_CONSOLE is not set | ||||
| CONFIG_LOGO=y | ||||
| # CONFIG_LOGO_LINUX_MONO is not set | ||||
| # CONFIG_LOGO_LINUX_VGA16 is not set | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_DEBUG=y | ||||
| CONFIG_USB_DEVICEFS=y | ||||
| # CONFIG_USB_DEVICE_CLASS is not set | ||||
| CONFIG_USB_MON=y | ||||
| CONFIG_USB_OHCI_HCD=y | ||||
| CONFIG_USB_STORAGE=y | ||||
| CONFIG_USB_GADGET=y | ||||
| CONFIG_USB_GADGET_M66592=y | ||||
| CONFIG_USB_FILE_STORAGE=m | ||||
| CONFIG_MMC=y | ||||
| CONFIG_MMC_DEBUG=y | ||||
| # CONFIG_MMC_BLOCK_BOUNCE is not set | ||||
| CONFIG_MMC_AT91=m | ||||
| CONFIG_NEW_LEDS=y | ||||
| CONFIG_LEDS_CLASS=y | ||||
| CONFIG_LEDS_GPIO=y | ||||
| CONFIG_LEDS_TRIGGERS=y | ||||
| CONFIG_LEDS_TRIGGER_TIMER=y | ||||
| CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| CONFIG_RTC_DRV_AT91RM9200=y | ||||
| CONFIG_EXT2_FS=y | ||||
| CONFIG_EXT2_FS_XATTR=y | ||||
| CONFIG_EXT3_FS=y | ||||
| CONFIG_REISERFS_FS=y | ||||
| CONFIG_INOTIFY=y | ||||
| CONFIG_ISO9660_FS=y | ||||
| CONFIG_JOLIET=y | ||||
| CONFIG_ZISOFS=y | ||||
| CONFIG_UDF_FS=y | ||||
| CONFIG_MSDOS_FS=y | ||||
| CONFIG_VFAT_FS=y | ||||
| CONFIG_TMPFS=y | ||||
| CONFIG_JFFS2_FS=y | ||||
| CONFIG_JFFS2_FS_DEBUG=1 | ||||
| CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||||
| CONFIG_JFFS2_RUBIN=y | ||||
| CONFIG_CRAMFS=y | ||||
| CONFIG_PARTITION_ADVANCED=y | ||||
| CONFIG_MAC_PARTITION=y | ||||
| CONFIG_NLS_CODEPAGE_437=y | ||||
| CONFIG_NLS_ISO8859_1=y | ||||
| # CONFIG_ENABLE_MUST_CHECK is not set | ||||
| CONFIG_DEBUG_FS=y | ||||
| CONFIG_DEBUG_KERNEL=y | ||||
| CONFIG_SLUB_DEBUG_ON=y | ||||
| CONFIG_DEBUG_KOBJECT=y | ||||
| CONFIG_DEBUG_INFO=y | ||||
| CONFIG_DEBUG_LIST=y | ||||
| CONFIG_DEBUG_USER=y | ||||
| CONFIG_DEBUG_ERRORS=y | ||||
| CONFIG_DEBUG_LL=y | ||||
| @ -911,7 +911,7 @@ __kuser_cmpxchg:				@ 0xffff0fc0 | ||||
| 	 * A special ghost syscall is used for that (see traps.c). | ||||
| 	 */ | ||||
| 	stmfd	sp!, {r7, lr} | ||||
| 	ldr	r7, =1f			@ it's 20 bits
 | ||||
| 	ldr	r7, 1f			@ it's 20 bits
 | ||||
| 	swi	__ARM_NR_cmpxchg | ||||
| 	ldmfd	sp!, {r7, pc} | ||||
| 1:	.word	__ARM_NR_cmpxchg | ||||
|  | ||||
| @ -85,9 +85,11 @@ ENTRY(stext) | ||||
| 	mrc	p15, 0, r9, c0, c0		@ get processor id
 | ||||
| 	bl	__lookup_processor_type		@ r5=procinfo r9=cpuid
 | ||||
| 	movs	r10, r5				@ invalid processor (r5=0)?
 | ||||
|  THUMB( it	eq )		@ force fixup-able long branch encoding
 | ||||
| 	beq	__error_p			@ yes, error 'p'
 | ||||
| 	bl	__lookup_machine_type		@ r5=machinfo
 | ||||
| 	movs	r8, r5				@ invalid machine (r5=0)?
 | ||||
|  THUMB( it	eq )		@ force fixup-able long branch encoding
 | ||||
| 	beq	__error_a			@ yes, error 'a'
 | ||||
| 	bl	__vet_atags | ||||
| #ifdef CONFIG_SMP_ON_UP | ||||
| @ -262,6 +264,7 @@ __create_page_tables: | ||||
| 	mov	pc, lr | ||||
| ENDPROC(__create_page_tables) | ||||
| 	.ltorg | ||||
| 	.align | ||||
| __enable_mmu_loc: | ||||
| 	.long	. | ||||
| 	.long	__enable_mmu
 | ||||
| @ -282,6 +285,7 @@ ENTRY(secondary_startup) | ||||
| 	bl	__lookup_processor_type | ||||
| 	movs	r10, r5				@ invalid processor?
 | ||||
| 	moveq	r0, #'p'			@ yes, error 'p'
 | ||||
|  THUMB( it	eq )		@ force fixup-able long branch encoding
 | ||||
| 	beq	__error_p | ||||
| 
 | ||||
| 	/* | ||||
| @ -308,6 +312,8 @@ ENTRY(__secondary_switched) | ||||
| 	b	secondary_start_kernel | ||||
| ENDPROC(__secondary_switched) | ||||
| 
 | ||||
| 	.align | ||||
| 
 | ||||
| 	.type	__secondary_data, %object | ||||
| __secondary_data: | ||||
| 	.long	. | ||||
| @ -413,6 +419,7 @@ __fixup_smp_on_up: | ||||
| 	mov	pc, lr | ||||
| ENDPROC(__fixup_smp) | ||||
| 
 | ||||
| 	.align | ||||
| 1:	.word	. | ||||
| 	.word	__smpalt_begin
 | ||||
| 	.word	__smpalt_end
 | ||||
|  | ||||
| @ -59,6 +59,8 @@ relocate_new_kernel: | ||||
| 	ldr r2,kexec_boot_atags | ||||
| 	mov pc,lr | ||||
| 
 | ||||
| 	.align | ||||
| 
 | ||||
| 	.globl kexec_start_address
 | ||||
| kexec_start_address: | ||||
| 	.long	0x0
 | ||||
|  | ||||
| @ -24,8 +24,8 @@ obj-$(CONFIG_ARCH_AT91X40)	+= at91x40.o at91x40_time.o | ||||
| 
 | ||||
| # AT91RM9200 board-specific support
 | ||||
| obj-$(CONFIG_MACH_ONEARM)	+= board-1arm.o | ||||
| obj-$(CONFIG_ARCH_AT91RM9200DK)	+= board-dk.o | ||||
| obj-$(CONFIG_MACH_AT91RM9200EK)	+= board-ek.o | ||||
| obj-$(CONFIG_ARCH_AT91RM9200DK)	+= board-rm9200dk.o | ||||
| obj-$(CONFIG_MACH_AT91RM9200EK)	+= board-rm9200ek.o | ||||
| obj-$(CONFIG_MACH_CSB337)	+= board-csb337.o | ||||
| obj-$(CONFIG_MACH_CSB637)	+= board-csb637.o | ||||
| obj-$(CONFIG_MACH_CARMEVA)	+= board-carmeva.o | ||||
| @ -65,7 +65,7 @@ obj-$(CONFIG_MACH_AT91SAM9G20EK) += board-sam9g20ek.o | ||||
| obj-$(CONFIG_MACH_CPU9G20)	+= board-cpu9krea.o | ||||
| obj-$(CONFIG_MACH_STAMP9G20)	+= board-stamp9g20.o | ||||
| obj-$(CONFIG_MACH_PORTUXG20)	+= board-stamp9g20.o | ||||
| obj-$(CONFIG_MACH_PCONTROL_G20)	+= board-pcontrol-g20.o | ||||
| obj-$(CONFIG_MACH_PCONTROL_G20)	+= board-pcontrol-g20.o board-stamp9g20.o | ||||
| 
 | ||||
| # AT91SAM9260/AT91SAM9G20 board-specific support
 | ||||
| obj-$(CONFIG_MACH_SNAPPER_9260)	+= board-snapper9260.o | ||||
|  | ||||
| @ -1106,51 +1106,6 @@ static inline void configure_usart3_pins(unsigned pins) | ||||
| static struct platform_device *__initdata at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */ | ||||
| struct platform_device *atmel_default_console_device;	/* the serial console device */ | ||||
| 
 | ||||
| void __init __deprecated at91_init_serial(struct at91_uart_config *config) | ||||
| { | ||||
| 	int i; | ||||
| 
 | ||||
| 	/* Fill in list of supported UARTs */ | ||||
| 	for (i = 0; i < config->nr_tty; i++) { | ||||
| 		switch (config->tty_map[i]) { | ||||
| 			case 0: | ||||
| 				configure_usart0_pins(ATMEL_UART_CTS | ATMEL_UART_RTS); | ||||
| 				at91_uarts[i] = &at91rm9200_uart0_device; | ||||
| 				at91_clock_associate("usart0_clk", &at91rm9200_uart0_device.dev, "usart"); | ||||
| 				break; | ||||
| 			case 1: | ||||
| 				configure_usart1_pins(ATMEL_UART_CTS | ATMEL_UART_RTS | ATMEL_UART_DSR | ATMEL_UART_DTR | ATMEL_UART_DCD | ATMEL_UART_RI); | ||||
| 				at91_uarts[i] = &at91rm9200_uart1_device; | ||||
| 				at91_clock_associate("usart1_clk", &at91rm9200_uart1_device.dev, "usart"); | ||||
| 				break; | ||||
| 			case 2: | ||||
| 				configure_usart2_pins(0); | ||||
| 				at91_uarts[i] = &at91rm9200_uart2_device; | ||||
| 				at91_clock_associate("usart2_clk", &at91rm9200_uart2_device.dev, "usart"); | ||||
| 				break; | ||||
| 			case 3: | ||||
| 				configure_usart3_pins(0); | ||||
| 				at91_uarts[i] = &at91rm9200_uart3_device; | ||||
| 				at91_clock_associate("usart3_clk", &at91rm9200_uart3_device.dev, "usart"); | ||||
| 				break; | ||||
| 			case 4: | ||||
| 				configure_dbgu_pins(); | ||||
| 				at91_uarts[i] = &at91rm9200_dbgu_device; | ||||
| 				at91_clock_associate("mck", &at91rm9200_dbgu_device.dev, "usart"); | ||||
| 				break; | ||||
| 			default: | ||||
| 				continue; | ||||
| 		} | ||||
| 		at91_uarts[i]->id = i;		/* update ID number to mapped ID */ | ||||
| 	} | ||||
| 
 | ||||
| 	/* Set serial console device */ | ||||
| 	if (config->console_tty < ATMEL_MAX_UART) | ||||
| 		atmel_default_console_device = at91_uarts[config->console_tty]; | ||||
| 	if (!atmel_default_console_device) | ||||
| 		printk(KERN_INFO "AT91: No default serial console defined.\n"); | ||||
| } | ||||
| 
 | ||||
| void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) | ||||
| { | ||||
| 	struct platform_device *pdev; | ||||
|  | ||||
| @ -39,24 +39,24 @@ | ||||
| #include "generic.h" | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * Serial port configuration. | ||||
|  *    0 .. 3 = USART0 .. USART3 | ||||
|  *    4      = DBGU | ||||
|  */ | ||||
| static struct at91_uart_config __initdata onearm_uart_config = { | ||||
| 	.console_tty	= 0,				/* ttyS0 */ | ||||
| 	.nr_tty		= 3, | ||||
| 	.tty_map	= { 4, 0, 1, -1, -1 },		/* ttyS0, ..., ttyS4 */ | ||||
| }; | ||||
| 
 | ||||
| static void __init onearm_map_io(void) | ||||
| { | ||||
| 	/* Initialize processor: 18.432 MHz crystal */ | ||||
| 	at91rm9200_initialize(18432000, AT91RM9200_PQFP); | ||||
| 
 | ||||
| 	/* Setup the serial ports and console */ | ||||
| 	at91_init_serial(&onearm_uart_config); | ||||
| 	/* DBGU on ttyS0. (Rx & Tx only) */ | ||||
| 	at91_register_uart(0, 0, 0); | ||||
| 
 | ||||
| 	/* USART0 on ttyS1 (Rx, Tx, CTS, RTS) */ | ||||
| 	at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS); | ||||
| 
 | ||||
| 	/* USART1 on ttyS2 (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */ | ||||
| 	at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS | ||||
| 			   | ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD | ||||
| 			   | ATMEL_UART_RI); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| static void __init onearm_init_irq(void) | ||||
|  | ||||
| @ -39,17 +39,6 @@ | ||||
| #include "generic.h" | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * Serial port configuration. | ||||
|  *    0 .. 3 = USART0 .. USART3 | ||||
|  *    4      = DBGU | ||||
|  */ | ||||
| static struct at91_uart_config __initdata kafa_uart_config = { | ||||
| 	.console_tty	= 0,				/* ttyS0 */ | ||||
| 	.nr_tty		= 2, | ||||
| 	.tty_map	= { 4, 0, -1, -1, -1 }		/* ttyS0, ..., ttyS4 */ | ||||
| }; | ||||
| 
 | ||||
| static void __init kafa_map_io(void) | ||||
| { | ||||
| 	/* Initialize processor: 18.432 MHz crystal */ | ||||
| @ -58,8 +47,14 @@ static void __init kafa_map_io(void) | ||||
| 	/* Set up the LEDs */ | ||||
| 	at91_init_leds(AT91_PIN_PB4, AT91_PIN_PB4); | ||||
| 
 | ||||
| 	/* Setup the serial ports and console */ | ||||
| 	at91_init_serial(&kafa_uart_config); | ||||
| 	/* DBGU on ttyS0. (Rx & Tx only) */ | ||||
| 	at91_register_uart(0, 0, 0); | ||||
| 
 | ||||
| 	/* USART0 on ttyS1 (Rx, Tx, CTS, RTS) */ | ||||
| 	at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| static void __init kafa_init_irq(void) | ||||
|  | ||||
| @ -31,6 +31,7 @@ | ||||
| 
 | ||||
| #include <mach/board.h> | ||||
| #include <mach/at91sam9_smc.h> | ||||
| #include <mach/stamp9g20.h> | ||||
| 
 | ||||
| #include "sam9_smc.h" | ||||
| #include "generic.h" | ||||
| @ -38,11 +39,7 @@ | ||||
| 
 | ||||
| static void __init pcontrol_g20_map_io(void) | ||||
| { | ||||
| 	/* Initialize processor: 18.432 MHz crystal */ | ||||
| 	at91sam9260_initialize(18432000); | ||||
| 
 | ||||
| 	/* DGBU on ttyS0. (Rx, Tx) only TTL -> JTAG connector X7 17,19 ) */ | ||||
| 	at91_register_uart(0, 0, 0); | ||||
| 	stamp9g20_map_io(); | ||||
| 
 | ||||
| 	/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) piggyback  A2 */ | ||||
| 	at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ||||
| @ -54,9 +51,6 @@ static void __init pcontrol_g20_map_io(void) | ||||
| 
 | ||||
| 	/* USART2 on ttyS3. (Rx, Tx)  9bit-Bus  Multidrop-mode  X4 */ | ||||
| 	at91_register_uart(AT91SAM9260_ID_US4, 3, 0); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| @ -66,38 +60,6 @@ static void __init init_irq(void) | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * NAND flash 512MiB 1,8V 8-bit, sector size 128 KiB | ||||
|  */ | ||||
| static struct atmel_nand_data __initdata nand_data = { | ||||
| 	.ale		= 21, | ||||
| 	.cle		= 22, | ||||
| 	.rdy_pin	= AT91_PIN_PC13, | ||||
| 	.enable_pin	= AT91_PIN_PC14, | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * Bus timings; unit = 7.57ns | ||||
|  */ | ||||
| static struct sam9_smc_config __initdata nand_smc_config = { | ||||
| 	.ncs_read_setup		= 0, | ||||
| 	.nrd_setup		= 2, | ||||
| 	.ncs_write_setup	= 0, | ||||
| 	.nwe_setup		= 2, | ||||
| 
 | ||||
| 	.ncs_read_pulse		= 4, | ||||
| 	.nrd_pulse		= 4, | ||||
| 	.ncs_write_pulse	= 4, | ||||
| 	.nwe_pulse		= 4, | ||||
| 
 | ||||
| 	.read_cycle		= 7, | ||||
| 	.write_cycle		= 7, | ||||
| 
 | ||||
| 	.mode			= AT91_SMC_READMODE | AT91_SMC_WRITEMODE | ||||
| 			| AT91_SMC_EXNWMODE_DISABLE | AT91_SMC_DBW_8, | ||||
| 	.tdf_cycles		= 3, | ||||
| }; | ||||
| 
 | ||||
| static struct sam9_smc_config __initdata pcontrol_smc_config[2] = { { | ||||
| 	.ncs_read_setup		= 16, | ||||
| 	.nrd_setup		= 18, | ||||
| @ -138,14 +100,6 @@ static struct sam9_smc_config __initdata pcontrol_smc_config[2] = { { | ||||
| 	.tdf_cycles		= 1, | ||||
| } }; | ||||
| 
 | ||||
| static void __init add_device_nand(void) | ||||
| { | ||||
| 	/* configure chip-select 3 (NAND) */ | ||||
| 	sam9_smc_configure(3, &nand_smc_config); | ||||
| 	at91_add_device_nand(&nand_data); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| static void __init add_device_pcontrol(void) | ||||
| { | ||||
| 	/* configure chip-select 4 (IO compatible to 8051  X4 ) */ | ||||
| @ -155,23 +109,6 @@ static void __init add_device_pcontrol(void) | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * MCI (SD/MMC) | ||||
|  * det_pin, wp_pin and vcc_pin are not connected | ||||
|  */ | ||||
| #if defined(CONFIG_MMC_ATMELMCI) || defined(CONFIG_MMC_ATMELMCI_MODULE) | ||||
| static struct mci_platform_data __initdata mmc_data = { | ||||
| 	.slot[0] = { | ||||
| 		.bus_width	= 4, | ||||
| 	}, | ||||
| }; | ||||
| #else | ||||
| static struct at91_mmc_data __initdata mmc_data = { | ||||
| 	.wire4		= 1, | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * USB Host port | ||||
|  */ | ||||
| @ -265,42 +202,13 @@ static struct spi_board_info pcontrol_g20_spi_devices[] = { | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * Dallas 1-Wire  DS2431 | ||||
|  */ | ||||
| static struct w1_gpio_platform_data w1_gpio_pdata = { | ||||
| 	.pin		= AT91_PIN_PA29, | ||||
| 	.is_open_drain	= 1, | ||||
| }; | ||||
| 
 | ||||
| static struct platform_device w1_device = { | ||||
| 	.name			= "w1-gpio", | ||||
| 	.id			= -1, | ||||
| 	.dev.platform_data	= &w1_gpio_pdata, | ||||
| }; | ||||
| 
 | ||||
| static void add_wire1(void) | ||||
| { | ||||
| 	at91_set_GPIO_periph(w1_gpio_pdata.pin, 1); | ||||
| 	at91_set_multi_drive(w1_gpio_pdata.pin, 1); | ||||
| 	platform_device_register(&w1_device); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| static void __init pcontrol_g20_board_init(void) | ||||
| { | ||||
| 	at91_add_device_serial(); | ||||
| 	add_device_nand(); | ||||
| #if defined(CONFIG_MMC_ATMELMCI) || defined(CONFIG_MMC_ATMELMCI_MODULE) | ||||
| 	at91_add_device_mci(0, &mmc_data); | ||||
| #else | ||||
| 	at91_add_device_mmc(0, &mmc_data); | ||||
| #endif | ||||
| 	stamp9g20_board_init(); | ||||
| 	at91_add_device_usbh(&usbh_data); | ||||
| 	at91_add_device_eth(&macb_data); | ||||
| 	at91_add_device_i2c(pcontrol_g20_i2c_devices, | ||||
| 		ARRAY_SIZE(pcontrol_g20_i2c_devices)); | ||||
| 	add_wire1(); | ||||
| 	add_device_pcontrol(); | ||||
| 	at91_add_device_spi(pcontrol_g20_spi_devices, | ||||
| 		ARRAY_SIZE(pcontrol_g20_spi_devices)); | ||||
|  | ||||
| @ -43,24 +43,21 @@ | ||||
| #include "generic.h" | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
|  * Serial port configuration. | ||||
|  *    0 .. 3 = USART0 .. USART3 | ||||
|  *    4      = DBGU | ||||
|  */ | ||||
| static struct at91_uart_config __initdata picotux200_uart_config = { | ||||
| 	.console_tty	= 0,				/* ttyS0 */ | ||||
| 	.nr_tty		= 2, | ||||
| 	.tty_map	= { 4, 1, -1, -1, -1 }		/* ttyS0, ..., ttyS4 */ | ||||
| }; | ||||
| 
 | ||||
| static void __init picotux200_map_io(void) | ||||
| { | ||||
| 	/* Initialize processor: 18.432 MHz crystal */ | ||||
| 	at91rm9200_initialize(18432000, AT91RM9200_BGA); | ||||
| 
 | ||||
| 	/* Setup the serial ports and console */ | ||||
| 	at91_init_serial(&picotux200_uart_config); | ||||
| 	/* DBGU on ttyS0. (Rx & Tx only) */ | ||||
| 	at91_register_uart(0, 0, 0); | ||||
| 
 | ||||
| 	/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */ | ||||
| 	at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS | ||||
| 			  | ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD | ||||
| 			  | ATMEL_UART_RI); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| static void __init picotux200_init_irq(void) | ||||
| @ -77,11 +74,6 @@ static struct at91_usbh_data __initdata picotux200_usbh_data = { | ||||
| 	.ports		= 1, | ||||
| }; | ||||
| 
 | ||||
| // static struct at91_udc_data __initdata picotux200_udc_data = {
 | ||||
| // 	.vbus_pin	= AT91_PIN_PD4,
 | ||||
| // 	.pullup_pin	= AT91_PIN_PD5,
 | ||||
| // };
 | ||||
| 
 | ||||
| static struct at91_mmc_data __initdata picotux200_mmc_data = { | ||||
| 	.det_pin	= AT91_PIN_PB27, | ||||
| 	.slot_b		= 0, | ||||
| @ -89,21 +81,6 @@ static struct at91_mmc_data __initdata picotux200_mmc_data = { | ||||
| 	.wp_pin		= AT91_PIN_PA17, | ||||
| }; | ||||
| 
 | ||||
| // static struct spi_board_info picotux200_spi_devices[] = {
 | ||||
| // 	{	/* DataFlash chip */
 | ||||
| // 		.modalias	= "mtd_dataflash",
 | ||||
| // 		.chip_select	= 0,
 | ||||
| // 		.max_speed_hz	= 15 * 1000 * 1000,
 | ||||
| // 	},
 | ||||
| // #ifdef CONFIG_MTD_AT91_DATAFLASH_CARD
 | ||||
| // 	{	/* DataFlash card */
 | ||||
| // 		.modalias	= "mtd_dataflash",
 | ||||
| // 		.chip_select	= 3,
 | ||||
| // 		.max_speed_hz	= 15 * 1000 * 1000,
 | ||||
| // 	},
 | ||||
| // #endif
 | ||||
| // };
 | ||||
| 
 | ||||
| #define PICOTUX200_FLASH_BASE	AT91_CHIPSELECT_0 | ||||
| #define PICOTUX200_FLASH_SIZE	SZ_4M | ||||
| 
 | ||||
| @ -135,21 +112,11 @@ static void __init picotux200_board_init(void) | ||||
| 	at91_add_device_eth(&picotux200_eth_data); | ||||
| 	/* USB Host */ | ||||
| 	at91_add_device_usbh(&picotux200_usbh_data); | ||||
| 	/* USB Device */ | ||||
| 	// at91_add_device_udc(&picotux200_udc_data);
 | ||||
| 	// at91_set_multi_drive(picotux200_udc_data.pullup_pin, 1);	/* pullup_pin is connected to reset */
 | ||||
| 	/* I2C */ | ||||
| 	at91_add_device_i2c(NULL, 0); | ||||
| 	/* SPI */ | ||||
| 	// at91_add_device_spi(picotux200_spi_devices, ARRAY_SIZE(picotux200_spi_devices));
 | ||||
| #ifdef CONFIG_MTD_AT91_DATAFLASH_CARD | ||||
| 	/* DataFlash card */ | ||||
| 	at91_set_gpio_output(AT91_PIN_PB22, 0); | ||||
| #else | ||||
| 	/* MMC */ | ||||
| 	at91_set_gpio_output(AT91_PIN_PB22, 1);	/* this MMC card slot can optionally use SPI signaling (CS3). */ | ||||
| 	at91_add_device_mmc(0, &picotux200_mmc_data); | ||||
| #endif | ||||
| 	/* NOR Flash */ | ||||
| 	platform_device_register(&picotux200_flash); | ||||
| } | ||||
|  | ||||
| @ -1,5 +1,5 @@ | ||||
| /*
 | ||||
|  * linux/arch/arm/mach-at91/board-dk.c | ||||
|  * linux/arch/arm/mach-at91/board-rm9200dk.c | ||||
|  * | ||||
|  *  Copyright (C) 2005 SAN People | ||||
|  * | ||||
| @ -91,10 +91,12 @@ static struct at91_cf_data __initdata dk_cf_data = { | ||||
| 	// .vcc_pin	= ... always powered
 | ||||
| }; | ||||
| 
 | ||||
| #ifndef CONFIG_MTD_AT91_DATAFLASH_CARD | ||||
| static struct at91_mmc_data __initdata dk_mmc_data = { | ||||
| 	.slot_b		= 0, | ||||
| 	.wire4		= 1, | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
| static struct spi_board_info dk_spi_devices[] = { | ||||
| 	{	/* DataFlash chip */ | ||||
| @ -1,5 +1,5 @@ | ||||
| /*
 | ||||
|  * linux/arch/arm/mach-at91/board-ek.c | ||||
|  * linux/arch/arm/mach-at91/board-rm9200ek.c | ||||
|  * | ||||
|  *  Copyright (C) 2005 SAN People | ||||
|  * | ||||
| @ -84,12 +84,14 @@ static struct at91_udc_data __initdata ek_udc_data = { | ||||
| 	.pullup_pin	= AT91_PIN_PD5, | ||||
| }; | ||||
| 
 | ||||
| #ifndef CONFIG_MTD_AT91_DATAFLASH_CARD | ||||
| static struct at91_mmc_data __initdata ek_mmc_data = { | ||||
| 	.det_pin	= AT91_PIN_PB27, | ||||
| 	.slot_b		= 0, | ||||
| 	.wire4		= 1, | ||||
| 	.wp_pin		= AT91_PIN_PA17, | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
| static struct spi_board_info ek_spi_devices[] = { | ||||
| 	{	/* DataFlash chip */ | ||||
| @ -32,7 +32,7 @@ | ||||
| #include "generic.h" | ||||
| 
 | ||||
| 
 | ||||
| static void __init portuxg20_map_io(void) | ||||
| void __init stamp9g20_map_io(void) | ||||
| { | ||||
| 	/* Initialize processor: 18.432 MHz crystal */ | ||||
| 	at91sam9260_initialize(18432000); | ||||
| @ -40,6 +40,24 @@ static void __init portuxg20_map_io(void) | ||||
| 	/* DGBU on ttyS0. (Rx & Tx only) */ | ||||
| 	at91_register_uart(0, 0, 0); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| static void __init stamp9g20evb_map_io(void) | ||||
| { | ||||
| 	stamp9g20_map_io(); | ||||
| 
 | ||||
| 	/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */ | ||||
| 	at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS | ||||
| 						| ATMEL_UART_DTR | ATMEL_UART_DSR | ||||
| 						| ATMEL_UART_DCD | ATMEL_UART_RI); | ||||
| } | ||||
| 
 | ||||
| static void __init portuxg20_map_io(void) | ||||
| { | ||||
| 	stamp9g20_map_io(); | ||||
| 
 | ||||
| 	/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */ | ||||
| 	at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS | ||||
| 						| ATMEL_UART_DTR | ATMEL_UART_DSR | ||||
| @ -56,26 +74,6 @@ static void __init portuxg20_map_io(void) | ||||
| 
 | ||||
| 	/* USART5 on ttyS6. (Rx, Tx only) */ | ||||
| 	at91_register_uart(AT91SAM9260_ID_US5, 6, 0); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| static void __init stamp9g20_map_io(void) | ||||
| { | ||||
| 	/* Initialize processor: 18.432 MHz crystal */ | ||||
| 	at91sam9260_initialize(18432000); | ||||
| 
 | ||||
| 	/* DGBU on ttyS0. (Rx & Tx only) */ | ||||
| 	at91_register_uart(0, 0, 0); | ||||
| 
 | ||||
| 	/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */ | ||||
| 	at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS | ||||
| 						| ATMEL_UART_DTR | ATMEL_UART_DSR | ||||
| 						| ATMEL_UART_DCD | ATMEL_UART_RI); | ||||
| 
 | ||||
| 	/* set serial console to ttyS0 (ie, DBGU) */ | ||||
| 	at91_set_serial_console(0); | ||||
| } | ||||
| 
 | ||||
| static void __init init_irq(void) | ||||
| @ -156,7 +154,7 @@ static struct at91_udc_data __initdata portuxg20_udc_data = { | ||||
| 	.pullup_pin	= 0,		/* pull-up driven by UDC */ | ||||
| }; | ||||
| 
 | ||||
| static struct at91_udc_data __initdata stamp9g20_udc_data = { | ||||
| static struct at91_udc_data __initdata stamp9g20evb_udc_data = { | ||||
| 	.vbus_pin	= AT91_PIN_PA22, | ||||
| 	.pullup_pin	= 0,		/* pull-up driven by UDC */ | ||||
| }; | ||||
| @ -190,7 +188,7 @@ static struct gpio_led portuxg20_leds[] = { | ||||
| 	} | ||||
| }; | ||||
| 
 | ||||
| static struct gpio_led stamp9g20_leds[] = { | ||||
| static struct gpio_led stamp9g20evb_leds[] = { | ||||
| 	{ | ||||
| 		.name			= "D8", | ||||
| 		.gpio			= AT91_PIN_PB18, | ||||
| @ -250,7 +248,7 @@ void add_w1(void) | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| static void __init generic_board_init(void) | ||||
| void __init stamp9g20_board_init(void) | ||||
| { | ||||
| 	/* Serial */ | ||||
| 	at91_add_device_serial(); | ||||
| @ -262,34 +260,40 @@ static void __init generic_board_init(void) | ||||
| #else | ||||
| 	at91_add_device_mmc(0, &mmc_data); | ||||
| #endif | ||||
| 	/* USB Host */ | ||||
| 	at91_add_device_usbh(&usbh_data); | ||||
| 	/* Ethernet */ | ||||
| 	at91_add_device_eth(&macb_data); | ||||
| 	/* I2C */ | ||||
| 	at91_add_device_i2c(NULL, 0); | ||||
| 	/* W1 */ | ||||
| 	add_w1(); | ||||
| } | ||||
| 
 | ||||
| static void __init portuxg20_board_init(void) | ||||
| { | ||||
| 	generic_board_init(); | ||||
| 	/* SPI */ | ||||
| 	at91_add_device_spi(portuxg20_spi_devices, ARRAY_SIZE(portuxg20_spi_devices)); | ||||
| 	stamp9g20_board_init(); | ||||
| 	/* USB Host */ | ||||
| 	at91_add_device_usbh(&usbh_data); | ||||
| 	/* USB Device */ | ||||
| 	at91_add_device_udc(&portuxg20_udc_data); | ||||
| 	/* Ethernet */ | ||||
| 	at91_add_device_eth(&macb_data); | ||||
| 	/* I2C */ | ||||
| 	at91_add_device_i2c(NULL, 0); | ||||
| 	/* SPI */ | ||||
| 	at91_add_device_spi(portuxg20_spi_devices, ARRAY_SIZE(portuxg20_spi_devices)); | ||||
| 	/* LEDs */ | ||||
| 	at91_gpio_leds(portuxg20_leds, ARRAY_SIZE(portuxg20_leds)); | ||||
| } | ||||
| 
 | ||||
| static void __init stamp9g20_board_init(void) | ||||
| static void __init stamp9g20evb_board_init(void) | ||||
| { | ||||
| 	generic_board_init(); | ||||
| 	stamp9g20_board_init(); | ||||
| 	/* USB Host */ | ||||
| 	at91_add_device_usbh(&usbh_data); | ||||
| 	/* USB Device */ | ||||
| 	at91_add_device_udc(&stamp9g20_udc_data); | ||||
| 	at91_add_device_udc(&stamp9g20evb_udc_data); | ||||
| 	/* Ethernet */ | ||||
| 	at91_add_device_eth(&macb_data); | ||||
| 	/* I2C */ | ||||
| 	at91_add_device_i2c(NULL, 0); | ||||
| 	/* LEDs */ | ||||
| 	at91_gpio_leds(stamp9g20_leds, ARRAY_SIZE(stamp9g20_leds)); | ||||
| 	at91_gpio_leds(stamp9g20evb_leds, ARRAY_SIZE(stamp9g20evb_leds)); | ||||
| } | ||||
| 
 | ||||
| MACHINE_START(PORTUXG20, "taskit PortuxG20") | ||||
| @ -305,7 +309,7 @@ MACHINE_START(STAMP9G20, "taskit Stamp9G20") | ||||
| 	/* Maintainer: taskit GmbH */ | ||||
| 	.boot_params	= AT91_SDRAM_BASE + 0x100, | ||||
| 	.timer		= &at91sam926x_timer, | ||||
| 	.map_io		= stamp9g20_map_io, | ||||
| 	.map_io		= stamp9g20evb_map_io, | ||||
| 	.init_irq	= init_irq, | ||||
| 	.init_machine	= stamp9g20_board_init, | ||||
| 	.init_machine	= stamp9g20evb_board_init, | ||||
| MACHINE_END | ||||
|  | ||||
| @ -387,7 +387,7 @@ static struct spi_board_info yl9200_spi_devices[] = { | ||||
|  * EPSON S1D13806 FB (discontinued chip) | ||||
|  * EPSON S1D13506 FB | ||||
|  */ | ||||
| #if defined(CONFIG_FB_S1D135XX) || defined(CONFIG_FB_S1D13XXX_MODULE) | ||||
| #if defined(CONFIG_FB_S1D13XXX) || defined(CONFIG_FB_S1D13XXX_MODULE) | ||||
| #include <video/s1d13xxxfb.h> | ||||
| 
 | ||||
| 
 | ||||
|  | ||||
| @ -658,7 +658,7 @@ static void __init at91_upll_usbfs_clock_init(unsigned long main_clock) | ||||
| 	/* Now set uhpck values */ | ||||
| 	uhpck.parent = &utmi_clk; | ||||
| 	uhpck.pmc_mask = AT91SAM926x_PMC_UHP; | ||||
| 	uhpck.rate_hz = utmi_clk.parent->rate_hz; | ||||
| 	uhpck.rate_hz = utmi_clk.rate_hz; | ||||
| 	uhpck.rate_hz /= 1 + ((at91_sys_read(AT91_PMC_USB) & AT91_PMC_OHCIUSBDIV) >> 8); | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -74,6 +74,8 @@ | ||||
| #define			AT91_MCI_TRTYP_BLOCK	(0 << 19) | ||||
| #define			AT91_MCI_TRTYP_MULTIPLE	(1 << 19) | ||||
| #define			AT91_MCI_TRTYP_STREAM	(2 << 19) | ||||
| #define			AT91_MCI_TRTYP_SDIO_BYTE	(4 << 19) | ||||
| #define			AT91_MCI_TRTYP_SDIO_BLOCK	(5 << 19) | ||||
| 
 | ||||
| #define AT91_MCI_BLKR		0x18		/* Block Register */ | ||||
| #define		AT91_MCI_BLKR_BCNT(n)	((0xffff & (n)) << 0)	/* Block count */ | ||||
|  | ||||
| @ -137,13 +137,7 @@ extern void __init at91_add_device_spi(struct spi_board_info *devices, int nr_de | ||||
| extern void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins); | ||||
| extern void __init at91_set_serial_console(unsigned portnr); | ||||
| 
 | ||||
| struct at91_uart_config { | ||||
| 	unsigned short	console_tty;	/* tty number of serial console */ | ||||
| 	unsigned short	nr_tty;		/* number of serial tty's */ | ||||
| 	short		tty_map[];	/* map UART to tty number */ | ||||
| }; | ||||
| extern struct platform_device *atmel_default_console_device; | ||||
| extern void __init __deprecated at91_init_serial(struct at91_uart_config *config); | ||||
| 
 | ||||
| struct atmel_uart_data { | ||||
| 	short			use_dma_tx;	/* use transmit DMA? */ | ||||
|  | ||||
							
								
								
									
										7
									
								
								arch/arm/mach-at91/include/mach/stamp9g20.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								arch/arm/mach-at91/include/mach/stamp9g20.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| #ifndef __MACH_STAMP9G20_H | ||||
| #define __MACH_STAMP9G20_H | ||||
| 
 | ||||
| void stamp9g20_map_io(void); | ||||
| void stamp9g20_board_init(void); | ||||
| 
 | ||||
| #endif | ||||
| @ -369,7 +369,7 @@ static int __init cns3xxx_pcie_init(void) | ||||
| { | ||||
| 	int i; | ||||
| 
 | ||||
| 	hook_fault_code(16 + 6, cns3xxx_pcie_abort_handler, SIGBUS, | ||||
| 	hook_fault_code(16 + 6, cns3xxx_pcie_abort_handler, SIGBUS, 0, | ||||
| 			"imprecise external abort"); | ||||
| 
 | ||||
| 	for (i = 0; i < ARRAY_SIZE(cns3xxx_pcie); i++) { | ||||
|  | ||||
| @ -513,4 +513,4 @@ int dma_set_coherent_mask(struct device *dev, u64 mask) | ||||
| 
 | ||||
| EXPORT_SYMBOL(ixp4xx_pci_read); | ||||
| EXPORT_SYMBOL(ixp4xx_pci_write); | ||||
| 
 | ||||
| EXPORT_SYMBOL(dma_set_coherent_mask); | ||||
|  | ||||
| @ -126,7 +126,6 @@ static APBC_CLK(twsi3, MMP2_TWSI3, 0, 26000000); | ||||
| static APBC_CLK(twsi4, MMP2_TWSI4, 0, 26000000); | ||||
| static APBC_CLK(twsi5, MMP2_TWSI5, 0, 26000000); | ||||
| static APBC_CLK(twsi6, MMP2_TWSI6, 0, 26000000); | ||||
| static APBC_CLK(rtc, MMP2_RTC, 0, 32768); | ||||
| 
 | ||||
| static APMU_CLK(nand, NAND, 0xbf, 100000000); | ||||
| 
 | ||||
|  | ||||
| @ -216,7 +216,7 @@ static struct omap2_hsmmc_info mmc[] __initdata = { | ||||
| 	{ | ||||
| 		.name		= "wl1271", | ||||
| 		.mmc		= 3, | ||||
| 		.caps		= MMC_CAP_4_BIT_DATA, | ||||
| 		.caps		= MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD, | ||||
| 		.gpio_wp	= -EINVAL, | ||||
| 		.gpio_cd	= -EINVAL, | ||||
| 		.nonremovable	= true, | ||||
|  | ||||
| @ -297,7 +297,7 @@ static int __init _omap2_init_reprogram_sdrc(void) | ||||
| 		return 0; | ||||
| 
 | ||||
| 	dpll3_m2_ck = clk_get(NULL, "dpll3_m2_ck"); | ||||
| 	if (!dpll3_m2_ck) | ||||
| 	if (IS_ERR(dpll3_m2_ck)) | ||||
| 		return -EINVAL; | ||||
| 
 | ||||
| 	rate = clk_get_rate(dpll3_m2_ck); | ||||
|  | ||||
| @ -161,6 +161,23 @@ void omap2_pm_dump(int mode, int resume, unsigned int us) | ||||
| 		printk(KERN_INFO "%-20s: 0x%08x\n", regs[i].name, regs[i].val); | ||||
| } | ||||
| 
 | ||||
| void omap2_pm_wakeup_on_timer(u32 seconds, u32 milliseconds) | ||||
| { | ||||
| 	u32 tick_rate, cycles; | ||||
| 
 | ||||
| 	if (!seconds && !milliseconds) | ||||
| 		return; | ||||
| 
 | ||||
| 	tick_rate = clk_get_rate(omap_dm_timer_get_fclk(gptimer_wakeup)); | ||||
| 	cycles = tick_rate * seconds + tick_rate * milliseconds / 1000; | ||||
| 	omap_dm_timer_stop(gptimer_wakeup); | ||||
| 	omap_dm_timer_set_load_start(gptimer_wakeup, 0, 0xffffffff - cycles); | ||||
| 
 | ||||
| 	pr_info("PM: Resume timer in %u.%03u secs" | ||||
| 		" (%d ticks at %d ticks/sec.)\n", | ||||
| 		seconds, milliseconds, cycles, tick_rate); | ||||
| } | ||||
| 
 | ||||
| #ifdef CONFIG_DEBUG_FS | ||||
| #include <linux/debugfs.h> | ||||
| #include <linux/seq_file.h> | ||||
| @ -354,23 +371,6 @@ void pm_dbg_update_time(struct powerdomain *pwrdm, int prev) | ||||
| 	pwrdm->timer = t; | ||||
| } | ||||
| 
 | ||||
| void omap2_pm_wakeup_on_timer(u32 seconds, u32 milliseconds) | ||||
| { | ||||
| 	u32 tick_rate, cycles; | ||||
| 
 | ||||
| 	if (!seconds && !milliseconds) | ||||
| 		return; | ||||
| 
 | ||||
| 	tick_rate = clk_get_rate(omap_dm_timer_get_fclk(gptimer_wakeup)); | ||||
| 	cycles = tick_rate * seconds + tick_rate * milliseconds / 1000; | ||||
| 	omap_dm_timer_stop(gptimer_wakeup); | ||||
| 	omap_dm_timer_set_load_start(gptimer_wakeup, 0, 0xffffffff - cycles); | ||||
| 
 | ||||
| 	pr_info("PM: Resume timer in %u.%03u secs" | ||||
| 		" (%d ticks at %d ticks/sec.)\n", | ||||
| 		seconds, milliseconds, cycles, tick_rate); | ||||
| } | ||||
| 
 | ||||
| static int clkdm_dbg_show_counter(struct clockdomain *clkdm, void *user) | ||||
| { | ||||
| 	struct seq_file *s = (struct seq_file *)user; | ||||
|  | ||||
| @ -30,6 +30,7 @@ | ||||
| #include <linux/irq.h> | ||||
| #include <linux/time.h> | ||||
| #include <linux/gpio.h> | ||||
| #include <linux/console.h> | ||||
| 
 | ||||
| #include <asm/mach/time.h> | ||||
| #include <asm/mach/irq.h> | ||||
| @ -52,6 +53,19 @@ | ||||
| #include <plat/powerdomain.h> | ||||
| #include <plat/clockdomain.h> | ||||
| 
 | ||||
| #ifdef CONFIG_SUSPEND | ||||
| static suspend_state_t suspend_state = PM_SUSPEND_ON; | ||||
| static inline bool is_suspending(void) | ||||
| { | ||||
| 	return (suspend_state != PM_SUSPEND_ON); | ||||
| } | ||||
| #else | ||||
| static inline bool is_suspending(void) | ||||
| { | ||||
| 	return false; | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| static void (*omap2_sram_idle)(void); | ||||
| static void (*omap2_sram_suspend)(u32 dllctrl, void __iomem *sdrc_dlla_ctrl, | ||||
| 				  void __iomem *sdrc_power); | ||||
| @ -118,6 +132,11 @@ static void omap2_enter_full_retention(void) | ||||
| 	if (omap_irq_pending()) | ||||
| 		goto no_sleep; | ||||
| 
 | ||||
| 	/* Block console output in case it is on one of the OMAP UARTs */ | ||||
| 	if (!is_suspending()) | ||||
| 		if (try_acquire_console_sem()) | ||||
| 			goto no_sleep; | ||||
| 
 | ||||
| 	omap_uart_prepare_idle(0); | ||||
| 	omap_uart_prepare_idle(1); | ||||
| 	omap_uart_prepare_idle(2); | ||||
| @ -131,6 +150,9 @@ static void omap2_enter_full_retention(void) | ||||
| 	omap_uart_resume_idle(1); | ||||
| 	omap_uart_resume_idle(0); | ||||
| 
 | ||||
| 	if (!is_suspending()) | ||||
| 		release_console_sem(); | ||||
| 
 | ||||
| no_sleep: | ||||
| 	if (omap2_pm_debug) { | ||||
| 		unsigned long long tmp; | ||||
| @ -277,6 +299,12 @@ out: | ||||
| 	local_irq_enable(); | ||||
| } | ||||
| 
 | ||||
| static int omap2_pm_begin(suspend_state_t state) | ||||
| { | ||||
| 	suspend_state = state; | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| static int omap2_pm_prepare(void) | ||||
| { | ||||
| 	/* We cannot sleep in idle until we have resumed */ | ||||
| @ -326,10 +354,17 @@ static void omap2_pm_finish(void) | ||||
| 	enable_hlt(); | ||||
| } | ||||
| 
 | ||||
| static void omap2_pm_end(void) | ||||
| { | ||||
| 	suspend_state = PM_SUSPEND_ON; | ||||
| } | ||||
| 
 | ||||
| static struct platform_suspend_ops omap_pm_ops = { | ||||
| 	.begin		= omap2_pm_begin, | ||||
| 	.prepare	= omap2_pm_prepare, | ||||
| 	.enter		= omap2_pm_enter, | ||||
| 	.finish		= omap2_pm_finish, | ||||
| 	.end		= omap2_pm_end, | ||||
| 	.valid		= suspend_valid_only_mem, | ||||
| }; | ||||
| 
 | ||||
|  | ||||
| @ -28,6 +28,7 @@ | ||||
| #include <linux/clk.h> | ||||
| #include <linux/delay.h> | ||||
| #include <linux/slab.h> | ||||
| #include <linux/console.h> | ||||
| 
 | ||||
| #include <plat/sram.h> | ||||
| #include <plat/clockdomain.h> | ||||
| @ -49,6 +50,19 @@ | ||||
| #include "sdrc.h" | ||||
| #include "control.h" | ||||
| 
 | ||||
| #ifdef CONFIG_SUSPEND | ||||
| static suspend_state_t suspend_state = PM_SUSPEND_ON; | ||||
| static inline bool is_suspending(void) | ||||
| { | ||||
| 	return (suspend_state != PM_SUSPEND_ON); | ||||
| } | ||||
| #else | ||||
| static inline bool is_suspending(void) | ||||
| { | ||||
| 	return false; | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| /* Scratchpad offsets */ | ||||
| #define OMAP343X_TABLE_ADDRESS_OFFSET	   0xc4 | ||||
| #define OMAP343X_TABLE_VALUE_OFFSET	   0xc0 | ||||
| @ -385,6 +399,13 @@ void omap_sram_idle(void) | ||||
| 		omap3_enable_io_chain(); | ||||
| 	} | ||||
| 
 | ||||
| 	/* Block console output in case it is on one of the OMAP UARTs */ | ||||
| 	if (!is_suspending()) | ||||
| 		if (per_next_state < PWRDM_POWER_ON || | ||||
| 		    core_next_state < PWRDM_POWER_ON) | ||||
| 			if (try_acquire_console_sem()) | ||||
| 				goto console_still_active; | ||||
| 
 | ||||
| 	/* PER */ | ||||
| 	if (per_next_state < PWRDM_POWER_ON) { | ||||
| 		omap_uart_prepare_idle(2); | ||||
| @ -463,6 +484,10 @@ void omap_sram_idle(void) | ||||
| 		omap_uart_resume_idle(3); | ||||
| 	} | ||||
| 
 | ||||
| 	if (!is_suspending()) | ||||
| 		release_console_sem(); | ||||
| 
 | ||||
| console_still_active: | ||||
| 	/* Disable IO-PAD and IO-CHAIN wakeup */ | ||||
| 	if (omap3_has_io_wakeup() && | ||||
| 	    (per_next_state < PWRDM_POWER_ON || | ||||
| @ -504,8 +529,6 @@ out: | ||||
| } | ||||
| 
 | ||||
| #ifdef CONFIG_SUSPEND | ||||
| static suspend_state_t suspend_state; | ||||
| 
 | ||||
| static int omap3_pm_prepare(void) | ||||
| { | ||||
| 	disable_hlt(); | ||||
|  | ||||
| @ -243,13 +243,14 @@ | ||||
| #define OMAP24XX_EN_GPT1_MASK				(1 << 0) | ||||
| 
 | ||||
| /* PM_WKST_WKUP, CM_IDLEST_WKUP shared bits */ | ||||
| #define OMAP24XX_ST_GPIOS_SHIFT				(1 << 2) | ||||
| #define OMAP24XX_ST_GPIOS_MASK				2 | ||||
| #define OMAP24XX_ST_GPT1_SHIFT				(1 << 0) | ||||
| #define OMAP24XX_ST_GPT1_MASK				0 | ||||
| #define OMAP24XX_ST_GPIOS_SHIFT				2 | ||||
| #define OMAP24XX_ST_GPIOS_MASK				(1 << 2) | ||||
| #define OMAP24XX_ST_GPT1_SHIFT				0 | ||||
| #define OMAP24XX_ST_GPT1_MASK				(1 << 0) | ||||
| 
 | ||||
| /* CM_IDLEST_MDM and PM_WKST_MDM shared bits */ | ||||
| #define OMAP2430_ST_MDM_SHIFT				(1 << 0) | ||||
| #define OMAP2430_ST_MDM_SHIFT				0 | ||||
| #define OMAP2430_ST_MDM_MASK				(1 << 0) | ||||
| 
 | ||||
| 
 | ||||
| /* 3430 register bits shared between CM & PRM registers */ | ||||
|  | ||||
| @ -27,6 +27,7 @@ | ||||
| #include <linux/slab.h> | ||||
| #include <linux/serial_8250.h> | ||||
| #include <linux/pm_runtime.h> | ||||
| #include <linux/console.h> | ||||
| 
 | ||||
| #ifdef CONFIG_SERIAL_OMAP | ||||
| #include <plat/omap-serial.h> | ||||
| @ -406,7 +407,7 @@ void omap_uart_resume_idle(int num) | ||||
| 	struct omap_uart_state *uart; | ||||
| 
 | ||||
| 	list_for_each_entry(uart, &uart_list, node) { | ||||
| 		if (num == uart->num) { | ||||
| 		if (num == uart->num && uart->can_sleep) { | ||||
| 			omap_uart_enable_clocks(uart); | ||||
| 
 | ||||
| 			/* Check for IO pad wakeup */ | ||||
| @ -807,6 +808,8 @@ void __init omap_serial_init_port(int port) | ||||
| 
 | ||||
| 	oh->dev_attr = uart; | ||||
| 
 | ||||
| 	acquire_console_sem(); /* in case the earlycon is on the UART */ | ||||
| 
 | ||||
| 	/*
 | ||||
| 	 * Because of early UART probing, UART did not get idled | ||||
| 	 * on init.  Now that omap_device is ready, ensure full idle | ||||
| @ -831,6 +834,8 @@ void __init omap_serial_init_port(int port) | ||||
| 	omap_uart_block_sleep(uart); | ||||
| 	uart->timeout = DEFAULT_TIMEOUT; | ||||
| 
 | ||||
| 	release_console_sem(); | ||||
| 
 | ||||
| 	if ((cpu_is_omap34xx() && uart->padconf) || | ||||
| 	    (uart->wk_en && uart->wk_mask)) { | ||||
| 		device_init_wakeup(&od->pdev.dev, true); | ||||
|  | ||||
| @ -241,7 +241,8 @@ static inline void palmtx_keys_init(void) {} | ||||
| /******************************************************************************
 | ||||
|  * NAND Flash | ||||
|  ******************************************************************************/ | ||||
| #if defined(CONFIG_MTD_NAND_GPIO) || defined(CONFIG_MTD_NAND_GPIO_MODULE) | ||||
| #if defined(CONFIG_MTD_NAND_PLATFORM) || \ | ||||
| 	defined(CONFIG_MTD_NAND_PLATFORM_MODULE) | ||||
| static void palmtx_nand_cmd_ctl(struct mtd_info *mtd, int cmd, | ||||
| 				 unsigned int ctrl) | ||||
| { | ||||
|  | ||||
| @ -35,5 +35,6 @@ pen:	ldr	r7, [r6] | ||||
| 	 */ | ||||
| 	b	secondary_startup | ||||
| 
 | ||||
| 	.align | ||||
| 1:	.long	. | ||||
| 	.long	pen_release
 | ||||
|  | ||||
| @ -16,7 +16,7 @@ config CPU_S3C2412 | ||||
| config CPU_S3C2412_ONLY | ||||
| 	bool | ||||
| 	depends on ARCH_S3C2410 && !CPU_S3C2400 && !CPU_S3C2410 && \ | ||||
| 		   !CPU_2416 && !CPU_S3C2440 && !CPU_S3C2442 && \ | ||||
| 		   !CPU_S3C2416 && !CPU_S3C2440 && !CPU_S3C2442 && \ | ||||
| 		   !CPU_S3C2443 && CPU_S3C2412 | ||||
| 	default y if CPU_S3C2412 | ||||
| 
 | ||||
| @ -28,9 +28,16 @@ config S3C2412_DMA | ||||
| 
 | ||||
| config S3C2412_PM | ||||
| 	bool | ||||
| 	select S3C2412_PM_SLEEP | ||||
| 	help | ||||
| 	  Internal config node to apply S3C2412 power management | ||||
| 
 | ||||
| config S3C2412_PM_SLEEP | ||||
| 	bool | ||||
| 	help | ||||
| 	  Internal config node to apply sleep for S3C2412 power management. | ||||
| 	  Can be selected by another SoCs with similar sleep procedure. | ||||
| 
 | ||||
| # Note, the S3C2412 IOtiming support is in plat-s3c24xx | ||||
| 
 | ||||
| config S3C2412_CPUFREQ | ||||
|  | ||||
| @ -14,7 +14,8 @@ obj-$(CONFIG_CPU_S3C2412)	+= irq.o | ||||
| obj-$(CONFIG_CPU_S3C2412)	+= clock.o | ||||
| obj-$(CONFIG_CPU_S3C2412)	+= gpio.o | ||||
| obj-$(CONFIG_S3C2412_DMA)	+= dma.o | ||||
| obj-$(CONFIG_S3C2412_PM)	+= pm.o sleep.o | ||||
| obj-$(CONFIG_S3C2412_PM)	+= pm.o | ||||
| obj-$(CONFIG_S3C2412_PM_SLEEP)	+= sleep.o | ||||
| obj-$(CONFIG_S3C2412_CPUFREQ)	+= cpu-freq.o | ||||
| 
 | ||||
| # Machine support
 | ||||
|  | ||||
| @ -27,6 +27,7 @@ config S3C2416_DMA | ||||
| 
 | ||||
| config S3C2416_PM | ||||
| 	bool | ||||
| 	select S3C2412_PM_SLEEP | ||||
| 	help | ||||
| 	  Internal config node to apply S3C2416 power management | ||||
| 
 | ||||
| @ -35,9 +36,12 @@ menu "S3C2416 Machines" | ||||
| config MACH_SMDK2416 | ||||
| 	bool "SMDK2416" | ||||
| 	select CPU_S3C2416 | ||||
| 	select MACH_SMDK | ||||
| 	select S3C_DEV_FB | ||||
| 	select S3C_DEV_HSMMC | ||||
| 	select S3C_DEV_HSMMC1 | ||||
| 	select S3C_DEV_NAND | ||||
| 	select S3C_DEV_USB_HOST | ||||
| 	select S3C2416_PM if PM | ||||
| 	help | ||||
| 	  Say Y here if you are using an SMDK2416 | ||||
|  | ||||
| @ -18,6 +18,7 @@ config CPU_S3C2440 | ||||
| config CPU_S3C2442 | ||||
| 	bool | ||||
| 	select CPU_ARM920T | ||||
| 	select S3C_GPIO_PULL_DOWN | ||||
| 	select S3C2410_CLOCK | ||||
| 	select S3C2410_GPIO | ||||
| 	select S3C2410_PM if PM | ||||
| @ -178,6 +179,9 @@ config MACH_MINI2440 | ||||
| 	bool "MINI2440 development board" | ||||
| 	select CPU_S3C2440 | ||||
| 	select EEPROM_AT24 | ||||
| 	select NEW_LEDS | ||||
| 	select LEDS_CLASS | ||||
| 	select LEDS_TRIGGER | ||||
| 	select LEDS_TRIGGER_BACKLIGHT | ||||
| 	select S3C_DEV_NAND | ||||
| 	select S3C_DEV_USB_HOST | ||||
|  | ||||
| @ -46,9 +46,6 @@ int __init s3c2440_init(void) | ||||
| { | ||||
| 	printk("S3C2440: Initialising architecture\n"); | ||||
| 
 | ||||
| 	s3c24xx_gpiocfg_default.set_pull = s3c_gpio_setpull_1up; | ||||
| 	s3c24xx_gpiocfg_default.get_pull = s3c_gpio_getpull_1up; | ||||
| 
 | ||||
| 	/* change irq for watchdog */ | ||||
| 
 | ||||
| 	s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT; | ||||
| @ -58,3 +55,11 @@ int __init s3c2440_init(void) | ||||
| 
 | ||||
| 	return sysdev_register(&s3c2440_sysdev); | ||||
| } | ||||
| 
 | ||||
| void __init s3c2440_map_io(void) | ||||
| { | ||||
| 	s3c244x_map_io(); | ||||
| 
 | ||||
| 	s3c24xx_gpiocfg_default.set_pull = s3c_gpio_setpull_1up; | ||||
| 	s3c24xx_gpiocfg_default.get_pull = s3c_gpio_getpull_1up; | ||||
| } | ||||
|  | ||||
| @ -32,6 +32,7 @@ | ||||
| #include <linux/interrupt.h> | ||||
| #include <linux/ioport.h> | ||||
| #include <linux/mutex.h> | ||||
| #include <linux/gpio.h> | ||||
| #include <linux/clk.h> | ||||
| #include <linux/io.h> | ||||
| 
 | ||||
| @ -43,6 +44,11 @@ | ||||
| 
 | ||||
| #include <plat/clock.h> | ||||
| #include <plat/cpu.h> | ||||
| #include <plat/s3c244x.h> | ||||
| 
 | ||||
| #include <plat/gpio-core.h> | ||||
| #include <plat/gpio-cfg.h> | ||||
| #include <plat/gpio-cfg-helpers.h> | ||||
| 
 | ||||
| /* S3C2442 extended clock support */ | ||||
| 
 | ||||
| @ -163,3 +169,11 @@ int __init s3c2442_init(void) | ||||
| 
 | ||||
| 	return sysdev_register(&s3c2442_sysdev); | ||||
| } | ||||
| 
 | ||||
| void __init s3c2442_map_io(void) | ||||
| { | ||||
| 	s3c244x_map_io(); | ||||
| 
 | ||||
| 	s3c24xx_gpiocfg_default.set_pull = s3c_gpio_setpull_1down; | ||||
| 	s3c24xx_gpiocfg_default.get_pull = s3c_gpio_getpull_1down; | ||||
| } | ||||
|  | ||||
| @ -5,6 +5,7 @@ | ||||
| config CPU_S3C2443 | ||||
| 	bool | ||||
| 	depends on ARCH_S3C2410 | ||||
| 	select CPU_ARM920T | ||||
| 	select S3C2443_DMA if S3C2410_DMA | ||||
| 	select CPU_LLSERIAL_S3C2440 | ||||
| 	select SAMSUNG_CLKSRC | ||||
|  | ||||
| @ -378,6 +378,12 @@ static struct max8998_regulator_data aquila_regulators[] = { | ||||
| static struct max8998_platform_data aquila_max8998_pdata = { | ||||
| 	.num_regulators	= ARRAY_SIZE(aquila_regulators), | ||||
| 	.regulators	= aquila_regulators, | ||||
| 	.buck1_set1	= S5PV210_GPH0(3), | ||||
| 	.buck1_set2	= S5PV210_GPH0(4), | ||||
| 	.buck2_set3	= S5PV210_GPH0(5), | ||||
| 	.buck1_max_voltage1 = 1200000, | ||||
| 	.buck1_max_voltage2 = 1200000, | ||||
| 	.buck2_max_voltage = 1200000, | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
|  | ||||
| @ -518,6 +518,12 @@ static struct max8998_regulator_data goni_regulators[] = { | ||||
| static struct max8998_platform_data goni_max8998_pdata = { | ||||
| 	.num_regulators	= ARRAY_SIZE(goni_regulators), | ||||
| 	.regulators	= goni_regulators, | ||||
| 	.buck1_set1	= S5PV210_GPH0(3), | ||||
| 	.buck1_set2	= S5PV210_GPH0(4), | ||||
| 	.buck2_set3	= S5PV210_GPH0(5), | ||||
| 	.buck1_max_voltage1 = 1200000, | ||||
| 	.buck1_max_voltage2 = 1200000, | ||||
| 	.buck2_max_voltage = 1200000, | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| /* | ||||
|  * Copyright (C) 2010 Magnus Damm | ||||
|  * Copyright (C) 2008 Renesas Solutions Corp. | ||||
|  * | ||||
|  * This program is free software; you can redistribute it and/or modify
 | ||||
| @ -14,24 +15,45 @@ | ||||
|  * along with this program; if not, write to the Free Software
 | ||||
|  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA | ||||
|  */ | ||||
| #include <mach/hardware.h> | ||||
| #include <mach/irqs.h> | ||||
| 
 | ||||
| #define INTCA_BASE	0xe6980000 | ||||
| #define INTFLGA_OFFS	0x00000018 /* accept pending interrupt */ | ||||
| #define INTEVTA_OFFS	0x00000020 /* vector number of accepted interrupt */ | ||||
| #define INTLVLA_OFFS	0x00000030 /* priority level of accepted interrupt */ | ||||
| #define INTLVLB_OFFS	0x00000034 /* previous priority level */ | ||||
| 
 | ||||
| 	.macro  disable_fiq
 | ||||
| 	.endm | ||||
| 
 | ||||
| 	.macro  get_irqnr_preamble, base, tmp | ||||
| 	ldr     \base, =INTFLGA | ||||
| 	ldr     \base, =INTCA_BASE | ||||
| 	.endm | ||||
| 
 | ||||
| 	.macro  arch_ret_to_user, tmp1, tmp2 | ||||
| 	.endm | ||||
| 
 | ||||
| 	.macro  get_irqnr_and_base, irqnr, irqstat, base, tmp | ||||
| 	ldr     \irqnr, [\base] | ||||
| 	/* The single INTFLGA read access below results in the following: | ||||
| 	 * | ||||
| 	 * 1. INTLVLB is updated with old priority value from INTLVLA | ||||
| 	 * 2. Highest priority interrupt is accepted | ||||
| 	 * 3. INTLVLA is updated to contain priority of accepted interrupt | ||||
| 	 * 4. Accepted interrupt vector is stored in INTFLGA and INTEVTA | ||||
| 	 */ | ||||
| 	ldr     \irqnr, [\base, #INTFLGA_OFFS] | ||||
| 
 | ||||
| 	/* Restore INTLVLA with the value saved in INTLVLB. | ||||
| 	 * This is required to support interrupt priorities properly. | ||||
| 	 */ | ||||
| 	ldrb	\tmp, [\base, #INTLVLB_OFFS] | ||||
| 	strb    \tmp, [\base, #INTLVLA_OFFS] | ||||
| 
 | ||||
| 	/* Handle invalid vector number case */ | ||||
| 	cmp	\irqnr, #0 | ||||
| 	beq	1000f | ||||
| 	/* intevt to irq number */ | ||||
| 
 | ||||
| 	/* Convert vector to irq number, same as the evt2irq() macro */ | ||||
| 	lsr	\irqnr, \irqnr, #0x5 | ||||
| 	subs	\irqnr, \irqnr, #16 | ||||
| 
 | ||||
|  | ||||
| @ -2,6 +2,6 @@ | ||||
| #define __ASM_MACH_VMALLOC_H | ||||
| 
 | ||||
| /* Vmalloc at ... - 0xe5ffffff */ | ||||
| #define VMALLOC_END 0xe6000000 | ||||
| #define VMALLOC_END 0xe6000000UL | ||||
| 
 | ||||
| #endif /* __ASM_MACH_VMALLOC_H */ | ||||
|  | ||||
| @ -21,8 +21,8 @@ | ||||
| #include <mach/io.h> | ||||
| 
 | ||||
| 	.macro  addruart, rp, rv | ||||
|         ldreq   \rp, =IO_APB_PHYS       @ physical
 | ||||
|         ldrne   \rv, =IO_APB_VIRT        @ virtual
 | ||||
|         ldr     \rp, =IO_APB_PHYS       @ physical
 | ||||
|         ldr     \rv, =IO_APB_VIRT        @ virtual
 | ||||
| #if defined(CONFIG_TEGRA_DEBUG_UART_NONE) | ||||
| #error "A debug UART must be selected in the kernel config to use DEBUG_LL" | ||||
| #elif defined(CONFIG_TEGRA_DEBUG_UARTA) | ||||
|  | ||||
| @ -35,5 +35,6 @@ pen:	ldr	r7, [r6] | ||||
| 	 */ | ||||
| 	b	secondary_startup | ||||
| 
 | ||||
| 	.align | ||||
| 1:	.long	. | ||||
| 	.long	pen_release
 | ||||
|  | ||||
| @ -203,6 +203,10 @@ ENTRY(v6_flush_kern_dcache_area) | ||||
|  *	- end     - virtual end address of region | ||||
|  */ | ||||
| v6_dma_inv_range: | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldrb	r2, [r0]			@ read for ownership
 | ||||
| 	strb	r2, [r0]			@ write for ownership
 | ||||
| #endif | ||||
| 	tst	r0, #D_CACHE_LINE_SIZE - 1 | ||||
| 	bic	r0, r0, #D_CACHE_LINE_SIZE - 1 | ||||
| #ifdef HARVARD_CACHE | ||||
| @ -211,6 +215,10 @@ v6_dma_inv_range: | ||||
| 	mcrne	p15, 0, r0, c7, c11, 1		@ clean unified line
 | ||||
| #endif | ||||
| 	tst	r1, #D_CACHE_LINE_SIZE - 1 | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldrneb	r2, [r1, #-1]			@ read for ownership
 | ||||
| 	strneb	r2, [r1, #-1]			@ write for ownership
 | ||||
| #endif | ||||
| 	bic	r1, r1, #D_CACHE_LINE_SIZE - 1 | ||||
| #ifdef HARVARD_CACHE | ||||
| 	mcrne	p15, 0, r1, c7, c14, 1		@ clean & invalidate D line
 | ||||
| @ -218,10 +226,6 @@ v6_dma_inv_range: | ||||
| 	mcrne	p15, 0, r1, c7, c15, 1		@ clean & invalidate unified line
 | ||||
| #endif | ||||
| 1: | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldr	r2, [r0]			@ read for ownership
 | ||||
| 	str	r2, [r0]			@ write for ownership
 | ||||
| #endif | ||||
| #ifdef HARVARD_CACHE | ||||
| 	mcr	p15, 0, r0, c7, c6, 1		@ invalidate D line
 | ||||
| #else | ||||
| @ -229,6 +233,10 @@ v6_dma_inv_range: | ||||
| #endif | ||||
| 	add	r0, r0, #D_CACHE_LINE_SIZE | ||||
| 	cmp	r0, r1 | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldrlo	r2, [r0]			@ read for ownership
 | ||||
| 	strlo	r2, [r0]			@ write for ownership
 | ||||
| #endif | ||||
| 	blo	1b | ||||
| 	mov	r0, #0 | ||||
| 	mcr	p15, 0, r0, c7, c10, 4		@ drain write buffer
 | ||||
| @ -263,12 +271,12 @@ v6_dma_clean_range: | ||||
|  *	- end     - virtual end address of region | ||||
|  */ | ||||
| ENTRY(v6_dma_flush_range) | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldrb	r2, [r0]		@ read for ownership
 | ||||
| 	strb	r2, [r0]		@ write for ownership
 | ||||
| #endif | ||||
| 	bic	r0, r0, #D_CACHE_LINE_SIZE - 1 | ||||
| 1: | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldr	r2, [r0]			@ read for ownership
 | ||||
| 	str	r2, [r0]			@ write for ownership
 | ||||
| #endif | ||||
| #ifdef HARVARD_CACHE | ||||
| 	mcr	p15, 0, r0, c7, c14, 1		@ clean & invalidate D line
 | ||||
| #else | ||||
| @ -276,6 +284,10 @@ ENTRY(v6_dma_flush_range) | ||||
| #endif | ||||
| 	add	r0, r0, #D_CACHE_LINE_SIZE | ||||
| 	cmp	r0, r1 | ||||
| #ifdef CONFIG_DMA_CACHE_RWFO | ||||
| 	ldrlob	r2, [r0]			@ read for ownership
 | ||||
| 	strlob	r2, [r0]			@ write for ownership
 | ||||
| #endif | ||||
| 	blo	1b | ||||
| 	mov	r0, #0 | ||||
| 	mcr	p15, 0, r0, c7, c10, 4		@ drain write buffer
 | ||||
|  | ||||
| @ -173,15 +173,22 @@ ENTRY(v7_coherent_user_range) | ||||
|  UNWIND(.fnstart		) | ||||
| 	dcache_line_size r2, r3 | ||||
| 	sub	r3, r2, #1 | ||||
| 	bic	r0, r0, r3 | ||||
| 	bic	r12, r0, r3 | ||||
| 1: | ||||
|  USER(	mcr	p15, 0, r0, c7, c11, 1	)	@ clean D line to the point of unification
 | ||||
| 	dsb | ||||
|  USER(	mcr	p15, 0, r0, c7, c5, 1	)	@ invalidate I line
 | ||||
| 	add	r0, r0, r2 | ||||
| 2: | ||||
| 	cmp	r0, r1 | ||||
|  USER(	mcr	p15, 0, r12, c7, c11, 1	)	@ clean D line to the point of unification
 | ||||
| 	add	r12, r12, r2 | ||||
| 	cmp	r12, r1 | ||||
| 	blo	1b | ||||
| 	dsb | ||||
| 	icache_line_size r2, r3 | ||||
| 	sub	r3, r2, #1 | ||||
| 	bic	r12, r0, r3 | ||||
| 2: | ||||
|  USER(	mcr	p15, 0, r12, c7, c5, 1	)	@ invalidate I line
 | ||||
| 	add	r12, r12, r2 | ||||
| 	cmp	r12, r1 | ||||
| 	blo	2b | ||||
| 3: | ||||
| 	mov	r0, #0 | ||||
| 	ALT_SMP(mcr	p15, 0, r0, c7, c1, 6)	@ invalidate BTB Inner Shareable
 | ||||
| 	ALT_UP(mcr	p15, 0, r0, c7, c5, 6)	@ invalidate BTB
 | ||||
| @ -194,10 +201,10 @@ ENTRY(v7_coherent_user_range) | ||||
|  * isn't mapped, just try the next page. | ||||
|  */ | ||||
| 9001: | ||||
| 	mov	r0, r0, lsr #12 | ||||
| 	mov	r0, r0, lsl #12 | ||||
| 	add	r0, r0, #4096 | ||||
| 	b	2b | ||||
| 	mov	r12, r12, lsr #12 | ||||
| 	mov	r12, r12, lsl #12 | ||||
| 	add	r12, r12, #4096 | ||||
| 	b	3b | ||||
|  UNWIND(.fnend		) | ||||
| ENDPROC(v7_coherent_kern_range) | ||||
| ENDPROC(v7_coherent_user_range) | ||||
|  | ||||
| @ -61,17 +61,27 @@ | ||||
| 	.endm | ||||
| 
 | ||||
| /* | ||||
|  * cache_line_size - get the cache line size from the CSIDR register | ||||
|  * (available on ARMv7+). It assumes that the CSSR register was configured | ||||
|  * to access the L1 data cache CSIDR. | ||||
|  * dcache_line_size - get the minimum D-cache line size from the CTR register | ||||
|  * on ARMv7. | ||||
|  */ | ||||
| 	.macro	dcache_line_size, reg, tmp | ||||
| 	mrc	p15, 1, \tmp, c0, c0, 0		@ read CSIDR
 | ||||
| 	and	\tmp, \tmp, #7			@ cache line size encoding
 | ||||
| 	mov	\reg, #16			@ size offset
 | ||||
| 	mrc	p15, 0, \tmp, c0, c0, 1		@ read ctr
 | ||||
| 	lsr	\tmp, \tmp, #16 | ||||
| 	and	\tmp, \tmp, #0xf		@ cache line size encoding
 | ||||
| 	mov	\reg, #4			@ bytes per word
 | ||||
| 	mov	\reg, \reg, lsl \tmp		@ actual cache line size
 | ||||
| 	.endm | ||||
| 
 | ||||
| /* | ||||
|  * icache_line_size - get the minimum I-cache line size from the CTR register | ||||
|  * on ARMv7. | ||||
|  */ | ||||
| 	.macro	icache_line_size, reg, tmp | ||||
| 	mrc	p15, 0, \tmp, c0, c0, 1		@ read ctr
 | ||||
| 	and	\tmp, \tmp, #0xf		@ cache line size encoding
 | ||||
| 	mov	\reg, #4			@ bytes per word
 | ||||
| 	mov	\reg, \reg, lsl \tmp		@ actual cache line size
 | ||||
| 	.endm | ||||
| 
 | ||||
| /* | ||||
|  * Sanity check the PTE configuration for the code below - which makes | ||||
|  | ||||
| @ -381,7 +381,7 @@ __v7_ca9mp_proc_info: | ||||
| 		PMD_SECT_XN | \ | ||||
| 		PMD_SECT_AP_WRITE | \ | ||||
| 		PMD_SECT_AP_READ | ||||
| 	b	__v7_ca9mp_setup | ||||
| 	W(b)	__v7_ca9mp_setup | ||||
| 	.long	cpu_arch_name
 | ||||
| 	.long	cpu_elf_name
 | ||||
| 	.long	HWCAP_SWP|HWCAP_HALF|HWCAP_THUMB|HWCAP_FAST_MULT|HWCAP_EDSP|HWCAP_TLS | ||||
| @ -413,7 +413,7 @@ __v7_proc_info: | ||||
| 		PMD_SECT_XN | \ | ||||
| 		PMD_SECT_AP_WRITE | \ | ||||
| 		PMD_SECT_AP_READ | ||||
| 	b	__v7_setup | ||||
| 	W(b)	__v7_setup | ||||
| 	.long	cpu_arch_name
 | ||||
| 	.long	cpu_elf_name
 | ||||
| 	.long	HWCAP_SWP|HWCAP_HALF|HWCAP_THUMB|HWCAP_FAST_MULT|HWCAP_EDSP|HWCAP_TLS | ||||
|  | ||||
| @ -18,6 +18,7 @@ | ||||
| #include <linux/time.h> | ||||
| #include <linux/init.h> | ||||
| #include <linux/timex.h> | ||||
| #include <linux/sched.h> | ||||
| #include <linux/io.h> | ||||
| #include <linux/clocksource.h> | ||||
| #include <linux/clockchips.h> | ||||
| @ -36,7 +37,7 @@ | ||||
| /*
 | ||||
|  * IOP clocksource (free-running timer 1). | ||||
|  */ | ||||
| static cycle_t iop_clocksource_read(struct clocksource *unused) | ||||
| static cycle_t notrace iop_clocksource_read(struct clocksource *unused) | ||||
| { | ||||
| 	return 0xffffffffu - read_tcr1(); | ||||
| } | ||||
|  | ||||
| @ -16,6 +16,7 @@ | ||||
| #include <linux/init.h> | ||||
| #include <linux/clk.h> | ||||
| #include <linux/io.h> | ||||
| #include <linux/err.h> | ||||
| 
 | ||||
| #include <plat/common.h> | ||||
| #include <plat/board.h> | ||||
| @ -164,7 +165,7 @@ static int __init omap_init_clocksource_32k(void) | ||||
| 			return -ENODEV; | ||||
| 
 | ||||
| 		sync_32k_ick = clk_get(NULL, "omap_32ksync_ick"); | ||||
| 		if (sync_32k_ick) | ||||
| 		if (!IS_ERR(sync_32k_ick)) | ||||
| 			clk_enable(sync_32k_ick); | ||||
| 
 | ||||
| 		clocksource_32k.mult = clocksource_hz2mult(32768, | ||||
|  | ||||
| @ -166,7 +166,7 @@ static void __init omap_detect_sram(void) | ||||
| 		     cpu_is_omap1710()) | ||||
| 			omap_sram_size = 0x4000;	/* 16K */ | ||||
| 		else if (cpu_is_omap1611()) | ||||
| 			omap_sram_size = 0x3e800;	/* 250K */ | ||||
| 			omap_sram_size = SZ_256K; | ||||
| 		else { | ||||
| 			printk(KERN_ERR "Could not detect SRAM size\n"); | ||||
| 			omap_sram_size = 0x4000; | ||||
|  | ||||
| @ -8,7 +8,7 @@ config PLAT_S3C24XX | ||||
| 	default y | ||||
| 	select NO_IOPORT | ||||
| 	select ARCH_REQUIRE_GPIOLIB | ||||
| 	select S3C_DEVICE_NAND | ||||
| 	select S3C_DEV_NAND | ||||
| 	select S3C_GPIO_CFG_S3C24XX | ||||
| 	help | ||||
| 	  Base platform code for any Samsung S3C24XX device | ||||
|  | ||||
| @ -88,7 +88,7 @@ static struct cpu_table cpu_ids[] __initdata = { | ||||
| 	{ | ||||
| 		.idcode		= 0x32440000, | ||||
| 		.idmask		= 0xffffffff, | ||||
| 		.map_io		= s3c244x_map_io, | ||||
| 		.map_io		= s3c2440_map_io, | ||||
| 		.init_clocks	= s3c244x_init_clocks, | ||||
| 		.init_uarts	= s3c244x_init_uarts, | ||||
| 		.init		= s3c2440_init, | ||||
| @ -97,7 +97,7 @@ static struct cpu_table cpu_ids[] __initdata = { | ||||
| 	{ | ||||
| 		.idcode		= 0x32440001, | ||||
| 		.idmask		= 0xffffffff, | ||||
| 		.map_io		= s3c244x_map_io, | ||||
| 		.map_io		= s3c2440_map_io, | ||||
| 		.init_clocks	= s3c244x_init_clocks, | ||||
| 		.init_uarts	= s3c244x_init_uarts, | ||||
| 		.init		= s3c2440_init, | ||||
| @ -106,7 +106,7 @@ static struct cpu_table cpu_ids[] __initdata = { | ||||
| 	{ | ||||
| 		.idcode		= 0x32440aaa, | ||||
| 		.idmask		= 0xffffffff, | ||||
| 		.map_io		= s3c244x_map_io, | ||||
| 		.map_io		= s3c2442_map_io, | ||||
| 		.init_clocks	= s3c244x_init_clocks, | ||||
| 		.init_uarts	= s3c244x_init_uarts, | ||||
| 		.init		= s3c2442_init, | ||||
| @ -115,7 +115,7 @@ static struct cpu_table cpu_ids[] __initdata = { | ||||
| 	{ | ||||
| 		.idcode		= 0x32440aab, | ||||
| 		.idmask		= 0xffffffff, | ||||
| 		.map_io		= s3c244x_map_io, | ||||
| 		.map_io		= s3c2442_map_io, | ||||
| 		.init_clocks	= s3c244x_init_clocks, | ||||
| 		.init_uarts	= s3c244x_init_uarts, | ||||
| 		.init		= s3c2442_init, | ||||
|  | ||||
| @ -82,8 +82,6 @@ static struct s3c_gpio_cfg s3c24xx_gpiocfg_banka = { | ||||
| struct s3c_gpio_cfg s3c24xx_gpiocfg_default = { | ||||
| 	.set_config	= s3c_gpio_setcfg_s3c24xx, | ||||
| 	.get_config	= s3c_gpio_getcfg_s3c24xx, | ||||
| 	.set_pull	= s3c_gpio_setpull_1up, | ||||
| 	.get_pull	= s3c_gpio_getpull_1up, | ||||
| }; | ||||
| 
 | ||||
| struct s3c_gpio_chip s3c24xx_gpios[] = { | ||||
|  | ||||
| @ -21,17 +21,22 @@ extern void s3c244x_init_clocks(int xtal); | ||||
| #else | ||||
| #define s3c244x_init_clocks NULL | ||||
| #define s3c244x_init_uarts NULL | ||||
| #define s3c244x_map_io NULL | ||||
| #endif | ||||
| 
 | ||||
| #ifdef CONFIG_CPU_S3C2440 | ||||
| extern  int s3c2440_init(void); | ||||
| 
 | ||||
| extern void s3c2440_map_io(void); | ||||
| #else | ||||
| #define s3c2440_init NULL | ||||
| #define s3c2440_map_io NULL | ||||
| #endif | ||||
| 
 | ||||
| #ifdef CONFIG_CPU_S3C2442 | ||||
| extern  int s3c2442_init(void); | ||||
| 
 | ||||
| extern void s3c2442_map_io(void); | ||||
| #else | ||||
| #define s3c2442_init NULL | ||||
| #define s3c2442_map_io NULL | ||||
| #endif | ||||
|  | ||||
| @ -280,18 +280,17 @@ s3c_gpio_pull_t s3c_gpio_getpull_updown(struct s3c_gpio_chip *chip, | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #ifdef CONFIG_S3C_GPIO_PULL_UP | ||||
| int s3c_gpio_setpull_1up(struct s3c_gpio_chip *chip, | ||||
| 			 unsigned int off, s3c_gpio_pull_t pull) | ||||
| #if defined(CONFIG_S3C_GPIO_PULL_UP) || defined(CONFIG_S3C_GPIO_PULL_DOWN) | ||||
| static int s3c_gpio_setpull_1(struct s3c_gpio_chip *chip, | ||||
| 			 unsigned int off, s3c_gpio_pull_t pull, | ||||
| 			 s3c_gpio_pull_t updown) | ||||
| { | ||||
| 	void __iomem *reg = chip->base + 0x08; | ||||
| 	u32 pup = __raw_readl(reg); | ||||
| 
 | ||||
| 	pup = __raw_readl(reg); | ||||
| 
 | ||||
| 	if (pup == S3C_GPIO_PULL_UP) | ||||
| 	if (pull == updown) | ||||
| 		pup &= ~(1 << off); | ||||
| 	else if (pup == S3C_GPIO_PULL_NONE) | ||||
| 	else if (pull == S3C_GPIO_PULL_NONE) | ||||
| 		pup |= (1 << off); | ||||
| 	else | ||||
| 		return -EINVAL; | ||||
| @ -300,17 +299,45 @@ int s3c_gpio_setpull_1up(struct s3c_gpio_chip *chip, | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| s3c_gpio_pull_t s3c_gpio_getpull_1up(struct s3c_gpio_chip *chip, | ||||
| 				     unsigned int off) | ||||
| static s3c_gpio_pull_t s3c_gpio_getpull_1(struct s3c_gpio_chip *chip, | ||||
| 				     unsigned int off, s3c_gpio_pull_t updown) | ||||
| { | ||||
| 	void __iomem *reg = chip->base + 0x08; | ||||
| 	u32 pup = __raw_readl(reg); | ||||
| 
 | ||||
| 	pup &= (1 << off); | ||||
| 	return pup ? S3C_GPIO_PULL_NONE : S3C_GPIO_PULL_UP; | ||||
| 	return pup ? S3C_GPIO_PULL_NONE : updown; | ||||
| } | ||||
| #endif /* CONFIG_S3C_GPIO_PULL_UP || CONFIG_S3C_GPIO_PULL_DOWN */ | ||||
| 
 | ||||
| #ifdef CONFIG_S3C_GPIO_PULL_UP | ||||
| s3c_gpio_pull_t s3c_gpio_getpull_1up(struct s3c_gpio_chip *chip, | ||||
| 				     unsigned int off) | ||||
| { | ||||
| 	return s3c_gpio_getpull_1(chip, off, S3C_GPIO_PULL_UP); | ||||
| } | ||||
| 
 | ||||
| int s3c_gpio_setpull_1up(struct s3c_gpio_chip *chip, | ||||
| 			 unsigned int off, s3c_gpio_pull_t pull) | ||||
| { | ||||
| 	return s3c_gpio_setpull_1(chip, off, pull, S3C_GPIO_PULL_UP); | ||||
| } | ||||
| #endif /* CONFIG_S3C_GPIO_PULL_UP */ | ||||
| 
 | ||||
| #ifdef CONFIG_S3C_GPIO_PULL_DOWN | ||||
| s3c_gpio_pull_t s3c_gpio_getpull_1down(struct s3c_gpio_chip *chip, | ||||
| 				     unsigned int off) | ||||
| { | ||||
| 	return s3c_gpio_getpull_1(chip, off, S3C_GPIO_PULL_DOWN); | ||||
| } | ||||
| 
 | ||||
| int s3c_gpio_setpull_1down(struct s3c_gpio_chip *chip, | ||||
| 			 unsigned int off, s3c_gpio_pull_t pull) | ||||
| { | ||||
| 	return s3c_gpio_setpull_1(chip, off, pull, S3C_GPIO_PULL_DOWN); | ||||
| } | ||||
| #endif /* CONFIG_S3C_GPIO_PULL_DOWN */ | ||||
| 
 | ||||
| #ifdef CONFIG_S5P_GPIO_DRVSTR | ||||
| s5p_gpio_drvstr_t s5p_gpio_get_drvstr(unsigned int pin) | ||||
| { | ||||
|  | ||||
| @ -209,6 +209,17 @@ extern s3c_gpio_pull_t s3c_gpio_getpull_updown(struct s3c_gpio_chip *chip, | ||||
| extern s3c_gpio_pull_t s3c_gpio_getpull_1up(struct s3c_gpio_chip *chip, | ||||
| 					    unsigned int off); | ||||
| 
 | ||||
| /**
 | ||||
|  * s3c_gpio_getpull_1down() - Get configuration for choice of down or none | ||||
|  * @chip: The gpio chip that the GPIO pin belongs to | ||||
|  * @off: The offset to the pin to get the configuration of. | ||||
|  * | ||||
|  * This helper function reads the state of the pull-down resistor for the | ||||
|  * given GPIO in the same case as s3c_gpio_setpull_1down. | ||||
| */ | ||||
| extern s3c_gpio_pull_t s3c_gpio_getpull_1down(struct s3c_gpio_chip *chip, | ||||
| 					    unsigned int off); | ||||
| 
 | ||||
| /**
 | ||||
|  * s3c_gpio_setpull_s3c2443() - Pull configuration for s3c2443. | ||||
|  * @chip: The gpio chip that is being configured. | ||||
|  | ||||
| @ -12,7 +12,7 @@ | ||||
| # | ||||
| #   http://www.arm.linux.org.uk/developer/machines/?action=new | ||||
| # | ||||
| # Last update: Thu Sep 9 22:43:01 2010 | ||||
| # Last update: Sun Dec 12 23:24:27 2010 | ||||
| # | ||||
| # machine_is_xxx	CONFIG_xxxx		MACH_TYPE_xxx		number | ||||
| # | ||||
| @ -2321,7 +2321,7 @@ mx31txtr		MACH_MX31TXTR		MX31TXTR		2332 | ||||
| u380			MACH_U380		U380			2333 | ||||
| oamp3_hualu		MACH_HUALU_BOARD	HUALU_BOARD		2334 | ||||
| npcmx50			MACH_NPCMX50		NPCMX50			2335 | ||||
| mx51_lange51		MACH_MX51_LANGE51	MX51_LANGE51		2336 | ||||
| mx51_efikamx		MACH_MX51_EFIKAMX	MX51_EFIKAMX		2336 | ||||
| mx51_lange52		MACH_MX51_LANGE52	MX51_LANGE52		2337 | ||||
| riom			MACH_RIOM		RIOM			2338 | ||||
| comcas			MACH_COMCAS		COMCAS			2339 | ||||
| @ -2355,7 +2355,7 @@ at91sam9263cs		MACH_AT91SAM9263CS	AT91SAM9263CS		2366 | ||||
| csb732			MACH_CSB732		CSB732			2367 | ||||
| u8500			MACH_U8500		U8500			2368 | ||||
| huqiu			MACH_HUQIU		HUQIU			2369 | ||||
| mx51_kunlun		MACH_MX51_KUNLUN	MX51_KUNLUN		2370 | ||||
| mx51_efikasb		MACH_MX51_EFIKASB	MX51_EFIKASB		2370 | ||||
| pmt1g			MACH_PMT1G		PMT1G			2371 | ||||
| htcelf			MACH_HTCELF		HTCELF			2372 | ||||
| armadillo420		MACH_ARMADILLO420	ARMADILLO420		2373 | ||||
| @ -2971,7 +2971,7 @@ premierwave_en		MACH_PREMIERWAVE_EN	PREMIERWAVE_EN		2985 | ||||
| wasabi			MACH_WASABI		WASABI			2986 | ||||
| vivow			MACH_VIVOW		VIVOW			2987 | ||||
| mx50_rdp		MACH_MX50_RDP		MX50_RDP		2988 | ||||
| universal		MACH_UNIVERSAL		UNIVERSAL		2989 | ||||
| universal_c210		MACH_UNIVERSAL_C210	UNIVERSAL_C210		2989 | ||||
| real6410		MACH_REAL6410		REAL6410		2990 | ||||
| spx_sakura		MACH_SPX_SAKURA		SPX_SAKURA		2991 | ||||
| ij3k_2440		MACH_IJ3K_2440		IJ3K_2440		2992 | ||||
| @ -3044,3 +3044,178 @@ harvest_desoto		MACH_HARVEST_DESOTO	HARVEST_DESOTO		3059 | ||||
| msm8x60_qrdc		MACH_MSM8X60_QRDC	MSM8X60_QRDC		3060 | ||||
| spear900		MACH_SPEAR900		SPEAR900		3061 | ||||
| pcontrol_g20		MACH_PCONTROL_G20	PCONTROL_G20		3062 | ||||
| rdstor			MACH_RDSTOR		RDSTOR			3063 | ||||
| usdloader		MACH_USDLOADER		USDLOADER		3064 | ||||
| tsoploader		MACH_TSOPLOADER		TSOPLOADER		3065 | ||||
| kronos			MACH_KRONOS		KRONOS			3066 | ||||
| ffcore			MACH_FFCORE		FFCORE			3067 | ||||
| mone			MACH_MONE		MONE			3068 | ||||
| unit2s			MACH_UNIT2S		UNIT2S			3069 | ||||
| acer_a5			MACH_ACER_A5		ACER_A5			3070 | ||||
| etherpro_isp		MACH_ETHERPRO_ISP	ETHERPRO_ISP		3071 | ||||
| stretchs7000		MACH_STRETCHS7000	STRETCHS7000		3072 | ||||
| p87_smartsim		MACH_P87_SMARTSIM	P87_SMARTSIM		3073 | ||||
| tulip			MACH_TULIP		TULIP			3074 | ||||
| sunflower		MACH_SUNFLOWER		SUNFLOWER		3075 | ||||
| rib			MACH_RIB		RIB			3076 | ||||
| clod			MACH_CLOD		CLOD			3077 | ||||
| rump			MACH_RUMP		RUMP			3078 | ||||
| tenderloin		MACH_TENDERLOIN		TENDERLOIN		3079 | ||||
| shortloin		MACH_SHORTLOIN		SHORTLOIN		3080 | ||||
| crespo			MACH_CRESPO		CRESPO			3081 | ||||
| antares			MACH_ANTARES		ANTARES			3082 | ||||
| wb40n			MACH_WB40N		WB40N			3083 | ||||
| herring			MACH_HERRING		HERRING			3084 | ||||
| naxy400			MACH_NAXY400		NAXY400			3085 | ||||
| naxy1200		MACH_NAXY1200		NAXY1200		3086 | ||||
| vpr200			MACH_VPR200		VPR200			3087 | ||||
| bug20			MACH_BUG20		BUG20			3088 | ||||
| goflexnet		MACH_GOFLEXNET		GOFLEXNET		3089 | ||||
| torbreck		MACH_TORBRECK		TORBRECK		3090 | ||||
| saarb_mg1		MACH_SAARB_MG1		SAARB_MG1		3091 | ||||
| callisto		MACH_CALLISTO		CALLISTO		3092 | ||||
| multhsu			MACH_MULTHSU		MULTHSU			3093 | ||||
| saluda			MACH_SALUDA		SALUDA			3094 | ||||
| pemp_omap3_apollo	MACH_PEMP_OMAP3_APOLLO	PEMP_OMAP3_APOLLO	3095 | ||||
| vc0718			MACH_VC0718		VC0718			3096 | ||||
| mvblx			MACH_MVBLX		MVBLX			3097 | ||||
| inhand_apeiron		MACH_INHAND_APEIRON	INHAND_APEIRON		3098 | ||||
| inhand_fury		MACH_INHAND_FURY	INHAND_FURY		3099 | ||||
| inhand_siren		MACH_INHAND_SIREN	INHAND_SIREN		3100 | ||||
| hdnvp			MACH_HDNVP		HDNVP			3101 | ||||
| softwinner		MACH_SOFTWINNER		SOFTWINNER		3102 | ||||
| prima2_evb		MACH_PRIMA2_EVB		PRIMA2_EVB		3103 | ||||
| nas6210			MACH_NAS6210		NAS6210			3104 | ||||
| unisdev			MACH_UNISDEV		UNISDEV			3105 | ||||
| sbca11			MACH_SBCA11		SBCA11			3106 | ||||
| saga			MACH_SAGA		SAGA			3107 | ||||
| ns_k330			MACH_NS_K330		NS_K330			3108 | ||||
| tanna			MACH_TANNA		TANNA			3109 | ||||
| imate8502		MACH_IMATE8502		IMATE8502		3110 | ||||
| aspen			MACH_ASPEN		ASPEN			3111 | ||||
| daintree_cwac		MACH_DAINTREE_CWAC	DAINTREE_CWAC		3112 | ||||
| zmx25			MACH_ZMX25		ZMX25			3113 | ||||
| maple1			MACH_MAPLE1		MAPLE1			3114 | ||||
| qsd8x72_surf		MACH_QSD8X72_SURF	QSD8X72_SURF		3115 | ||||
| qsd8x72_ffa		MACH_QSD8X72_FFA	QSD8X72_FFA		3116 | ||||
| abilene			MACH_ABILENE		ABILENE			3117 | ||||
| eigen_ttr		MACH_EIGEN_TTR		EIGEN_TTR		3118 | ||||
| iomega_ix2_200		MACH_IOMEGA_IX2_200	IOMEGA_IX2_200		3119 | ||||
| coretec_vcx7400		MACH_CORETEC_VCX7400	CORETEC_VCX7400		3120 | ||||
| santiago		MACH_SANTIAGO		SANTIAGO		3121 | ||||
| mx257sol		MACH_MX257SOL		MX257SOL		3122 | ||||
| strasbourg		MACH_STRASBOURG		STRASBOURG		3123 | ||||
| msm8x60_fluid		MACH_MSM8X60_FLUID	MSM8X60_FLUID		3124 | ||||
| smartqv5		MACH_SMARTQV5		SMARTQV5		3125 | ||||
| smartqv3		MACH_SMARTQV3		SMARTQV3		3126 | ||||
| smartqv7		MACH_SMARTQV7		SMARTQV7		3127 | ||||
| paz00			MACH_PAZ00		PAZ00			3128 | ||||
| acmenetusfoxg20		MACH_ACMENETUSFOXG20	ACMENETUSFOXG20		3129 | ||||
| htcwillow		MACH_HTCWILLOW		HTCWILLOW		3130 | ||||
| fwbd_0404		MACH_FWBD_0404		FWBD_0404		3131 | ||||
| hdgu			MACH_HDGU		HDGU			3132 | ||||
| pyramid			MACH_PYRAMID		PYRAMID			3133 | ||||
| epiphan			MACH_EPIPHAN		EPIPHAN			3134 | ||||
| omap_bender		MACH_OMAP_BENDER	OMAP_BENDER		3135 | ||||
| gurnard			MACH_GURNARD		GURNARD			3136 | ||||
| gtl_it5100		MACH_GTL_IT5100		GTL_IT5100		3137 | ||||
| bcm2708			MACH_BCM2708		BCM2708			3138 | ||||
| mx51_ggc		MACH_MX51_GGC		MX51_GGC		3139 | ||||
| sharespace		MACH_SHARESPACE		SHARESPACE		3140 | ||||
| haba_knx_explorer	MACH_HABA_KNX_EXPLORER	HABA_KNX_EXPLORER	3141 | ||||
| simtec_kirkmod		MACH_SIMTEC_KIRKMOD	SIMTEC_KIRKMOD		3142 | ||||
| crux			MACH_CRUX		CRUX			3143 | ||||
| mx51_bravo		MACH_MX51_BRAVO		MX51_BRAVO		3144 | ||||
| charon			MACH_CHARON		CHARON			3145 | ||||
| picocom3		MACH_PICOCOM3		PICOCOM3		3146 | ||||
| picocom4		MACH_PICOCOM4		PICOCOM4		3147 | ||||
| serrano			MACH_SERRANO		SERRANO			3148 | ||||
| doubleshot		MACH_DOUBLESHOT		DOUBLESHOT		3149 | ||||
| evsy			MACH_EVSY		EVSY			3150 | ||||
| huashan			MACH_HUASHAN		HUASHAN			3151 | ||||
| lausanne		MACH_LAUSANNE		LAUSANNE		3152 | ||||
| emerald			MACH_EMERALD		EMERALD			3153 | ||||
| tqma35			MACH_TQMA35		TQMA35			3154 | ||||
| marvel			MACH_MARVEL		MARVEL			3155 | ||||
| manuae			MACH_MANUAE		MANUAE			3156 | ||||
| chacha			MACH_CHACHA		CHACHA			3157 | ||||
| lemon			MACH_LEMON		LEMON			3158 | ||||
| csc			MACH_CSC		CSC			3159 | ||||
| gira_knxip_router	MACH_GIRA_KNXIP_ROUTER	GIRA_KNXIP_ROUTER	3160 | ||||
| t20			MACH_T20		T20			3161 | ||||
| hdmini			MACH_HDMINI		HDMINI			3162 | ||||
| sciphone_g2		MACH_SCIPHONE_G2	SCIPHONE_G2		3163 | ||||
| express			MACH_EXPRESS		EXPRESS			3164 | ||||
| express_kt		MACH_EXPRESS_KT		EXPRESS_KT		3165 | ||||
| maximasp		MACH_MAXIMASP		MAXIMASP		3166 | ||||
| nitrogen_imx51		MACH_NITROGEN_IMX51	NITROGEN_IMX51		3167 | ||||
| nitrogen_imx53		MACH_NITROGEN_IMX53	NITROGEN_IMX53		3168 | ||||
| sunfire			MACH_SUNFIRE		SUNFIRE			3169 | ||||
| arowana			MACH_AROWANA		AROWANA			3170 | ||||
| tegra_daytona		MACH_TEGRA_DAYTONA	TEGRA_DAYTONA		3171 | ||||
| tegra_swordfish		MACH_TEGRA_SWORDFISH	TEGRA_SWORDFISH		3172 | ||||
| edison			MACH_EDISON		EDISON			3173 | ||||
| svp8500v1		MACH_SVP8500V1		SVP8500V1		3174 | ||||
| svp8500v2		MACH_SVP8500V2		SVP8500V2		3175 | ||||
| svp5500			MACH_SVP5500		SVP5500			3176 | ||||
| b5500			MACH_B5500		B5500			3177 | ||||
| s5500			MACH_S5500		S5500			3178 | ||||
| icon			MACH_ICON		ICON			3179 | ||||
| elephant		MACH_ELEPHANT		ELEPHANT		3180 | ||||
| msm8x60_fusion		MACH_MSM8X60_FUSION	MSM8X60_FUSION		3181 | ||||
| shooter			MACH_SHOOTER		SHOOTER			3182 | ||||
| spade_lte		MACH_SPADE_LTE		SPADE_LTE		3183 | ||||
| philhwani		MACH_PHILHWANI		PHILHWANI		3184 | ||||
| gsncomm			MACH_GSNCOMM		GSNCOMM			3185 | ||||
| strasbourg_a2		MACH_STRASBOURG_A2	STRASBOURG_A2		3186 | ||||
| mmm			MACH_MMM		MMM			3187 | ||||
| davinci_dm365_bv	MACH_DAVINCI_DM365_BV	DAVINCI_DM365_BV	3188 | ||||
| ag5evm			MACH_AG5EVM		AG5EVM			3189 | ||||
| sc575plc		MACH_SC575PLC		SC575PLC		3190 | ||||
| sc575hmi		MACH_SC575IPC		SC575IPC		3191 | ||||
| omap3_tdm3730		MACH_OMAP3_TDM3730	OMAP3_TDM3730		3192 | ||||
| g7			MACH_G7			G7			3193 | ||||
| top9000_eval		MACH_TOP9000_EVAL	TOP9000_EVAL		3194 | ||||
| top9000_su		MACH_TOP9000_SU		TOP9000_SU		3195 | ||||
| utm300			MACH_UTM300		UTM300			3196 | ||||
| tsunagi			MACH_TSUNAGI		TSUNAGI			3197 | ||||
| ts75xx			MACH_TS75XX		TS75XX			3198 | ||||
| msm8x60_fusn_ffa	MACH_MSM8X60_FUSN_FFA	MSM8X60_FUSN_FFA	3199 | ||||
| ts47xx			MACH_TS47XX		TS47XX			3200 | ||||
| da850_k5		MACH_DA850_K5		DA850_K5		3201 | ||||
| ax502			MACH_AX502		AX502			3202 | ||||
| igep0032		MACH_IGEP0032		IGEP0032		3203 | ||||
| antero			MACH_ANTERO		ANTERO			3204 | ||||
| synergy			MACH_SYNERGY		SYNERGY			3205 | ||||
| ics_if_voip		MACH_ICS_IF_VOIP	ICS_IF_VOIP		3206 | ||||
| wlf_cragg_6410		MACH_WLF_CRAGG_6410	WLF_CRAGG_6410		3207 | ||||
| punica			MACH_PUNICA		PUNICA			3208 | ||||
| sbc_nt250		MACH_SBC_NT250		SBC_NT250		3209 | ||||
| mx27_wmultra		MACH_MX27_WMULTRA	MX27_WMULTRA		3210 | ||||
| mackerel		MACH_MACKEREL		MACKEREL		3211 | ||||
| fa9x27			MACH_FA9X27		FA9X27			3213 | ||||
| ns2816tb		MACH_NS2816TB		NS2816TB		3214 | ||||
| ns2816_ntpad		MACH_NS2816_NTPAD	NS2816_NTPAD		3215 | ||||
| ns2816_ntnb		MACH_NS2816_NTNB	NS2816_NTNB		3216 | ||||
| kaen			MACH_KAEN		KAEN			3217 | ||||
| nv1000			MACH_NV1000		NV1000			3218 | ||||
| nuc950ts		MACH_NUC950TS		NUC950TS		3219 | ||||
| nokia_rm680		MACH_NOKIA_RM680	NOKIA_RM680		3220 | ||||
| ast2200			MACH_AST2200		AST2200			3221 | ||||
| lead			MACH_LEAD		LEAD			3222 | ||||
| unino1			MACH_UNINO1		UNINO1			3223 | ||||
| greeco			MACH_GREECO		GREECO			3224 | ||||
| verdi			MACH_VERDI		VERDI			3225 | ||||
| dm6446_adbox		MACH_DM6446_ADBOX	DM6446_ADBOX		3226 | ||||
| quad_salsa		MACH_QUAD_SALSA		QUAD_SALSA		3227 | ||||
| abb_gma_1_1		MACH_ABB_GMA_1_1	ABB_GMA_1_1		3228 | ||||
| svcid			MACH_SVCID		SVCID			3229 | ||||
| msm8960_sim		MACH_MSM8960_SIM	MSM8960_SIM		3230 | ||||
| msm8960_rumi3		MACH_MSM8960_RUMI3	MSM8960_RUMI3		3231 | ||||
| icon_g			MACH_ICON_G		ICON_G			3232 | ||||
| mb3			MACH_MB3		MB3			3233 | ||||
| gsia18s			MACH_GSIA18S		GSIA18S			3234 | ||||
| pivicc			MACH_PIVICC		PIVICC			3235 | ||||
| pcm048			MACH_PCM048		PCM048			3236 | ||||
| dds			MACH_DDS		DDS			3237 | ||||
| chalten_xa1		MACH_CHALTEN_XA1	CHALTEN_XA1		3238 | ||||
|  | ||||
| @ -206,6 +206,7 @@ ENTRY(vfp_save_state) | ||||
| 	mov	pc, lr | ||||
| ENDPROC(vfp_save_state) | ||||
| 
 | ||||
| 	.align | ||||
| last_VFP_context_address: | ||||
| 	.word	last_VFP_context
 | ||||
| 
 | ||||
|  | ||||
| @ -19,6 +19,8 @@ config MIPS | ||||
| 	select GENERIC_ATOMIC64 if !64BIT | ||||
| 	select HAVE_DMA_ATTRS | ||||
| 	select HAVE_DMA_API_DEBUG | ||||
| 	select HAVE_GENERIC_HARDIRQS | ||||
| 	select GENERIC_IRQ_PROBE | ||||
| 
 | ||||
| menu "Machine selection" | ||||
| 
 | ||||
| @ -1664,6 +1666,28 @@ config PAGE_SIZE_64KB | ||||
| 
 | ||||
| endchoice | ||||
| 
 | ||||
| config FORCE_MAX_ZONEORDER | ||||
| 	int "Maximum zone order" | ||||
| 	range 13 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB | ||||
| 	default "13" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB | ||||
| 	range 12 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB | ||||
| 	default "12" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB | ||||
| 	range 11 64 | ||||
| 	default "11" | ||||
| 	help | ||||
| 	  The kernel memory allocator divides physically contiguous memory | ||||
| 	  blocks into "zones", where each zone is a power of two number of | ||||
| 	  pages.  This option selects the largest power of two that the kernel | ||||
| 	  keeps in the memory allocator.  If you need to allocate very large | ||||
| 	  blocks of physically contiguous memory, then you may need to | ||||
| 	  increase this value. | ||||
| 
 | ||||
| 	  This config option is actually maximum order plus one. For example, | ||||
| 	  a value of 11 means that the largest free memory block is 2^10 pages. | ||||
| 
 | ||||
| 	  The page size is not necessarily 4KB.  Keep this in mind | ||||
| 	  when choosing a value for this option. | ||||
| 
 | ||||
| config BOARD_SCACHE | ||||
| 	bool | ||||
| 
 | ||||
| @ -1921,20 +1945,6 @@ config CPU_R4000_WORKAROUNDS | ||||
| config CPU_R4400_WORKAROUNDS | ||||
| 	bool | ||||
| 
 | ||||
| # | ||||
| # Use the generic interrupt handling code in kernel/irq/: | ||||
| # | ||||
| config GENERIC_HARDIRQS | ||||
| 	bool | ||||
| 	default y | ||||
| 
 | ||||
| config GENERIC_IRQ_PROBE | ||||
| 	bool | ||||
| 	default y | ||||
| 
 | ||||
| config IRQ_PER_CPU | ||||
| 	bool | ||||
| 
 | ||||
| # | ||||
| # - Highmem only makes sense for the 32-bit kernel. | ||||
| # - The current highmem code will only work properly on physically indexed | ||||
|  | ||||
| @ -27,6 +27,7 @@ | ||||
| static void alchemy_8250_pm(struct uart_port *port, unsigned int state, | ||||
| 			    unsigned int old_state) | ||||
| { | ||||
| #ifdef CONFIG_SERIAL_8250 | ||||
| 	switch (state) { | ||||
| 	case 0: | ||||
| 		if ((__raw_readl(port->membase + UART_MOD_CNTRL) & 3) != 3) { | ||||
| @ -49,6 +50,7 @@ static void alchemy_8250_pm(struct uart_port *port, unsigned int state, | ||||
| 		serial8250_do_pm(port, state, old_state); | ||||
| 		break; | ||||
| 	} | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| #define PORT(_base, _irq)					\ | ||||
|  | ||||
| @ -54,10 +54,9 @@ void __init prom_init(void) | ||||
| 
 | ||||
| 	prom_init_cmdline(); | ||||
| 	memsize_str = prom_getenv("memsize"); | ||||
| 	if (!memsize_str) | ||||
| 	if (!memsize_str || strict_strtoul(memsize_str, 0, &memsize)) | ||||
| 		memsize = ALCHEMY_BOARD_DEFAULT_MEMSIZE; | ||||
| 	else | ||||
| 		strict_strtoul(memsize_str, 0, &memsize); | ||||
| 
 | ||||
| 	add_memory_region(0, memsize, BOOT_MEM_RAM); | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -239,12 +239,12 @@ static void tnetd7300_set_clock(u32 shift, struct tnetd7300_clock *clock, | ||||
| 	calculate(base_clock, frequency, &prediv, &postdiv, &mul); | ||||
| 
 | ||||
| 	writel(((prediv - 1) << PREDIV_SHIFT) | (postdiv - 1), &clock->ctrl); | ||||
| 	msleep(1); | ||||
| 	mdelay(1); | ||||
| 	writel(4, &clock->pll); | ||||
| 	while (readl(&clock->pll) & PLL_STATUS) | ||||
| 		; | ||||
| 	writel(((mul - 1) << MUL_SHIFT) | (0xff << 3) | 0x0e, &clock->pll); | ||||
| 	msleep(75); | ||||
| 	mdelay(75); | ||||
| } | ||||
| 
 | ||||
| static void __init tnetd7300_init_clocks(void) | ||||
| @ -456,7 +456,7 @@ void clk_put(struct clk *clk) | ||||
| } | ||||
| EXPORT_SYMBOL(clk_put); | ||||
| 
 | ||||
| int __init ar7_init_clocks(void) | ||||
| void __init ar7_init_clocks(void) | ||||
| { | ||||
| 	switch (ar7_chip_id()) { | ||||
| 	case AR7_CHIP_7100: | ||||
| @ -472,7 +472,4 @@ int __init ar7_init_clocks(void) | ||||
| 	} | ||||
| 	/* adjust vbus clock rate */ | ||||
| 	vbus_clk.rate = bus_clk.rate / 2; | ||||
| 
 | ||||
| 	return 0; | ||||
| } | ||||
| arch_initcall(ar7_init_clocks); | ||||
|  | ||||
| @ -30,6 +30,9 @@ void __init plat_time_init(void) | ||||
| { | ||||
| 	struct clk *cpu_clk; | ||||
| 
 | ||||
| 	/* Initialize ar7 clocks so the CPU clock frequency is correct */ | ||||
| 	ar7_init_clocks(); | ||||
| 
 | ||||
| 	cpu_clk = clk_get(NULL, "cpu"); | ||||
| 	if (IS_ERR(cpu_clk)) { | ||||
| 		printk(KERN_ERR "unable to get cpu clock\n"); | ||||
|  | ||||
| @ -32,7 +32,6 @@ | ||||
| #include <asm/reboot.h> | ||||
| #include <asm/time.h> | ||||
| #include <bcm47xx.h> | ||||
| #include <asm/fw/cfe/cfe_api.h> | ||||
| #include <asm/mach-bcm47xx/nvram.h> | ||||
| 
 | ||||
| struct ssb_bus ssb_bcm47xx; | ||||
| @ -57,68 +56,112 @@ static void bcm47xx_machine_halt(void) | ||||
| 		cpu_relax(); | ||||
| } | ||||
| 
 | ||||
| static void str2eaddr(char *str, char *dest) | ||||
| #define READ_FROM_NVRAM(_outvar, name, buf) \ | ||||
| 	if (nvram_getenv(name, buf, sizeof(buf)) >= 0)\ | ||||
| 		sprom->_outvar = simple_strtoul(buf, NULL, 0); | ||||
| 
 | ||||
| static void bcm47xx_fill_sprom(struct ssb_sprom *sprom) | ||||
| { | ||||
| 	int i = 0; | ||||
| 	char buf[100]; | ||||
| 	u32 boardflags; | ||||
| 
 | ||||
| 	if (str == NULL) { | ||||
| 		memset(dest, 0, 6); | ||||
| 		return; | ||||
| 	memset(sprom, 0, sizeof(struct ssb_sprom)); | ||||
| 
 | ||||
| 	sprom->revision = 1; /* Fallback: Old hardware does not define this. */ | ||||
| 	READ_FROM_NVRAM(revision, "sromrev", buf); | ||||
| 	if (nvram_getenv("il0macaddr", buf, sizeof(buf)) >= 0) | ||||
| 		nvram_parse_macaddr(buf, sprom->il0mac); | ||||
| 	if (nvram_getenv("et0macaddr", buf, sizeof(buf)) >= 0) | ||||
| 		nvram_parse_macaddr(buf, sprom->et0mac); | ||||
| 	if (nvram_getenv("et1macaddr", buf, sizeof(buf)) >= 0) | ||||
| 		nvram_parse_macaddr(buf, sprom->et1mac); | ||||
| 	READ_FROM_NVRAM(et0phyaddr, "et0phyaddr", buf); | ||||
| 	READ_FROM_NVRAM(et1phyaddr, "et1phyaddr", buf); | ||||
| 	READ_FROM_NVRAM(et0mdcport, "et0mdcport", buf); | ||||
| 	READ_FROM_NVRAM(et1mdcport, "et1mdcport", buf); | ||||
| 	READ_FROM_NVRAM(board_rev, "boardrev", buf); | ||||
| 	READ_FROM_NVRAM(country_code, "ccode", buf); | ||||
| 	READ_FROM_NVRAM(ant_available_a, "aa5g", buf); | ||||
| 	READ_FROM_NVRAM(ant_available_bg, "aa2g", buf); | ||||
| 	READ_FROM_NVRAM(pa0b0, "pa0b0", buf); | ||||
| 	READ_FROM_NVRAM(pa0b1, "pa0b1", buf); | ||||
| 	READ_FROM_NVRAM(pa0b2, "pa0b2", buf); | ||||
| 	READ_FROM_NVRAM(pa1b0, "pa1b0", buf); | ||||
| 	READ_FROM_NVRAM(pa1b1, "pa1b1", buf); | ||||
| 	READ_FROM_NVRAM(pa1b2, "pa1b2", buf); | ||||
| 	READ_FROM_NVRAM(pa1lob0, "pa1lob0", buf); | ||||
| 	READ_FROM_NVRAM(pa1lob2, "pa1lob1", buf); | ||||
| 	READ_FROM_NVRAM(pa1lob1, "pa1lob2", buf); | ||||
| 	READ_FROM_NVRAM(pa1hib0, "pa1hib0", buf); | ||||
| 	READ_FROM_NVRAM(pa1hib2, "pa1hib1", buf); | ||||
| 	READ_FROM_NVRAM(pa1hib1, "pa1hib2", buf); | ||||
| 	READ_FROM_NVRAM(gpio0, "wl0gpio0", buf); | ||||
| 	READ_FROM_NVRAM(gpio1, "wl0gpio1", buf); | ||||
| 	READ_FROM_NVRAM(gpio2, "wl0gpio2", buf); | ||||
| 	READ_FROM_NVRAM(gpio3, "wl0gpio3", buf); | ||||
| 	READ_FROM_NVRAM(maxpwr_bg, "pa0maxpwr", buf); | ||||
| 	READ_FROM_NVRAM(maxpwr_al, "pa1lomaxpwr", buf); | ||||
| 	READ_FROM_NVRAM(maxpwr_a, "pa1maxpwr", buf); | ||||
| 	READ_FROM_NVRAM(maxpwr_ah, "pa1himaxpwr", buf); | ||||
| 	READ_FROM_NVRAM(itssi_a, "pa1itssit", buf); | ||||
| 	READ_FROM_NVRAM(itssi_bg, "pa0itssit", buf); | ||||
| 	READ_FROM_NVRAM(tri2g, "tri2g", buf); | ||||
| 	READ_FROM_NVRAM(tri5gl, "tri5gl", buf); | ||||
| 	READ_FROM_NVRAM(tri5g, "tri5g", buf); | ||||
| 	READ_FROM_NVRAM(tri5gh, "tri5gh", buf); | ||||
| 	READ_FROM_NVRAM(rxpo2g, "rxpo2g", buf); | ||||
| 	READ_FROM_NVRAM(rxpo5g, "rxpo5g", buf); | ||||
| 	READ_FROM_NVRAM(rssisav2g, "rssisav2g", buf); | ||||
| 	READ_FROM_NVRAM(rssismc2g, "rssismc2g", buf); | ||||
| 	READ_FROM_NVRAM(rssismf2g, "rssismf2g", buf); | ||||
| 	READ_FROM_NVRAM(bxa2g, "bxa2g", buf); | ||||
| 	READ_FROM_NVRAM(rssisav5g, "rssisav5g", buf); | ||||
| 	READ_FROM_NVRAM(rssismc5g, "rssismc5g", buf); | ||||
| 	READ_FROM_NVRAM(rssismf5g, "rssismf5g", buf); | ||||
| 	READ_FROM_NVRAM(bxa5g, "bxa5g", buf); | ||||
| 	READ_FROM_NVRAM(cck2gpo, "cck2gpo", buf); | ||||
| 	READ_FROM_NVRAM(ofdm2gpo, "ofdm2gpo", buf); | ||||
| 	READ_FROM_NVRAM(ofdm5glpo, "ofdm5glpo", buf); | ||||
| 	READ_FROM_NVRAM(ofdm5gpo, "ofdm5gpo", buf); | ||||
| 	READ_FROM_NVRAM(ofdm5ghpo, "ofdm5ghpo", buf); | ||||
| 
 | ||||
| 	if (nvram_getenv("boardflags", buf, sizeof(buf)) >= 0) { | ||||
| 		boardflags = simple_strtoul(buf, NULL, 0); | ||||
| 		if (boardflags) { | ||||
| 			sprom->boardflags_lo = (boardflags & 0x0000FFFFU); | ||||
| 			sprom->boardflags_hi = (boardflags & 0xFFFF0000U) >> 16; | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	for (;;) { | ||||
| 		dest[i++] = (char) simple_strtoul(str, NULL, 16); | ||||
| 		str += 2; | ||||
| 		if (!*str++ || i == 6) | ||||
| 			break; | ||||
| 	if (nvram_getenv("boardflags2", buf, sizeof(buf)) >= 0) { | ||||
| 		boardflags = simple_strtoul(buf, NULL, 0); | ||||
| 		if (boardflags) { | ||||
| 			sprom->boardflags2_lo = (boardflags & 0x0000FFFFU); | ||||
| 			sprom->boardflags2_hi = (boardflags & 0xFFFF0000U) >> 16; | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| static int bcm47xx_get_invariants(struct ssb_bus *bus, | ||||
| 				   struct ssb_init_invariants *iv) | ||||
| { | ||||
| 	char buf[100]; | ||||
| 	char buf[20]; | ||||
| 
 | ||||
| 	/* Fill boardinfo structure */ | ||||
| 	memset(&(iv->boardinfo), 0 , sizeof(struct ssb_boardinfo)); | ||||
| 
 | ||||
| 	if (cfe_getenv("boardvendor", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("boardvendor", buf, sizeof(buf)) >= 0) | ||||
| 	if (nvram_getenv("boardvendor", buf, sizeof(buf)) >= 0) | ||||
| 		iv->boardinfo.vendor = (u16)simple_strtoul(buf, NULL, 0); | ||||
| 	else | ||||
| 		iv->boardinfo.vendor = SSB_BOARDVENDOR_BCM; | ||||
| 	if (nvram_getenv("boardtype", buf, sizeof(buf)) >= 0) | ||||
| 		iv->boardinfo.type = (u16)simple_strtoul(buf, NULL, 0); | ||||
| 	if (cfe_getenv("boardtype", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("boardtype", buf, sizeof(buf)) >= 0) | ||||
| 		iv->boardinfo.type = (u16)simple_strtoul(buf, NULL, 0); | ||||
| 	if (cfe_getenv("boardrev", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("boardrev", buf, sizeof(buf)) >= 0) | ||||
| 	if (nvram_getenv("boardrev", buf, sizeof(buf)) >= 0) | ||||
| 		iv->boardinfo.rev = (u16)simple_strtoul(buf, NULL, 0); | ||||
| 
 | ||||
| 	/* Fill sprom structure */ | ||||
| 	memset(&(iv->sprom), 0, sizeof(struct ssb_sprom)); | ||||
| 	iv->sprom.revision = 3; | ||||
| 	bcm47xx_fill_sprom(&iv->sprom); | ||||
| 
 | ||||
| 	if (cfe_getenv("et0macaddr", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("et0macaddr", buf, sizeof(buf)) >= 0) | ||||
| 		str2eaddr(buf, iv->sprom.et0mac); | ||||
| 
 | ||||
| 	if (cfe_getenv("et1macaddr", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("et1macaddr", buf, sizeof(buf)) >= 0) | ||||
| 		str2eaddr(buf, iv->sprom.et1mac); | ||||
| 
 | ||||
| 	if (cfe_getenv("et0phyaddr", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("et0phyaddr", buf, sizeof(buf)) >= 0) | ||||
| 		iv->sprom.et0phyaddr = simple_strtoul(buf, NULL, 0); | ||||
| 
 | ||||
| 	if (cfe_getenv("et1phyaddr", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("et1phyaddr", buf, sizeof(buf)) >= 0) | ||||
| 		iv->sprom.et1phyaddr = simple_strtoul(buf, NULL, 0); | ||||
| 
 | ||||
| 	if (cfe_getenv("et0mdcport", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("et0mdcport", buf, sizeof(buf)) >= 0) | ||||
| 		iv->sprom.et0mdcport = simple_strtoul(buf, NULL, 10); | ||||
| 
 | ||||
| 	if (cfe_getenv("et1mdcport", buf, sizeof(buf)) >= 0 || | ||||
| 	    nvram_getenv("et1mdcport", buf, sizeof(buf)) >= 0) | ||||
| 		iv->sprom.et1mdcport = simple_strtoul(buf, NULL, 10); | ||||
| 	if (nvram_getenv("cardbus", buf, sizeof(buf)) >= 0) | ||||
| 		iv->has_cardbus_slot = !!simple_strtoul(buf, NULL, 10); | ||||
| 
 | ||||
| 	return 0; | ||||
| } | ||||
| @ -126,12 +169,28 @@ static int bcm47xx_get_invariants(struct ssb_bus *bus, | ||||
| void __init plat_mem_setup(void) | ||||
| { | ||||
| 	int err; | ||||
| 	char buf[100]; | ||||
| 	struct ssb_mipscore *mcore; | ||||
| 
 | ||||
| 	err = ssb_bus_ssbbus_register(&ssb_bcm47xx, SSB_ENUM_BASE, | ||||
| 				      bcm47xx_get_invariants); | ||||
| 	if (err) | ||||
| 		panic("Failed to initialize SSB bus (err %d)\n", err); | ||||
| 
 | ||||
| 	mcore = &ssb_bcm47xx.mipscore; | ||||
| 	if (nvram_getenv("kernel_args", buf, sizeof(buf)) >= 0) { | ||||
| 		if (strstr(buf, "console=ttyS1")) { | ||||
| 			struct ssb_serial_port port; | ||||
| 
 | ||||
| 			printk(KERN_DEBUG "Swapping serial ports!\n"); | ||||
| 			/* swap serial ports */ | ||||
| 			memcpy(&port, &mcore->serial_ports[0], sizeof(port)); | ||||
| 			memcpy(&mcore->serial_ports[0], &mcore->serial_ports[1], | ||||
| 			       sizeof(port)); | ||||
| 			memcpy(&mcore->serial_ports[1], &port, sizeof(port)); | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	_machine_restart = bcm47xx_machine_restart; | ||||
| 	_machine_halt = bcm47xx_machine_halt; | ||||
| 	pm_power_off = bcm47xx_machine_halt; | ||||
|  | ||||
| @ -111,8 +111,8 @@ | ||||
|  * These are the PRID's for when 23:16 == PRID_COMP_BROADCOM | ||||
|  */ | ||||
| 
 | ||||
| #define PRID_IMP_BMIPS4KC	0x4000 | ||||
| #define PRID_IMP_BMIPS32	0x8000 | ||||
| #define PRID_IMP_BMIPS32_REV4	0x4000 | ||||
| #define PRID_IMP_BMIPS32_REV8	0x8000 | ||||
| #define PRID_IMP_BMIPS3300	0x9000 | ||||
| #define PRID_IMP_BMIPS3300_ALT	0x9100 | ||||
| #define PRID_IMP_BMIPS3300_BUG	0x0000 | ||||
|  | ||||
| @ -249,7 +249,8 @@ extern struct mips_abi mips_abi_n32; | ||||
| 
 | ||||
| #define SET_PERSONALITY(ex)						\ | ||||
| do {									\ | ||||
| 	set_personality(PER_LINUX);					\ | ||||
| 	if (personality(current->personality) != PER_LINUX)		\ | ||||
| 		set_personality(PER_LINUX);				\ | ||||
| 									\ | ||||
| 	current->thread.abi = &mips_abi;				\ | ||||
| } while (0) | ||||
| @ -296,6 +297,8 @@ do {									\ | ||||
| 
 | ||||
| #define SET_PERSONALITY(ex)						\ | ||||
| do {									\ | ||||
| 	unsigned int p;							\ | ||||
| 									\ | ||||
| 	clear_thread_flag(TIF_32BIT_REGS);				\ | ||||
| 	clear_thread_flag(TIF_32BIT_ADDR);				\ | ||||
| 									\ | ||||
| @ -304,7 +307,8 @@ do {									\ | ||||
| 	else								\ | ||||
| 		current->thread.abi = &mips_abi;			\ | ||||
| 									\ | ||||
| 	if (current->personality != PER_LINUX32)			\ | ||||
| 	p = personality(current->personality);				\ | ||||
| 	if (p != PER_LINUX32 && p != PER_LINUX)				\ | ||||
| 		set_personality(PER_LINUX);				\ | ||||
| } while (0) | ||||
| 
 | ||||
|  | ||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue
	
	Block a user