Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
This commit is contained in:
commit
912bc6ae3d
667 changed files with 12939 additions and 19315 deletions
|
@ -69,9 +69,13 @@ Description:
|
||||||
gpe1F: 0 invalid
|
gpe1F: 0 invalid
|
||||||
gpe_all: 1192
|
gpe_all: 1192
|
||||||
sci: 1194
|
sci: 1194
|
||||||
|
sci_not: 0
|
||||||
|
|
||||||
sci - The total number of times the ACPI SCI
|
sci - The number of times the ACPI SCI
|
||||||
has claimed an interrupt.
|
has been called and claimed an interrupt.
|
||||||
|
|
||||||
|
sci_not - The number of times the ACPI SCI
|
||||||
|
has been called and NOT claimed an interrupt.
|
||||||
|
|
||||||
gpe_all - count of SCI caused by GPEs.
|
gpe_all - count of SCI caused by GPEs.
|
||||||
|
|
||||||
|
|
|
@ -190,16 +190,20 @@ X!Ekernel/module.c
|
||||||
!Edrivers/pci/pci.c
|
!Edrivers/pci/pci.c
|
||||||
!Edrivers/pci/pci-driver.c
|
!Edrivers/pci/pci-driver.c
|
||||||
!Edrivers/pci/remove.c
|
!Edrivers/pci/remove.c
|
||||||
!Edrivers/pci/pci-acpi.c
|
|
||||||
!Edrivers/pci/search.c
|
!Edrivers/pci/search.c
|
||||||
!Edrivers/pci/msi.c
|
!Edrivers/pci/msi.c
|
||||||
!Edrivers/pci/bus.c
|
!Edrivers/pci/bus.c
|
||||||
|
!Edrivers/pci/access.c
|
||||||
|
!Edrivers/pci/irq.c
|
||||||
|
!Edrivers/pci/htirq.c
|
||||||
<!-- FIXME: Removed for now since no structured comments in source
|
<!-- FIXME: Removed for now since no structured comments in source
|
||||||
X!Edrivers/pci/hotplug.c
|
X!Edrivers/pci/hotplug.c
|
||||||
-->
|
-->
|
||||||
!Edrivers/pci/probe.c
|
!Edrivers/pci/probe.c
|
||||||
|
!Edrivers/pci/slot.c
|
||||||
!Edrivers/pci/rom.c
|
!Edrivers/pci/rom.c
|
||||||
!Edrivers/pci/iov.c
|
!Edrivers/pci/iov.c
|
||||||
|
!Idrivers/pci/pci-sysfs.c
|
||||||
</sect1>
|
</sect1>
|
||||||
<sect1><title>PCI Hotplug Support Library</title>
|
<sect1><title>PCI Hotplug Support Library</title>
|
||||||
!Edrivers/pci/hotplug/pci_hotplug_core.c
|
!Edrivers/pci/hotplug/pci_hotplug_core.c
|
||||||
|
|
|
@ -407,7 +407,7 @@ A NOTE ON SECURITY
|
||||||
==================
|
==================
|
||||||
|
|
||||||
CacheFiles makes use of the split security in the task_struct. It allocates
|
CacheFiles makes use of the split security in the task_struct. It allocates
|
||||||
its own task_security structure, and redirects current->act_as to point to it
|
its own task_security structure, and redirects current->cred to point to it
|
||||||
when it acts on behalf of another process, in that process's context.
|
when it acts on behalf of another process, in that process's context.
|
||||||
|
|
||||||
The reason it does this is that it calls vfs_mkdir() and suchlike rather than
|
The reason it does this is that it calls vfs_mkdir() and suchlike rather than
|
||||||
|
@ -429,9 +429,9 @@ This means it may lose signals or ptrace events for example, and affects what
|
||||||
the process looks like in /proc.
|
the process looks like in /proc.
|
||||||
|
|
||||||
So CacheFiles makes use of a logical split in the security between the
|
So CacheFiles makes use of a logical split in the security between the
|
||||||
objective security (task->sec) and the subjective security (task->act_as). The
|
objective security (task->real_cred) and the subjective security (task->cred).
|
||||||
objective security holds the intrinsic security properties of a process and is
|
The objective security holds the intrinsic security properties of a process and
|
||||||
never overridden. This is what appears in /proc, and is what is used when a
|
is never overridden. This is what appears in /proc, and is what is used when a
|
||||||
process is the target of an operation by some other process (SIGKILL for
|
process is the target of an operation by some other process (SIGKILL for
|
||||||
example).
|
example).
|
||||||
|
|
||||||
|
|
|
@ -277,8 +277,7 @@ or bottom half).
|
||||||
unfreeze_fs: called when VFS is unlocking a filesystem and making it writable
|
unfreeze_fs: called when VFS is unlocking a filesystem and making it writable
|
||||||
again.
|
again.
|
||||||
|
|
||||||
statfs: called when the VFS needs to get filesystem statistics. This
|
statfs: called when the VFS needs to get filesystem statistics.
|
||||||
is called with the kernel lock held
|
|
||||||
|
|
||||||
remount_fs: called when the filesystem is remounted. This is called
|
remount_fs: called when the filesystem is remounted. This is called
|
||||||
with the kernel lock held
|
with the kernel lock held
|
||||||
|
|
|
@ -2,8 +2,14 @@
|
||||||
- this file (info on ISDN implementation for Linux)
|
- this file (info on ISDN implementation for Linux)
|
||||||
CREDITS
|
CREDITS
|
||||||
- list of the kind folks that brought you this stuff.
|
- list of the kind folks that brought you this stuff.
|
||||||
|
HiSax.cert
|
||||||
|
- information about the ITU approval certification of the HiSax driver.
|
||||||
INTERFACE
|
INTERFACE
|
||||||
- description of Linklevel and Hardwarelevel ISDN interface.
|
- description of isdn4linux Link Level and Hardware Level interfaces.
|
||||||
|
INTERFACE.fax
|
||||||
|
- description of the fax subinterface of isdn4linux.
|
||||||
|
INTERFACE.CAPI
|
||||||
|
- description of kernel CAPI Link Level to Hardware Level interface.
|
||||||
README
|
README
|
||||||
- general info on what you need and what to do for Linux ISDN.
|
- general info on what you need and what to do for Linux ISDN.
|
||||||
README.FAQ
|
README.FAQ
|
||||||
|
@ -12,6 +18,8 @@ README.audio
|
||||||
- info for running audio over ISDN.
|
- info for running audio over ISDN.
|
||||||
README.fax
|
README.fax
|
||||||
- info for using Fax over ISDN.
|
- info for using Fax over ISDN.
|
||||||
|
README.gigaset
|
||||||
|
- info on the drivers for Siemens Gigaset ISDN adapters.
|
||||||
README.icn
|
README.icn
|
||||||
- info on the ICN-ISDN-card and its driver.
|
- info on the ICN-ISDN-card and its driver.
|
||||||
README.HiSax
|
README.HiSax
|
||||||
|
@ -37,7 +45,8 @@ README.diversion
|
||||||
README.sc
|
README.sc
|
||||||
- info on driver for Spellcaster cards.
|
- info on driver for Spellcaster cards.
|
||||||
README.x25
|
README.x25
|
||||||
_ info for running X.25 over ISDN.
|
- info for running X.25 over ISDN.
|
||||||
README.hysdn
|
README.hysdn
|
||||||
- info on driver for Hypercope active HYSDN cards
|
- info on driver for Hypercope active HYSDN cards
|
||||||
|
README.mISDN
|
||||||
|
- info on the Modular ISDN subsystem (mISDN).
|
||||||
|
|
213
Documentation/isdn/INTERFACE.CAPI
Normal file
213
Documentation/isdn/INTERFACE.CAPI
Normal file
|
@ -0,0 +1,213 @@
|
||||||
|
Kernel CAPI Interface to Hardware Drivers
|
||||||
|
-----------------------------------------
|
||||||
|
|
||||||
|
1. Overview
|
||||||
|
|
||||||
|
From the CAPI 2.0 specification:
|
||||||
|
COMMON-ISDN-API (CAPI) is an application programming interface standard used
|
||||||
|
to access ISDN equipment connected to basic rate interfaces (BRI) and primary
|
||||||
|
rate interfaces (PRI).
|
||||||
|
|
||||||
|
Kernel CAPI operates as a dispatching layer between CAPI applications and CAPI
|
||||||
|
hardware drivers. Hardware drivers register ISDN devices (controllers, in CAPI
|
||||||
|
lingo) with Kernel CAPI to indicate their readiness to provide their service
|
||||||
|
to CAPI applications. CAPI applications also register with Kernel CAPI,
|
||||||
|
requesting association with a CAPI device. Kernel CAPI then dispatches the
|
||||||
|
application registration to an available device, forwarding it to the
|
||||||
|
corresponding hardware driver. Kernel CAPI then forwards CAPI messages in both
|
||||||
|
directions between the application and the hardware driver.
|
||||||
|
|
||||||
|
Format and semantics of CAPI messages are specified in the CAPI 2.0 standard.
|
||||||
|
This standard is freely available from http://www.capi.org.
|
||||||
|
|
||||||
|
|
||||||
|
2. Driver and Device Registration
|
||||||
|
|
||||||
|
CAPI drivers optionally register themselves with Kernel CAPI by calling the
|
||||||
|
Kernel CAPI function register_capi_driver() with a pointer to a struct
|
||||||
|
capi_driver. This structure must be filled with the name and revision of the
|
||||||
|
driver, and optionally a pointer to a callback function, add_card(). The
|
||||||
|
registration can be revoked by calling the function unregister_capi_driver()
|
||||||
|
with a pointer to the same struct capi_driver.
|
||||||
|
|
||||||
|
CAPI drivers must register each of the ISDN devices they control with Kernel
|
||||||
|
CAPI by calling the Kernel CAPI function attach_capi_ctr() with a pointer to a
|
||||||
|
struct capi_ctr before they can be used. This structure must be filled with
|
||||||
|
the names of the driver and controller, and a number of callback function
|
||||||
|
pointers which are subsequently used by Kernel CAPI for communicating with the
|
||||||
|
driver. The registration can be revoked by calling the function
|
||||||
|
detach_capi_ctr() with a pointer to the same struct capi_ctr.
|
||||||
|
|
||||||
|
Before the device can be actually used, the driver must fill in the device
|
||||||
|
information fields 'manu', 'version', 'profile' and 'serial' in the capi_ctr
|
||||||
|
structure of the device, and signal its readiness by calling capi_ctr_ready().
|
||||||
|
From then on, Kernel CAPI may call the registered callback functions for the
|
||||||
|
device.
|
||||||
|
|
||||||
|
If the device becomes unusable for any reason (shutdown, disconnect ...), the
|
||||||
|
driver has to call capi_ctr_reseted(). This will prevent further calls to the
|
||||||
|
callback functions by Kernel CAPI.
|
||||||
|
|
||||||
|
|
||||||
|
3. Application Registration and Communication
|
||||||
|
|
||||||
|
Kernel CAPI forwards registration requests from applications (calls to CAPI
|
||||||
|
operation CAPI_REGISTER) to an appropriate hardware driver by calling its
|
||||||
|
register_appl() callback function. A unique Application ID (ApplID, u16) is
|
||||||
|
allocated by Kernel CAPI and passed to register_appl() along with the
|
||||||
|
parameter structure provided by the application. This is analogous to the
|
||||||
|
open() operation on regular files or character devices.
|
||||||
|
|
||||||
|
After a successful return from register_appl(), CAPI messages from the
|
||||||
|
application may be passed to the driver for the device via calls to the
|
||||||
|
send_message() callback function. The CAPI message to send is stored in the
|
||||||
|
data portion of an skb. Conversely, the driver may call Kernel CAPI's
|
||||||
|
capi_ctr_handle_message() function to pass a received CAPI message to Kernel
|
||||||
|
CAPI for forwarding to an application, specifying its ApplID.
|
||||||
|
|
||||||
|
Deregistration requests (CAPI operation CAPI_RELEASE) from applications are
|
||||||
|
forwarded as calls to the release_appl() callback function, passing the same
|
||||||
|
ApplID as with register_appl(). After return from release_appl(), no CAPI
|
||||||
|
messages for that application may be passed to or from the device anymore.
|
||||||
|
|
||||||
|
|
||||||
|
4. Data Structures
|
||||||
|
|
||||||
|
4.1 struct capi_driver
|
||||||
|
|
||||||
|
This structure describes a Kernel CAPI driver itself. It is used in the
|
||||||
|
register_capi_driver() and unregister_capi_driver() functions, and contains
|
||||||
|
the following non-private fields, all to be set by the driver before calling
|
||||||
|
register_capi_driver():
|
||||||
|
|
||||||
|
char name[32]
|
||||||
|
the name of the driver, as a zero-terminated ASCII string
|
||||||
|
char revision[32]
|
||||||
|
the revision number of the driver, as a zero-terminated ASCII string
|
||||||
|
int (*add_card)(struct capi_driver *driver, capicardparams *data)
|
||||||
|
a callback function pointer (may be NULL)
|
||||||
|
|
||||||
|
|
||||||
|
4.2 struct capi_ctr
|
||||||
|
|
||||||
|
This structure describes an ISDN device (controller) handled by a Kernel CAPI
|
||||||
|
driver. After registration via the attach_capi_ctr() function it is passed to
|
||||||
|
all controller specific lower layer interface and callback functions to
|
||||||
|
identify the controller to operate on.
|
||||||
|
|
||||||
|
It contains the following non-private fields:
|
||||||
|
|
||||||
|
- to be set by the driver before calling attach_capi_ctr():
|
||||||
|
|
||||||
|
struct module *owner
|
||||||
|
pointer to the driver module owning the device
|
||||||
|
|
||||||
|
void *driverdata
|
||||||
|
an opaque pointer to driver specific data, not touched by Kernel CAPI
|
||||||
|
|
||||||
|
char name[32]
|
||||||
|
the name of the controller, as a zero-terminated ASCII string
|
||||||
|
|
||||||
|
char *driver_name
|
||||||
|
the name of the driver, as a zero-terminated ASCII string
|
||||||
|
|
||||||
|
int (*load_firmware)(struct capi_ctr *ctrlr, capiloaddata *ldata)
|
||||||
|
(optional) pointer to a callback function for sending firmware and
|
||||||
|
configuration data to the device
|
||||||
|
|
||||||
|
void (*reset_ctr)(struct capi_ctr *ctrlr)
|
||||||
|
pointer to a callback function for performing a reset on the device,
|
||||||
|
releasing all registered applications
|
||||||
|
|
||||||
|
void (*register_appl)(struct capi_ctr *ctrlr, u16 applid,
|
||||||
|
capi_register_params *rparam)
|
||||||
|
void (*release_appl)(struct capi_ctr *ctrlr, u16 applid)
|
||||||
|
pointers to callback functions for registration and deregistration of
|
||||||
|
applications with the device
|
||||||
|
|
||||||
|
u16 (*send_message)(struct capi_ctr *ctrlr, struct sk_buff *skb)
|
||||||
|
pointer to a callback function for sending a CAPI message to the
|
||||||
|
device
|
||||||
|
|
||||||
|
char *(*procinfo)(struct capi_ctr *ctrlr)
|
||||||
|
pointer to a callback function returning the entry for the device in
|
||||||
|
the CAPI controller info table, /proc/capi/controller
|
||||||
|
|
||||||
|
read_proc_t *ctr_read_proc
|
||||||
|
pointer to the read_proc callback function for the device's proc file
|
||||||
|
system entry, /proc/capi/controllers/<n>; will be called with a
|
||||||
|
pointer to the device's capi_ctr structure as the last (data) argument
|
||||||
|
|
||||||
|
- to be filled in before calling capi_ctr_ready():
|
||||||
|
|
||||||
|
u8 manu[CAPI_MANUFACTURER_LEN]
|
||||||
|
value to return for CAPI_GET_MANUFACTURER
|
||||||
|
|
||||||
|
capi_version version
|
||||||
|
value to return for CAPI_GET_VERSION
|
||||||
|
|
||||||
|
capi_profile profile
|
||||||
|
value to return for CAPI_GET_PROFILE
|
||||||
|
|
||||||
|
u8 serial[CAPI_SERIAL_LEN]
|
||||||
|
value to return for CAPI_GET_SERIAL
|
||||||
|
|
||||||
|
|
||||||
|
5. Lower Layer Interface Functions
|
||||||
|
|
||||||
|
(declared in <linux/isdn/capilli.h>)
|
||||||
|
|
||||||
|
void register_capi_driver(struct capi_driver *drvr)
|
||||||
|
void unregister_capi_driver(struct capi_driver *drvr)
|
||||||
|
register/unregister a driver with Kernel CAPI
|
||||||
|
|
||||||
|
int attach_capi_ctr(struct capi_ctr *ctrlr)
|
||||||
|
int detach_capi_ctr(struct capi_ctr *ctrlr)
|
||||||
|
register/unregister a device (controller) with Kernel CAPI
|
||||||
|
|
||||||
|
void capi_ctr_ready(struct capi_ctr *ctrlr)
|
||||||
|
void capi_ctr_reseted(struct capi_ctr *ctrlr)
|
||||||
|
signal controller ready/not ready
|
||||||
|
|
||||||
|
void capi_ctr_suspend_output(struct capi_ctr *ctrlr)
|
||||||
|
void capi_ctr_resume_output(struct capi_ctr *ctrlr)
|
||||||
|
signal suspend/resume
|
||||||
|
|
||||||
|
void capi_ctr_handle_message(struct capi_ctr * ctrlr, u16 applid,
|
||||||
|
struct sk_buff *skb)
|
||||||
|
pass a received CAPI message to Kernel CAPI
|
||||||
|
for forwarding to the specified application
|
||||||
|
|
||||||
|
|
||||||
|
6. Helper Functions and Macros
|
||||||
|
|
||||||
|
Library functions (from <linux/isdn/capilli.h>):
|
||||||
|
|
||||||
|
void capilib_new_ncci(struct list_head *head, u16 applid,
|
||||||
|
u32 ncci, u32 winsize)
|
||||||
|
void capilib_free_ncci(struct list_head *head, u16 applid, u32 ncci)
|
||||||
|
void capilib_release_appl(struct list_head *head, u16 applid)
|
||||||
|
void capilib_release(struct list_head *head)
|
||||||
|
void capilib_data_b3_conf(struct list_head *head, u16 applid,
|
||||||
|
u32 ncci, u16 msgid)
|
||||||
|
u16 capilib_data_b3_req(struct list_head *head, u16 applid,
|
||||||
|
u32 ncci, u16 msgid)
|
||||||
|
|
||||||
|
|
||||||
|
Macros to extract/set element values from/in a CAPI message header
|
||||||
|
(from <linux/isdn/capiutil.h>):
|
||||||
|
|
||||||
|
Get Macro Set Macro Element (Type)
|
||||||
|
|
||||||
|
CAPIMSG_LEN(m) CAPIMSG_SETLEN(m, len) Total Length (u16)
|
||||||
|
CAPIMSG_APPID(m) CAPIMSG_SETAPPID(m, applid) ApplID (u16)
|
||||||
|
CAPIMSG_COMMAND(m) CAPIMSG_SETCOMMAND(m,cmd) Command (u8)
|
||||||
|
CAPIMSG_SUBCOMMAND(m) CAPIMSG_SETSUBCOMMAND(m, cmd) Subcommand (u8)
|
||||||
|
CAPIMSG_CMD(m) - Command*256
|
||||||
|
+ Subcommand (u16)
|
||||||
|
CAPIMSG_MSGID(m) CAPIMSG_SETMSGID(m, msgid) Message Number (u16)
|
||||||
|
|
||||||
|
CAPIMSG_CONTROL(m) CAPIMSG_SETCONTROL(m, contr) Controller/PLCI/NCCI
|
||||||
|
(u32)
|
||||||
|
CAPIMSG_DATALEN(m) CAPIMSG_SETDATALEN(m, len) Data Length (u16)
|
||||||
|
|
|
@ -1620,6 +1620,8 @@ and is between 256 and 4096 characters. It is defined in the file
|
||||||
|
|
||||||
nowb [ARM]
|
nowb [ARM]
|
||||||
|
|
||||||
|
nox2apic [X86-64,APIC] Do not enable x2APIC mode.
|
||||||
|
|
||||||
nptcg= [IA64] Override max number of concurrent global TLB
|
nptcg= [IA64] Override max number of concurrent global TLB
|
||||||
purges which is reported from either PAL_VM_SUMMARY or
|
purges which is reported from either PAL_VM_SUMMARY or
|
||||||
SAL PALO.
|
SAL PALO.
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
ThinkPad ACPI Extras Driver
|
ThinkPad ACPI Extras Driver
|
||||||
|
|
||||||
Version 0.22
|
Version 0.23
|
||||||
November 23rd, 2008
|
April 10th, 2009
|
||||||
|
|
||||||
Borislav Deianov <borislav@users.sf.net>
|
Borislav Deianov <borislav@users.sf.net>
|
||||||
Henrique de Moraes Holschuh <hmh@hmh.eng.br>
|
Henrique de Moraes Holschuh <hmh@hmh.eng.br>
|
||||||
|
|
BIN
Documentation/logo.gif
Normal file
BIN
Documentation/logo.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 303 KiB |
|
@ -1,4 +1,13 @@
|
||||||
Tux is taking a three month sabbatical to work as a barber, so Tuz is
|
This is the full-colour version of the currently unofficial Linux logo
|
||||||
standing in. He's taken pains to ensure you'll hardly notice.
|
("currently unofficial" just means that there has been no paperwork and
|
||||||
|
that I have not really announced it yet). It was created by Larry Ewing,
|
||||||
|
and is freely usable as long as you acknowledge Larry as the original
|
||||||
|
artist.
|
||||||
|
|
||||||
|
Note that there are black-and-white versions of this available that
|
||||||
|
scale down to smaller sizes and are better for letterheads or whatever
|
||||||
|
you want to use it for: for the full range of logos take a look at
|
||||||
|
Larry's web-page:
|
||||||
|
|
||||||
|
http://www.isc.tamu.edu/~lewing/linux/
|
||||||
|
|
||||||
Image by Andrew McGown and Josh Bush. Image is licensed CC BY-SA.
|
|
||||||
|
|
|
@ -43,12 +43,11 @@ Table of Contents
|
||||||
2) Representing devices without a current OF specification
|
2) Representing devices without a current OF specification
|
||||||
a) PHY nodes
|
a) PHY nodes
|
||||||
b) Interrupt controllers
|
b) Interrupt controllers
|
||||||
c) CFI or JEDEC memory-mapped NOR flash
|
c) 4xx/Axon EMAC ethernet nodes
|
||||||
d) 4xx/Axon EMAC ethernet nodes
|
d) Xilinx IP cores
|
||||||
e) Xilinx IP cores
|
e) USB EHCI controllers
|
||||||
f) USB EHCI controllers
|
f) MDIO on GPIOs
|
||||||
g) MDIO on GPIOs
|
g) SPI busses
|
||||||
h) SPI busses
|
|
||||||
|
|
||||||
VII - Marvell Discovery mv64[345]6x System Controller chips
|
VII - Marvell Discovery mv64[345]6x System Controller chips
|
||||||
1) The /system-controller node
|
1) The /system-controller node
|
||||||
|
@ -999,7 +998,7 @@ compatibility.
|
||||||
translation of SOC addresses for memory mapped SOC registers.
|
translation of SOC addresses for memory mapped SOC registers.
|
||||||
- bus-frequency: Contains the bus frequency for the SOC node.
|
- bus-frequency: Contains the bus frequency for the SOC node.
|
||||||
Typically, the value of this field is filled in by the boot
|
Typically, the value of this field is filled in by the boot
|
||||||
loader.
|
loader.
|
||||||
|
|
||||||
|
|
||||||
Recommended properties:
|
Recommended properties:
|
||||||
|
@ -1287,71 +1286,7 @@ platforms are moved over to use the flattened-device-tree model.
|
||||||
device_type = "open-pic";
|
device_type = "open-pic";
|
||||||
};
|
};
|
||||||
|
|
||||||
c) CFI or JEDEC memory-mapped NOR flash
|
c) 4xx/Axon EMAC ethernet nodes
|
||||||
|
|
||||||
Flash chips (Memory Technology Devices) are often used for solid state
|
|
||||||
file systems on embedded devices.
|
|
||||||
|
|
||||||
- compatible : should contain the specific model of flash chip(s)
|
|
||||||
used, if known, followed by either "cfi-flash" or "jedec-flash"
|
|
||||||
- reg : Address range of the flash chip
|
|
||||||
- bank-width : Width (in bytes) of the flash bank. Equal to the
|
|
||||||
device width times the number of interleaved chips.
|
|
||||||
- device-width : (optional) Width of a single flash chip. If
|
|
||||||
omitted, assumed to be equal to 'bank-width'.
|
|
||||||
- #address-cells, #size-cells : Must be present if the flash has
|
|
||||||
sub-nodes representing partitions (see below). In this case
|
|
||||||
both #address-cells and #size-cells must be equal to 1.
|
|
||||||
|
|
||||||
For JEDEC compatible devices, the following additional properties
|
|
||||||
are defined:
|
|
||||||
|
|
||||||
- vendor-id : Contains the flash chip's vendor id (1 byte).
|
|
||||||
- device-id : Contains the flash chip's device id (1 byte).
|
|
||||||
|
|
||||||
In addition to the information on the flash bank itself, the
|
|
||||||
device tree may optionally contain additional information
|
|
||||||
describing partitions of the flash address space. This can be
|
|
||||||
used on platforms which have strong conventions about which
|
|
||||||
portions of the flash are used for what purposes, but which don't
|
|
||||||
use an on-flash partition table such as RedBoot.
|
|
||||||
|
|
||||||
Each partition is represented as a sub-node of the flash device.
|
|
||||||
Each node's name represents the name of the corresponding
|
|
||||||
partition of the flash device.
|
|
||||||
|
|
||||||
Flash partitions
|
|
||||||
- reg : The partition's offset and size within the flash bank.
|
|
||||||
- label : (optional) The label / name for this flash partition.
|
|
||||||
If omitted, the label is taken from the node name (excluding
|
|
||||||
the unit address).
|
|
||||||
- read-only : (optional) This parameter, if present, is a hint to
|
|
||||||
Linux that this flash partition should only be mounted
|
|
||||||
read-only. This is usually used for flash partitions
|
|
||||||
containing early-boot firmware images or data which should not
|
|
||||||
be clobbered.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
flash@ff000000 {
|
|
||||||
compatible = "amd,am29lv128ml", "cfi-flash";
|
|
||||||
reg = <ff000000 01000000>;
|
|
||||||
bank-width = <4>;
|
|
||||||
device-width = <1>;
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <1>;
|
|
||||||
fs@0 {
|
|
||||||
label = "fs";
|
|
||||||
reg = <0 f80000>;
|
|
||||||
};
|
|
||||||
firmware@f80000 {
|
|
||||||
label ="firmware";
|
|
||||||
reg = <f80000 80000>;
|
|
||||||
read-only;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
d) 4xx/Axon EMAC ethernet nodes
|
|
||||||
|
|
||||||
The EMAC ethernet controller in IBM and AMCC 4xx chips, and also
|
The EMAC ethernet controller in IBM and AMCC 4xx chips, and also
|
||||||
the Axon bridge. To operate this needs to interact with a ths
|
the Axon bridge. To operate this needs to interact with a ths
|
||||||
|
@ -1499,7 +1434,7 @@ platforms are moved over to use the flattened-device-tree model.
|
||||||
available.
|
available.
|
||||||
For Axon: 0x0000012a
|
For Axon: 0x0000012a
|
||||||
|
|
||||||
e) Xilinx IP cores
|
d) Xilinx IP cores
|
||||||
|
|
||||||
The Xilinx EDK toolchain ships with a set of IP cores (devices) for use
|
The Xilinx EDK toolchain ships with a set of IP cores (devices) for use
|
||||||
in Xilinx Spartan and Virtex FPGAs. The devices cover the whole range
|
in Xilinx Spartan and Virtex FPGAs. The devices cover the whole range
|
||||||
|
@ -1761,7 +1696,7 @@ platforms are moved over to use the flattened-device-tree model.
|
||||||
listed above, nodes for these devices should include a phy-handle
|
listed above, nodes for these devices should include a phy-handle
|
||||||
property, and may include other common network device properties
|
property, and may include other common network device properties
|
||||||
like local-mac-address.
|
like local-mac-address.
|
||||||
|
|
||||||
iv) Xilinx Uartlite
|
iv) Xilinx Uartlite
|
||||||
|
|
||||||
Xilinx uartlite devices are simple fixed speed serial ports.
|
Xilinx uartlite devices are simple fixed speed serial ports.
|
||||||
|
@ -1793,7 +1728,7 @@ platforms are moved over to use the flattened-device-tree model.
|
||||||
- reg-offset : A value of 3 is required
|
- reg-offset : A value of 3 is required
|
||||||
- reg-shift : A value of 2 is required
|
- reg-shift : A value of 2 is required
|
||||||
|
|
||||||
f) USB EHCI controllers
|
e) USB EHCI controllers
|
||||||
|
|
||||||
Required properties:
|
Required properties:
|
||||||
- compatible : should be "usb-ehci".
|
- compatible : should be "usb-ehci".
|
||||||
|
@ -1819,7 +1754,7 @@ platforms are moved over to use the flattened-device-tree model.
|
||||||
big-endian;
|
big-endian;
|
||||||
};
|
};
|
||||||
|
|
||||||
g) MDIO on GPIOs
|
f) MDIO on GPIOs
|
||||||
|
|
||||||
Currently defined compatibles:
|
Currently defined compatibles:
|
||||||
- virtual,gpio-mdio
|
- virtual,gpio-mdio
|
||||||
|
@ -1839,7 +1774,7 @@ platforms are moved over to use the flattened-device-tree model.
|
||||||
&qe_pio_c 6>;
|
&qe_pio_c 6>;
|
||||||
};
|
};
|
||||||
|
|
||||||
h) SPI (Serial Peripheral Interface) busses
|
g) SPI (Serial Peripheral Interface) busses
|
||||||
|
|
||||||
SPI busses can be described with a node for the SPI master device
|
SPI busses can be described with a node for the SPI master device
|
||||||
and a set of child nodes for each SPI slave on the bus. For this
|
and a set of child nodes for each SPI slave on the bus. For this
|
||||||
|
|
80
Documentation/powerpc/dts-bindings/mtd-physmap.txt
Normal file
80
Documentation/powerpc/dts-bindings/mtd-physmap.txt
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
CFI or JEDEC memory-mapped NOR flash
|
||||||
|
|
||||||
|
Flash chips (Memory Technology Devices) are often used for solid state
|
||||||
|
file systems on embedded devices.
|
||||||
|
|
||||||
|
- compatible : should contain the specific model of flash chip(s)
|
||||||
|
used, if known, followed by either "cfi-flash" or "jedec-flash"
|
||||||
|
- reg : Address range(s) of the flash chip(s)
|
||||||
|
It's possible to (optionally) define multiple "reg" tuples so that
|
||||||
|
non-identical NOR chips can be described in one flash node.
|
||||||
|
- bank-width : Width (in bytes) of the flash bank. Equal to the
|
||||||
|
device width times the number of interleaved chips.
|
||||||
|
- device-width : (optional) Width of a single flash chip. If
|
||||||
|
omitted, assumed to be equal to 'bank-width'.
|
||||||
|
- #address-cells, #size-cells : Must be present if the flash has
|
||||||
|
sub-nodes representing partitions (see below). In this case
|
||||||
|
both #address-cells and #size-cells must be equal to 1.
|
||||||
|
|
||||||
|
For JEDEC compatible devices, the following additional properties
|
||||||
|
are defined:
|
||||||
|
|
||||||
|
- vendor-id : Contains the flash chip's vendor id (1 byte).
|
||||||
|
- device-id : Contains the flash chip's device id (1 byte).
|
||||||
|
|
||||||
|
In addition to the information on the flash bank itself, the
|
||||||
|
device tree may optionally contain additional information
|
||||||
|
describing partitions of the flash address space. This can be
|
||||||
|
used on platforms which have strong conventions about which
|
||||||
|
portions of the flash are used for what purposes, but which don't
|
||||||
|
use an on-flash partition table such as RedBoot.
|
||||||
|
|
||||||
|
Each partition is represented as a sub-node of the flash device.
|
||||||
|
Each node's name represents the name of the corresponding
|
||||||
|
partition of the flash device.
|
||||||
|
|
||||||
|
Flash partitions
|
||||||
|
- reg : The partition's offset and size within the flash bank.
|
||||||
|
- label : (optional) The label / name for this flash partition.
|
||||||
|
If omitted, the label is taken from the node name (excluding
|
||||||
|
the unit address).
|
||||||
|
- read-only : (optional) This parameter, if present, is a hint to
|
||||||
|
Linux that this flash partition should only be mounted
|
||||||
|
read-only. This is usually used for flash partitions
|
||||||
|
containing early-boot firmware images or data which should not
|
||||||
|
be clobbered.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
flash@ff000000 {
|
||||||
|
compatible = "amd,am29lv128ml", "cfi-flash";
|
||||||
|
reg = <ff000000 01000000>;
|
||||||
|
bank-width = <4>;
|
||||||
|
device-width = <1>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
fs@0 {
|
||||||
|
label = "fs";
|
||||||
|
reg = <0 f80000>;
|
||||||
|
};
|
||||||
|
firmware@f80000 {
|
||||||
|
label ="firmware";
|
||||||
|
reg = <f80000 80000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
Here an example with multiple "reg" tuples:
|
||||||
|
|
||||||
|
flash@f0000000,0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "intel,PC48F4400P0VB", "cfi-flash";
|
||||||
|
reg = <0 0x00000000 0x02000000
|
||||||
|
0 0x02000000 0x02000000>;
|
||||||
|
bank-width = <2>;
|
||||||
|
partition@0 {
|
||||||
|
label = "test-part1";
|
||||||
|
reg = <0 0x04000000>;
|
||||||
|
};
|
||||||
|
};
|
|
@ -511,10 +511,16 @@ SPI MASTER METHODS
|
||||||
This sets up the device clock rate, SPI mode, and word sizes.
|
This sets up the device clock rate, SPI mode, and word sizes.
|
||||||
Drivers may change the defaults provided by board_info, and then
|
Drivers may change the defaults provided by board_info, and then
|
||||||
call spi_setup(spi) to invoke this routine. It may sleep.
|
call spi_setup(spi) to invoke this routine. It may sleep.
|
||||||
|
|
||||||
Unless each SPI slave has its own configuration registers, don't
|
Unless each SPI slave has its own configuration registers, don't
|
||||||
change them right away ... otherwise drivers could corrupt I/O
|
change them right away ... otherwise drivers could corrupt I/O
|
||||||
that's in progress for other SPI devices.
|
that's in progress for other SPI devices.
|
||||||
|
|
||||||
|
** BUG ALERT: for some reason the first version of
|
||||||
|
** many spi_master drivers seems to get this wrong.
|
||||||
|
** When you code setup(), ASSUME that the controller
|
||||||
|
** is actively processing transfers for another device.
|
||||||
|
|
||||||
master->transfer(struct spi_device *spi, struct spi_message *message)
|
master->transfer(struct spi_device *spi, struct spi_message *message)
|
||||||
This must not sleep. Its responsibility is arrange that the
|
This must not sleep. Its responsibility is arrange that the
|
||||||
transfer happens and its complete() callback is issued. The two
|
transfer happens and its complete() callback is issued. The two
|
||||||
|
|
28
MAINTAINERS
28
MAINTAINERS
|
@ -1337,12 +1337,9 @@ L: cbe-oss-dev@ozlabs.org
|
||||||
W: http://www.ibm.com/developerworks/power/cell/
|
W: http://www.ibm.com/developerworks/power/cell/
|
||||||
S: Supported
|
S: Supported
|
||||||
F: arch/powerpc/include/asm/cell*.h
|
F: arch/powerpc/include/asm/cell*.h
|
||||||
F: arch/powerpc/include/asm/lv1call.h
|
|
||||||
F: arch/powerpc/include/asm/ps3*.h
|
|
||||||
F: arch/powerpc/include/asm/spu*.h
|
F: arch/powerpc/include/asm/spu*.h
|
||||||
F: arch/powerpc/oprofile/*cell*
|
F: arch/powerpc/oprofile/*cell*
|
||||||
F: arch/powerpc/platforms/cell/
|
F: arch/powerpc/platforms/cell/
|
||||||
F: arch/powerpc/platforms/ps3/
|
|
||||||
|
|
||||||
CERTIFIED WIRELESS USB (WUSB) SUBSYSTEM:
|
CERTIFIED WIRELESS USB (WUSB) SUBSYSTEM:
|
||||||
P: David Vrabel
|
P: David Vrabel
|
||||||
|
@ -2065,6 +2062,8 @@ F: drivers/infiniband/hw/ehca/
|
||||||
EMBEDDED LINUX
|
EMBEDDED LINUX
|
||||||
P: Paul Gortmaker
|
P: Paul Gortmaker
|
||||||
M: paul.gortmaker@windriver.com
|
M: paul.gortmaker@windriver.com
|
||||||
|
P: Matt Mackall
|
||||||
|
M: mpm@selenic.com
|
||||||
P: David Woodhouse
|
P: David Woodhouse
|
||||||
M: dwmw2@infradead.org
|
M: dwmw2@infradead.org
|
||||||
L: linux-embedded@vger.kernel.org
|
L: linux-embedded@vger.kernel.org
|
||||||
|
@ -2562,7 +2561,6 @@ F: kernel/power/
|
||||||
F: include/linux/suspend.h
|
F: include/linux/suspend.h
|
||||||
F: include/linux/freezer.h
|
F: include/linux/freezer.h
|
||||||
F: include/linux/pm.h
|
F: include/linux/pm.h
|
||||||
F: include/asm-*/suspend*.h
|
|
||||||
F: arch/*/include/asm/suspend*.h
|
F: arch/*/include/asm/suspend*.h
|
||||||
|
|
||||||
HID CORE LAYER
|
HID CORE LAYER
|
||||||
|
@ -2760,7 +2758,7 @@ IDE SUBSYSTEM
|
||||||
P: Bartlomiej Zolnierkiewicz
|
P: Bartlomiej Zolnierkiewicz
|
||||||
M: bzolnier@gmail.com
|
M: bzolnier@gmail.com
|
||||||
L: linux-ide@vger.kernel.org
|
L: linux-ide@vger.kernel.org
|
||||||
T: quilt kernel.org/pub/linux/kernel/people/bart/pata-2.6/
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/ide/
|
F: Documentation/ide/
|
||||||
F: drivers/ide/
|
F: drivers/ide/
|
||||||
|
@ -3340,7 +3338,7 @@ P: Eduard - Gabriel Munteanu
|
||||||
M: eduard.munteanu@linux360.ro
|
M: eduard.munteanu@linux360.ro
|
||||||
L: linux-kernel@vger.kernel.org
|
L: linux-kernel@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/vm/kmemtrace.txt
|
F: Documentation/trace/kmemtrace.txt
|
||||||
F: include/trace/kmemtrace.h
|
F: include/trace/kmemtrace.h
|
||||||
F: kernel/trace/kmemtrace.c
|
F: kernel/trace/kmemtrace.c
|
||||||
|
|
||||||
|
@ -3450,7 +3448,7 @@ P: Matt Porter
|
||||||
M: mporter@kernel.crashing.org
|
M: mporter@kernel.crashing.org
|
||||||
W: http://www.penguinppc.org/
|
W: http://www.penguinppc.org/
|
||||||
L: linuxppc-dev@ozlabs.org
|
L: linuxppc-dev@ozlabs.org
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jwboyer/powerpc.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
||||||
LINUX FOR POWERPC EMBEDDED XILINX VIRTEX
|
LINUX FOR POWERPC EMBEDDED XILINX VIRTEX
|
||||||
|
@ -3993,8 +3991,8 @@ NETWORKING [GENERAL]
|
||||||
P: David S. Miller
|
P: David S. Miller
|
||||||
M: davem@davemloft.net
|
M: davem@davemloft.net
|
||||||
L: netdev@vger.kernel.org
|
L: netdev@vger.kernel.org
|
||||||
W: http://linux-net.osdl.org/
|
W: http://www.linuxfoundation.org/en/Net
|
||||||
T: git kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: net/
|
F: net/
|
||||||
F: include/net/
|
F: include/net/
|
||||||
|
@ -4035,6 +4033,13 @@ F: net/wireless/
|
||||||
F: include/net/ieee80211*
|
F: include/net/ieee80211*
|
||||||
F: include/net/wireless.h
|
F: include/net/wireless.h
|
||||||
|
|
||||||
|
NETWORKING DRIVERS
|
||||||
|
L: netdev@vger.kernel.org
|
||||||
|
W: http://www.linuxfoundation.org/en/Net
|
||||||
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git
|
||||||
|
S: Odd Fixes
|
||||||
|
F: drivers/net/
|
||||||
|
|
||||||
NETXEN (1/10) GbE SUPPORT
|
NETXEN (1/10) GbE SUPPORT
|
||||||
P: Dhananjay Phadke
|
P: Dhananjay Phadke
|
||||||
M: dhananjay@netxen.com
|
M: dhananjay@netxen.com
|
||||||
|
@ -4506,7 +4511,9 @@ F: arch/powerpc/include/asm/ps3*.h
|
||||||
F: arch/powerpc/platforms/ps3/
|
F: arch/powerpc/platforms/ps3/
|
||||||
F: drivers/*/ps3*
|
F: drivers/*/ps3*
|
||||||
F: drivers/ps3/
|
F: drivers/ps3/
|
||||||
|
F: drivers/rtc/rtc-ps3.c
|
||||||
F: drivers/usb/host/*ps3.c
|
F: drivers/usb/host/*ps3.c
|
||||||
|
F: sound/ppc/snd_ps3*
|
||||||
|
|
||||||
PS3VRAM DRIVER
|
PS3VRAM DRIVER
|
||||||
P: Jim Paris
|
P: Jim Paris
|
||||||
|
@ -5404,7 +5411,6 @@ F: kernel/power/
|
||||||
F: include/linux/suspend.h
|
F: include/linux/suspend.h
|
||||||
F: include/linux/freezer.h
|
F: include/linux/freezer.h
|
||||||
F: include/linux/pm.h
|
F: include/linux/pm.h
|
||||||
F: include/asm-*/suspend.h
|
|
||||||
|
|
||||||
SVGA HANDLING
|
SVGA HANDLING
|
||||||
P: Martin Mares
|
P: Martin Mares
|
||||||
|
@ -5638,7 +5644,7 @@ L: uclinux-dev@uclinux.org (subscribers-only)
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: arch/m68knommu/
|
F: arch/m68knommu/
|
||||||
|
|
||||||
UCLINUX FOR RENESAS H8/300
|
UCLINUX FOR RENESAS H8/300 (H8300)
|
||||||
P: Yoshinori Sato
|
P: Yoshinori Sato
|
||||||
M: ysato@users.sourceforge.jp
|
M: ysato@users.sourceforge.jp
|
||||||
W: http://uclinux-h8.sourceforge.jp/
|
W: http://uclinux-h8.sourceforge.jp/
|
||||||
|
|
4
Makefile
4
Makefile
|
@ -1,8 +1,8 @@
|
||||||
VERSION = 2
|
VERSION = 2
|
||||||
PATCHLEVEL = 6
|
PATCHLEVEL = 6
|
||||||
SUBLEVEL = 30
|
SUBLEVEL = 30
|
||||||
EXTRAVERSION = -rc2
|
EXTRAVERSION = -rc4
|
||||||
NAME = Temporary Tasmanian Devil
|
NAME = Vindictive Armadillo
|
||||||
|
|
||||||
# *DOCUMENTATION*
|
# *DOCUMENTATION*
|
||||||
# To see a list of typical targets execute "make help"
|
# To see a list of typical targets execute "make help"
|
||||||
|
|
|
@ -73,6 +73,6 @@ extern unsigned long __per_cpu_offset[NR_CPUS];
|
||||||
|
|
||||||
#endif /* SMP */
|
#endif /* SMP */
|
||||||
|
|
||||||
#define DECLARE_PER_CPU(type, name) extern __typeof__(type) per_cpu_var(name)
|
#include <asm-generic/percpu.h>
|
||||||
|
|
||||||
#endif /* __ALPHA_PERCPU_H */
|
#endif /* __ALPHA_PERCPU_H */
|
||||||
|
|
|
@ -7,10 +7,11 @@
|
||||||
* the kernel global pointer and jump to the kernel entry-point.
|
* the kernel global pointer and jump to the kernel entry-point.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
#include <asm/system.h>
|
#include <asm/system.h>
|
||||||
#include <asm/asm-offsets.h>
|
#include <asm/asm-offsets.h>
|
||||||
|
|
||||||
.section .text.head, "ax"
|
__HEAD
|
||||||
.globl swapper_pg_dir
|
.globl swapper_pg_dir
|
||||||
.globl _stext
|
.globl _stext
|
||||||
swapper_pg_dir=SWAPPER_PGD
|
swapper_pg_dir=SWAPPER_PGD
|
||||||
|
|
|
@ -16,7 +16,7 @@ SECTIONS
|
||||||
|
|
||||||
_text = .; /* Text and read-only data */
|
_text = .; /* Text and read-only data */
|
||||||
.text : {
|
.text : {
|
||||||
*(.text.head)
|
HEAD_TEXT
|
||||||
TEXT_TEXT
|
TEXT_TEXT
|
||||||
SCHED_TEXT
|
SCHED_TEXT
|
||||||
LOCK_TEXT
|
LOCK_TEXT
|
||||||
|
|
|
@ -387,6 +387,8 @@
|
||||||
#define __NR_dup3 (__NR_SYSCALL_BASE+358)
|
#define __NR_dup3 (__NR_SYSCALL_BASE+358)
|
||||||
#define __NR_pipe2 (__NR_SYSCALL_BASE+359)
|
#define __NR_pipe2 (__NR_SYSCALL_BASE+359)
|
||||||
#define __NR_inotify_init1 (__NR_SYSCALL_BASE+360)
|
#define __NR_inotify_init1 (__NR_SYSCALL_BASE+360)
|
||||||
|
#define __NR_preadv (__NR_SYSCALL_BASE+361)
|
||||||
|
#define __NR_pwritev (__NR_SYSCALL_BASE+362)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The following SWIs are ARM private.
|
* The following SWIs are ARM private.
|
||||||
|
|
|
@ -370,6 +370,8 @@
|
||||||
CALL(sys_dup3)
|
CALL(sys_dup3)
|
||||||
CALL(sys_pipe2)
|
CALL(sys_pipe2)
|
||||||
/* 360 */ CALL(sys_inotify_init1)
|
/* 360 */ CALL(sys_inotify_init1)
|
||||||
|
CALL(sys_preadv)
|
||||||
|
CALL(sys_pwritev)
|
||||||
#ifndef syscalls_counted
|
#ifndef syscalls_counted
|
||||||
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
|
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
|
||||||
#define syscalls_counted
|
#define syscalls_counted
|
||||||
|
|
|
@ -177,21 +177,12 @@ asmlinkage long sys_oabi_fstatat64(int dfd,
|
||||||
int flag)
|
int flag)
|
||||||
{
|
{
|
||||||
struct kstat stat;
|
struct kstat stat;
|
||||||
int error = -EINVAL;
|
int error;
|
||||||
|
|
||||||
if ((flag & ~AT_SYMLINK_NOFOLLOW) != 0)
|
error = vfs_fstatat(dfd, filename, &stat, flag);
|
||||||
goto out;
|
if (error)
|
||||||
|
return error;
|
||||||
if (flag & AT_SYMLINK_NOFOLLOW)
|
return cp_oldabi_stat64(&stat, statbuf);
|
||||||
error = vfs_lstat_fd(dfd, filename, &stat);
|
|
||||||
else
|
|
||||||
error = vfs_stat_fd(dfd, filename, &stat);
|
|
||||||
|
|
||||||
if (!error)
|
|
||||||
error = cp_oldabi_stat64(&stat, statbuf);
|
|
||||||
|
|
||||||
out:
|
|
||||||
return error;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
struct oabi_flock64 {
|
struct oabi_flock64 {
|
||||||
|
|
|
@ -85,7 +85,7 @@ static struct irqaction at91rm9200_timer_irq = {
|
||||||
.handler = at91rm9200_timer_interrupt
|
.handler = at91rm9200_timer_interrupt
|
||||||
};
|
};
|
||||||
|
|
||||||
static cycle_t read_clk32k(void)
|
static cycle_t read_clk32k(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return read_CRTR();
|
return read_CRTR();
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ static u32 pit_cnt; /* access only w/system irq blocked */
|
||||||
* Clocksource: just a monotonic counter of MCK/16 cycles.
|
* Clocksource: just a monotonic counter of MCK/16 cycles.
|
||||||
* We don't care whether or not PIT irqs are enabled.
|
* We don't care whether or not PIT irqs are enabled.
|
||||||
*/
|
*/
|
||||||
static cycle_t read_pit_clk(void)
|
static cycle_t read_pit_clk(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
u32 elapsed;
|
u32 elapsed;
|
||||||
|
|
|
@ -238,7 +238,7 @@ static void __init timer_init(void)
|
||||||
/*
|
/*
|
||||||
* clocksource
|
* clocksource
|
||||||
*/
|
*/
|
||||||
static cycle_t read_cycles(void)
|
static cycle_t read_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
struct timer_s *t = &timers[TID_CLOCKSOURCE];
|
struct timer_s *t = &timers[TID_CLOCKSOURCE];
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#ifndef _IMX_GPIO_H
|
#ifndef _IMX_GPIO_H
|
||||||
|
|
||||||
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
||||||
|
#include <mach/hardware.h>
|
||||||
#include <mach/imx-regs.h>
|
#include <mach/imx-regs.h>
|
||||||
|
|
||||||
#define IMX_GPIO_ALLOC_MODE_NORMAL 0
|
#define IMX_GPIO_ALLOC_MODE_NORMAL 0
|
||||||
|
|
|
@ -73,7 +73,7 @@ static void __init imx_timer_hardware_init(void)
|
||||||
IMX_TCTL(TIMER_BASE) = TCTL_FRR | TCTL_CLK_PCLK1 | TCTL_TEN;
|
IMX_TCTL(TIMER_BASE) = TCTL_FRR | TCTL_CLK_PCLK1 | TCTL_TEN;
|
||||||
}
|
}
|
||||||
|
|
||||||
cycle_t imx_get_cycles(void)
|
cycle_t imx_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return IMX_TCN(TIMER_BASE);
|
return IMX_TCN(TIMER_BASE);
|
||||||
}
|
}
|
||||||
|
|
|
@ -401,7 +401,7 @@ void __init ixp4xx_sys_init(void)
|
||||||
/*
|
/*
|
||||||
* clocksource
|
* clocksource
|
||||||
*/
|
*/
|
||||||
cycle_t ixp4xx_get_cycles(void)
|
cycle_t ixp4xx_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return *IXP4XX_OSTS;
|
return *IXP4XX_OSTS;
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
#include <asm/mach/map.h>
|
#include <asm/mach/map.h>
|
||||||
#include <asm/mach/time.h>
|
#include <asm/mach/time.h>
|
||||||
#include <mach/kirkwood.h>
|
#include <mach/kirkwood.h>
|
||||||
|
#include <mach/bridge-regs.h>
|
||||||
#include <plat/cache-feroceon-l2.h>
|
#include <plat/cache-feroceon-l2.h>
|
||||||
#include <plat/ehci-orion.h>
|
#include <plat/ehci-orion.h>
|
||||||
#include <plat/mvsdio.h>
|
#include <plat/mvsdio.h>
|
||||||
|
|
42
arch/arm/mach-kirkwood/include/mach/bridge-regs.h
Normal file
42
arch/arm/mach-kirkwood/include/mach/bridge-regs.h
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
/*
|
||||||
|
* arch/arm/mach-kirkwood/include/mach/bridge-regs.h
|
||||||
|
*
|
||||||
|
* Mbus-L to Mbus Bridge Registers
|
||||||
|
*
|
||||||
|
* This file is licensed under the terms of the GNU General Public
|
||||||
|
* License version 2. This program is licensed "as is" without any
|
||||||
|
* warranty of any kind, whether express or implied.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
#define __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
|
||||||
|
#include <mach/kirkwood.h>
|
||||||
|
|
||||||
|
#define CPU_CONTROL (BRIDGE_VIRT_BASE | 0x0104)
|
||||||
|
#define CPU_RESET 0x00000002
|
||||||
|
|
||||||
|
#define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108)
|
||||||
|
#define SOFT_RESET_OUT_EN 0x00000004
|
||||||
|
|
||||||
|
#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c)
|
||||||
|
#define SOFT_RESET 0x00000001
|
||||||
|
|
||||||
|
#define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110)
|
||||||
|
#define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114)
|
||||||
|
#define BRIDGE_INT_TIMER0 0x0002
|
||||||
|
#define BRIDGE_INT_TIMER1 0x0004
|
||||||
|
#define BRIDGE_INT_TIMER1_CLR (~0x0004)
|
||||||
|
|
||||||
|
#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200)
|
||||||
|
#define IRQ_CAUSE_LOW_OFF 0x0000
|
||||||
|
#define IRQ_MASK_LOW_OFF 0x0004
|
||||||
|
#define IRQ_CAUSE_HIGH_OFF 0x0010
|
||||||
|
#define IRQ_MASK_HIGH_OFF 0x0014
|
||||||
|
|
||||||
|
#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300)
|
||||||
|
|
||||||
|
#define L2_CONFIG_REG (BRIDGE_VIRT_BASE | 0x0128)
|
||||||
|
#define L2_WRITETHROUGH 0x00000010
|
||||||
|
|
||||||
|
#endif
|
|
@ -6,7 +6,7 @@
|
||||||
* published by the Free Software Foundation.
|
* published by the Free Software Foundation.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <mach/kirkwood.h>
|
#include <mach/bridge-regs.h>
|
||||||
|
|
||||||
.macro addruart,rx
|
.macro addruart,rx
|
||||||
mrc p15, 0, \rx, c1, c0
|
mrc p15, 0, \rx, c1, c0
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
* warranty of any kind, whether express or implied.
|
* warranty of any kind, whether express or implied.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <mach/kirkwood.h>
|
#include <mach/bridge-regs.h>
|
||||||
|
|
||||||
.macro disable_fiq
|
.macro disable_fiq
|
||||||
.endm
|
.endm
|
||||||
|
|
|
@ -43,44 +43,6 @@
|
||||||
#define KIRKWOOD_PCIE_MEM_PHYS_BASE 0xe0000000
|
#define KIRKWOOD_PCIE_MEM_PHYS_BASE 0xe0000000
|
||||||
#define KIRKWOOD_PCIE_MEM_SIZE SZ_128M
|
#define KIRKWOOD_PCIE_MEM_SIZE SZ_128M
|
||||||
|
|
||||||
/*
|
|
||||||
* MBUS bridge registers.
|
|
||||||
*/
|
|
||||||
#define BRIDGE_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x20000)
|
|
||||||
#define CPU_CONTROL (BRIDGE_VIRT_BASE | 0x0104)
|
|
||||||
#define CPU_RESET 0x00000002
|
|
||||||
#define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108)
|
|
||||||
#define SOFT_RESET_OUT_EN 0x00000004
|
|
||||||
#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c)
|
|
||||||
#define SOFT_RESET 0x00000001
|
|
||||||
#define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110)
|
|
||||||
#define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114)
|
|
||||||
#define BRIDGE_INT_TIMER0 0x0002
|
|
||||||
#define BRIDGE_INT_TIMER1 0x0004
|
|
||||||
#define BRIDGE_INT_TIMER1_CLR (~0x0004)
|
|
||||||
#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200)
|
|
||||||
#define IRQ_CAUSE_LOW_OFF 0x0000
|
|
||||||
#define IRQ_MASK_LOW_OFF 0x0004
|
|
||||||
#define IRQ_CAUSE_HIGH_OFF 0x0010
|
|
||||||
#define IRQ_MASK_HIGH_OFF 0x0014
|
|
||||||
#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300)
|
|
||||||
#define L2_CONFIG_REG (BRIDGE_VIRT_BASE | 0x0128)
|
|
||||||
#define L2_WRITETHROUGH 0x00000010
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Supported devices and revisions.
|
|
||||||
*/
|
|
||||||
#define MV88F6281_DEV_ID 0x6281
|
|
||||||
#define MV88F6281_REV_Z0 0
|
|
||||||
#define MV88F6281_REV_A0 2
|
|
||||||
|
|
||||||
#define MV88F6192_DEV_ID 0x6192
|
|
||||||
#define MV88F6192_REV_Z0 0
|
|
||||||
#define MV88F6192_REV_A0 2
|
|
||||||
|
|
||||||
#define MV88F6180_DEV_ID 0x6180
|
|
||||||
#define MV88F6180_REV_A0 2
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Register Map
|
* Register Map
|
||||||
*/
|
*/
|
||||||
|
@ -99,6 +61,8 @@
|
||||||
#define UART1_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x2100)
|
#define UART1_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x2100)
|
||||||
#define UART1_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x2100)
|
#define UART1_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x2100)
|
||||||
|
|
||||||
|
#define BRIDGE_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x20000)
|
||||||
|
|
||||||
#define PCIE_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x40000)
|
#define PCIE_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x40000)
|
||||||
|
|
||||||
#define USB_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x50000)
|
#define USB_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x50000)
|
||||||
|
@ -119,5 +83,18 @@
|
||||||
|
|
||||||
#define SDIO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x90000)
|
#define SDIO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x90000)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Supported devices and revisions.
|
||||||
|
*/
|
||||||
|
#define MV88F6281_DEV_ID 0x6281
|
||||||
|
#define MV88F6281_REV_Z0 0
|
||||||
|
#define MV88F6281_REV_A0 2
|
||||||
|
|
||||||
|
#define MV88F6192_DEV_ID 0x6192
|
||||||
|
#define MV88F6192_REV_Z0 0
|
||||||
|
#define MV88F6192_REV_A0 2
|
||||||
|
|
||||||
|
#define MV88F6180_DEV_ID 0x6180
|
||||||
|
#define MV88F6180_REV_A0 2
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -9,8 +9,7 @@
|
||||||
#ifndef __ASM_ARCH_SYSTEM_H
|
#ifndef __ASM_ARCH_SYSTEM_H
|
||||||
#define __ASM_ARCH_SYSTEM_H
|
#define __ASM_ARCH_SYSTEM_H
|
||||||
|
|
||||||
#include <mach/hardware.h>
|
#include <mach/bridge-regs.h>
|
||||||
#include <mach/kirkwood.h>
|
|
||||||
|
|
||||||
static inline void arch_idle(void)
|
static inline void arch_idle(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/irq.h>
|
#include <linux/irq.h>
|
||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
|
#include <mach/bridge-regs.h>
|
||||||
#include <plat/irq.h>
|
#include <plat/irq.h>
|
||||||
#include <asm/gpio.h>
|
#include <asm/gpio.h>
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
/*
|
/*
|
||||||
* CPU Address Decode Windows registers
|
* CPU Address Decode Windows registers
|
||||||
*/
|
*/
|
||||||
|
#define BRIDGE_REG(x) (BRIDGE_VIRT_BASE | (x))
|
||||||
#define CPU_WIN_CTRL(n) BRIDGE_REG(0x000 | ((n) << 4))
|
#define CPU_WIN_CTRL(n) BRIDGE_REG(0x000 | ((n) << 4))
|
||||||
#define CPU_WIN_BASE(n) BRIDGE_REG(0x004 | ((n) << 4))
|
#define CPU_WIN_BASE(n) BRIDGE_REG(0x004 | ((n) << 4))
|
||||||
#define CPU_WIN_REMAP_LO(n) BRIDGE_REG(0x008 | ((n) << 4))
|
#define CPU_WIN_REMAP_LO(n) BRIDGE_REG(0x008 | ((n) << 4))
|
||||||
|
|
33
arch/arm/mach-loki/include/mach/bridge-regs.h
Normal file
33
arch/arm/mach-loki/include/mach/bridge-regs.h
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
/*
|
||||||
|
* arch/arm/mach-loki/include/mach/bridge-regs.h
|
||||||
|
*
|
||||||
|
* This file is licensed under the terms of the GNU General Public
|
||||||
|
* License version 2. This program is licensed "as is" without any
|
||||||
|
* warranty of any kind, whether express or implied.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
#define __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
|
||||||
|
#include <mach/loki.h>
|
||||||
|
|
||||||
|
#define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108)
|
||||||
|
#define SOFT_RESET_OUT_EN 0x00000004
|
||||||
|
|
||||||
|
#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c)
|
||||||
|
#define SOFT_RESET 0x00000001
|
||||||
|
|
||||||
|
#define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110)
|
||||||
|
|
||||||
|
#define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114)
|
||||||
|
#define BRIDGE_INT_TIMER0 0x0002
|
||||||
|
#define BRIDGE_INT_TIMER1 0x0004
|
||||||
|
#define BRIDGE_INT_TIMER1_CLR 0x0004
|
||||||
|
|
||||||
|
#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200)
|
||||||
|
#define IRQ_CAUSE_OFF 0x0000
|
||||||
|
#define IRQ_MASK_OFF 0x0004
|
||||||
|
|
||||||
|
#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300)
|
||||||
|
|
||||||
|
#endif
|
|
@ -8,7 +8,7 @@
|
||||||
* warranty of any kind, whether express or implied.
|
* warranty of any kind, whether express or implied.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <mach/loki.h>
|
#include <mach/bridge-regs.h>
|
||||||
|
|
||||||
.macro disable_fiq
|
.macro disable_fiq
|
||||||
.endm
|
.endm
|
||||||
|
|
|
@ -58,20 +58,6 @@
|
||||||
#define UART1_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x2100)
|
#define UART1_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x2100)
|
||||||
|
|
||||||
#define BRIDGE_VIRT_BASE (LOKI_REGS_VIRT_BASE | 0x20000)
|
#define BRIDGE_VIRT_BASE (LOKI_REGS_VIRT_BASE | 0x20000)
|
||||||
#define BRIDGE_REG(x) (BRIDGE_VIRT_BASE | (x))
|
|
||||||
#define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108)
|
|
||||||
#define SOFT_RESET_OUT_EN 0x00000004
|
|
||||||
#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c)
|
|
||||||
#define SOFT_RESET 0x00000001
|
|
||||||
#define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110)
|
|
||||||
#define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114)
|
|
||||||
#define BRIDGE_INT_TIMER0 0x0002
|
|
||||||
#define BRIDGE_INT_TIMER1 0x0004
|
|
||||||
#define BRIDGE_INT_TIMER1_CLR 0x0004
|
|
||||||
#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200)
|
|
||||||
#define IRQ_CAUSE_OFF 0x0000
|
|
||||||
#define IRQ_MASK_OFF 0x0004
|
|
||||||
#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300)
|
|
||||||
|
|
||||||
#define PCIE0_VIRT_BASE (LOKI_REGS_VIRT_BASE | 0x30000)
|
#define PCIE0_VIRT_BASE (LOKI_REGS_VIRT_BASE | 0x30000)
|
||||||
|
|
||||||
|
|
|
@ -9,8 +9,7 @@
|
||||||
#ifndef __ASM_ARCH_SYSTEM_H
|
#ifndef __ASM_ARCH_SYSTEM_H
|
||||||
#define __ASM_ARCH_SYSTEM_H
|
#define __ASM_ARCH_SYSTEM_H
|
||||||
|
|
||||||
#include <mach/hardware.h>
|
#include <mach/bridge-regs.h>
|
||||||
#include <mach/loki.h>
|
|
||||||
|
|
||||||
static inline void arch_idle(void)
|
static inline void arch_idle(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/irq.h>
|
#include <linux/irq.h>
|
||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
|
#include <mach/bridge-regs.h>
|
||||||
#include <plat/irq.h>
|
#include <plat/irq.h>
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
|
||||||
|
|
|
@ -57,12 +57,12 @@ static irqreturn_t msm_timer_interrupt(int irq, void *dev_id)
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
static cycle_t msm_gpt_read(void)
|
static cycle_t msm_gpt_read(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return readl(MSM_GPT_BASE + TIMER_COUNT_VAL);
|
return readl(MSM_GPT_BASE + TIMER_COUNT_VAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static cycle_t msm_dgt_read(void)
|
static cycle_t msm_dgt_read(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return readl(MSM_DGT_BASE + TIMER_COUNT_VAL) >> MSM_DGT_SHIFT;
|
return readl(MSM_DGT_BASE + TIMER_COUNT_VAL) >> MSM_DGT_SHIFT;
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,7 @@
|
||||||
#include <asm/mach/map.h>
|
#include <asm/mach/map.h>
|
||||||
#include <asm/mach/time.h>
|
#include <asm/mach/time.h>
|
||||||
#include <mach/mv78xx0.h>
|
#include <mach/mv78xx0.h>
|
||||||
|
#include <mach/bridge-regs.h>
|
||||||
#include <plat/cache-feroceon-l2.h>
|
#include <plat/cache-feroceon-l2.h>
|
||||||
#include <plat/ehci-orion.h>
|
#include <plat/ehci-orion.h>
|
||||||
#include <plat/orion_nand.h>
|
#include <plat/orion_nand.h>
|
||||||
|
|
39
arch/arm/mach-mv78xx0/include/mach/bridge-regs.h
Normal file
39
arch/arm/mach-mv78xx0/include/mach/bridge-regs.h
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
/*
|
||||||
|
* arch/arm/mach-mv78xx0/include/mach/bridge-regs.h
|
||||||
|
*
|
||||||
|
* This file is licensed under the terms of the GNU General Public
|
||||||
|
* License version 2. This program is licensed "as is" without any
|
||||||
|
* warranty of any kind, whether express or implied.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
#define __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
|
||||||
|
#include <mach/mv78xx0.h>
|
||||||
|
|
||||||
|
#define CPU_CONTROL (BRIDGE_VIRT_BASE | 0x0104)
|
||||||
|
#define L2_WRITETHROUGH 0x00020000
|
||||||
|
|
||||||
|
#define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108)
|
||||||
|
#define SOFT_RESET_OUT_EN 0x00000004
|
||||||
|
|
||||||
|
#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c)
|
||||||
|
#define SOFT_RESET 0x00000001
|
||||||
|
|
||||||
|
#define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110)
|
||||||
|
#define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114)
|
||||||
|
#define BRIDGE_INT_TIMER0 0x0002
|
||||||
|
#define BRIDGE_INT_TIMER1 0x0004
|
||||||
|
#define BRIDGE_INT_TIMER1_CLR (~0x0004)
|
||||||
|
|
||||||
|
#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200)
|
||||||
|
#define IRQ_CAUSE_ERR_OFF 0x0000
|
||||||
|
#define IRQ_CAUSE_LOW_OFF 0x0004
|
||||||
|
#define IRQ_CAUSE_HIGH_OFF 0x0008
|
||||||
|
#define IRQ_MASK_ERR_OFF 0x000c
|
||||||
|
#define IRQ_MASK_LOW_OFF 0x0010
|
||||||
|
#define IRQ_MASK_HIGH_OFF 0x0014
|
||||||
|
|
||||||
|
#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300)
|
||||||
|
|
||||||
|
#endif
|
|
@ -8,7 +8,7 @@
|
||||||
* warranty of any kind, whether express or implied.
|
* warranty of any kind, whether express or implied.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <mach/mv78xx0.h>
|
#include <mach/bridge-regs.h>
|
||||||
|
|
||||||
.macro disable_fiq
|
.macro disable_fiq
|
||||||
.endm
|
.endm
|
||||||
|
|
|
@ -59,37 +59,6 @@
|
||||||
* Core-specific peripheral registers.
|
* Core-specific peripheral registers.
|
||||||
*/
|
*/
|
||||||
#define BRIDGE_VIRT_BASE (MV78XX0_CORE_REGS_VIRT_BASE)
|
#define BRIDGE_VIRT_BASE (MV78XX0_CORE_REGS_VIRT_BASE)
|
||||||
#define CPU_CONTROL (BRIDGE_VIRT_BASE | 0x0104)
|
|
||||||
#define L2_WRITETHROUGH 0x00020000
|
|
||||||
#define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108)
|
|
||||||
#define SOFT_RESET_OUT_EN 0x00000004
|
|
||||||
#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c)
|
|
||||||
#define SOFT_RESET 0x00000001
|
|
||||||
#define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110)
|
|
||||||
#define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114)
|
|
||||||
#define BRIDGE_INT_TIMER0 0x0002
|
|
||||||
#define BRIDGE_INT_TIMER1 0x0004
|
|
||||||
#define BRIDGE_INT_TIMER1_CLR (~0x0004)
|
|
||||||
#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200)
|
|
||||||
#define IRQ_CAUSE_ERR_OFF 0x0000
|
|
||||||
#define IRQ_CAUSE_LOW_OFF 0x0004
|
|
||||||
#define IRQ_CAUSE_HIGH_OFF 0x0008
|
|
||||||
#define IRQ_MASK_ERR_OFF 0x000c
|
|
||||||
#define IRQ_MASK_LOW_OFF 0x0010
|
|
||||||
#define IRQ_MASK_HIGH_OFF 0x0014
|
|
||||||
#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Supported devices and revisions.
|
|
||||||
*/
|
|
||||||
#define MV78X00_Z0_DEV_ID 0x6381
|
|
||||||
#define MV78X00_REV_Z0 1
|
|
||||||
|
|
||||||
#define MV78100_DEV_ID 0x7810
|
|
||||||
#define MV78100_REV_A0 1
|
|
||||||
|
|
||||||
#define MV78200_DEV_ID 0x7820
|
|
||||||
#define MV78200_REV_A0 1
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Register Map
|
* Register Map
|
||||||
|
@ -135,5 +104,16 @@
|
||||||
|
|
||||||
#define SATA_PHYS_BASE (MV78XX0_REGS_PHYS_BASE | 0xa0000)
|
#define SATA_PHYS_BASE (MV78XX0_REGS_PHYS_BASE | 0xa0000)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Supported devices and revisions.
|
||||||
|
*/
|
||||||
|
#define MV78X00_Z0_DEV_ID 0x6381
|
||||||
|
#define MV78X00_REV_Z0 1
|
||||||
|
|
||||||
|
#define MV78100_DEV_ID 0x7810
|
||||||
|
#define MV78100_REV_A0 1
|
||||||
|
|
||||||
|
#define MV78200_DEV_ID 0x7820
|
||||||
|
#define MV78200_REV_A0 1
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -9,8 +9,7 @@
|
||||||
#ifndef __ASM_ARCH_SYSTEM_H
|
#ifndef __ASM_ARCH_SYSTEM_H
|
||||||
#define __ASM_ARCH_SYSTEM_H
|
#define __ASM_ARCH_SYSTEM_H
|
||||||
|
|
||||||
#include <mach/hardware.h>
|
#include <mach/bridge-regs.h>
|
||||||
#include <mach/mv78xx0.h>
|
|
||||||
|
|
||||||
static inline void arch_idle(void)
|
static inline void arch_idle(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
#include <linux/pci.h>
|
#include <linux/pci.h>
|
||||||
#include <linux/irq.h>
|
#include <linux/irq.h>
|
||||||
#include <asm/gpio.h>
|
#include <asm/gpio.h>
|
||||||
#include <mach/mv78xx0.h>
|
#include <mach/bridge-regs.h>
|
||||||
#include <plat/irq.h>
|
#include <plat/irq.h>
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
|
||||||
|
|
|
@ -104,7 +104,7 @@ static struct irqaction netx_timer_irq = {
|
||||||
.handler = netx_timer_interrupt,
|
.handler = netx_timer_interrupt,
|
||||||
};
|
};
|
||||||
|
|
||||||
cycle_t netx_get_cycles(void)
|
cycle_t netx_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return readl(NETX_GPIO_COUNTER_CURRENT(TIMER_CLOCKSOURCE));
|
return readl(NETX_GPIO_COUNTER_CURRENT(TIMER_CLOCKSOURCE));
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
#define TIMER_CLOCKEVENT 1
|
#define TIMER_CLOCKEVENT 1
|
||||||
static u32 latch;
|
static u32 latch;
|
||||||
|
|
||||||
static cycle_t ns9360_clocksource_read(void)
|
static cycle_t ns9360_clocksource_read(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return __raw_readl(SYS_TR(TIMER_CLOCKSOURCE));
|
return __raw_readl(SYS_TR(TIMER_CLOCKSOURCE));
|
||||||
}
|
}
|
||||||
|
|
|
@ -198,7 +198,7 @@ static struct irqaction omap_mpu_timer2_irq = {
|
||||||
.handler = omap_mpu_timer2_interrupt,
|
.handler = omap_mpu_timer2_interrupt,
|
||||||
};
|
};
|
||||||
|
|
||||||
static cycle_t mpu_read(void)
|
static cycle_t mpu_read(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return ~omap_mpu_timer_read(1);
|
return ~omap_mpu_timer_read(1);
|
||||||
}
|
}
|
||||||
|
|
|
@ -138,7 +138,7 @@ static inline void __init omap2_gp_clocksource_init(void) {}
|
||||||
* clocksource
|
* clocksource
|
||||||
*/
|
*/
|
||||||
static struct omap_dm_timer *gpt_clocksource;
|
static struct omap_dm_timer *gpt_clocksource;
|
||||||
static cycle_t clocksource_read_cycles(void)
|
static cycle_t clocksource_read_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return (cycle_t)omap_dm_timer_read_counter(gpt_clocksource);
|
return (cycle_t)omap_dm_timer_read_counter(gpt_clocksource);
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,12 +57,14 @@
|
||||||
/*
|
/*
|
||||||
* Helpers to get DDR bank info
|
* Helpers to get DDR bank info
|
||||||
*/
|
*/
|
||||||
|
#define ORION5X_DDR_REG(x) (ORION5X_DDR_VIRT_BASE | (x))
|
||||||
#define DDR_BASE_CS(n) ORION5X_DDR_REG(0x1500 + ((n) << 3))
|
#define DDR_BASE_CS(n) ORION5X_DDR_REG(0x1500 + ((n) << 3))
|
||||||
#define DDR_SIZE_CS(n) ORION5X_DDR_REG(0x1504 + ((n) << 3))
|
#define DDR_SIZE_CS(n) ORION5X_DDR_REG(0x1504 + ((n) << 3))
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* CPU Address Decode Windows registers
|
* CPU Address Decode Windows registers
|
||||||
*/
|
*/
|
||||||
|
#define ORION5X_BRIDGE_REG(x) (ORION5X_BRIDGE_VIRT_BASE | (x))
|
||||||
#define CPU_WIN_CTRL(n) ORION5X_BRIDGE_REG(0x000 | ((n) << 4))
|
#define CPU_WIN_CTRL(n) ORION5X_BRIDGE_REG(0x000 | ((n) << 4))
|
||||||
#define CPU_WIN_BASE(n) ORION5X_BRIDGE_REG(0x004 | ((n) << 4))
|
#define CPU_WIN_BASE(n) ORION5X_BRIDGE_REG(0x004 | ((n) << 4))
|
||||||
#define CPU_WIN_REMAP_LO(n) ORION5X_BRIDGE_REG(0x008 | ((n) << 4))
|
#define CPU_WIN_REMAP_LO(n) ORION5X_BRIDGE_REG(0x008 | ((n) << 4))
|
||||||
|
|
41
arch/arm/mach-orion5x/include/mach/bridge-regs.h
Normal file
41
arch/arm/mach-orion5x/include/mach/bridge-regs.h
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
/*
|
||||||
|
* arch/arm/mach-orion5x/include/mach/bridge-regs.h
|
||||||
|
*
|
||||||
|
* Orion CPU Bridge Registers
|
||||||
|
*
|
||||||
|
* This file is licensed under the terms of the GNU General Public
|
||||||
|
* License version 2. This program is licensed "as is" without any
|
||||||
|
* warranty of any kind, whether express or implied.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
#define __ASM_ARCH_BRIDGE_REGS_H
|
||||||
|
|
||||||
|
#include <mach/orion5x.h>
|
||||||
|
|
||||||
|
#define CPU_CONF (ORION5X_BRIDGE_VIRT_BASE | 0x100)
|
||||||
|
|
||||||
|
#define CPU_CTRL (ORION5X_BRIDGE_VIRT_BASE | 0x104)
|
||||||
|
|
||||||
|
#define CPU_RESET_MASK (ORION5X_BRIDGE_VIRT_BASE | 0x108)
|
||||||
|
#define WDT_RESET 0x0002
|
||||||
|
|
||||||
|
#define CPU_SOFT_RESET (ORION5X_BRIDGE_VIRT_BASE | 0x10c)
|
||||||
|
|
||||||
|
#define POWER_MNG_CTRL_REG (ORION5X_BRIDGE_VIRT_BASE | 0x11C)
|
||||||
|
|
||||||
|
#define BRIDGE_CAUSE (ORION5X_BRIDGE_VIRT_BASE | 0x110)
|
||||||
|
#define WDT_INT_REQ 0x0008
|
||||||
|
|
||||||
|
#define BRIDGE_MASK (ORION5X_BRIDGE_VIRT_BASE | 0x114)
|
||||||
|
#define BRIDGE_INT_TIMER0 0x0002
|
||||||
|
#define BRIDGE_INT_TIMER1 0x0004
|
||||||
|
#define BRIDGE_INT_TIMER1_CLR (~0x0004)
|
||||||
|
|
||||||
|
#define MAIN_IRQ_CAUSE (ORION5X_BRIDGE_VIRT_BASE | 0x200)
|
||||||
|
|
||||||
|
#define MAIN_IRQ_MASK (ORION5X_BRIDGE_VIRT_BASE | 0x204)
|
||||||
|
|
||||||
|
#define TIMER_VIRT_BASE (ORION5X_BRIDGE_VIRT_BASE | 0x300)
|
||||||
|
|
||||||
|
#endif
|
|
@ -8,7 +8,7 @@
|
||||||
* warranty of any kind, whether express or implied.
|
* warranty of any kind, whether express or implied.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <mach/orion5x.h>
|
#include <mach/bridge-regs.h>
|
||||||
|
|
||||||
.macro disable_fiq
|
.macro disable_fiq
|
||||||
.endm
|
.endm
|
||||||
|
|
|
@ -60,6 +60,59 @@
|
||||||
#define ORION5X_PCI_MEM_PHYS_BASE 0xe8000000
|
#define ORION5X_PCI_MEM_PHYS_BASE 0xe8000000
|
||||||
#define ORION5X_PCI_MEM_SIZE SZ_128M
|
#define ORION5X_PCI_MEM_SIZE SZ_128M
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
* Orion Registers Map
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#define ORION5X_DDR_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x00000)
|
||||||
|
|
||||||
|
#define ORION5X_DEV_BUS_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x10000)
|
||||||
|
#define ORION5X_DEV_BUS_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x10000)
|
||||||
|
#define ORION5X_DEV_BUS_REG(x) (ORION5X_DEV_BUS_VIRT_BASE | (x))
|
||||||
|
#define SPI_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x0600)
|
||||||
|
#define I2C_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x1000)
|
||||||
|
#define UART0_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x2000)
|
||||||
|
#define UART0_VIRT_BASE (ORION5X_DEV_BUS_VIRT_BASE | 0x2000)
|
||||||
|
#define UART1_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x2100)
|
||||||
|
#define UART1_VIRT_BASE (ORION5X_DEV_BUS_VIRT_BASE | 0x2100)
|
||||||
|
|
||||||
|
#define ORION5X_BRIDGE_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x20000)
|
||||||
|
|
||||||
|
#define ORION5X_PCI_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x30000)
|
||||||
|
|
||||||
|
#define ORION5X_PCIE_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x40000)
|
||||||
|
|
||||||
|
#define ORION5X_USB0_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x50000)
|
||||||
|
#define ORION5X_USB0_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x50000)
|
||||||
|
|
||||||
|
#define ORION5X_XOR_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x60900)
|
||||||
|
#define ORION5X_XOR_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x60900)
|
||||||
|
|
||||||
|
#define ORION5X_ETH_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x70000)
|
||||||
|
#define ORION5X_ETH_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x70000)
|
||||||
|
|
||||||
|
#define ORION5X_SATA_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x80000)
|
||||||
|
#define ORION5X_SATA_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x80000)
|
||||||
|
|
||||||
|
#define ORION5X_USB1_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0xa0000)
|
||||||
|
#define ORION5X_USB1_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0xa0000)
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
* Device Bus Registers
|
||||||
|
******************************************************************************/
|
||||||
|
#define MPP_0_7_CTRL ORION5X_DEV_BUS_REG(0x000)
|
||||||
|
#define MPP_8_15_CTRL ORION5X_DEV_BUS_REG(0x004)
|
||||||
|
#define MPP_16_19_CTRL ORION5X_DEV_BUS_REG(0x050)
|
||||||
|
#define MPP_DEV_CTRL ORION5X_DEV_BUS_REG(0x008)
|
||||||
|
#define MPP_RESET_SAMPLE ORION5X_DEV_BUS_REG(0x010)
|
||||||
|
#define DEV_BANK_0_PARAM ORION5X_DEV_BUS_REG(0x45c)
|
||||||
|
#define DEV_BANK_1_PARAM ORION5X_DEV_BUS_REG(0x460)
|
||||||
|
#define DEV_BANK_2_PARAM ORION5X_DEV_BUS_REG(0x464)
|
||||||
|
#define DEV_BANK_BOOT_PARAM ORION5X_DEV_BUS_REG(0x46c)
|
||||||
|
#define DEV_BUS_CTRL ORION5X_DEV_BUS_REG(0x4c0)
|
||||||
|
#define DEV_BUS_INT_CAUSE ORION5X_DEV_BUS_REG(0x4d0)
|
||||||
|
#define DEV_BUS_INT_MASK ORION5X_DEV_BUS_REG(0x4d4)
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Supported Devices & Revisions
|
* Supported Devices & Revisions
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
@ -80,85 +133,4 @@
|
||||||
#define MV88F6183_DEV_ID 0x6183
|
#define MV88F6183_DEV_ID 0x6183
|
||||||
#define MV88F6183_REV_B0 3
|
#define MV88F6183_REV_B0 3
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Orion Registers Map
|
|
||||||
******************************************************************************/
|
|
||||||
#define ORION5X_DDR_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x00000)
|
|
||||||
#define ORION5X_DDR_REG(x) (ORION5X_DDR_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_DEV_BUS_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x10000)
|
|
||||||
#define ORION5X_DEV_BUS_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x10000)
|
|
||||||
#define ORION5X_DEV_BUS_REG(x) (ORION5X_DEV_BUS_VIRT_BASE | (x))
|
|
||||||
#define SPI_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x0600)
|
|
||||||
#define I2C_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x1000)
|
|
||||||
#define UART0_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x2000)
|
|
||||||
#define UART0_VIRT_BASE (ORION5X_DEV_BUS_VIRT_BASE | 0x2000)
|
|
||||||
#define UART1_PHYS_BASE (ORION5X_DEV_BUS_PHYS_BASE | 0x2100)
|
|
||||||
#define UART1_VIRT_BASE (ORION5X_DEV_BUS_VIRT_BASE | 0x2100)
|
|
||||||
|
|
||||||
#define ORION5X_BRIDGE_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x20000)
|
|
||||||
#define ORION5X_BRIDGE_REG(x) (ORION5X_BRIDGE_VIRT_BASE | (x))
|
|
||||||
#define TIMER_VIRT_BASE (ORION5X_BRIDGE_VIRT_BASE | 0x300)
|
|
||||||
|
|
||||||
#define ORION5X_PCI_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x30000)
|
|
||||||
#define ORION5X_PCI_REG(x) (ORION5X_PCI_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_PCIE_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x40000)
|
|
||||||
#define ORION5X_PCIE_REG(x) (ORION5X_PCIE_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_USB0_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x50000)
|
|
||||||
#define ORION5X_USB0_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x50000)
|
|
||||||
#define ORION5X_USB0_REG(x) (ORION5X_USB0_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_XOR_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x60900)
|
|
||||||
#define ORION5X_XOR_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x60900)
|
|
||||||
#define ORION5X_XOR_REG(x) (ORION5X_XOR_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_ETH_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x70000)
|
|
||||||
#define ORION5X_ETH_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x70000)
|
|
||||||
#define ORION5X_ETH_REG(x) (ORION5X_ETH_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_SATA_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0x80000)
|
|
||||||
#define ORION5X_SATA_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0x80000)
|
|
||||||
#define ORION5X_SATA_REG(x) (ORION5X_SATA_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
#define ORION5X_USB1_PHYS_BASE (ORION5X_REGS_PHYS_BASE | 0xa0000)
|
|
||||||
#define ORION5X_USB1_VIRT_BASE (ORION5X_REGS_VIRT_BASE | 0xa0000)
|
|
||||||
#define ORION5X_USB1_REG(x) (ORION5X_USB1_VIRT_BASE | (x))
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Device Bus Registers
|
|
||||||
******************************************************************************/
|
|
||||||
#define MPP_0_7_CTRL ORION5X_DEV_BUS_REG(0x000)
|
|
||||||
#define MPP_8_15_CTRL ORION5X_DEV_BUS_REG(0x004)
|
|
||||||
#define MPP_16_19_CTRL ORION5X_DEV_BUS_REG(0x050)
|
|
||||||
#define MPP_DEV_CTRL ORION5X_DEV_BUS_REG(0x008)
|
|
||||||
#define MPP_RESET_SAMPLE ORION5X_DEV_BUS_REG(0x010)
|
|
||||||
#define DEV_BANK_0_PARAM ORION5X_DEV_BUS_REG(0x45c)
|
|
||||||
#define DEV_BANK_1_PARAM ORION5X_DEV_BUS_REG(0x460)
|
|
||||||
#define DEV_BANK_2_PARAM ORION5X_DEV_BUS_REG(0x464)
|
|
||||||
#define DEV_BANK_BOOT_PARAM ORION5X_DEV_BUS_REG(0x46c)
|
|
||||||
#define DEV_BUS_CTRL ORION5X_DEV_BUS_REG(0x4c0)
|
|
||||||
#define DEV_BUS_INT_CAUSE ORION5X_DEV_BUS_REG(0x4d0)
|
|
||||||
#define DEV_BUS_INT_MASK ORION5X_DEV_BUS_REG(0x4d4)
|
|
||||||
|
|
||||||
/***************************************************************************
|
|
||||||
* Orion CPU Bridge Registers
|
|
||||||
**************************************************************************/
|
|
||||||
#define CPU_CONF ORION5X_BRIDGE_REG(0x100)
|
|
||||||
#define CPU_CTRL ORION5X_BRIDGE_REG(0x104)
|
|
||||||
#define CPU_RESET_MASK ORION5X_BRIDGE_REG(0x108)
|
|
||||||
#define WDT_RESET 0x0002
|
|
||||||
#define CPU_SOFT_RESET ORION5X_BRIDGE_REG(0x10c)
|
|
||||||
#define POWER_MNG_CTRL_REG ORION5X_BRIDGE_REG(0x11C)
|
|
||||||
#define BRIDGE_CAUSE ORION5X_BRIDGE_REG(0x110)
|
|
||||||
#define WDT_INT_REQ 0x0008
|
|
||||||
#define BRIDGE_MASK ORION5X_BRIDGE_REG(0x114)
|
|
||||||
#define BRIDGE_INT_TIMER0 0x0002
|
|
||||||
#define BRIDGE_INT_TIMER1 0x0004
|
|
||||||
#define BRIDGE_INT_TIMER1_CLR (~0x0004)
|
|
||||||
#define MAIN_IRQ_CAUSE ORION5X_BRIDGE_REG(0x200)
|
|
||||||
#define MAIN_IRQ_MASK ORION5X_BRIDGE_REG(0x204)
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -11,8 +11,7 @@
|
||||||
#ifndef __ASM_ARCH_SYSTEM_H
|
#ifndef __ASM_ARCH_SYSTEM_H
|
||||||
#define __ASM_ARCH_SYSTEM_H
|
#define __ASM_ARCH_SYSTEM_H
|
||||||
|
|
||||||
#include <mach/hardware.h>
|
#include <mach/bridge-regs.h>
|
||||||
#include <mach/orion5x.h>
|
|
||||||
|
|
||||||
static inline void arch_idle(void)
|
static inline void arch_idle(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
#include <linux/irq.h>
|
#include <linux/irq.h>
|
||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
#include <asm/gpio.h>
|
#include <asm/gpio.h>
|
||||||
#include <mach/orion5x.h>
|
#include <mach/bridge-regs.h>
|
||||||
#include <plat/irq.h>
|
#include <plat/irq.h>
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include <asm/mach/arch.h>
|
#include <asm/mach/arch.h>
|
||||||
#include <asm/mach/pci.h>
|
#include <asm/mach/pci.h>
|
||||||
#include <mach/orion5x.h>
|
#include <mach/orion5x.h>
|
||||||
|
#include <mach/bridge-regs.h>
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
#include "mpp.h"
|
#include "mpp.h"
|
||||||
|
|
||||||
|
|
|
@ -196,6 +196,7 @@ static int __init pcie_setup(struct pci_sys_data *sys)
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
* PCI controller
|
* PCI controller
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#define ORION5X_PCI_REG(x) (ORION5X_PCI_VIRT_BASE | (x))
|
||||||
#define PCI_MODE ORION5X_PCI_REG(0xd00)
|
#define PCI_MODE ORION5X_PCI_REG(0xd00)
|
||||||
#define PCI_CMD ORION5X_PCI_REG(0xc00)
|
#define PCI_CMD ORION5X_PCI_REG(0xc00)
|
||||||
#define PCI_P2P_CONF ORION5X_PCI_REG(0x1d14)
|
#define PCI_P2P_CONF ORION5X_PCI_REG(0x1d14)
|
||||||
|
|
|
@ -4,12 +4,22 @@
|
||||||
#include <sound/core.h>
|
#include <sound/core.h>
|
||||||
#include <sound/pcm.h>
|
#include <sound/pcm.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @reset_gpio: AC97 reset gpio (normally gpio113 or gpio95)
|
||||||
|
* a -1 value means no gpio will be used for reset
|
||||||
|
|
||||||
|
* reset_gpio should only be specified for pxa27x CPUs where a silicon
|
||||||
|
* bug prevents correct operation of the reset line. If not specified,
|
||||||
|
* the default behaviour on these CPUs is to consider gpio 113 as the
|
||||||
|
* AC97 reset line, which is the default on most boards.
|
||||||
|
*/
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int (*startup)(struct snd_pcm_substream *, void *);
|
int (*startup)(struct snd_pcm_substream *, void *);
|
||||||
void (*shutdown)(struct snd_pcm_substream *, void *);
|
void (*shutdown)(struct snd_pcm_substream *, void *);
|
||||||
void (*suspend)(void *);
|
void (*suspend)(void *);
|
||||||
void (*resume)(void *);
|
void (*resume)(void *);
|
||||||
void *priv;
|
void *priv;
|
||||||
|
int reset_gpio;
|
||||||
} pxa2xx_audio_ops_t;
|
} pxa2xx_audio_ops_t;
|
||||||
|
|
||||||
extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops);
|
extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops);
|
||||||
|
|
|
@ -1,13 +1,8 @@
|
||||||
#ifndef _INCLUDE_PALMASOC_H_
|
#ifndef _INCLUDE_PALMASOC_H_
|
||||||
#define _INCLUDE_PALMASOC_H_
|
#define _INCLUDE_PALMASOC_H_
|
||||||
|
|
||||||
struct palm27x_asoc_info {
|
struct palm27x_asoc_info {
|
||||||
int jack_gpio;
|
int jack_gpio;
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_SND_PXA2XX_SOC_PALM27X
|
|
||||||
void __init palm27x_asoc_set_pdata(struct palm27x_asoc_info *data);
|
|
||||||
#else
|
|
||||||
static inline void palm27x_asoc_set_pdata(struct palm27x_asoc_info *data) {}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -742,6 +742,10 @@ struct i2c_pxa_platform_data i2c_pdata = {
|
||||||
.fast_mode = 1,
|
.fast_mode = 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static pxa2xx_audio_ops_t mioa701_ac97_info = {
|
||||||
|
.reset_gpio = 95,
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Mio global
|
* Mio global
|
||||||
*/
|
*/
|
||||||
|
@ -815,7 +819,7 @@ static void __init mioa701_machine_init(void)
|
||||||
pxa_set_keypad_info(&mioa701_keypad_info);
|
pxa_set_keypad_info(&mioa701_keypad_info);
|
||||||
wm97xx_bat_set_pdata(&mioa701_battery_data);
|
wm97xx_bat_set_pdata(&mioa701_battery_data);
|
||||||
pxa_set_udc_info(&mioa701_udc_info);
|
pxa_set_udc_info(&mioa701_udc_info);
|
||||||
pxa_set_ac97_info(NULL);
|
pxa_set_ac97_info(&mioa701_ac97_info);
|
||||||
pm_power_off = mioa701_poweroff;
|
pm_power_off = mioa701_poweroff;
|
||||||
arm_pm_restart = mioa701_restart;
|
arm_pm_restart = mioa701_restart;
|
||||||
platform_add_devices(devices, ARRAY_SIZE(devices));
|
platform_add_devices(devices, ARRAY_SIZE(devices));
|
||||||
|
|
|
@ -477,10 +477,22 @@ static struct wm97xx_batt_info wm97xx_batt_pdata = {
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* aSoC audio
|
* aSoC audio
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
static struct palm27x_asoc_info palm27x_asoc_pdata = {
|
static struct palm27x_asoc_info palmld_asoc_pdata = {
|
||||||
.jack_gpio = GPIO_NR_PALMLD_EARPHONE_DETECT,
|
.jack_gpio = GPIO_NR_PALMLD_EARPHONE_DETECT,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static pxa2xx_audio_ops_t palmld_ac97_pdata = {
|
||||||
|
.reset_gpio = 95,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device palmld_asoc = {
|
||||||
|
.name = "palm27x-asoc",
|
||||||
|
.id = -1,
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &palmld_asoc_pdata,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* Framebuffer
|
* Framebuffer
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
@ -544,6 +556,7 @@ static struct platform_device *devices[] __initdata = {
|
||||||
&palmld_backlight,
|
&palmld_backlight,
|
||||||
&palmld_leds,
|
&palmld_leds,
|
||||||
&power_supply,
|
&power_supply,
|
||||||
|
&palmld_asoc,
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct map_desc palmld_io_desc[] __initdata = {
|
static struct map_desc palmld_io_desc[] __initdata = {
|
||||||
|
@ -573,11 +586,10 @@ static void __init palmld_init(void)
|
||||||
|
|
||||||
set_pxa_fb_info(&palmld_lcd_screen);
|
set_pxa_fb_info(&palmld_lcd_screen);
|
||||||
pxa_set_mci_info(&palmld_mci_platform_data);
|
pxa_set_mci_info(&palmld_mci_platform_data);
|
||||||
pxa_set_ac97_info(NULL);
|
pxa_set_ac97_info(&palmld_ac97_pdata);
|
||||||
pxa_set_ficp_info(&palmld_ficp_platform_data);
|
pxa_set_ficp_info(&palmld_ficp_platform_data);
|
||||||
pxa_set_keypad_info(&palmld_keypad_platform_data);
|
pxa_set_keypad_info(&palmld_keypad_platform_data);
|
||||||
wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
|
wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
|
||||||
palm27x_asoc_set_pdata(&palm27x_asoc_pdata);
|
|
||||||
|
|
||||||
platform_add_devices(devices, ARRAY_SIZE(devices));
|
platform_add_devices(devices, ARRAY_SIZE(devices));
|
||||||
}
|
}
|
||||||
|
|
|
@ -420,10 +420,22 @@ static struct wm97xx_batt_info wm97xx_batt_pdata = {
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* aSoC audio
|
* aSoC audio
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
static struct palm27x_asoc_info palm27x_asoc_pdata = {
|
static struct palm27x_asoc_info palmt5_asoc_pdata = {
|
||||||
.jack_gpio = GPIO_NR_PALMT5_EARPHONE_DETECT,
|
.jack_gpio = GPIO_NR_PALMT5_EARPHONE_DETECT,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static pxa2xx_audio_ops_t palmt5_ac97_pdata = {
|
||||||
|
.reset_gpio = 95,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device palmt5_asoc = {
|
||||||
|
.name = "palm27x-asoc",
|
||||||
|
.id = -1,
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &palmt5_asoc_pdata,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* Framebuffer
|
* Framebuffer
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
@ -486,6 +498,7 @@ static struct platform_device *devices[] __initdata = {
|
||||||
#endif
|
#endif
|
||||||
&palmt5_backlight,
|
&palmt5_backlight,
|
||||||
&power_supply,
|
&power_supply,
|
||||||
|
&palmt5_asoc,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* setup udc GPIOs initial state */
|
/* setup udc GPIOs initial state */
|
||||||
|
@ -504,12 +517,11 @@ static void __init palmt5_init(void)
|
||||||
set_pxa_fb_info(&palmt5_lcd_screen);
|
set_pxa_fb_info(&palmt5_lcd_screen);
|
||||||
pxa_set_mci_info(&palmt5_mci_platform_data);
|
pxa_set_mci_info(&palmt5_mci_platform_data);
|
||||||
palmt5_udc_init();
|
palmt5_udc_init();
|
||||||
|
pxa_set_ac97_info(&palmt5_ac97_pdata);
|
||||||
pxa_set_udc_info(&palmt5_udc_info);
|
pxa_set_udc_info(&palmt5_udc_info);
|
||||||
pxa_set_ac97_info(NULL);
|
|
||||||
pxa_set_ficp_info(&palmt5_ficp_platform_data);
|
pxa_set_ficp_info(&palmt5_ficp_platform_data);
|
||||||
pxa_set_keypad_info(&palmt5_keypad_platform_data);
|
pxa_set_keypad_info(&palmt5_keypad_platform_data);
|
||||||
wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
|
wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
|
||||||
palm27x_asoc_set_pdata(&palm27x_asoc_pdata);
|
|
||||||
platform_add_devices(devices, ARRAY_SIZE(devices));
|
platform_add_devices(devices, ARRAY_SIZE(devices));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,7 @@
|
||||||
#include <mach/irda.h>
|
#include <mach/irda.h>
|
||||||
#include <mach/pxa27x_keypad.h>
|
#include <mach/pxa27x_keypad.h>
|
||||||
#include <mach/udc.h>
|
#include <mach/udc.h>
|
||||||
|
#include <mach/palmasoc.h>
|
||||||
|
|
||||||
#include "generic.h"
|
#include "generic.h"
|
||||||
#include "devices.h"
|
#include "devices.h"
|
||||||
|
@ -433,6 +434,25 @@ static struct wm97xx_batt_info wm97xx_batt_pdata = {
|
||||||
.batt_name = "main-batt",
|
.batt_name = "main-batt",
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/******************************************************************************
|
||||||
|
* aSoC audio
|
||||||
|
******************************************************************************/
|
||||||
|
static struct palm27x_asoc_info palmtx_asoc_pdata = {
|
||||||
|
.jack_gpio = GPIO_NR_PALMTX_EARPHONE_DETECT,
|
||||||
|
};
|
||||||
|
|
||||||
|
static pxa2xx_audio_ops_t palmtx_ac97_pdata = {
|
||||||
|
.reset_gpio = 95,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device palmtx_asoc = {
|
||||||
|
.name = "palm27x-asoc",
|
||||||
|
.id = -1,
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &palmtx_asoc_pdata,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* Framebuffer
|
* Framebuffer
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
@ -495,6 +515,7 @@ static struct platform_device *devices[] __initdata = {
|
||||||
#endif
|
#endif
|
||||||
&palmtx_backlight,
|
&palmtx_backlight,
|
||||||
&power_supply,
|
&power_supply,
|
||||||
|
&palmtx_asoc,
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct map_desc palmtx_io_desc[] __initdata = {
|
static struct map_desc palmtx_io_desc[] __initdata = {
|
||||||
|
@ -529,8 +550,8 @@ static void __init palmtx_init(void)
|
||||||
set_pxa_fb_info(&palmtx_lcd_screen);
|
set_pxa_fb_info(&palmtx_lcd_screen);
|
||||||
pxa_set_mci_info(&palmtx_mci_platform_data);
|
pxa_set_mci_info(&palmtx_mci_platform_data);
|
||||||
palmtx_udc_init();
|
palmtx_udc_init();
|
||||||
|
pxa_set_ac97_info(&palmtx_ac97_pdata);
|
||||||
pxa_set_udc_info(&palmtx_udc_info);
|
pxa_set_udc_info(&palmtx_udc_info);
|
||||||
pxa_set_ac97_info(NULL);
|
|
||||||
pxa_set_ficp_info(&palmtx_ficp_platform_data);
|
pxa_set_ficp_info(&palmtx_ficp_platform_data);
|
||||||
pxa_set_keypad_info(&palmtx_keypad_platform_data);
|
pxa_set_keypad_info(&palmtx_keypad_platform_data);
|
||||||
wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
|
wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
|
||||||
|
|
|
@ -377,7 +377,7 @@ struct pxacamera_platform_data pcm990_pxacamera_platform_data = {
|
||||||
#include <linux/i2c/pca953x.h>
|
#include <linux/i2c/pca953x.h>
|
||||||
|
|
||||||
static struct pca953x_platform_data pca9536_data = {
|
static struct pca953x_platform_data pca9536_data = {
|
||||||
.gpio_base = NR_BUILTIN_GPIO + 1,
|
.gpio_base = NR_BUILTIN_GPIO,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int gpio_bus_switch;
|
static int gpio_bus_switch;
|
||||||
|
@ -405,9 +405,9 @@ static unsigned long pcm990_camera_query_bus_param(struct soc_camera_link *link)
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
if (!gpio_bus_switch) {
|
if (!gpio_bus_switch) {
|
||||||
ret = gpio_request(NR_BUILTIN_GPIO + 1, "camera");
|
ret = gpio_request(NR_BUILTIN_GPIO, "camera");
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
gpio_bus_switch = NR_BUILTIN_GPIO + 1;
|
gpio_bus_switch = NR_BUILTIN_GPIO;
|
||||||
gpio_direction_output(gpio_bus_switch, 0);
|
gpio_direction_output(gpio_bus_switch, 0);
|
||||||
} else
|
} else
|
||||||
gpio_bus_switch = -EINVAL;
|
gpio_bus_switch = -EINVAL;
|
||||||
|
|
|
@ -125,7 +125,7 @@ static struct clock_event_device ckevt_pxa_osmr0 = {
|
||||||
.set_mode = pxa_osmr0_set_mode,
|
.set_mode = pxa_osmr0_set_mode,
|
||||||
};
|
};
|
||||||
|
|
||||||
static cycle_t pxa_read_oscr(void)
|
static cycle_t pxa_read_oscr(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return OSCR;
|
return OSCR;
|
||||||
}
|
}
|
||||||
|
|
|
@ -715,7 +715,7 @@ static struct irqaction realview_timer_irq = {
|
||||||
.handler = realview_timer_interrupt,
|
.handler = realview_timer_interrupt,
|
||||||
};
|
};
|
||||||
|
|
||||||
static cycle_t realview_get_cycles(void)
|
static cycle_t realview_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return ~readl(timer3_va_base + TIMER_VALUE);
|
return ~readl(timer3_va_base + TIMER_VALUE);
|
||||||
}
|
}
|
||||||
|
|
|
@ -948,7 +948,7 @@ static struct irqaction versatile_timer_irq = {
|
||||||
.handler = versatile_timer_interrupt,
|
.handler = versatile_timer_interrupt,
|
||||||
};
|
};
|
||||||
|
|
||||||
static cycle_t versatile_get_cycles(void)
|
static cycle_t versatile_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return ~readl(TIMER3_VA_BASE + TIMER_VALUE);
|
return ~readl(TIMER3_VA_BASE + TIMER_VALUE);
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
*
|
*
|
||||||
* This is the "shell" of the ARMv6 processor support.
|
* This is the "shell" of the ARMv6 processor support.
|
||||||
*/
|
*/
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/assembler.h>
|
#include <asm/assembler.h>
|
||||||
#include <asm/asm-offsets.h>
|
#include <asm/asm-offsets.h>
|
||||||
|
@ -132,7 +133,7 @@ cpu_v6_name:
|
||||||
.asciz "ARMv6-compatible processor"
|
.asciz "ARMv6-compatible processor"
|
||||||
.align
|
.align
|
||||||
|
|
||||||
.section ".text.init", #alloc, #execinstr
|
__INIT
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* __v6_setup
|
* __v6_setup
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
*
|
*
|
||||||
* This is the "shell" of the ARMv7 processor support.
|
* This is the "shell" of the ARMv7 processor support.
|
||||||
*/
|
*/
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/assembler.h>
|
#include <asm/assembler.h>
|
||||||
#include <asm/asm-offsets.h>
|
#include <asm/asm-offsets.h>
|
||||||
|
@ -153,7 +154,7 @@ cpu_v7_name:
|
||||||
.ascii "ARMv7 Processor"
|
.ascii "ARMv7 Processor"
|
||||||
.align
|
.align
|
||||||
|
|
||||||
.section ".text.init", #alloc, #execinstr
|
__INIT
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* __v7_setup
|
* __v7_setup
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
* ARM architecture version 6 TLB handling functions.
|
* ARM architecture version 6 TLB handling functions.
|
||||||
* These assume a split I/D TLB.
|
* These assume a split I/D TLB.
|
||||||
*/
|
*/
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/asm-offsets.h>
|
#include <asm/asm-offsets.h>
|
||||||
#include <asm/page.h>
|
#include <asm/page.h>
|
||||||
|
@ -87,7 +88,7 @@ ENTRY(v6wbi_flush_kern_tlb_range)
|
||||||
mcr p15, 0, r2, c7, c5, 4 @ prefetch flush
|
mcr p15, 0, r2, c7, c5, 4 @ prefetch flush
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
|
||||||
.section ".text.init", #alloc, #execinstr
|
__INIT
|
||||||
|
|
||||||
.type v6wbi_tlb_fns, #object
|
.type v6wbi_tlb_fns, #object
|
||||||
ENTRY(v6wbi_tlb_fns)
|
ENTRY(v6wbi_tlb_fns)
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
* ARM architecture version 6 TLB handling functions.
|
* ARM architecture version 6 TLB handling functions.
|
||||||
* These assume a split I/D TLB.
|
* These assume a split I/D TLB.
|
||||||
*/
|
*/
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/asm-offsets.h>
|
#include <asm/asm-offsets.h>
|
||||||
#include <asm/page.h>
|
#include <asm/page.h>
|
||||||
|
@ -80,7 +81,7 @@ ENTRY(v7wbi_flush_kern_tlb_range)
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
ENDPROC(v7wbi_flush_kern_tlb_range)
|
ENDPROC(v7wbi_flush_kern_tlb_range)
|
||||||
|
|
||||||
.section ".text.init", #alloc, #execinstr
|
__INIT
|
||||||
|
|
||||||
.type v7wbi_tlb_fns, #object
|
.type v7wbi_tlb_fns, #object
|
||||||
ENTRY(v7wbi_tlb_fns)
|
ENTRY(v7wbi_tlb_fns)
|
||||||
|
|
|
@ -36,7 +36,7 @@ static enum clock_event_mode clockevent_mode = CLOCK_EVT_MODE_UNUSED;
|
||||||
|
|
||||||
/* clock source */
|
/* clock source */
|
||||||
|
|
||||||
static cycle_t mxc_get_cycles(void)
|
static cycle_t mxc_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return __raw_readl(TIMER_BASE + MXC_TCN);
|
return __raw_readl(TIMER_BASE + MXC_TCN);
|
||||||
}
|
}
|
||||||
|
|
|
@ -185,7 +185,7 @@ console_initcall(omap_add_serial_console);
|
||||||
|
|
||||||
#include <linux/clocksource.h>
|
#include <linux/clocksource.h>
|
||||||
|
|
||||||
static cycle_t omap_32k_read(void)
|
static cycle_t omap_32k_read(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return omap_readl(TIMER_32K_SYNCHRONIZED);
|
return omap_readl(TIMER_32K_SYNCHRONIZED);
|
||||||
}
|
}
|
||||||
|
@ -207,7 +207,7 @@ unsigned long long sched_clock(void)
|
||||||
{
|
{
|
||||||
unsigned long long ret;
|
unsigned long long ret;
|
||||||
|
|
||||||
ret = (unsigned long long)omap_32k_read();
|
ret = (unsigned long long)omap_32k_read(&clocksource_32k);
|
||||||
ret = (ret * clocksource_32k.mult_orig) >> clocksource_32k.shift;
|
ret = (ret * clocksource_32k.mult_orig) >> clocksource_32k.shift;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
#include <linux/irq.h>
|
#include <linux/irq.h>
|
||||||
#include <asm/mach/time.h>
|
#include <asm/mach/time.h>
|
||||||
#include <mach/hardware.h>
|
#include <mach/bridge-regs.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Number of timer ticks per jiffy.
|
* Number of timer ticks per jiffy.
|
||||||
|
@ -41,7 +41,7 @@ static u32 ticks_per_jiffy;
|
||||||
/*
|
/*
|
||||||
* Clocksource handling.
|
* Clocksource handling.
|
||||||
*/
|
*/
|
||||||
static cycle_t orion_clksrc_read(void)
|
static cycle_t orion_clksrc_read(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return 0xffffffff - readl(TIMER0_VAL);
|
return 0xffffffff - readl(TIMER0_VAL);
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
#include <mach/pm.h>
|
#include <mach/pm.h>
|
||||||
|
|
||||||
|
|
||||||
static cycle_t read_cycle_count(void)
|
static cycle_t read_cycle_count(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return (cycle_t)sysreg_read(COUNT);
|
return (cycle_t)sysreg_read(COUNT);
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,16 +58,11 @@ static inline unsigned long long cycles_2_ns(cycle_t cyc)
|
||||||
return (cyc * cyc2ns_scale) >> CYC2NS_SCALE_FACTOR;
|
return (cyc * cyc2ns_scale) >> CYC2NS_SCALE_FACTOR;
|
||||||
}
|
}
|
||||||
|
|
||||||
static cycle_t read_cycles(void)
|
static cycle_t read_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return __bfin_cycles_off + (get_cycles() << __bfin_cycles_mod);
|
return __bfin_cycles_off + (get_cycles() << __bfin_cycles_mod);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned long long sched_clock(void)
|
|
||||||
{
|
|
||||||
return cycles_2_ns(read_cycles());
|
|
||||||
}
|
|
||||||
|
|
||||||
static struct clocksource clocksource_bfin = {
|
static struct clocksource clocksource_bfin = {
|
||||||
.name = "bfin_cycles",
|
.name = "bfin_cycles",
|
||||||
.rating = 350,
|
.rating = 350,
|
||||||
|
@ -77,6 +72,11 @@ static struct clocksource clocksource_bfin = {
|
||||||
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
|
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
unsigned long long sched_clock(void)
|
||||||
|
{
|
||||||
|
return cycles_2_ns(read_cycles(&clocksource_bfin));
|
||||||
|
}
|
||||||
|
|
||||||
static int __init bfin_clocksource_init(void)
|
static int __init bfin_clocksource_init(void)
|
||||||
{
|
{
|
||||||
set_cyc2ns_scale(get_cclk() / 1000);
|
set_cyc2ns_scale(get_cclk() / 1000);
|
||||||
|
|
|
@ -30,7 +30,7 @@ extern void __debug_bug_printk(const char *file, unsigned line);
|
||||||
do { \
|
do { \
|
||||||
__debug_bug_trap(signr); \
|
__debug_bug_trap(signr); \
|
||||||
asm volatile("nop"); \
|
asm volatile("nop"); \
|
||||||
} while(0)
|
} while(1)
|
||||||
|
|
||||||
#define HAVE_ARCH_BUG
|
#define HAVE_ARCH_BUG
|
||||||
#define BUG() \
|
#define BUG() \
|
||||||
|
@ -46,7 +46,8 @@ do { \
|
||||||
#define HAVE_ARCH_KGDB_BAD_PAGE
|
#define HAVE_ARCH_KGDB_BAD_PAGE
|
||||||
#define kgdb_bad_page(page) do { kgdb_raise(SIGABRT); } while(0)
|
#define kgdb_bad_page(page) do { kgdb_raise(SIGABRT); } while(0)
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
#endif /* CONFIG_BUG */
|
||||||
|
|
||||||
#include <asm-generic/bug.h>
|
#include <asm-generic/bug.h>
|
||||||
|
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
#ifndef _ASM_INIT_H
|
|
||||||
#define _ASM_INIT_H
|
|
||||||
|
|
||||||
#define __init __attribute__ ((__section__ (".text.init")))
|
|
||||||
#define __initdata __attribute__ ((__section__ (".data.init")))
|
|
||||||
/* For assembly routines */
|
|
||||||
#define __INIT .section ".text.init",#alloc,#execinstr
|
|
||||||
#define __FINIT .previous
|
|
||||||
#define __INITDATA .section ".data.init",#alloc,#write
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -339,10 +339,12 @@
|
||||||
#define __NR_dup3 330
|
#define __NR_dup3 330
|
||||||
#define __NR_pipe2 331
|
#define __NR_pipe2 331
|
||||||
#define __NR_inotify_init1 332
|
#define __NR_inotify_init1 332
|
||||||
|
#define __NR_preadv 333
|
||||||
|
#define __NR_pwritev 334
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 333
|
#define NR_syscalls 335
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
/* #define __ARCH_WANT_OLD_READDIR */
|
/* #define __ARCH_WANT_OLD_READDIR */
|
||||||
|
|
|
@ -1525,5 +1525,7 @@ sys_call_table:
|
||||||
.long sys_dup3 /* 330 */
|
.long sys_dup3 /* 330 */
|
||||||
.long sys_pipe2
|
.long sys_pipe2
|
||||||
.long sys_inotify_init1
|
.long sys_inotify_init1
|
||||||
|
.long sys_preadv
|
||||||
|
.long sys_pwritev
|
||||||
|
|
||||||
syscall_table_size = (. - sys_call_table)
|
syscall_table_size = (. - sys_call_table)
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
* 2 of the License, or (at your option) any later version.
|
* 2 of the License, or (at your option) any later version.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/threads.h>
|
#include <linux/threads.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
@ -31,7 +32,7 @@
|
||||||
#define __400_LCR 0xfe000100
|
#define __400_LCR 0xfe000100
|
||||||
#define __400_LSBR 0xfe000c00
|
#define __400_LSBR 0xfe000c00
|
||||||
|
|
||||||
.section .text.init,"ax"
|
__INIT
|
||||||
.balign 4
|
.balign 4
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
* 2 of the License, or (at your option) any later version.
|
* 2 of the License, or (at your option) any later version.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/threads.h>
|
#include <linux/threads.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
@ -30,7 +31,7 @@
|
||||||
#define __400_LCR 0xfe000100
|
#define __400_LCR 0xfe000100
|
||||||
#define __400_LSBR 0xfe000c00
|
#define __400_LSBR 0xfe000c00
|
||||||
|
|
||||||
.section .text.init,"ax"
|
__INIT
|
||||||
.balign 4
|
.balign 4
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
* 2 of the License, or (at your option) any later version.
|
* 2 of the License, or (at your option) any later version.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/threads.h>
|
#include <linux/threads.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
@ -30,7 +31,7 @@
|
||||||
#define __400_LCR 0xfe000100
|
#define __400_LCR 0xfe000100
|
||||||
#define __400_LSBR 0xfe000c00
|
#define __400_LSBR 0xfe000c00
|
||||||
|
|
||||||
.section .text.init,"ax"
|
__INIT
|
||||||
.balign 4
|
.balign 4
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
* 2 of the License, or (at your option) any later version.
|
* 2 of the License, or (at your option) any later version.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/threads.h>
|
#include <linux/threads.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
@ -29,7 +30,7 @@
|
||||||
#define __551_LCR 0xfeff1100
|
#define __551_LCR 0xfeff1100
|
||||||
#define __551_LSBR 0xfeff1c00
|
#define __551_LSBR 0xfeff1c00
|
||||||
|
|
||||||
.section .text.init,"ax"
|
__INIT
|
||||||
.balign 4
|
.balign 4
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
* 2 of the License, or (at your option) any later version.
|
* 2 of the License, or (at your option) any later version.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
#include <linux/threads.h>
|
#include <linux/threads.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/thread_info.h>
|
#include <asm/thread_info.h>
|
||||||
|
@ -27,7 +28,7 @@
|
||||||
# command line string
|
# command line string
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
.section .text.head,"ax"
|
__HEAD
|
||||||
.balign 4
|
.balign 4
|
||||||
|
|
||||||
.globl _boot, __head_reference
|
.globl _boot, __head_reference
|
||||||
|
|
|
@ -26,7 +26,7 @@ SECTIONS
|
||||||
|
|
||||||
_sinittext = .;
|
_sinittext = .;
|
||||||
.init.text : {
|
.init.text : {
|
||||||
*(.text.head)
|
HEAD_TEXT
|
||||||
#ifndef CONFIG_DEBUG_INFO
|
#ifndef CONFIG_DEBUG_INFO
|
||||||
INIT_TEXT
|
INIT_TEXT
|
||||||
EXIT_TEXT
|
EXIT_TEXT
|
||||||
|
|
|
@ -30,6 +30,29 @@ int __nongpreldata pcibios_last_bus = -1;
|
||||||
struct pci_bus *__nongpreldata pci_root_bus;
|
struct pci_bus *__nongpreldata pci_root_bus;
|
||||||
struct pci_ops *__nongpreldata pci_root_ops;
|
struct pci_ops *__nongpreldata pci_root_ops;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The accessible PCI window does not cover the entire CPU address space, but
|
||||||
|
* there are devices we want to access outside of that window, so we need to
|
||||||
|
* insert specific PCI bus resources instead of using the platform-level bus
|
||||||
|
* resources directly for the PCI root bus.
|
||||||
|
*
|
||||||
|
* These are configured and inserted by pcibios_init() and are attached to the
|
||||||
|
* root bus by pcibios_fixup_bus().
|
||||||
|
*/
|
||||||
|
static struct resource pci_ioport_resource = {
|
||||||
|
.name = "PCI IO",
|
||||||
|
.start = 0,
|
||||||
|
.end = IO_SPACE_LIMIT,
|
||||||
|
.flags = IORESOURCE_IO,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct resource pci_iomem_resource = {
|
||||||
|
.name = "PCI mem",
|
||||||
|
.start = 0,
|
||||||
|
.end = -1,
|
||||||
|
.flags = IORESOURCE_MEM,
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Functions for accessing PCI configuration space
|
* Functions for accessing PCI configuration space
|
||||||
*/
|
*/
|
||||||
|
@ -304,6 +327,12 @@ void __init pcibios_fixup_bus(struct pci_bus *bus)
|
||||||
#if 0
|
#if 0
|
||||||
printk("### PCIBIOS_FIXUP_BUS(%d)\n",bus->number);
|
printk("### PCIBIOS_FIXUP_BUS(%d)\n",bus->number);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (bus->number == 0) {
|
||||||
|
bus->resource[0] = &pci_ioport_resource;
|
||||||
|
bus->resource[1] = &pci_iomem_resource;
|
||||||
|
}
|
||||||
|
|
||||||
pci_read_bridge_bases(bus);
|
pci_read_bridge_bases(bus);
|
||||||
|
|
||||||
if (bus->number == 0) {
|
if (bus->number == 0) {
|
||||||
|
@ -350,28 +379,36 @@ int __init pcibios_init(void)
|
||||||
/* enable PCI arbitration */
|
/* enable PCI arbitration */
|
||||||
__reg_MB86943_pci_arbiter = MB86943_PCIARB_EN;
|
__reg_MB86943_pci_arbiter = MB86943_PCIARB_EN;
|
||||||
|
|
||||||
ioport_resource.start = (__reg_MB86943_sl_pci_io_base << 9) & 0xfffffc00;
|
pci_ioport_resource.start = (__reg_MB86943_sl_pci_io_base << 9) & 0xfffffc00;
|
||||||
ioport_resource.end = (__reg_MB86943_sl_pci_io_range << 9) | 0x3ff;
|
pci_ioport_resource.end = (__reg_MB86943_sl_pci_io_range << 9) | 0x3ff;
|
||||||
ioport_resource.end += ioport_resource.start;
|
pci_ioport_resource.end += pci_ioport_resource.start;
|
||||||
|
|
||||||
printk("PCI IO window: %08llx-%08llx\n",
|
printk("PCI IO window: %08llx-%08llx\n",
|
||||||
(unsigned long long) ioport_resource.start,
|
(unsigned long long) pci_ioport_resource.start,
|
||||||
(unsigned long long) ioport_resource.end);
|
(unsigned long long) pci_ioport_resource.end);
|
||||||
|
|
||||||
iomem_resource.start = (__reg_MB86943_sl_pci_mem_base << 9) & 0xfffffc00;
|
pci_iomem_resource.start = (__reg_MB86943_sl_pci_mem_base << 9) & 0xfffffc00;
|
||||||
|
pci_iomem_resource.end = (__reg_MB86943_sl_pci_mem_range << 9) | 0x3ff;
|
||||||
|
pci_iomem_resource.end += pci_iomem_resource.start;
|
||||||
|
|
||||||
/* Reserve somewhere to write to flush posted writes. */
|
/* Reserve somewhere to write to flush posted writes. This is used by
|
||||||
iomem_resource.start += 0x400;
|
* __flush_PCI_writes() from asm/io.h to force the write FIFO in the
|
||||||
|
* CPU-PCI bridge to flush as this doesn't happen automatically when a
|
||||||
iomem_resource.end = (__reg_MB86943_sl_pci_mem_range << 9) | 0x3ff;
|
* read is performed on the MB93090 development kit motherboard.
|
||||||
iomem_resource.end += iomem_resource.start;
|
*/
|
||||||
|
pci_iomem_resource.start += 0x400;
|
||||||
|
|
||||||
printk("PCI MEM window: %08llx-%08llx\n",
|
printk("PCI MEM window: %08llx-%08llx\n",
|
||||||
(unsigned long long) iomem_resource.start,
|
(unsigned long long) pci_iomem_resource.start,
|
||||||
(unsigned long long) iomem_resource.end);
|
(unsigned long long) pci_iomem_resource.end);
|
||||||
printk("PCI DMA memory: %08lx-%08lx\n",
|
printk("PCI DMA memory: %08lx-%08lx\n",
|
||||||
dma_coherent_mem_start, dma_coherent_mem_end);
|
dma_coherent_mem_start, dma_coherent_mem_end);
|
||||||
|
|
||||||
|
if (insert_resource(&iomem_resource, &pci_iomem_resource) < 0)
|
||||||
|
panic("Unable to insert PCI IOMEM resource\n");
|
||||||
|
if (insert_resource(&ioport_resource, &pci_ioport_resource) < 0)
|
||||||
|
panic("Unable to insert PCI IOPORT resource\n");
|
||||||
|
|
||||||
if (!pci_probe)
|
if (!pci_probe)
|
||||||
return -ENXIO;
|
return -ENXIO;
|
||||||
|
|
||||||
|
|
|
@ -445,7 +445,6 @@ paravirt_set_rr0_to_rr4(unsigned long val0, unsigned long val1,
|
||||||
register unsigned long ia64_intri_res asm ("r8"); \
|
register unsigned long ia64_intri_res asm ("r8"); \
|
||||||
register unsigned long __reg asm ("r8") = (reg); \
|
register unsigned long __reg asm ("r8") = (reg); \
|
||||||
\
|
\
|
||||||
BUILD_BUG_ON(!__builtin_constant_p(reg)); \
|
|
||||||
asm volatile (paravirt_alt_bundle(__PARAVIRT_BR, \
|
asm volatile (paravirt_alt_bundle(__PARAVIRT_BR, \
|
||||||
PARAVIRT_TYPE(GETREG) \
|
PARAVIRT_TYPE(GETREG) \
|
||||||
+ (reg)) \
|
+ (reg)) \
|
||||||
|
@ -464,7 +463,6 @@ paravirt_set_rr0_to_rr4(unsigned long val0, unsigned long val1,
|
||||||
register unsigned long ia64_clobber1 asm ("r8"); \
|
register unsigned long ia64_clobber1 asm ("r8"); \
|
||||||
register unsigned long ia64_clobber2 asm ("r9"); \
|
register unsigned long ia64_clobber2 asm ("r9"); \
|
||||||
\
|
\
|
||||||
BUILD_BUG_ON(!__builtin_constant_p(reg)); \
|
|
||||||
asm volatile (paravirt_alt_bundle(__PARAVIRT_BR, \
|
asm volatile (paravirt_alt_bundle(__PARAVIRT_BR, \
|
||||||
PARAVIRT_TYPE(SETREG) \
|
PARAVIRT_TYPE(SETREG) \
|
||||||
+ (reg)) \
|
+ (reg)) \
|
||||||
|
|
|
@ -58,7 +58,7 @@ extern struct smp_boot_data {
|
||||||
extern char no_int_routing __devinitdata;
|
extern char no_int_routing __devinitdata;
|
||||||
|
|
||||||
extern cpumask_t cpu_core_map[NR_CPUS];
|
extern cpumask_t cpu_core_map[NR_CPUS];
|
||||||
DECLARE_PER_CPU(cpumask_t, cpu_sibling_map);
|
DECLARE_PER_CPU_SHARED_ALIGNED(cpumask_t, cpu_sibling_map);
|
||||||
extern int smp_num_siblings;
|
extern int smp_num_siblings;
|
||||||
extern void __iomem *ipi_base_addr;
|
extern void __iomem *ipi_base_addr;
|
||||||
extern unsigned char smp_int_redirect;
|
extern unsigned char smp_int_redirect;
|
||||||
|
|
|
@ -21,7 +21,7 @@ void __init cyclone_setup(void)
|
||||||
|
|
||||||
static void __iomem *cyclone_mc;
|
static void __iomem *cyclone_mc;
|
||||||
|
|
||||||
static cycle_t read_cyclone(void)
|
static cycle_t read_cyclone(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return (cycle_t)readq((void __iomem *)cyclone_mc);
|
return (cycle_t)readq((void __iomem *)cyclone_mc);
|
||||||
}
|
}
|
||||||
|
|
|
@ -225,6 +225,7 @@ smp_send_reschedule (int cpu)
|
||||||
{
|
{
|
||||||
platform_send_ipi(cpu, IA64_IPI_RESCHEDULE, IA64_IPI_DM_INT, 0);
|
platform_send_ipi(cpu, IA64_IPI_RESCHEDULE, IA64_IPI_DM_INT, 0);
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(smp_send_reschedule);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Called with preemption disabled.
|
* Called with preemption disabled.
|
||||||
|
@ -300,15 +301,12 @@ smp_flush_tlb_mm (struct mm_struct *mm)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
smp_call_function_mask(mm->cpu_vm_mask,
|
||||||
|
(void (*)(void *))local_finish_flush_tlb_mm, mm, 1);
|
||||||
|
local_irq_disable();
|
||||||
|
local_finish_flush_tlb_mm(mm);
|
||||||
|
local_irq_enable();
|
||||||
preempt_enable();
|
preempt_enable();
|
||||||
/*
|
|
||||||
* We could optimize this further by using mm->cpu_vm_mask to track which CPUs
|
|
||||||
* have been running in the address space. It's not clear that this is worth the
|
|
||||||
* trouble though: to avoid races, we have to raise the IPI on the target CPU
|
|
||||||
* anyhow, and once a CPU is interrupted, the cost of local_flush_tlb_all() is
|
|
||||||
* rather trivial.
|
|
||||||
*/
|
|
||||||
on_each_cpu((void (*)(void *))local_finish_flush_tlb_mm, mm, 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void arch_send_call_function_single_ipi(int cpu)
|
void arch_send_call_function_single_ipi(int cpu)
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
#include "fsyscall_gtod_data.h"
|
#include "fsyscall_gtod_data.h"
|
||||||
|
|
||||||
static cycle_t itc_get_cycles(void);
|
static cycle_t itc_get_cycles(struct clocksource *cs);
|
||||||
|
|
||||||
struct fsyscall_gtod_data_t fsyscall_gtod_data = {
|
struct fsyscall_gtod_data_t fsyscall_gtod_data = {
|
||||||
.lock = SEQLOCK_UNLOCKED,
|
.lock = SEQLOCK_UNLOCKED,
|
||||||
|
@ -383,7 +383,7 @@ ia64_init_itm (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static cycle_t itc_get_cycles(void)
|
static cycle_t itc_get_cycles(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
u64 lcycle, now, ret;
|
u64 lcycle, now, ret;
|
||||||
|
|
||||||
|
|
|
@ -610,20 +610,22 @@ static int __vcpu_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run)
|
||||||
int r;
|
int r;
|
||||||
|
|
||||||
again:
|
again:
|
||||||
preempt_disable();
|
|
||||||
local_irq_disable();
|
|
||||||
|
|
||||||
if (signal_pending(current)) {
|
if (signal_pending(current)) {
|
||||||
local_irq_enable();
|
|
||||||
preempt_enable();
|
|
||||||
r = -EINTR;
|
r = -EINTR;
|
||||||
kvm_run->exit_reason = KVM_EXIT_INTR;
|
kvm_run->exit_reason = KVM_EXIT_INTR;
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* down_read() may sleep and return with interrupts enabled
|
||||||
|
*/
|
||||||
|
down_read(&vcpu->kvm->slots_lock);
|
||||||
|
|
||||||
|
preempt_disable();
|
||||||
|
local_irq_disable();
|
||||||
|
|
||||||
vcpu->guest_mode = 1;
|
vcpu->guest_mode = 1;
|
||||||
kvm_guest_enter();
|
kvm_guest_enter();
|
||||||
down_read(&vcpu->kvm->slots_lock);
|
|
||||||
r = vti_vcpu_run(vcpu, kvm_run);
|
r = vti_vcpu_run(vcpu, kvm_run);
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
local_irq_enable();
|
local_irq_enable();
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
|
|
||||||
extern unsigned long sn_rtc_cycles_per_second;
|
extern unsigned long sn_rtc_cycles_per_second;
|
||||||
|
|
||||||
static cycle_t read_sn2(void)
|
static cycle_t read_sn2(struct clocksource *cs)
|
||||||
{
|
{
|
||||||
return (cycle_t)readq(RTC_COUNTER_ADDR);
|
return (cycle_t)readq(RTC_COUNTER_ADDR);
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@ __INITDATA
|
||||||
/*
|
/*
|
||||||
* References to members of the boot_cpu_data structure.
|
* References to members of the boot_cpu_data structure.
|
||||||
*/
|
*/
|
||||||
.section .text.head, "ax"
|
__HEAD
|
||||||
.global start_kernel
|
.global start_kernel
|
||||||
.global __bss_start
|
.global __bss_start
|
||||||
.global _end
|
.global _end
|
||||||
|
|
|
@ -27,7 +27,7 @@ SECTIONS
|
||||||
_text = .; /* Text and read-only data */
|
_text = .; /* Text and read-only data */
|
||||||
.boot : { *(.boot) } = 0
|
.boot : { *(.boot) } = 0
|
||||||
.text : {
|
.text : {
|
||||||
*(.text.head)
|
HEAD_TEXT
|
||||||
TEXT_TEXT
|
TEXT_TEXT
|
||||||
SCHED_TEXT
|
SCHED_TEXT
|
||||||
LOCK_TEXT
|
LOCK_TEXT
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#
|
#
|
||||||
# Automatically generated make config: don't edit
|
# Automatically generated make config: don't edit
|
||||||
# Linux kernel version: 2.6.28-rc7
|
# Linux kernel version: 2.6.30-rc3
|
||||||
# Tue Dec 2 20:27:42 2008
|
# Wed Apr 22 20:47:52 2009
|
||||||
#
|
#
|
||||||
CONFIG_M68K=y
|
CONFIG_M68K=y
|
||||||
CONFIG_MMU=y
|
CONFIG_MMU=y
|
||||||
|
@ -29,14 +29,24 @@ CONFIG_SWAP=y
|
||||||
CONFIG_SYSVIPC=y
|
CONFIG_SYSVIPC=y
|
||||||
CONFIG_SYSVIPC_SYSCTL=y
|
CONFIG_SYSVIPC_SYSCTL=y
|
||||||
CONFIG_POSIX_MQUEUE=y
|
CONFIG_POSIX_MQUEUE=y
|
||||||
|
CONFIG_POSIX_MQUEUE_SYSCTL=y
|
||||||
CONFIG_BSD_PROCESS_ACCT=y
|
CONFIG_BSD_PROCESS_ACCT=y
|
||||||
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
|
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
|
||||||
# CONFIG_TASKSTATS is not set
|
# CONFIG_TASKSTATS is not set
|
||||||
# CONFIG_AUDIT is not set
|
# CONFIG_AUDIT is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# RCU Subsystem
|
||||||
|
#
|
||||||
|
CONFIG_CLASSIC_RCU=y
|
||||||
|
# CONFIG_TREE_RCU is not set
|
||||||
|
# CONFIG_PREEMPT_RCU is not set
|
||||||
|
# CONFIG_TREE_RCU_TRACE is not set
|
||||||
|
# CONFIG_PREEMPT_RCU_TRACE is not set
|
||||||
# CONFIG_IKCONFIG is not set
|
# CONFIG_IKCONFIG is not set
|
||||||
CONFIG_LOG_BUF_SHIFT=14
|
CONFIG_LOG_BUF_SHIFT=14
|
||||||
# CONFIG_CGROUPS is not set
|
|
||||||
# CONFIG_GROUP_SCHED is not set
|
# CONFIG_GROUP_SCHED is not set
|
||||||
|
# CONFIG_CGROUPS is not set
|
||||||
# CONFIG_SYSFS_DEPRECATED_V2 is not set
|
# CONFIG_SYSFS_DEPRECATED_V2 is not set
|
||||||
CONFIG_RELAY=y
|
CONFIG_RELAY=y
|
||||||
CONFIG_NAMESPACES=y
|
CONFIG_NAMESPACES=y
|
||||||
|
@ -44,23 +54,27 @@ CONFIG_NAMESPACES=y
|
||||||
# CONFIG_IPC_NS is not set
|
# CONFIG_IPC_NS is not set
|
||||||
# CONFIG_USER_NS is not set
|
# CONFIG_USER_NS is not set
|
||||||
# CONFIG_PID_NS is not set
|
# CONFIG_PID_NS is not set
|
||||||
|
# CONFIG_NET_NS is not set
|
||||||
CONFIG_BLK_DEV_INITRD=y
|
CONFIG_BLK_DEV_INITRD=y
|
||||||
CONFIG_INITRAMFS_SOURCE=""
|
CONFIG_INITRAMFS_SOURCE=""
|
||||||
|
CONFIG_RD_GZIP=y
|
||||||
|
CONFIG_RD_BZIP2=y
|
||||||
|
CONFIG_RD_LZMA=y
|
||||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
||||||
CONFIG_SYSCTL=y
|
CONFIG_SYSCTL=y
|
||||||
|
CONFIG_ANON_INODES=y
|
||||||
# CONFIG_EMBEDDED is not set
|
# CONFIG_EMBEDDED is not set
|
||||||
CONFIG_UID16=y
|
CONFIG_UID16=y
|
||||||
CONFIG_SYSCTL_SYSCALL=y
|
CONFIG_SYSCTL_SYSCALL=y
|
||||||
CONFIG_KALLSYMS=y
|
CONFIG_KALLSYMS=y
|
||||||
# CONFIG_KALLSYMS_EXTRA_PASS is not set
|
# CONFIG_KALLSYMS_EXTRA_PASS is not set
|
||||||
|
# CONFIG_STRIP_ASM_SYMS is not set
|
||||||
CONFIG_HOTPLUG=y
|
CONFIG_HOTPLUG=y
|
||||||
CONFIG_PRINTK=y
|
CONFIG_PRINTK=y
|
||||||
CONFIG_BUG=y
|
CONFIG_BUG=y
|
||||||
CONFIG_ELF_CORE=y
|
CONFIG_ELF_CORE=y
|
||||||
CONFIG_COMPAT_BRK=y
|
|
||||||
CONFIG_BASE_FULL=y
|
CONFIG_BASE_FULL=y
|
||||||
CONFIG_FUTEX=y
|
CONFIG_FUTEX=y
|
||||||
CONFIG_ANON_INODES=y
|
|
||||||
CONFIG_EPOLL=y
|
CONFIG_EPOLL=y
|
||||||
CONFIG_SIGNALFD=y
|
CONFIG_SIGNALFD=y
|
||||||
CONFIG_TIMERFD=y
|
CONFIG_TIMERFD=y
|
||||||
|
@ -68,15 +82,16 @@ CONFIG_EVENTFD=y
|
||||||
CONFIG_SHMEM=y
|
CONFIG_SHMEM=y
|
||||||
CONFIG_AIO=y
|
CONFIG_AIO=y
|
||||||
CONFIG_VM_EVENT_COUNTERS=y
|
CONFIG_VM_EVENT_COUNTERS=y
|
||||||
|
CONFIG_COMPAT_BRK=y
|
||||||
CONFIG_SLAB=y
|
CONFIG_SLAB=y
|
||||||
# CONFIG_SLUB is not set
|
# CONFIG_SLUB is not set
|
||||||
# CONFIG_SLOB is not set
|
# CONFIG_SLOB is not set
|
||||||
# CONFIG_PROFILING is not set
|
# CONFIG_PROFILING is not set
|
||||||
# CONFIG_MARKERS is not set
|
# CONFIG_MARKERS is not set
|
||||||
|
# CONFIG_SLOW_WORK is not set
|
||||||
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
|
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
|
||||||
CONFIG_SLABINFO=y
|
CONFIG_SLABINFO=y
|
||||||
CONFIG_RT_MUTEXES=y
|
CONFIG_RT_MUTEXES=y
|
||||||
# CONFIG_TINY_SHMEM is not set
|
|
||||||
CONFIG_BASE_SMALL=0
|
CONFIG_BASE_SMALL=0
|
||||||
CONFIG_MODULES=y
|
CONFIG_MODULES=y
|
||||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||||
|
@ -84,11 +99,8 @@ CONFIG_MODULE_UNLOAD=y
|
||||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||||
# CONFIG_MODVERSIONS is not set
|
# CONFIG_MODVERSIONS is not set
|
||||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
||||||
CONFIG_KMOD=y
|
|
||||||
CONFIG_BLOCK=y
|
CONFIG_BLOCK=y
|
||||||
# CONFIG_LBD is not set
|
# CONFIG_LBD is not set
|
||||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
|
||||||
# CONFIG_LSF is not set
|
|
||||||
CONFIG_BLK_DEV_BSG=y
|
CONFIG_BLK_DEV_BSG=y
|
||||||
# CONFIG_BLK_DEV_INTEGRITY is not set
|
# CONFIG_BLK_DEV_INTEGRITY is not set
|
||||||
|
|
||||||
|
@ -104,7 +116,6 @@ CONFIG_DEFAULT_AS=y
|
||||||
# CONFIG_DEFAULT_CFQ is not set
|
# CONFIG_DEFAULT_CFQ is not set
|
||||||
# CONFIG_DEFAULT_NOOP is not set
|
# CONFIG_DEFAULT_NOOP is not set
|
||||||
CONFIG_DEFAULT_IOSCHED="anticipatory"
|
CONFIG_DEFAULT_IOSCHED="anticipatory"
|
||||||
CONFIG_CLASSIC_RCU=y
|
|
||||||
# CONFIG_FREEZER is not set
|
# CONFIG_FREEZER is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -140,12 +151,13 @@ CONFIG_FLAT_NODE_MEM_MAP=y
|
||||||
CONFIG_NEED_MULTIPLE_NODES=y
|
CONFIG_NEED_MULTIPLE_NODES=y
|
||||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||||
CONFIG_SPLIT_PTLOCK_CPUS=4
|
CONFIG_SPLIT_PTLOCK_CPUS=4
|
||||||
# CONFIG_RESOURCES_64BIT is not set
|
|
||||||
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
||||||
CONFIG_ZONE_DMA_FLAG=1
|
CONFIG_ZONE_DMA_FLAG=1
|
||||||
CONFIG_BOUNCE=y
|
CONFIG_BOUNCE=y
|
||||||
CONFIG_VIRT_TO_BUS=y
|
CONFIG_VIRT_TO_BUS=y
|
||||||
CONFIG_UNEVICTABLE_LRU=y
|
CONFIG_UNEVICTABLE_LRU=y
|
||||||
|
CONFIG_HAVE_MLOCK=y
|
||||||
|
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
|
||||||
|
|
||||||
#
|
#
|
||||||
# General setup
|
# General setup
|
||||||
|
@ -157,7 +169,7 @@ CONFIG_BINFMT_AOUT=m
|
||||||
CONFIG_BINFMT_MISC=m
|
CONFIG_BINFMT_MISC=m
|
||||||
CONFIG_ZORRO=y
|
CONFIG_ZORRO=y
|
||||||
CONFIG_AMIGA_PCMCIA=y
|
CONFIG_AMIGA_PCMCIA=y
|
||||||
# CONFIG_HEARTBEAT is not set
|
CONFIG_HEARTBEAT=y
|
||||||
CONFIG_PROC_HARDWARE=y
|
CONFIG_PROC_HARDWARE=y
|
||||||
CONFIG_ISA=y
|
CONFIG_ISA=y
|
||||||
CONFIG_GENERIC_ISA_DMA=y
|
CONFIG_GENERIC_ISA_DMA=y
|
||||||
|
@ -184,7 +196,10 @@ CONFIG_INET=y
|
||||||
# CONFIG_IP_MULTICAST is not set
|
# CONFIG_IP_MULTICAST is not set
|
||||||
# CONFIG_IP_ADVANCED_ROUTER is not set
|
# CONFIG_IP_ADVANCED_ROUTER is not set
|
||||||
CONFIG_IP_FIB_HASH=y
|
CONFIG_IP_FIB_HASH=y
|
||||||
# CONFIG_IP_PNP is not set
|
CONFIG_IP_PNP=y
|
||||||
|
# CONFIG_IP_PNP_DHCP is not set
|
||||||
|
# CONFIG_IP_PNP_BOOTP is not set
|
||||||
|
# CONFIG_IP_PNP_RARP is not set
|
||||||
CONFIG_NET_IPIP=m
|
CONFIG_NET_IPIP=m
|
||||||
CONFIG_NET_IPGRE=m
|
CONFIG_NET_IPGRE=m
|
||||||
# CONFIG_ARPD is not set
|
# CONFIG_ARPD is not set
|
||||||
|
@ -258,6 +273,7 @@ CONFIG_NETFILTER_XTABLES=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
|
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
|
CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_DSCP=m
|
CONFIG_NETFILTER_XT_TARGET_DSCP=m
|
||||||
|
CONFIG_NETFILTER_XT_TARGET_HL=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_MARK=m
|
CONFIG_NETFILTER_XT_TARGET_MARK=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
|
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
|
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
|
||||||
|
@ -266,6 +282,7 @@ CONFIG_NETFILTER_XT_TARGET_RATEEST=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_TRACE=m
|
CONFIG_NETFILTER_XT_TARGET_TRACE=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
|
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
|
||||||
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
|
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
|
||||||
|
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
|
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
|
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
|
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
|
||||||
|
@ -276,6 +293,7 @@ CONFIG_NETFILTER_XT_MATCH_DSCP=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_ESP=m
|
CONFIG_NETFILTER_XT_MATCH_ESP=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
|
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_HELPER=m
|
CONFIG_NETFILTER_XT_MATCH_HELPER=m
|
||||||
|
CONFIG_NETFILTER_XT_MATCH_HL=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
|
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
|
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
|
||||||
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
|
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
|
||||||
|
@ -354,25 +372,20 @@ CONFIG_IP6_NF_MATCH_HL=m
|
||||||
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
|
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
|
||||||
CONFIG_IP6_NF_MATCH_MH=m
|
CONFIG_IP6_NF_MATCH_MH=m
|
||||||
CONFIG_IP6_NF_MATCH_RT=m
|
CONFIG_IP6_NF_MATCH_RT=m
|
||||||
|
CONFIG_IP6_NF_TARGET_HL=m
|
||||||
CONFIG_IP6_NF_TARGET_LOG=m
|
CONFIG_IP6_NF_TARGET_LOG=m
|
||||||
CONFIG_IP6_NF_FILTER=m
|
CONFIG_IP6_NF_FILTER=m
|
||||||
CONFIG_IP6_NF_TARGET_REJECT=m
|
CONFIG_IP6_NF_TARGET_REJECT=m
|
||||||
CONFIG_IP6_NF_MANGLE=m
|
CONFIG_IP6_NF_MANGLE=m
|
||||||
CONFIG_IP6_NF_TARGET_HL=m
|
|
||||||
CONFIG_IP6_NF_RAW=m
|
CONFIG_IP6_NF_RAW=m
|
||||||
CONFIG_IP_DCCP=m
|
CONFIG_IP_DCCP=m
|
||||||
CONFIG_INET_DCCP_DIAG=m
|
CONFIG_INET_DCCP_DIAG=m
|
||||||
CONFIG_IP_DCCP_ACKVEC=y
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# DCCP CCIDs Configuration (EXPERIMENTAL)
|
# DCCP CCIDs Configuration (EXPERIMENTAL)
|
||||||
#
|
#
|
||||||
CONFIG_IP_DCCP_CCID2=m
|
|
||||||
# CONFIG_IP_DCCP_CCID2_DEBUG is not set
|
# CONFIG_IP_DCCP_CCID2_DEBUG is not set
|
||||||
CONFIG_IP_DCCP_CCID3=m
|
# CONFIG_IP_DCCP_CCID3 is not set
|
||||||
# CONFIG_IP_DCCP_CCID3_DEBUG is not set
|
|
||||||
CONFIG_IP_DCCP_CCID3_RTO=100
|
|
||||||
CONFIG_IP_DCCP_TFRC_LIB=m
|
|
||||||
CONFIG_IP_SCTP=m
|
CONFIG_IP_SCTP=m
|
||||||
# CONFIG_SCTP_DBG_MSG is not set
|
# CONFIG_SCTP_DBG_MSG is not set
|
||||||
# CONFIG_SCTP_DBG_OBJCNT is not set
|
# CONFIG_SCTP_DBG_OBJCNT is not set
|
||||||
|
@ -394,8 +407,10 @@ CONFIG_ATALK=m
|
||||||
# CONFIG_LAPB is not set
|
# CONFIG_LAPB is not set
|
||||||
# CONFIG_ECONET is not set
|
# CONFIG_ECONET is not set
|
||||||
# CONFIG_WAN_ROUTER is not set
|
# CONFIG_WAN_ROUTER is not set
|
||||||
|
# CONFIG_PHONET is not set
|
||||||
# CONFIG_NET_SCHED is not set
|
# CONFIG_NET_SCHED is not set
|
||||||
CONFIG_NET_CLS_ROUTE=y
|
CONFIG_NET_CLS_ROUTE=y
|
||||||
|
# CONFIG_DCB is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# Network testing
|
# Network testing
|
||||||
|
@ -406,8 +421,8 @@ CONFIG_NET_CLS_ROUTE=y
|
||||||
# CONFIG_IRDA is not set
|
# CONFIG_IRDA is not set
|
||||||
# CONFIG_BT is not set
|
# CONFIG_BT is not set
|
||||||
# CONFIG_AF_RXRPC is not set
|
# CONFIG_AF_RXRPC is not set
|
||||||
# CONFIG_PHONET is not set
|
|
||||||
# CONFIG_WIRELESS is not set
|
# CONFIG_WIRELESS is not set
|
||||||
|
# CONFIG_WIMAX is not set
|
||||||
# CONFIG_RFKILL is not set
|
# CONFIG_RFKILL is not set
|
||||||
# CONFIG_NET_9P is not set
|
# CONFIG_NET_9P is not set
|
||||||
|
|
||||||
|
@ -453,15 +468,20 @@ CONFIG_CDROM_PKTCDVD_BUFFERS=8
|
||||||
CONFIG_ATA_OVER_ETH=m
|
CONFIG_ATA_OVER_ETH=m
|
||||||
# CONFIG_BLK_DEV_HD is not set
|
# CONFIG_BLK_DEV_HD is not set
|
||||||
CONFIG_MISC_DEVICES=y
|
CONFIG_MISC_DEVICES=y
|
||||||
# CONFIG_EEPROM_93CX6 is not set
|
|
||||||
# CONFIG_ENCLOSURE_SERVICES is not set
|
# CONFIG_ENCLOSURE_SERVICES is not set
|
||||||
# CONFIG_C2PORT is not set
|
# CONFIG_C2PORT is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# EEPROM support
|
||||||
|
#
|
||||||
|
# CONFIG_EEPROM_93CX6 is not set
|
||||||
CONFIG_HAVE_IDE=y
|
CONFIG_HAVE_IDE=y
|
||||||
CONFIG_IDE=y
|
CONFIG_IDE=y
|
||||||
|
|
||||||
#
|
#
|
||||||
# Please see Documentation/ide/ide.txt for help/info on IDE drives
|
# Please see Documentation/ide/ide.txt for help/info on IDE drives
|
||||||
#
|
#
|
||||||
|
CONFIG_IDE_ATAPI=y
|
||||||
# CONFIG_BLK_DEV_IDE_SATA is not set
|
# CONFIG_BLK_DEV_IDE_SATA is not set
|
||||||
CONFIG_IDE_GD=y
|
CONFIG_IDE_GD=y
|
||||||
CONFIG_IDE_GD_ATA=y
|
CONFIG_IDE_GD_ATA=y
|
||||||
|
@ -469,7 +489,6 @@ CONFIG_IDE_GD_ATA=y
|
||||||
CONFIG_BLK_DEV_IDECD=y
|
CONFIG_BLK_DEV_IDECD=y
|
||||||
CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
|
CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
|
||||||
# CONFIG_BLK_DEV_IDETAPE is not set
|
# CONFIG_BLK_DEV_IDETAPE is not set
|
||||||
# CONFIG_BLK_DEV_IDESCSI is not set
|
|
||||||
# CONFIG_IDE_TASK_IOCTL is not set
|
# CONFIG_IDE_TASK_IOCTL is not set
|
||||||
CONFIG_IDE_PROC_FS=y
|
CONFIG_IDE_PROC_FS=y
|
||||||
|
|
||||||
|
@ -478,7 +497,6 @@ CONFIG_IDE_PROC_FS=y
|
||||||
#
|
#
|
||||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||||
CONFIG_BLK_DEV_GAYLE=y
|
CONFIG_BLK_DEV_GAYLE=y
|
||||||
CONFIG_BLK_DEV_IDEDOUBLER=y
|
|
||||||
CONFIG_BLK_DEV_BUDDHA=y
|
CONFIG_BLK_DEV_BUDDHA=y
|
||||||
# CONFIG_BLK_DEV_IDEDMA is not set
|
# CONFIG_BLK_DEV_IDEDMA is not set
|
||||||
|
|
||||||
|
@ -530,6 +548,8 @@ CONFIG_ISCSI_TCP=m
|
||||||
# CONFIG_SCSI_AIC7XXX_OLD is not set
|
# CONFIG_SCSI_AIC7XXX_OLD is not set
|
||||||
# CONFIG_SCSI_ADVANSYS is not set
|
# CONFIG_SCSI_ADVANSYS is not set
|
||||||
# CONFIG_SCSI_IN2000 is not set
|
# CONFIG_SCSI_IN2000 is not set
|
||||||
|
# CONFIG_LIBFC is not set
|
||||||
|
# CONFIG_LIBFCOE is not set
|
||||||
# CONFIG_SCSI_DTC3280 is not set
|
# CONFIG_SCSI_DTC3280 is not set
|
||||||
# CONFIG_SCSI_FUTURE_DOMAIN is not set
|
# CONFIG_SCSI_FUTURE_DOMAIN is not set
|
||||||
# CONFIG_SCSI_GENERIC_NCR5380 is not set
|
# CONFIG_SCSI_GENERIC_NCR5380 is not set
|
||||||
|
@ -547,6 +567,7 @@ CONFIG_GVP11_SCSI=y
|
||||||
CONFIG_SCSI_A4000T=y
|
CONFIG_SCSI_A4000T=y
|
||||||
CONFIG_SCSI_ZORRO7XX=y
|
CONFIG_SCSI_ZORRO7XX=y
|
||||||
# CONFIG_SCSI_DH is not set
|
# CONFIG_SCSI_DH is not set
|
||||||
|
# CONFIG_SCSI_OSD_INITIATOR is not set
|
||||||
CONFIG_MD=y
|
CONFIG_MD=y
|
||||||
CONFIG_BLK_DEV_MD=m
|
CONFIG_BLK_DEV_MD=m
|
||||||
CONFIG_MD_LINEAR=m
|
CONFIG_MD_LINEAR=m
|
||||||
|
@ -554,7 +575,7 @@ CONFIG_MD_RAID0=m
|
||||||
CONFIG_MD_RAID1=m
|
CONFIG_MD_RAID1=m
|
||||||
# CONFIG_MD_RAID10 is not set
|
# CONFIG_MD_RAID10 is not set
|
||||||
CONFIG_MD_RAID456=m
|
CONFIG_MD_RAID456=m
|
||||||
CONFIG_MD_RAID5_RESHAPE=y
|
CONFIG_MD_RAID6_PQ=m
|
||||||
# CONFIG_MD_MULTIPATH is not set
|
# CONFIG_MD_MULTIPATH is not set
|
||||||
# CONFIG_MD_FAULTY is not set
|
# CONFIG_MD_FAULTY is not set
|
||||||
CONFIG_BLK_DEV_DM=m
|
CONFIG_BLK_DEV_DM=m
|
||||||
|
@ -567,6 +588,7 @@ CONFIG_DM_MULTIPATH=m
|
||||||
# CONFIG_DM_DELAY is not set
|
# CONFIG_DM_DELAY is not set
|
||||||
CONFIG_DM_UEVENT=y
|
CONFIG_DM_UEVENT=y
|
||||||
CONFIG_NETDEVICES=y
|
CONFIG_NETDEVICES=y
|
||||||
|
CONFIG_COMPAT_NET_DEV_OPS=y
|
||||||
CONFIG_DUMMY=m
|
CONFIG_DUMMY=m
|
||||||
# CONFIG_BONDING is not set
|
# CONFIG_BONDING is not set
|
||||||
CONFIG_MACVLAN=m
|
CONFIG_MACVLAN=m
|
||||||
|
@ -577,14 +599,16 @@ CONFIG_VETH=m
|
||||||
# CONFIG_PHYLIB is not set
|
# CONFIG_PHYLIB is not set
|
||||||
CONFIG_NET_ETHERNET=y
|
CONFIG_NET_ETHERNET=y
|
||||||
# CONFIG_MII is not set
|
# CONFIG_MII is not set
|
||||||
CONFIG_ARIADNE=m
|
CONFIG_ARIADNE=y
|
||||||
CONFIG_A2065=m
|
CONFIG_A2065=y
|
||||||
CONFIG_HYDRA=m
|
CONFIG_HYDRA=y
|
||||||
CONFIG_ZORRO8390=m
|
CONFIG_ZORRO8390=y
|
||||||
CONFIG_APNE=m
|
CONFIG_APNE=y
|
||||||
# CONFIG_NET_VENDOR_3COM is not set
|
# CONFIG_NET_VENDOR_3COM is not set
|
||||||
# CONFIG_NET_VENDOR_SMC is not set
|
# CONFIG_NET_VENDOR_SMC is not set
|
||||||
|
# CONFIG_ETHOC is not set
|
||||||
# CONFIG_NET_VENDOR_RACAL is not set
|
# CONFIG_NET_VENDOR_RACAL is not set
|
||||||
|
# CONFIG_DNET is not set
|
||||||
# CONFIG_AT1700 is not set
|
# CONFIG_AT1700 is not set
|
||||||
# CONFIG_DEPCA is not set
|
# CONFIG_DEPCA is not set
|
||||||
# CONFIG_HP100 is not set
|
# CONFIG_HP100 is not set
|
||||||
|
@ -609,7 +633,10 @@ CONFIG_APNE=m
|
||||||
#
|
#
|
||||||
# CONFIG_WLAN_PRE80211 is not set
|
# CONFIG_WLAN_PRE80211 is not set
|
||||||
# CONFIG_WLAN_80211 is not set
|
# CONFIG_WLAN_80211 is not set
|
||||||
# CONFIG_IWLWIFI_LEDS is not set
|
|
||||||
|
#
|
||||||
|
# Enable WiMAX (Networking options) to see the WiMAX drivers
|
||||||
|
#
|
||||||
# CONFIG_WAN is not set
|
# CONFIG_WAN is not set
|
||||||
# CONFIG_PLIP is not set
|
# CONFIG_PLIP is not set
|
||||||
CONFIG_PPP=m
|
CONFIG_PPP=m
|
||||||
|
@ -719,7 +746,7 @@ CONFIG_HW_CONSOLE=y
|
||||||
CONFIG_VT_HW_CONSOLE_BINDING=y
|
CONFIG_VT_HW_CONSOLE_BINDING=y
|
||||||
# CONFIG_DEVKMEM is not set
|
# CONFIG_DEVKMEM is not set
|
||||||
# CONFIG_SERIAL_NONSTANDARD is not set
|
# CONFIG_SERIAL_NONSTANDARD is not set
|
||||||
CONFIG_A2232=m
|
CONFIG_A2232=y
|
||||||
|
|
||||||
#
|
#
|
||||||
# Serial drivers
|
# Serial drivers
|
||||||
|
@ -730,6 +757,7 @@ CONFIG_A2232=m
|
||||||
# Non-8250 serial port support
|
# Non-8250 serial port support
|
||||||
#
|
#
|
||||||
CONFIG_UNIX98_PTYS=y
|
CONFIG_UNIX98_PTYS=y
|
||||||
|
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||||
CONFIG_LEGACY_PTYS=y
|
CONFIG_LEGACY_PTYS=y
|
||||||
CONFIG_LEGACY_PTY_COUNT=256
|
CONFIG_LEGACY_PTY_COUNT=256
|
||||||
CONFIG_PRINTER=m
|
CONFIG_PRINTER=m
|
||||||
|
@ -821,6 +849,7 @@ CONFIG_FB_FM2=y
|
||||||
# CONFIG_FB_VIRTUAL is not set
|
# CONFIG_FB_VIRTUAL is not set
|
||||||
# CONFIG_FB_METRONOME is not set
|
# CONFIG_FB_METRONOME is not set
|
||||||
# CONFIG_FB_MB862XX is not set
|
# CONFIG_FB_MB862XX is not set
|
||||||
|
# CONFIG_FB_BROADSHEET is not set
|
||||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -856,7 +885,6 @@ CONFIG_HIDRAW=y
|
||||||
#
|
#
|
||||||
# Special HID drivers
|
# Special HID drivers
|
||||||
#
|
#
|
||||||
CONFIG_HID_COMPAT=y
|
|
||||||
# CONFIG_USB_SUPPORT is not set
|
# CONFIG_USB_SUPPORT is not set
|
||||||
# CONFIG_MMC is not set
|
# CONFIG_MMC is not set
|
||||||
# CONFIG_MEMSTICK is not set
|
# CONFIG_MEMSTICK is not set
|
||||||
|
@ -867,14 +895,13 @@ CONFIG_HID_COMPAT=y
|
||||||
# CONFIG_AUXDISPLAY is not set
|
# CONFIG_AUXDISPLAY is not set
|
||||||
# CONFIG_UIO is not set
|
# CONFIG_UIO is not set
|
||||||
# CONFIG_STAGING is not set
|
# CONFIG_STAGING is not set
|
||||||
CONFIG_STAGING_EXCLUDE_BUILD=y
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Character devices
|
# Character devices
|
||||||
#
|
#
|
||||||
CONFIG_AMIGA_BUILTIN_SERIAL=y
|
CONFIG_AMIGA_BUILTIN_SERIAL=y
|
||||||
CONFIG_MULTIFACE_III_TTY=m
|
CONFIG_MULTIFACE_III_TTY=m
|
||||||
# CONFIG_SERIAL_CONSOLE is not set
|
CONFIG_SERIAL_CONSOLE=y
|
||||||
|
|
||||||
#
|
#
|
||||||
# File systems
|
# File systems
|
||||||
|
@ -883,6 +910,7 @@ CONFIG_EXT2_FS=y
|
||||||
# CONFIG_EXT2_FS_XATTR is not set
|
# CONFIG_EXT2_FS_XATTR is not set
|
||||||
# CONFIG_EXT2_FS_XIP is not set
|
# CONFIG_EXT2_FS_XIP is not set
|
||||||
CONFIG_EXT3_FS=y
|
CONFIG_EXT3_FS=y
|
||||||
|
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
|
||||||
# CONFIG_EXT3_FS_XATTR is not set
|
# CONFIG_EXT3_FS_XATTR is not set
|
||||||
# CONFIG_EXT4_FS is not set
|
# CONFIG_EXT4_FS is not set
|
||||||
CONFIG_JBD=y
|
CONFIG_JBD=y
|
||||||
|
@ -909,13 +937,15 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
|
||||||
# CONFIG_OCFS2_FS_STATS is not set
|
# CONFIG_OCFS2_FS_STATS is not set
|
||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
|
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
|
||||||
# CONFIG_OCFS2_DEBUG_FS is not set
|
# CONFIG_OCFS2_DEBUG_FS is not set
|
||||||
# CONFIG_OCFS2_COMPAT_JBD is not set
|
# CONFIG_OCFS2_FS_POSIX_ACL is not set
|
||||||
|
# CONFIG_BTRFS_FS is not set
|
||||||
CONFIG_DNOTIFY=y
|
CONFIG_DNOTIFY=y
|
||||||
CONFIG_INOTIFY=y
|
CONFIG_INOTIFY=y
|
||||||
CONFIG_INOTIFY_USER=y
|
CONFIG_INOTIFY_USER=y
|
||||||
CONFIG_QUOTA=y
|
CONFIG_QUOTA=y
|
||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
|
CONFIG_QUOTA_NETLINK_INTERFACE=y
|
||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
|
# CONFIG_PRINT_QUOTA_WARNING is not set
|
||||||
|
CONFIG_QUOTA_TREE=m
|
||||||
# CONFIG_QFMT_V1 is not set
|
# CONFIG_QFMT_V1 is not set
|
||||||
# CONFIG_QFMT_V2 is not set
|
# CONFIG_QFMT_V2 is not set
|
||||||
CONFIG_QUOTACTL=y
|
CONFIG_QUOTACTL=y
|
||||||
|
@ -923,6 +953,11 @@ CONFIG_AUTOFS_FS=m
|
||||||
CONFIG_AUTOFS4_FS=m
|
CONFIG_AUTOFS4_FS=m
|
||||||
CONFIG_FUSE_FS=m
|
CONFIG_FUSE_FS=m
|
||||||
|
|
||||||
|
#
|
||||||
|
# Caches
|
||||||
|
#
|
||||||
|
# CONFIG_FSCACHE is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# CD-ROM/DVD Filesystems
|
# CD-ROM/DVD Filesystems
|
||||||
#
|
#
|
||||||
|
@ -935,8 +970,8 @@ CONFIG_UDF_NLS=y
|
||||||
#
|
#
|
||||||
# DOS/FAT/NT Filesystems
|
# DOS/FAT/NT Filesystems
|
||||||
#
|
#
|
||||||
CONFIG_FAT_FS=m
|
CONFIG_FAT_FS=y
|
||||||
CONFIG_MSDOS_FS=m
|
CONFIG_MSDOS_FS=y
|
||||||
CONFIG_VFAT_FS=m
|
CONFIG_VFAT_FS=m
|
||||||
CONFIG_FAT_DEFAULT_CODEPAGE=437
|
CONFIG_FAT_DEFAULT_CODEPAGE=437
|
||||||
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
|
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
|
||||||
|
@ -954,10 +989,7 @@ CONFIG_TMPFS=y
|
||||||
# CONFIG_TMPFS_POSIX_ACL is not set
|
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||||
# CONFIG_HUGETLB_PAGE is not set
|
# CONFIG_HUGETLB_PAGE is not set
|
||||||
CONFIG_CONFIGFS_FS=m
|
CONFIG_CONFIGFS_FS=m
|
||||||
|
CONFIG_MISC_FILESYSTEMS=y
|
||||||
#
|
|
||||||
# Miscellaneous filesystems
|
|
||||||
#
|
|
||||||
# CONFIG_ADFS_FS is not set
|
# CONFIG_ADFS_FS is not set
|
||||||
CONFIG_AFFS_FS=m
|
CONFIG_AFFS_FS=m
|
||||||
CONFIG_HFS_FS=m
|
CONFIG_HFS_FS=m
|
||||||
|
@ -966,6 +998,9 @@ CONFIG_HFSPLUS_FS=m
|
||||||
# CONFIG_BFS_FS is not set
|
# CONFIG_BFS_FS is not set
|
||||||
# CONFIG_EFS_FS is not set
|
# CONFIG_EFS_FS is not set
|
||||||
CONFIG_CRAMFS=m
|
CONFIG_CRAMFS=m
|
||||||
|
CONFIG_SQUASHFS=m
|
||||||
|
# CONFIG_SQUASHFS_EMBEDDED is not set
|
||||||
|
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
|
||||||
# CONFIG_VXFS_FS is not set
|
# CONFIG_VXFS_FS is not set
|
||||||
CONFIG_MINIX_FS=y
|
CONFIG_MINIX_FS=y
|
||||||
# CONFIG_OMFS_FS is not set
|
# CONFIG_OMFS_FS is not set
|
||||||
|
@ -976,23 +1011,24 @@ CONFIG_SYSV_FS=m
|
||||||
CONFIG_UFS_FS=m
|
CONFIG_UFS_FS=m
|
||||||
# CONFIG_UFS_FS_WRITE is not set
|
# CONFIG_UFS_FS_WRITE is not set
|
||||||
# CONFIG_UFS_DEBUG is not set
|
# CONFIG_UFS_DEBUG is not set
|
||||||
|
# CONFIG_NILFS2_FS is not set
|
||||||
CONFIG_NETWORK_FILESYSTEMS=y
|
CONFIG_NETWORK_FILESYSTEMS=y
|
||||||
CONFIG_NFS_FS=m
|
CONFIG_NFS_FS=y
|
||||||
CONFIG_NFS_V3=y
|
CONFIG_NFS_V3=y
|
||||||
# CONFIG_NFS_V3_ACL is not set
|
# CONFIG_NFS_V3_ACL is not set
|
||||||
CONFIG_NFS_V4=y
|
CONFIG_NFS_V4=y
|
||||||
|
# CONFIG_ROOT_NFS is not set
|
||||||
CONFIG_NFSD=m
|
CONFIG_NFSD=m
|
||||||
CONFIG_NFSD_V3=y
|
CONFIG_NFSD_V3=y
|
||||||
# CONFIG_NFSD_V3_ACL is not set
|
# CONFIG_NFSD_V3_ACL is not set
|
||||||
# CONFIG_NFSD_V4 is not set
|
# CONFIG_NFSD_V4 is not set
|
||||||
CONFIG_LOCKD=m
|
CONFIG_LOCKD=y
|
||||||
CONFIG_LOCKD_V4=y
|
CONFIG_LOCKD_V4=y
|
||||||
CONFIG_EXPORTFS=m
|
CONFIG_EXPORTFS=m
|
||||||
CONFIG_NFS_COMMON=y
|
CONFIG_NFS_COMMON=y
|
||||||
CONFIG_SUNRPC=m
|
CONFIG_SUNRPC=y
|
||||||
CONFIG_SUNRPC_GSS=m
|
CONFIG_SUNRPC_GSS=y
|
||||||
# CONFIG_SUNRPC_REGISTER_V4 is not set
|
CONFIG_RPCSEC_GSS_KRB5=y
|
||||||
CONFIG_RPCSEC_GSS_KRB5=m
|
|
||||||
# CONFIG_RPCSEC_GSS_SPKM3 is not set
|
# CONFIG_RPCSEC_GSS_SPKM3 is not set
|
||||||
CONFIG_SMB_FS=m
|
CONFIG_SMB_FS=m
|
||||||
CONFIG_SMB_NLS_DEFAULT=y
|
CONFIG_SMB_NLS_DEFAULT=y
|
||||||
|
@ -1067,11 +1103,6 @@ CONFIG_DEBUG_BUGVERBOSE=y
|
||||||
CONFIG_DEBUG_MEMORY_INIT=y
|
CONFIG_DEBUG_MEMORY_INIT=y
|
||||||
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
|
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
|
||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
|
CONFIG_SYSCTL_SYSCALL_CHECK=y
|
||||||
|
|
||||||
#
|
|
||||||
# Tracers
|
|
||||||
#
|
|
||||||
# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
|
|
||||||
# CONFIG_SAMPLES is not set
|
# CONFIG_SAMPLES is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -1092,13 +1123,21 @@ CONFIG_CRYPTO=y
|
||||||
#
|
#
|
||||||
# CONFIG_CRYPTO_FIPS is not set
|
# CONFIG_CRYPTO_FIPS is not set
|
||||||
CONFIG_CRYPTO_ALGAPI=y
|
CONFIG_CRYPTO_ALGAPI=y
|
||||||
CONFIG_CRYPTO_AEAD=y
|
CONFIG_CRYPTO_ALGAPI2=y
|
||||||
|
CONFIG_CRYPTO_AEAD=m
|
||||||
|
CONFIG_CRYPTO_AEAD2=y
|
||||||
CONFIG_CRYPTO_BLKCIPHER=y
|
CONFIG_CRYPTO_BLKCIPHER=y
|
||||||
|
CONFIG_CRYPTO_BLKCIPHER2=y
|
||||||
CONFIG_CRYPTO_HASH=y
|
CONFIG_CRYPTO_HASH=y
|
||||||
CONFIG_CRYPTO_RNG=y
|
CONFIG_CRYPTO_HASH2=y
|
||||||
|
CONFIG_CRYPTO_RNG=m
|
||||||
|
CONFIG_CRYPTO_RNG2=y
|
||||||
|
CONFIG_CRYPTO_PCOMP=y
|
||||||
CONFIG_CRYPTO_MANAGER=y
|
CONFIG_CRYPTO_MANAGER=y
|
||||||
|
CONFIG_CRYPTO_MANAGER2=y
|
||||||
CONFIG_CRYPTO_GF128MUL=m
|
CONFIG_CRYPTO_GF128MUL=m
|
||||||
CONFIG_CRYPTO_NULL=m
|
CONFIG_CRYPTO_NULL=m
|
||||||
|
CONFIG_CRYPTO_WORKQUEUE=y
|
||||||
CONFIG_CRYPTO_CRYPTD=m
|
CONFIG_CRYPTO_CRYPTD=m
|
||||||
CONFIG_CRYPTO_AUTHENC=m
|
CONFIG_CRYPTO_AUTHENC=m
|
||||||
CONFIG_CRYPTO_TEST=m
|
CONFIG_CRYPTO_TEST=m
|
||||||
|
@ -1113,7 +1152,7 @@ CONFIG_CRYPTO_SEQIV=m
|
||||||
#
|
#
|
||||||
# Block modes
|
# Block modes
|
||||||
#
|
#
|
||||||
CONFIG_CRYPTO_CBC=m
|
CONFIG_CRYPTO_CBC=y
|
||||||
CONFIG_CRYPTO_CTR=m
|
CONFIG_CRYPTO_CTR=m
|
||||||
CONFIG_CRYPTO_CTS=m
|
CONFIG_CRYPTO_CTS=m
|
||||||
CONFIG_CRYPTO_ECB=m
|
CONFIG_CRYPTO_ECB=m
|
||||||
|
@ -1132,7 +1171,7 @@ CONFIG_CRYPTO_XCBC=m
|
||||||
#
|
#
|
||||||
CONFIG_CRYPTO_CRC32C=m
|
CONFIG_CRYPTO_CRC32C=m
|
||||||
CONFIG_CRYPTO_MD4=m
|
CONFIG_CRYPTO_MD4=m
|
||||||
CONFIG_CRYPTO_MD5=m
|
CONFIG_CRYPTO_MD5=y
|
||||||
CONFIG_CRYPTO_MICHAEL_MIC=m
|
CONFIG_CRYPTO_MICHAEL_MIC=m
|
||||||
CONFIG_CRYPTO_RMD128=m
|
CONFIG_CRYPTO_RMD128=m
|
||||||
CONFIG_CRYPTO_RMD160=m
|
CONFIG_CRYPTO_RMD160=m
|
||||||
|
@ -1154,7 +1193,7 @@ CONFIG_CRYPTO_BLOWFISH=m
|
||||||
CONFIG_CRYPTO_CAMELLIA=m
|
CONFIG_CRYPTO_CAMELLIA=m
|
||||||
CONFIG_CRYPTO_CAST5=m
|
CONFIG_CRYPTO_CAST5=m
|
||||||
CONFIG_CRYPTO_CAST6=m
|
CONFIG_CRYPTO_CAST6=m
|
||||||
CONFIG_CRYPTO_DES=m
|
CONFIG_CRYPTO_DES=y
|
||||||
CONFIG_CRYPTO_FCRYPT=m
|
CONFIG_CRYPTO_FCRYPT=m
|
||||||
CONFIG_CRYPTO_KHAZAD=m
|
CONFIG_CRYPTO_KHAZAD=m
|
||||||
CONFIG_CRYPTO_SALSA20=m
|
CONFIG_CRYPTO_SALSA20=m
|
||||||
|
@ -1168,6 +1207,7 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
|
||||||
# Compression
|
# Compression
|
||||||
#
|
#
|
||||||
CONFIG_CRYPTO_DEFLATE=m
|
CONFIG_CRYPTO_DEFLATE=m
|
||||||
|
CONFIG_CRYPTO_ZLIB=m
|
||||||
CONFIG_CRYPTO_LZO=m
|
CONFIG_CRYPTO_LZO=m
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -1175,11 +1215,13 @@ CONFIG_CRYPTO_LZO=m
|
||||||
#
|
#
|
||||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||||
# CONFIG_CRYPTO_HW is not set
|
# CONFIG_CRYPTO_HW is not set
|
||||||
|
# CONFIG_BINARY_PRINTF is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# Library routines
|
# Library routines
|
||||||
#
|
#
|
||||||
CONFIG_BITREVERSE=y
|
CONFIG_BITREVERSE=y
|
||||||
|
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||||
CONFIG_CRC_CCITT=m
|
CONFIG_CRC_CCITT=m
|
||||||
CONFIG_CRC16=m
|
CONFIG_CRC16=m
|
||||||
CONFIG_CRC_T10DIF=y
|
CONFIG_CRC_T10DIF=y
|
||||||
|
@ -1191,10 +1233,13 @@ CONFIG_ZLIB_INFLATE=y
|
||||||
CONFIG_ZLIB_DEFLATE=m
|
CONFIG_ZLIB_DEFLATE=m
|
||||||
CONFIG_LZO_COMPRESS=m
|
CONFIG_LZO_COMPRESS=m
|
||||||
CONFIG_LZO_DECOMPRESS=m
|
CONFIG_LZO_DECOMPRESS=m
|
||||||
|
CONFIG_DECOMPRESS_GZIP=y
|
||||||
|
CONFIG_DECOMPRESS_BZIP2=y
|
||||||
|
CONFIG_DECOMPRESS_LZMA=y
|
||||||
CONFIG_TEXTSEARCH=y
|
CONFIG_TEXTSEARCH=y
|
||||||
CONFIG_TEXTSEARCH_KMP=m
|
CONFIG_TEXTSEARCH_KMP=m
|
||||||
CONFIG_TEXTSEARCH_BM=m
|
CONFIG_TEXTSEARCH_BM=m
|
||||||
CONFIG_TEXTSEARCH_FSM=m
|
CONFIG_TEXTSEARCH_FSM=m
|
||||||
CONFIG_PLIST=y
|
|
||||||
CONFIG_HAS_IOMEM=y
|
CONFIG_HAS_IOMEM=y
|
||||||
CONFIG_HAS_DMA=y
|
CONFIG_HAS_DMA=y
|
||||||
|
CONFIG_NLATTR=y
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue