Linux 3.14-rc6
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAABAgAGBQJTHSaRAAoJEHm+PkMAQRiG7G8IAJHElwFDNSQE7Y9MmbicrAMG kfjhBtBpTaVrJKQXegCNUwDaLLyC4oLIxDheW84oPXbrEGDLqPtBov/hrcFkHVr4 lh/ZYk02nYtcfpN0JnL/Yj2oKHVmBWs0vFlM7StSFsJCj10DoCVQQdmAJ8XODTPo CXMapk+UikTX1TlIO8+B5toyl3R1OqPmW211UV1vQVLKy66hu+MKVN/V+/EyopL0 1jO81EDpaRaeIJh1/okcyUoIq9pqLkAWNpeQ7uyXZ+Sfivt9RXwLYKmAB3lP20Hc ZMIIoHSCyYRFjxLlQvt02bA9nY4wTY7YN5kZ2kk65y7TFfhcGsCw1Sc69iyCoKs= =CJcA -----END PGP SIGNATURE----- Merge tag 'v3.14-rc6' into devel Linux 3.14-rc6
This commit is contained in:
commit
9e294427f6
|
@ -92,3 +92,6 @@ extra_certificates
|
||||||
signing_key.priv
|
signing_key.priv
|
||||||
signing_key.x509
|
signing_key.x509
|
||||||
x509.genkey
|
x509.genkey
|
||||||
|
|
||||||
|
# Kconfig presets
|
||||||
|
all.config
|
||||||
|
|
|
@ -29,6 +29,8 @@ DMA-ISA-LPC.txt
|
||||||
- How to do DMA with ISA (and LPC) devices.
|
- How to do DMA with ISA (and LPC) devices.
|
||||||
DMA-attributes.txt
|
DMA-attributes.txt
|
||||||
- listing of the various possible attributes a DMA region can have
|
- listing of the various possible attributes a DMA region can have
|
||||||
|
dmatest.txt
|
||||||
|
- how to compile, configure and use the dmatest system.
|
||||||
DocBook/
|
DocBook/
|
||||||
- directory with DocBook templates etc. for kernel documentation.
|
- directory with DocBook templates etc. for kernel documentation.
|
||||||
EDID/
|
EDID/
|
||||||
|
@ -77,6 +79,8 @@ arm/
|
||||||
- directory with info about Linux on the ARM architecture.
|
- directory with info about Linux on the ARM architecture.
|
||||||
arm64/
|
arm64/
|
||||||
- directory with info about Linux on the 64 bit ARM architecture.
|
- directory with info about Linux on the 64 bit ARM architecture.
|
||||||
|
assoc_array.txt
|
||||||
|
- generic associative array intro.
|
||||||
atomic_ops.txt
|
atomic_ops.txt
|
||||||
- semantics and behavior of atomic and bitmask operations.
|
- semantics and behavior of atomic and bitmask operations.
|
||||||
auxdisplay/
|
auxdisplay/
|
||||||
|
@ -87,6 +91,8 @@ bad_memory.txt
|
||||||
- how to use kernel parameters to exclude bad RAM regions.
|
- how to use kernel parameters to exclude bad RAM regions.
|
||||||
basic_profiling.txt
|
basic_profiling.txt
|
||||||
- basic instructions for those who wants to profile Linux kernel.
|
- basic instructions for those who wants to profile Linux kernel.
|
||||||
|
bcache.txt
|
||||||
|
- Block-layer cache on fast SSDs to improve slow (raid) I/O performance.
|
||||||
binfmt_misc.txt
|
binfmt_misc.txt
|
||||||
- info on the kernel support for extra binary formats.
|
- info on the kernel support for extra binary formats.
|
||||||
blackfin/
|
blackfin/
|
||||||
|
@ -171,6 +177,8 @@ early-userspace/
|
||||||
- info about initramfs, klibc, and userspace early during boot.
|
- info about initramfs, klibc, and userspace early during boot.
|
||||||
edac.txt
|
edac.txt
|
||||||
- information on EDAC - Error Detection And Correction
|
- information on EDAC - Error Detection And Correction
|
||||||
|
efi-stub.txt
|
||||||
|
- How to use the EFI boot stub to bypass GRUB or elilo on EFI systems.
|
||||||
eisa.txt
|
eisa.txt
|
||||||
- info on EISA bus support.
|
- info on EISA bus support.
|
||||||
email-clients.txt
|
email-clients.txt
|
||||||
|
@ -195,8 +203,8 @@ futex-requeue-pi.txt
|
||||||
- info on requeueing of tasks from a non-PI futex to a PI futex
|
- info on requeueing of tasks from a non-PI futex to a PI futex
|
||||||
gcov.txt
|
gcov.txt
|
||||||
- use of GCC's coverage testing tool "gcov" with the Linux kernel
|
- use of GCC's coverage testing tool "gcov" with the Linux kernel
|
||||||
gpio.txt
|
gpio/
|
||||||
- overview of GPIO (General Purpose Input/Output) access conventions.
|
- gpio related documentation
|
||||||
hid/
|
hid/
|
||||||
- directory with information on human interface devices
|
- directory with information on human interface devices
|
||||||
highuid.txt
|
highuid.txt
|
||||||
|
@ -255,6 +263,8 @@ kernel-docs.txt
|
||||||
- listing of various WWW + books that document kernel internals.
|
- listing of various WWW + books that document kernel internals.
|
||||||
kernel-parameters.txt
|
kernel-parameters.txt
|
||||||
- summary listing of command line / boot prompt args for the kernel.
|
- summary listing of command line / boot prompt args for the kernel.
|
||||||
|
kernel-per-CPU-kthreads.txt
|
||||||
|
- List of all per-CPU kthreads and how they introduce jitter.
|
||||||
kmemcheck.txt
|
kmemcheck.txt
|
||||||
- info on dynamic checker that detects uses of uninitialized memory.
|
- info on dynamic checker that detects uses of uninitialized memory.
|
||||||
kmemleak.txt
|
kmemleak.txt
|
||||||
|
@ -299,8 +309,6 @@ memory-devices/
|
||||||
- directory with info on parts like the Texas Instruments EMIF driver
|
- directory with info on parts like the Texas Instruments EMIF driver
|
||||||
memory-hotplug.txt
|
memory-hotplug.txt
|
||||||
- Hotpluggable memory support, how to use and current status.
|
- Hotpluggable memory support, how to use and current status.
|
||||||
memory.txt
|
|
||||||
- info on typical Linux memory problems.
|
|
||||||
metag/
|
metag/
|
||||||
- directory with info about Linux on Meta architecture.
|
- directory with info about Linux on Meta architecture.
|
||||||
mips/
|
mips/
|
||||||
|
@ -311,6 +319,8 @@ mmc/
|
||||||
- directory with info about the MMC subsystem
|
- directory with info about the MMC subsystem
|
||||||
mn10300/
|
mn10300/
|
||||||
- directory with info about the mn10300 architecture port
|
- directory with info about the mn10300 architecture port
|
||||||
|
module-signing.txt
|
||||||
|
- Kernel module signing for increased security when loading modules.
|
||||||
mtd/
|
mtd/
|
||||||
- directory with info about memory technology devices (flash)
|
- directory with info about memory technology devices (flash)
|
||||||
mono.txt
|
mono.txt
|
||||||
|
@ -343,6 +353,8 @@ pcmcia/
|
||||||
- info on the Linux PCMCIA driver.
|
- info on the Linux PCMCIA driver.
|
||||||
percpu-rw-semaphore.txt
|
percpu-rw-semaphore.txt
|
||||||
- RCU based read-write semaphore optimized for locking for reading
|
- RCU based read-write semaphore optimized for locking for reading
|
||||||
|
phy.txt
|
||||||
|
- Description of the generic PHY framework.
|
||||||
pi-futex.txt
|
pi-futex.txt
|
||||||
- documentation on lightweight priority inheritance futexes.
|
- documentation on lightweight priority inheritance futexes.
|
||||||
pinctrl.txt
|
pinctrl.txt
|
||||||
|
@ -431,6 +443,8 @@ sysrq.txt
|
||||||
- info on the magic SysRq key.
|
- info on the magic SysRq key.
|
||||||
target/
|
target/
|
||||||
- directory with info on generating TCM v4 fabric .ko modules
|
- directory with info on generating TCM v4 fabric .ko modules
|
||||||
|
this_cpu_ops.txt
|
||||||
|
- List rationale behind and the way to use this_cpu operations.
|
||||||
thermal/
|
thermal/
|
||||||
- directory with information on managing thermal issues (CPU/temp)
|
- directory with information on managing thermal issues (CPU/temp)
|
||||||
trace/
|
trace/
|
||||||
|
@ -469,6 +483,8 @@ wimax/
|
||||||
- directory with info about Intel Wireless Wimax Connections
|
- directory with info about Intel Wireless Wimax Connections
|
||||||
workqueue.txt
|
workqueue.txt
|
||||||
- information on the Concurrency Managed Workqueue implementation
|
- information on the Concurrency Managed Workqueue implementation
|
||||||
|
ww-mutex-design.txt
|
||||||
|
- Intro to Mutex wait/would deadlock handling.s
|
||||||
x86/x86_64/
|
x86/x86_64/
|
||||||
- directory with info on Linux support for AMD x86-64 (Hammer) machines.
|
- directory with info on Linux support for AMD x86-64 (Hammer) machines.
|
||||||
xtensa/
|
xtensa/
|
||||||
|
|
|
@ -82,7 +82,19 @@ Most of the hard work is done for the driver in the PCI layer. It simply
|
||||||
has to request that the PCI layer set up the MSI capability for this
|
has to request that the PCI layer set up the MSI capability for this
|
||||||
device.
|
device.
|
||||||
|
|
||||||
4.2.1 pci_enable_msi_range
|
4.2.1 pci_enable_msi
|
||||||
|
|
||||||
|
int pci_enable_msi(struct pci_dev *dev)
|
||||||
|
|
||||||
|
A successful call allocates ONE interrupt to the device, regardless
|
||||||
|
of how many MSIs the device supports. The device is switched from
|
||||||
|
pin-based interrupt mode to MSI mode. The dev->irq number is changed
|
||||||
|
to a new number which represents the message signaled interrupt;
|
||||||
|
consequently, this function should be called before the driver calls
|
||||||
|
request_irq(), because an MSI is delivered via a vector that is
|
||||||
|
different from the vector of a pin-based interrupt.
|
||||||
|
|
||||||
|
4.2.2 pci_enable_msi_range
|
||||||
|
|
||||||
int pci_enable_msi_range(struct pci_dev *dev, int minvec, int maxvec)
|
int pci_enable_msi_range(struct pci_dev *dev, int minvec, int maxvec)
|
||||||
|
|
||||||
|
@ -147,6 +159,11 @@ static int foo_driver_enable_msi(struct pci_dev *pdev, int nvec)
|
||||||
return pci_enable_msi_range(pdev, nvec, nvec);
|
return pci_enable_msi_range(pdev, nvec, nvec);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Note, unlike pci_enable_msi_exact() function, which could be also used to
|
||||||
|
enable a particular number of MSI-X interrupts, pci_enable_msi_range()
|
||||||
|
returns either a negative errno or 'nvec' (not negative errno or 0 - as
|
||||||
|
pci_enable_msi_exact() does).
|
||||||
|
|
||||||
4.2.1.3 Single MSI mode
|
4.2.1.3 Single MSI mode
|
||||||
|
|
||||||
The most notorious example of the request type described above is
|
The most notorious example of the request type described above is
|
||||||
|
@ -158,7 +175,27 @@ static int foo_driver_enable_single_msi(struct pci_dev *pdev)
|
||||||
return pci_enable_msi_range(pdev, 1, 1);
|
return pci_enable_msi_range(pdev, 1, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
4.2.2 pci_disable_msi
|
Note, unlike pci_enable_msi() function, which could be also used to
|
||||||
|
enable the single MSI mode, pci_enable_msi_range() returns either a
|
||||||
|
negative errno or 1 (not negative errno or 0 - as pci_enable_msi()
|
||||||
|
does).
|
||||||
|
|
||||||
|
4.2.3 pci_enable_msi_exact
|
||||||
|
|
||||||
|
int pci_enable_msi_exact(struct pci_dev *dev, int nvec)
|
||||||
|
|
||||||
|
This variation on pci_enable_msi_range() call allows a device driver to
|
||||||
|
request exactly 'nvec' MSIs.
|
||||||
|
|
||||||
|
If this function returns a negative number, it indicates an error and
|
||||||
|
the driver should not attempt to request any more MSI interrupts for
|
||||||
|
this device.
|
||||||
|
|
||||||
|
By contrast with pci_enable_msi_range() function, pci_enable_msi_exact()
|
||||||
|
returns zero in case of success, which indicates MSI interrupts have been
|
||||||
|
successfully allocated.
|
||||||
|
|
||||||
|
4.2.4 pci_disable_msi
|
||||||
|
|
||||||
void pci_disable_msi(struct pci_dev *dev)
|
void pci_disable_msi(struct pci_dev *dev)
|
||||||
|
|
||||||
|
@ -172,7 +209,7 @@ on any interrupt for which it previously called request_irq().
|
||||||
Failure to do so results in a BUG_ON(), leaving the device with
|
Failure to do so results in a BUG_ON(), leaving the device with
|
||||||
MSI enabled and thus leaking its vector.
|
MSI enabled and thus leaking its vector.
|
||||||
|
|
||||||
4.2.3 pci_msi_vec_count
|
4.2.4 pci_msi_vec_count
|
||||||
|
|
||||||
int pci_msi_vec_count(struct pci_dev *dev)
|
int pci_msi_vec_count(struct pci_dev *dev)
|
||||||
|
|
||||||
|
@ -257,8 +294,8 @@ possible, likely up to the limit returned by pci_msix_vec_count() function:
|
||||||
|
|
||||||
static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
|
static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
|
||||||
{
|
{
|
||||||
return pci_enable_msi_range(adapter->pdev, adapter->msix_entries,
|
return pci_enable_msix_range(adapter->pdev, adapter->msix_entries,
|
||||||
1, nvec);
|
1, nvec);
|
||||||
}
|
}
|
||||||
|
|
||||||
Note the value of 'minvec' parameter is 1. As 'minvec' is inclusive,
|
Note the value of 'minvec' parameter is 1. As 'minvec' is inclusive,
|
||||||
|
@ -269,8 +306,8 @@ In this case the function could look like this:
|
||||||
|
|
||||||
static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
|
static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
|
||||||
{
|
{
|
||||||
return pci_enable_msi_range(adapter->pdev, adapter->msix_entries,
|
return pci_enable_msix_range(adapter->pdev, adapter->msix_entries,
|
||||||
FOO_DRIVER_MINIMUM_NVEC, nvec);
|
FOO_DRIVER_MINIMUM_NVEC, nvec);
|
||||||
}
|
}
|
||||||
|
|
||||||
4.3.1.2 Exact number of MSI-X interrupts
|
4.3.1.2 Exact number of MSI-X interrupts
|
||||||
|
@ -282,10 +319,15 @@ parameters:
|
||||||
|
|
||||||
static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
|
static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
|
||||||
{
|
{
|
||||||
return pci_enable_msi_range(adapter->pdev, adapter->msix_entries,
|
return pci_enable_msix_range(adapter->pdev, adapter->msix_entries,
|
||||||
nvec, nvec);
|
nvec, nvec);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Note, unlike pci_enable_msix_exact() function, which could be also used to
|
||||||
|
enable a particular number of MSI-X interrupts, pci_enable_msix_range()
|
||||||
|
returns either a negative errno or 'nvec' (not negative errno or 0 - as
|
||||||
|
pci_enable_msix_exact() does).
|
||||||
|
|
||||||
4.3.1.3 Specific requirements to the number of MSI-X interrupts
|
4.3.1.3 Specific requirements to the number of MSI-X interrupts
|
||||||
|
|
||||||
As noted above, there could be devices that can not operate with just any
|
As noted above, there could be devices that can not operate with just any
|
||||||
|
@ -332,7 +374,64 @@ Note how pci_enable_msix_range() return value is analized for a fallback -
|
||||||
any error code other than -ENOSPC indicates a fatal error and should not
|
any error code other than -ENOSPC indicates a fatal error and should not
|
||||||
be retried.
|
be retried.
|
||||||
|
|
||||||
4.3.2 pci_disable_msix
|
4.3.2 pci_enable_msix_exact
|
||||||
|
|
||||||
|
int pci_enable_msix_exact(struct pci_dev *dev,
|
||||||
|
struct msix_entry *entries, int nvec)
|
||||||
|
|
||||||
|
This variation on pci_enable_msix_range() call allows a device driver to
|
||||||
|
request exactly 'nvec' MSI-Xs.
|
||||||
|
|
||||||
|
If this function returns a negative number, it indicates an error and
|
||||||
|
the driver should not attempt to allocate any more MSI-X interrupts for
|
||||||
|
this device.
|
||||||
|
|
||||||
|
By contrast with pci_enable_msix_range() function, pci_enable_msix_exact()
|
||||||
|
returns zero in case of success, which indicates MSI-X interrupts have been
|
||||||
|
successfully allocated.
|
||||||
|
|
||||||
|
Another version of a routine that enables MSI-X mode for a device with
|
||||||
|
specific requirements described in chapter 4.3.1.3 might look like this:
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Assume 'minvec' and 'maxvec' are non-zero
|
||||||
|
*/
|
||||||
|
static int foo_driver_enable_msix(struct foo_adapter *adapter,
|
||||||
|
int minvec, int maxvec)
|
||||||
|
{
|
||||||
|
int rc;
|
||||||
|
|
||||||
|
minvec = roundup_pow_of_two(minvec);
|
||||||
|
maxvec = rounddown_pow_of_two(maxvec);
|
||||||
|
|
||||||
|
if (minvec > maxvec)
|
||||||
|
return -ERANGE;
|
||||||
|
|
||||||
|
retry:
|
||||||
|
rc = pci_enable_msix_exact(adapter->pdev,
|
||||||
|
adapter->msix_entries, maxvec);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* -ENOSPC is the only error code allowed to be analyzed
|
||||||
|
*/
|
||||||
|
if (rc == -ENOSPC) {
|
||||||
|
if (maxvec == 1)
|
||||||
|
return -ENOSPC;
|
||||||
|
|
||||||
|
maxvec /= 2;
|
||||||
|
|
||||||
|
if (minvec > maxvec)
|
||||||
|
return -ENOSPC;
|
||||||
|
|
||||||
|
goto retry;
|
||||||
|
} else if (rc < 0) {
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
|
||||||
|
return maxvec;
|
||||||
|
}
|
||||||
|
|
||||||
|
4.3.3 pci_disable_msix
|
||||||
|
|
||||||
void pci_disable_msix(struct pci_dev *dev)
|
void pci_disable_msix(struct pci_dev *dev)
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,8 @@ listRCU.txt
|
||||||
- Using RCU to Protect Read-Mostly Linked Lists
|
- Using RCU to Protect Read-Mostly Linked Lists
|
||||||
lockdep.txt
|
lockdep.txt
|
||||||
- RCU and lockdep checking
|
- RCU and lockdep checking
|
||||||
|
lockdep-splat.txt
|
||||||
|
- RCU Lockdep splats explained.
|
||||||
NMI-RCU.txt
|
NMI-RCU.txt
|
||||||
- Using RCU to Protect Dynamic NMI Handlers
|
- Using RCU to Protect Dynamic NMI Handlers
|
||||||
rcubarrier.txt
|
rcubarrier.txt
|
||||||
|
|
|
@ -4,6 +4,8 @@ Booting
|
||||||
- requirements for booting
|
- requirements for booting
|
||||||
Interrupts
|
Interrupts
|
||||||
- ARM Interrupt subsystem documentation
|
- ARM Interrupt subsystem documentation
|
||||||
|
IXP4xx
|
||||||
|
- Intel IXP4xx Network processor.
|
||||||
msm
|
msm
|
||||||
- MSM specific documentation
|
- MSM specific documentation
|
||||||
Netwinder
|
Netwinder
|
||||||
|
@ -24,8 +26,16 @@ SPEAr
|
||||||
- ST SPEAr platform Linux Overview
|
- ST SPEAr platform Linux Overview
|
||||||
VFP/
|
VFP/
|
||||||
- Release notes for Linux Kernel Vector Floating Point support code
|
- Release notes for Linux Kernel Vector Floating Point support code
|
||||||
|
cluster-pm-race-avoidance.txt
|
||||||
|
- Algorithm for CPU and Cluster setup/teardown
|
||||||
empeg/
|
empeg/
|
||||||
- Ltd's Empeg MP3 Car Audio Player
|
- Ltd's Empeg MP3 Car Audio Player
|
||||||
|
firmware.txt
|
||||||
|
- Secure firmware registration and calling.
|
||||||
|
kernel_mode_neon.txt
|
||||||
|
- How to use NEON instructions in kernel mode
|
||||||
|
kernel_user_helpers.txt
|
||||||
|
- Helper functions in kernel space made available for userspace.
|
||||||
mem_alignment
|
mem_alignment
|
||||||
- alignment abort handler documentation
|
- alignment abort handler documentation
|
||||||
memory.txt
|
memory.txt
|
||||||
|
@ -34,3 +44,7 @@ nwfpe/
|
||||||
- NWFPE floating point emulator documentation
|
- NWFPE floating point emulator documentation
|
||||||
swp_emulation
|
swp_emulation
|
||||||
- SWP/SWPB emulation handler/logging description
|
- SWP/SWPB emulation handler/logging description
|
||||||
|
tcm.txt
|
||||||
|
- ARM Tightly Coupled Memory
|
||||||
|
vlocks.txt
|
||||||
|
- Voting locks, low-level mechanism relying on memory system atomic writes.
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
00-INDEX
|
00-INDEX
|
||||||
- This file
|
- This file
|
||||||
|
Makefile
|
||||||
|
- Makefile for gptimers example file.
|
||||||
bfin-gpio-notes.txt
|
bfin-gpio-notes.txt
|
||||||
- Notes in developing/using bfin-gpio driver.
|
- Notes in developing/using bfin-gpio driver.
|
||||||
|
|
||||||
bfin-spi-notes.txt
|
bfin-spi-notes.txt
|
||||||
- Notes for using bfin spi bus driver.
|
- Notes for using bfin spi bus driver.
|
||||||
|
gptimers-example.c
|
||||||
|
- gptimers example
|
||||||
|
|
|
@ -14,6 +14,8 @@ deadline-iosched.txt
|
||||||
- Deadline IO scheduler tunables
|
- Deadline IO scheduler tunables
|
||||||
ioprio.txt
|
ioprio.txt
|
||||||
- Block io priorities (in CFQ scheduler)
|
- Block io priorities (in CFQ scheduler)
|
||||||
|
null_blk.txt
|
||||||
|
- Null block for block-layer benchmarking.
|
||||||
queue-sysfs.txt
|
queue-sysfs.txt
|
||||||
- Queue's sysfs entries
|
- Queue's sysfs entries
|
||||||
request.txt
|
request.txt
|
||||||
|
|
|
@ -124,12 +124,11 @@ the default being 204800 sectors (or 100MB).
|
||||||
Updating on-disk metadata
|
Updating on-disk metadata
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
On-disk metadata is committed every time a REQ_SYNC or REQ_FUA bio is
|
On-disk metadata is committed every time a FLUSH or FUA bio is written.
|
||||||
written. If no such requests are made then commits will occur every
|
If no such requests are made then commits will occur every second. This
|
||||||
second. This means the cache behaves like a physical disk that has a
|
means the cache behaves like a physical disk that has a volatile write
|
||||||
write cache (the same is true of the thin-provisioning target). If
|
cache. If power is lost you may lose some recent writes. The metadata
|
||||||
power is lost you may lose some recent writes. The metadata should
|
should always be consistent in spite of any crash.
|
||||||
always be consistent in spite of any crash.
|
|
||||||
|
|
||||||
The 'dirty' state for a cache block changes far too frequently for us
|
The 'dirty' state for a cache block changes far too frequently for us
|
||||||
to keep updating it on the fly. So we treat it as a hint. In normal
|
to keep updating it on the fly. So we treat it as a hint. In normal
|
||||||
|
|
|
@ -116,6 +116,35 @@ Resuming a device with a new table itself triggers an event so the
|
||||||
userspace daemon can use this to detect a situation where a new table
|
userspace daemon can use this to detect a situation where a new table
|
||||||
already exceeds the threshold.
|
already exceeds the threshold.
|
||||||
|
|
||||||
|
A low water mark for the metadata device is maintained in the kernel and
|
||||||
|
will trigger a dm event if free space on the metadata device drops below
|
||||||
|
it.
|
||||||
|
|
||||||
|
Updating on-disk metadata
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
On-disk metadata is committed every time a FLUSH or FUA bio is written.
|
||||||
|
If no such requests are made then commits will occur every second. This
|
||||||
|
means the thin-provisioning target behaves like a physical disk that has
|
||||||
|
a volatile write cache. If power is lost you may lose some recent
|
||||||
|
writes. The metadata should always be consistent in spite of any crash.
|
||||||
|
|
||||||
|
If data space is exhausted the pool will either error or queue IO
|
||||||
|
according to the configuration (see: error_if_no_space). If metadata
|
||||||
|
space is exhausted or a metadata operation fails: the pool will error IO
|
||||||
|
until the pool is taken offline and repair is performed to 1) fix any
|
||||||
|
potential inconsistencies and 2) clear the flag that imposes repair.
|
||||||
|
Once the pool's metadata device is repaired it may be resized, which
|
||||||
|
will allow the pool to return to normal operation. Note that if a pool
|
||||||
|
is flagged as needing repair, the pool's data and metadata devices
|
||||||
|
cannot be resized until repair is performed. It should also be noted
|
||||||
|
that when the pool's metadata space is exhausted the current metadata
|
||||||
|
transaction is aborted. Given that the pool will cache IO whose
|
||||||
|
completion may have already been acknowledged to upper IO layers
|
||||||
|
(e.g. filesystem) it is strongly suggested that consistency checks
|
||||||
|
(e.g. fsck) be performed on those layers when repair of the pool is
|
||||||
|
required.
|
||||||
|
|
||||||
Thin provisioning
|
Thin provisioning
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
@ -258,10 +287,9 @@ ii) Status
|
||||||
should register for the event and then check the target's status.
|
should register for the event and then check the target's status.
|
||||||
|
|
||||||
held metadata root:
|
held metadata root:
|
||||||
The location, in sectors, of the metadata root that has been
|
The location, in blocks, of the metadata root that has been
|
||||||
'held' for userspace read access. '-' indicates there is no
|
'held' for userspace read access. '-' indicates there is no
|
||||||
held root. This feature is not yet implemented so '-' is
|
held root.
|
||||||
always returned.
|
|
||||||
|
|
||||||
discard_passdown|no_discard_passdown
|
discard_passdown|no_discard_passdown
|
||||||
Whether or not discards are actually being passed down to the
|
Whether or not discards are actually being passed down to the
|
||||||
|
|
|
@ -8,3 +8,5 @@ https://lists.ozlabs.org/listinfo/devicetree-discuss
|
||||||
- this file
|
- this file
|
||||||
booting-without-of.txt
|
booting-without-of.txt
|
||||||
- Booting Linux without Open Firmware, describes history and format of device trees.
|
- Booting Linux without Open Firmware, describes history and format of device trees.
|
||||||
|
usage-model.txt
|
||||||
|
- How Linux uses DT and what DT aims to solve.
|
|
@ -91,7 +91,7 @@ Boards:
|
||||||
compatible = "ti,omap3-beagle", "ti,omap3"
|
compatible = "ti,omap3-beagle", "ti,omap3"
|
||||||
|
|
||||||
- OMAP3 Tobi with Overo : Commercial expansion board with daughter board
|
- OMAP3 Tobi with Overo : Commercial expansion board with daughter board
|
||||||
compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3"
|
compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3"
|
||||||
|
|
||||||
- OMAP4 SDP : Software Development Board
|
- OMAP4 SDP : Software Development Board
|
||||||
compatible = "ti,omap4-sdp", "ti,omap4430"
|
compatible = "ti,omap4-sdp", "ti,omap4430"
|
||||||
|
|
|
@ -21,9 +21,9 @@ Required Properties:
|
||||||
must appear in the same order as the output clocks.
|
must appear in the same order as the output clocks.
|
||||||
- #clock-cells: Must be 1
|
- #clock-cells: Must be 1
|
||||||
- clock-output-names: The name of the clocks as free-form strings
|
- clock-output-names: The name of the clocks as free-form strings
|
||||||
- renesas,indices: Indices of the gate clocks into the group (0 to 31)
|
- renesas,clock-indices: Indices of the gate clocks into the group (0 to 31)
|
||||||
|
|
||||||
The clocks, clock-output-names and renesas,indices properties contain one
|
The clocks, clock-output-names and renesas,clock-indices properties contain one
|
||||||
entry per gate clock. The MSTP groups are sparsely populated. Unimplemented
|
entry per gate clock. The MSTP groups are sparsely populated. Unimplemented
|
||||||
gate clocks must not be declared.
|
gate clocks must not be declared.
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,16 @@
|
||||||
* Freescale Smart Direct Memory Access (SDMA) Controller for i.MX
|
* Freescale Smart Direct Memory Access (SDMA) Controller for i.MX
|
||||||
|
|
||||||
Required properties:
|
Required properties:
|
||||||
- compatible : Should be "fsl,imx31-sdma", "fsl,imx31-to1-sdma",
|
- compatible : Should be one of
|
||||||
"fsl,imx31-to2-sdma", "fsl,imx35-sdma", "fsl,imx35-to1-sdma",
|
"fsl,imx25-sdma"
|
||||||
"fsl,imx35-to2-sdma", "fsl,imx51-sdma", "fsl,imx53-sdma" or
|
"fsl,imx31-sdma", "fsl,imx31-to1-sdma", "fsl,imx31-to2-sdma"
|
||||||
"fsl,imx6q-sdma". The -to variants should be preferred since they
|
"fsl,imx35-sdma", "fsl,imx35-to1-sdma", "fsl,imx35-to2-sdma"
|
||||||
allow to determnine the correct ROM script addresses needed for
|
"fsl,imx51-sdma"
|
||||||
the driver to work without additional firmware.
|
"fsl,imx53-sdma"
|
||||||
|
"fsl,imx6q-sdma"
|
||||||
|
The -to variants should be preferred since they allow to determnine the
|
||||||
|
correct ROM script addresses needed for the driver to work without additional
|
||||||
|
firmware.
|
||||||
- reg : Should contain SDMA registers location and length
|
- reg : Should contain SDMA registers location and length
|
||||||
- interrupts : Should contain SDMA interrupt
|
- interrupts : Should contain SDMA interrupt
|
||||||
- #dma-cells : Must be <3>.
|
- #dma-cells : Must be <3>.
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
TI-NSPIRE interrupt controller
|
||||||
|
|
||||||
|
Required properties:
|
||||||
|
- compatible: Compatible property value should be "lsi,zevio-intc".
|
||||||
|
|
||||||
|
- reg: Physical base address of the controller and length of memory mapped
|
||||||
|
region.
|
||||||
|
|
||||||
|
- interrupt-controller : Identifies the node as an interrupt controller
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
interrupt-controller {
|
||||||
|
compatible = "lsi,zevio-intc";
|
||||||
|
interrupt-controller;
|
||||||
|
reg = <0xDC000000 0x1000>;
|
||||||
|
#interrupt-cells = <1>;
|
||||||
|
};
|
|
@ -13,6 +13,9 @@ Required properties:
|
||||||
- #address-cells: should be one. The cell is the slot id.
|
- #address-cells: should be one. The cell is the slot id.
|
||||||
- #size-cells: should be zero.
|
- #size-cells: should be zero.
|
||||||
- at least one slot node
|
- at least one slot node
|
||||||
|
- clock-names: tuple listing input clock names.
|
||||||
|
Required elements: "mci_clk"
|
||||||
|
- clocks: phandles to input clocks.
|
||||||
|
|
||||||
The node contains child nodes for each slot that the platform uses
|
The node contains child nodes for each slot that the platform uses
|
||||||
|
|
||||||
|
@ -24,6 +27,8 @@ mmc0: mmc@f0008000 {
|
||||||
interrupts = <12 4>;
|
interrupts = <12 4>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
|
clock-names = "mci_clk";
|
||||||
|
clocks = <&mci0_clk>;
|
||||||
|
|
||||||
[ child node definitions...]
|
[ child node definitions...]
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
* Allwinner EMAC ethernet controller
|
* Allwinner EMAC ethernet controller
|
||||||
|
|
||||||
Required properties:
|
Required properties:
|
||||||
- compatible: should be "allwinner,sun4i-emac".
|
- compatible: should be "allwinner,sun4i-a10-emac" (Deprecated:
|
||||||
|
"allwinner,sun4i-emac")
|
||||||
- reg: address and length of the register set for the device.
|
- reg: address and length of the register set for the device.
|
||||||
- interrupts: interrupt for the device
|
- interrupts: interrupt for the device
|
||||||
- phy: A phandle to a phy node defining the PHY address (as the reg
|
- phy: A phandle to a phy node defining the PHY address (as the reg
|
||||||
|
@ -14,7 +15,7 @@ Optional properties:
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
emac: ethernet@01c0b000 {
|
emac: ethernet@01c0b000 {
|
||||||
compatible = "allwinner,sun4i-emac";
|
compatible = "allwinner,sun4i-a10-emac";
|
||||||
reg = <0x01c0b000 0x1000>;
|
reg = <0x01c0b000 0x1000>;
|
||||||
interrupts = <55>;
|
interrupts = <55>;
|
||||||
clocks = <&ahb_gates 17>;
|
clocks = <&ahb_gates 17>;
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
* Allwinner A10 MDIO Ethernet Controller interface
|
* Allwinner A10 MDIO Ethernet Controller interface
|
||||||
|
|
||||||
Required properties:
|
Required properties:
|
||||||
- compatible: should be "allwinner,sun4i-mdio".
|
- compatible: should be "allwinner,sun4i-a10-mdio"
|
||||||
|
(Deprecated: "allwinner,sun4i-mdio").
|
||||||
- reg: address and length of the register set for the device.
|
- reg: address and length of the register set for the device.
|
||||||
|
|
||||||
Optional properties:
|
Optional properties:
|
||||||
|
@ -9,7 +10,7 @@ Optional properties:
|
||||||
|
|
||||||
Example at the SoC level:
|
Example at the SoC level:
|
||||||
mdio@01c0b080 {
|
mdio@01c0b080 {
|
||||||
compatible = "allwinner,sun4i-mdio";
|
compatible = "allwinner,sun4i-a10-mdio";
|
||||||
reg = <0x01c0b080 0x14>;
|
reg = <0x01c0b080 0x14>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
* OpenCores MAC 10/100 Mbps
|
||||||
|
|
||||||
|
Required properties:
|
||||||
|
- compatible: Should be "opencores,ethoc".
|
||||||
|
- reg: two memory regions (address and length),
|
||||||
|
first region is for the device registers and descriptor rings,
|
||||||
|
second is for the device packet memory.
|
||||||
|
- interrupts: interrupt for the device.
|
||||||
|
|
||||||
|
Optional properties:
|
||||||
|
- clocks: phandle to refer to the clk used as per
|
||||||
|
Documentation/devicetree/bindings/clock/clock-bindings.txt
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
enet0: ethoc@fd030000 {
|
||||||
|
compatible = "opencores,ethoc";
|
||||||
|
reg = <0xfd030000 0x4000 0xfd800000 0x4000>;
|
||||||
|
interrupts = <1>;
|
||||||
|
local-mac-address = [00 50 c2 13 6f 00];
|
||||||
|
clocks = <&osc>;
|
||||||
|
};
|
|
@ -0,0 +1,58 @@
|
||||||
|
STMicroelectronics SoC DWMAC glue layer controller
|
||||||
|
|
||||||
|
The device node has following properties.
|
||||||
|
|
||||||
|
Required properties:
|
||||||
|
- compatible : Can be "st,stih415-dwmac", "st,stih416-dwmac" or
|
||||||
|
"st,stid127-dwmac".
|
||||||
|
- reg : Offset of the glue configuration register map in system
|
||||||
|
configuration regmap pointed by st,syscon property and size.
|
||||||
|
|
||||||
|
- reg-names : Should be "sti-ethconf".
|
||||||
|
|
||||||
|
- st,syscon : Should be phandle to system configuration node which
|
||||||
|
encompases this glue registers.
|
||||||
|
|
||||||
|
- st,tx-retime-src: On STi Parts for Giga bit speeds, 125Mhz clocks can be
|
||||||
|
wired up in from different sources. One via TXCLK pin and other via CLK_125
|
||||||
|
pin. This wiring is totally board dependent. However the retiming glue
|
||||||
|
logic should be configured accordingly. Possible values for this property
|
||||||
|
|
||||||
|
"txclk" - if 125Mhz clock is wired up via txclk line.
|
||||||
|
"clk_125" - if 125Mhz clock is wired up via clk_125 line.
|
||||||
|
|
||||||
|
This property is only valid for Giga bit setup( GMII, RGMII), and it is
|
||||||
|
un-used for non-giga bit (MII and RMII) setups. Also note that internal
|
||||||
|
clockgen can not generate stable 125Mhz clock.
|
||||||
|
|
||||||
|
- st,ext-phyclk: This boolean property indicates who is generating the clock
|
||||||
|
for tx and rx. This property is only valid for RMII case where the clock can
|
||||||
|
be generated from the MAC or PHY.
|
||||||
|
|
||||||
|
- clock-names: should be "sti-ethclk".
|
||||||
|
- clocks: Should point to ethernet clockgen which can generate phyclk.
|
||||||
|
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
ethernet0: dwmac@fe810000 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "st,stih416-dwmac", "snps,dwmac", "snps,dwmac-3.710";
|
||||||
|
reg = <0xfe810000 0x8000>, <0x8bc 0x4>;
|
||||||
|
reg-names = "stmmaceth", "sti-ethconf";
|
||||||
|
interrupts = <0 133 0>, <0 134 0>, <0 135 0>;
|
||||||
|
interrupt-names = "macirq", "eth_wake_irq", "eth_lpi";
|
||||||
|
phy-mode = "mii";
|
||||||
|
|
||||||
|
st,syscon = <&syscfg_rear>;
|
||||||
|
|
||||||
|
snps,pbl = <32>;
|
||||||
|
snps,mixed-burst;
|
||||||
|
|
||||||
|
resets = <&softreset STIH416_ETH0_SOFTRESET>;
|
||||||
|
reset-names = "stmmaceth";
|
||||||
|
pinctrl-0 = <&pinctrl_mii0>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
clocks = <&CLK_S_GMAC0_PHY>;
|
||||||
|
clock-names = "stmmaceth";
|
||||||
|
};
|
|
@ -1,4 +1,4 @@
|
||||||
Broadcom Capri Pin Controller
|
Broadcom BCM281xx Pin Controller
|
||||||
|
|
||||||
This is a pin controller for the Broadcom BCM281xx SoC family, which includes
|
This is a pin controller for the Broadcom BCM281xx SoC family, which includes
|
||||||
BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs.
|
BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs.
|
||||||
|
@ -7,14 +7,14 @@ BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs.
|
||||||
|
|
||||||
Required Properties:
|
Required Properties:
|
||||||
|
|
||||||
- compatible: Must be "brcm,capri-pinctrl".
|
- compatible: Must be "brcm,bcm11351-pinctrl"
|
||||||
- reg: Base address of the PAD Controller register block and the size
|
- reg: Base address of the PAD Controller register block and the size
|
||||||
of the block.
|
of the block.
|
||||||
|
|
||||||
For example, the following is the bare minimum node:
|
For example, the following is the bare minimum node:
|
||||||
|
|
||||||
pinctrl@35004800 {
|
pinctrl@35004800 {
|
||||||
compatible = "brcm,capri-pinctrl";
|
compatible = "brcm,bcm11351-pinctrl";
|
||||||
reg = <0x35004800 0x430>;
|
reg = <0x35004800 0x430>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ Optional Properties (for HDMI pins):
|
||||||
Example:
|
Example:
|
||||||
// pin controller node
|
// pin controller node
|
||||||
pinctrl@35004800 {
|
pinctrl@35004800 {
|
||||||
compatible = "brcm,capri-pinctrl";
|
compatible = "brcmbcm11351-pinctrl";
|
||||||
reg = <0x35004800 0x430>;
|
reg = <0x35004800 0x430>;
|
||||||
|
|
||||||
// pin configuration node
|
// pin configuration node
|
|
@ -0,0 +1,47 @@
|
||||||
|
Binding for TI bq2415x Li-Ion Charger
|
||||||
|
|
||||||
|
Required properties:
|
||||||
|
- compatible: Should contain one of the following:
|
||||||
|
* "ti,bq24150"
|
||||||
|
* "ti,bq24150"
|
||||||
|
* "ti,bq24150a"
|
||||||
|
* "ti,bq24151"
|
||||||
|
* "ti,bq24151a"
|
||||||
|
* "ti,bq24152"
|
||||||
|
* "ti,bq24153"
|
||||||
|
* "ti,bq24153a"
|
||||||
|
* "ti,bq24155"
|
||||||
|
* "ti,bq24156"
|
||||||
|
* "ti,bq24156a"
|
||||||
|
* "ti,bq24158"
|
||||||
|
- reg: integer, i2c address of the device.
|
||||||
|
- ti,current-limit: integer, initial maximum current charger can pull
|
||||||
|
from power supply in mA.
|
||||||
|
- ti,weak-battery-voltage: integer, weak battery voltage threshold in mV.
|
||||||
|
The chip will use slow precharge if battery voltage
|
||||||
|
is below this value.
|
||||||
|
- ti,battery-regulation-voltage: integer, maximum charging voltage in mV.
|
||||||
|
- ti,charge-current: integer, maximum charging current in mA.
|
||||||
|
- ti,termination-current: integer, charge will be terminated when current in
|
||||||
|
constant-voltage phase drops below this value (in mA).
|
||||||
|
- ti,resistor-sense: integer, value of sensing resistor in milliohm.
|
||||||
|
|
||||||
|
Optional properties:
|
||||||
|
- ti,usb-charger-detection: phandle to usb charger detection device.
|
||||||
|
(required for auto mode)
|
||||||
|
|
||||||
|
Example from Nokia N900:
|
||||||
|
|
||||||
|
bq24150a {
|
||||||
|
compatible = "ti,bq24150a";
|
||||||
|
reg = <0x6b>;
|
||||||
|
|
||||||
|
ti,current-limit = <100>;
|
||||||
|
ti,weak-battery-voltage = <3400>;
|
||||||
|
ti,battery-regulation-voltage = <4200>;
|
||||||
|
ti,charge-current = <650>;
|
||||||
|
ti,termination-current = <100>;
|
||||||
|
ti,resistor-sense = <68>;
|
||||||
|
|
||||||
|
ti,usb-charger-detection = <&isp1704>;
|
||||||
|
};
|
|
@ -5,6 +5,9 @@ Required properties:
|
||||||
- reg: Address and length of the register set for the device
|
- reg: Address and length of the register set for the device
|
||||||
- interrupts: Should contain spi interrupt
|
- interrupts: Should contain spi interrupt
|
||||||
- cs-gpios: chipselects
|
- cs-gpios: chipselects
|
||||||
|
- clock-names: tuple listing input clock names.
|
||||||
|
Required elements: "spi_clk"
|
||||||
|
- clocks: phandles to input clocks.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
|
@ -14,6 +17,8 @@ spi1: spi@fffcc000 {
|
||||||
interrupts = <13 4 5>;
|
interrupts = <13 4 5>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
|
clocks = <&spi1_clk>;
|
||||||
|
clock-names = "spi_clk";
|
||||||
cs-gpios = <&pioB 3 0>;
|
cs-gpios = <&pioB 3 0>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ ad Avionic Design GmbH
|
||||||
adi Analog Devices, Inc.
|
adi Analog Devices, Inc.
|
||||||
aeroflexgaisler Aeroflex Gaisler AB
|
aeroflexgaisler Aeroflex Gaisler AB
|
||||||
ak Asahi Kasei Corp.
|
ak Asahi Kasei Corp.
|
||||||
|
allwinner Allwinner Technology Co., Ltd.
|
||||||
altr Altera Corp.
|
altr Altera Corp.
|
||||||
amcc Applied Micro Circuits Corporation (APM, formally AMCC)
|
amcc Applied Micro Circuits Corporation (APM, formally AMCC)
|
||||||
amstaos AMS-Taos Inc.
|
amstaos AMS-Taos Inc.
|
||||||
|
@ -40,6 +41,7 @@ gmt Global Mixed-mode Technology, Inc.
|
||||||
gumstix Gumstix, Inc.
|
gumstix Gumstix, Inc.
|
||||||
haoyu Haoyu Microelectronic Co. Ltd.
|
haoyu Haoyu Microelectronic Co. Ltd.
|
||||||
hisilicon Hisilicon Limited.
|
hisilicon Hisilicon Limited.
|
||||||
|
honeywell Honeywell
|
||||||
hp Hewlett Packard
|
hp Hewlett Packard
|
||||||
ibm International Business Machines (IBM)
|
ibm International Business Machines (IBM)
|
||||||
idt Integrated Device Technologies, Inc.
|
idt Integrated Device Technologies, Inc.
|
||||||
|
@ -55,6 +57,7 @@ maxim Maxim Integrated Products
|
||||||
microchip Microchip Technology Inc.
|
microchip Microchip Technology Inc.
|
||||||
mosaixtech Mosaix Technologies, Inc.
|
mosaixtech Mosaix Technologies, Inc.
|
||||||
national National Semiconductor
|
national National Semiconductor
|
||||||
|
neonode Neonode Inc.
|
||||||
nintendo Nintendo
|
nintendo Nintendo
|
||||||
nvidia NVIDIA
|
nvidia NVIDIA
|
||||||
nxp NXP Semiconductors
|
nxp NXP Semiconductors
|
||||||
|
@ -64,7 +67,7 @@ phytec PHYTEC Messtechnik GmbH
|
||||||
picochip Picochip Ltd
|
picochip Picochip Ltd
|
||||||
powervr PowerVR (deprecated, use img)
|
powervr PowerVR (deprecated, use img)
|
||||||
qca Qualcomm Atheros, Inc.
|
qca Qualcomm Atheros, Inc.
|
||||||
qcom Qualcomm, Inc.
|
qcom Qualcomm Technologies, Inc
|
||||||
ralink Mediatek/Ralink Technology Corp.
|
ralink Mediatek/Ralink Technology Corp.
|
||||||
ramtron Ramtron International
|
ramtron Ramtron International
|
||||||
realtek Realtek Semiconductor Corp.
|
realtek Realtek Semiconductor Corp.
|
||||||
|
@ -78,6 +81,7 @@ silabs Silicon Laboratories
|
||||||
simtek
|
simtek
|
||||||
sirf SiRF Technology, Inc.
|
sirf SiRF Technology, Inc.
|
||||||
snps Synopsys, Inc.
|
snps Synopsys, Inc.
|
||||||
|
spansion Spansion Inc.
|
||||||
st STMicroelectronics
|
st STMicroelectronics
|
||||||
ste ST-Ericsson
|
ste ST-Ericsson
|
||||||
stericsson ST-Ericsson
|
stericsson ST-Ericsson
|
||||||
|
|
|
@ -78,7 +78,7 @@ Peter Beutner <p.beutner@gmx.net>
|
||||||
Wilson Michaels <wilsonmichaels@earthlink.net>
|
Wilson Michaels <wilsonmichaels@earthlink.net>
|
||||||
for the lgdt330x frontend driver, and various bugfixes
|
for the lgdt330x frontend driver, and various bugfixes
|
||||||
|
|
||||||
Michael Krufky <mkrufky@m1k.net>
|
Michael Krufky <mkrufky@linuxtv.org>
|
||||||
for maintaining v4l/dvb inter-tree dependencies
|
for maintaining v4l/dvb inter-tree dependencies
|
||||||
|
|
||||||
Taylor Jacob <rtjacob@earthlink.net>
|
Taylor Jacob <rtjacob@earthlink.net>
|
||||||
|
|
|
@ -5,6 +5,8 @@ please mail me.
|
||||||
|
|
||||||
00-INDEX
|
00-INDEX
|
||||||
- this file.
|
- this file.
|
||||||
|
api.txt
|
||||||
|
- The frame buffer API between applications and buffer devices.
|
||||||
arkfb.txt
|
arkfb.txt
|
||||||
- info on the fbdev driver for ARK Logic chips.
|
- info on the fbdev driver for ARK Logic chips.
|
||||||
aty128fb.txt
|
aty128fb.txt
|
||||||
|
@ -51,12 +53,16 @@ sh7760fb.txt
|
||||||
- info on the SH7760/SH7763 integrated LCDC Framebuffer driver.
|
- info on the SH7760/SH7763 integrated LCDC Framebuffer driver.
|
||||||
sisfb.txt
|
sisfb.txt
|
||||||
- info on the framebuffer device driver for various SiS chips.
|
- info on the framebuffer device driver for various SiS chips.
|
||||||
|
sm501.txt
|
||||||
|
- info on the framebuffer device driver for sm501 videoframebuffer.
|
||||||
sstfb.txt
|
sstfb.txt
|
||||||
- info on the frame buffer driver for 3dfx' Voodoo Graphics boards.
|
- info on the frame buffer driver for 3dfx' Voodoo Graphics boards.
|
||||||
tgafb.txt
|
tgafb.txt
|
||||||
- info on the TGA (DECChip 21030) frame buffer driver.
|
- info on the TGA (DECChip 21030) frame buffer driver.
|
||||||
tridentfb.txt
|
tridentfb.txt
|
||||||
info on the framebuffer driver for some Trident chip based cards.
|
info on the framebuffer driver for some Trident chip based cards.
|
||||||
|
udlfb.txt
|
||||||
|
- Driver for DisplayLink USB 2.0 chips.
|
||||||
uvesafb.txt
|
uvesafb.txt
|
||||||
- info on the userspace VESA (VBE2+ compliant) frame buffer device.
|
- info on the userspace VESA (VBE2+ compliant) frame buffer device.
|
||||||
vesafb.txt
|
vesafb.txt
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
- this file (info on some of the filesystems supported by linux).
|
- this file (info on some of the filesystems supported by linux).
|
||||||
Locking
|
Locking
|
||||||
- info on locking rules as they pertain to Linux VFS.
|
- info on locking rules as they pertain to Linux VFS.
|
||||||
|
Makefile
|
||||||
|
- Makefile for building the filsystems-part of DocBook.
|
||||||
9p.txt
|
9p.txt
|
||||||
- 9p (v9fs) is an implementation of the Plan 9 remote fs protocol.
|
- 9p (v9fs) is an implementation of the Plan 9 remote fs protocol.
|
||||||
adfs.txt
|
adfs.txt
|
||||||
|
|
|
@ -12,6 +12,8 @@ nfs41-server.txt
|
||||||
- info on the Linux server implementation of NFSv4 minor version 1.
|
- info on the Linux server implementation of NFSv4 minor version 1.
|
||||||
nfs-rdma.txt
|
nfs-rdma.txt
|
||||||
- how to install and setup the Linux NFS/RDMA client and server software
|
- how to install and setup the Linux NFS/RDMA client and server software
|
||||||
|
nfsd-admin-interfaces.txt
|
||||||
|
- Administrative interfaces for nfsd.
|
||||||
nfsroot.txt
|
nfsroot.txt
|
||||||
- short guide on setting up a diskless box with NFS root filesystem.
|
- short guide on setting up a diskless box with NFS root filesystem.
|
||||||
pnfs.txt
|
pnfs.txt
|
||||||
|
@ -20,5 +22,5 @@ rpc-cache.txt
|
||||||
- introduction to the caching mechanisms in the sunrpc layer.
|
- introduction to the caching mechanisms in the sunrpc layer.
|
||||||
idmapper.txt
|
idmapper.txt
|
||||||
- information for configuring request-keys to be used by idmapper
|
- information for configuring request-keys to be used by idmapper
|
||||||
knfsd-rpcgss.txt
|
rpc-server-gss.txt
|
||||||
- Information on GSS authentication support in the NFS Server
|
- Information on GSS authentication support in the NFS Server
|
||||||
|
|
|
@ -8,8 +8,8 @@ reason, the kernel code must instantiate I2C devices explicitly. There are
|
||||||
several ways to achieve this, depending on the context and requirements.
|
several ways to achieve this, depending on the context and requirements.
|
||||||
|
|
||||||
|
|
||||||
Method 1: Declare the I2C devices by bus number
|
Method 1a: Declare the I2C devices by bus number
|
||||||
-----------------------------------------------
|
------------------------------------------------
|
||||||
|
|
||||||
This method is appropriate when the I2C bus is a system bus as is the case
|
This method is appropriate when the I2C bus is a system bus as is the case
|
||||||
for many embedded systems. On such systems, each I2C bus has a number
|
for many embedded systems. On such systems, each I2C bus has a number
|
||||||
|
@ -51,6 +51,43 @@ The devices will be automatically unbound and destroyed when the I2C bus
|
||||||
they sit on goes away (if ever.)
|
they sit on goes away (if ever.)
|
||||||
|
|
||||||
|
|
||||||
|
Method 1b: Declare the I2C devices via devicetree
|
||||||
|
-------------------------------------------------
|
||||||
|
|
||||||
|
This method has the same implications as method 1a. The declaration of I2C
|
||||||
|
devices is here done via devicetree as subnodes of the master controller.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
i2c1: i2c@400a0000 {
|
||||||
|
/* ... master properties skipped ... */
|
||||||
|
clock-frequency = <100000>;
|
||||||
|
|
||||||
|
flash@50 {
|
||||||
|
compatible = "atmel,24c256";
|
||||||
|
reg = <0x50>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pca9532: gpio@60 {
|
||||||
|
compatible = "nxp,pca9532";
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
reg = <0x60>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
Here, two devices are attached to the bus using a speed of 100kHz. For
|
||||||
|
additional properties which might be needed to set up the device, please refer
|
||||||
|
to its devicetree documentation in Documentation/devicetree/bindings/.
|
||||||
|
|
||||||
|
|
||||||
|
Method 1c: Declare the I2C devices via ACPI
|
||||||
|
-------------------------------------------
|
||||||
|
|
||||||
|
ACPI can also describe I2C devices. There is special documentation for this
|
||||||
|
which is currently located at Documentation/acpi/enumeration.txt.
|
||||||
|
|
||||||
|
|
||||||
Method 2: Instantiate the devices explicitly
|
Method 2: Instantiate the devices explicitly
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -10,3 +10,5 @@ ide-tape.txt
|
||||||
- info on the IDE ATAPI streaming tape driver
|
- info on the IDE ATAPI streaming tape driver
|
||||||
ide.txt
|
ide.txt
|
||||||
- important info for users of ATA devices (IDE/EIDE disks and CD-ROMS).
|
- important info for users of ATA devices (IDE/EIDE disks and CD-ROMS).
|
||||||
|
warm-plug-howto.txt
|
||||||
|
- using sysfs to remove and add IDE devices.
|
|
@ -1726,16 +1726,16 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
||||||
option description.
|
option description.
|
||||||
|
|
||||||
memmap=nn[KMG]@ss[KMG]
|
memmap=nn[KMG]@ss[KMG]
|
||||||
[KNL] Force usage of a specific region of memory
|
[KNL] Force usage of a specific region of memory.
|
||||||
Region of memory to be used, from ss to ss+nn.
|
Region of memory to be used is from ss to ss+nn.
|
||||||
|
|
||||||
memmap=nn[KMG]#ss[KMG]
|
memmap=nn[KMG]#ss[KMG]
|
||||||
[KNL,ACPI] Mark specific memory as ACPI data.
|
[KNL,ACPI] Mark specific memory as ACPI data.
|
||||||
Region of memory to be used, from ss to ss+nn.
|
Region of memory to be marked is from ss to ss+nn.
|
||||||
|
|
||||||
memmap=nn[KMG]$ss[KMG]
|
memmap=nn[KMG]$ss[KMG]
|
||||||
[KNL,ACPI] Mark specific memory as reserved.
|
[KNL,ACPI] Mark specific memory as reserved.
|
||||||
Region of memory to be used, from ss to ss+nn.
|
Region of memory to be reserved is from ss to ss+nn.
|
||||||
Example: Exclude memory from 0x18690000-0x1869ffff
|
Example: Exclude memory from 0x18690000-0x1869ffff
|
||||||
memmap=64K$0x18690000
|
memmap=64K$0x18690000
|
||||||
or
|
or
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
00-INDEX
|
00-INDEX
|
||||||
- This file
|
- This file
|
||||||
acer-wmi.txt
|
Makefile
|
||||||
- information on the Acer Laptop WMI Extras driver.
|
- Makefile for building dslm example program.
|
||||||
asus-laptop.txt
|
asus-laptop.txt
|
||||||
- information on the Asus Laptop Extras driver.
|
- information on the Asus Laptop Extras driver.
|
||||||
disk-shock-protection.txt
|
disk-shock-protection.txt
|
||||||
- information on hard disk shock protection.
|
- information on hard disk shock protection.
|
||||||
dslm.c
|
dslm.c
|
||||||
- Simple Disk Sleep Monitor program
|
- Simple Disk Sleep Monitor program
|
||||||
|
hpfall.c
|
||||||
|
- (HP) laptop accelerometer program for disk protection.
|
||||||
laptop-mode.txt
|
laptop-mode.txt
|
||||||
- how to conserve battery power using laptop-mode.
|
- how to conserve battery power using laptop-mode.
|
||||||
sony-laptop.txt
|
sony-laptop.txt
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
00-INDEX
|
||||||
|
- This file
|
||||||
|
leds-blinkm.txt
|
||||||
|
- Driver for BlinkM LED-devices.
|
||||||
leds-class.txt
|
leds-class.txt
|
||||||
- documents LED handling under Linux.
|
- documents LED handling under Linux.
|
||||||
leds-lp3944.txt
|
leds-lp3944.txt
|
||||||
|
@ -12,3 +16,7 @@ leds-lp55xx.txt
|
||||||
- description about lp55xx common driver.
|
- description about lp55xx common driver.
|
||||||
leds-lm3556.txt
|
leds-lm3556.txt
|
||||||
- notes on how to use the leds-lm3556 driver.
|
- notes on how to use the leds-lm3556 driver.
|
||||||
|
ledtrig-oneshot.txt
|
||||||
|
- One-shot LED trigger for both sporadic and dense events.
|
||||||
|
ledtrig-transient.txt
|
||||||
|
- LED Transient Trigger, one shot timer activation.
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
00-INDEX
|
00-INDEX
|
||||||
- this file
|
- this file
|
||||||
|
README.buddha
|
||||||
|
- Amiga Buddha and Catweasel IDE Driver
|
||||||
kernel-options.txt
|
kernel-options.txt
|
||||||
- command line options for Linux/m68k
|
- command line options for Linux/m68k
|
||||||
|
|
||||||
|
|
|
@ -6,8 +6,14 @@
|
||||||
- information on the 3Com Etherlink III Series Ethernet cards.
|
- information on the 3Com Etherlink III Series Ethernet cards.
|
||||||
6pack.txt
|
6pack.txt
|
||||||
- info on the 6pack protocol, an alternative to KISS for AX.25
|
- info on the 6pack protocol, an alternative to KISS for AX.25
|
||||||
DLINK.txt
|
LICENSE.qla3xxx
|
||||||
- info on the D-Link DE-600/DE-620 parallel port pocket adapters
|
- GPLv2 for QLogic Linux Networking HBA Driver
|
||||||
|
LICENSE.qlge
|
||||||
|
- GPLv2 for QLogic Linux qlge NIC Driver
|
||||||
|
LICENSE.qlcnic
|
||||||
|
- GPLv2 for QLogic Linux qlcnic NIC Driver
|
||||||
|
Makefile
|
||||||
|
- Makefile for docsrc.
|
||||||
PLIP.txt
|
PLIP.txt
|
||||||
- PLIP: The Parallel Line Internet Protocol device driver
|
- PLIP: The Parallel Line Internet Protocol device driver
|
||||||
README.ipw2100
|
README.ipw2100
|
||||||
|
@ -17,7 +23,7 @@ README.ipw2200
|
||||||
README.sb1000
|
README.sb1000
|
||||||
- info on General Instrument/NextLevel SURFboard1000 cable modem.
|
- info on General Instrument/NextLevel SURFboard1000 cable modem.
|
||||||
alias.txt
|
alias.txt
|
||||||
- info on using alias network devices
|
- info on using alias network devices.
|
||||||
arcnet-hardware.txt
|
arcnet-hardware.txt
|
||||||
- tons of info on ARCnet, hubs, jumper settings for ARCnet cards, etc.
|
- tons of info on ARCnet, hubs, jumper settings for ARCnet cards, etc.
|
||||||
arcnet.txt
|
arcnet.txt
|
||||||
|
@ -80,7 +86,7 @@ framerelay.txt
|
||||||
- info on using Frame Relay/Data Link Connection Identifier (DLCI).
|
- info on using Frame Relay/Data Link Connection Identifier (DLCI).
|
||||||
gen_stats.txt
|
gen_stats.txt
|
||||||
- Generic networking statistics for netlink users.
|
- Generic networking statistics for netlink users.
|
||||||
generic_hdlc.txt
|
generic-hdlc.txt
|
||||||
- The generic High Level Data Link Control (HDLC) layer.
|
- The generic High Level Data Link Control (HDLC) layer.
|
||||||
generic_netlink.txt
|
generic_netlink.txt
|
||||||
- info on Generic Netlink
|
- info on Generic Netlink
|
||||||
|
@ -88,6 +94,8 @@ gianfar.txt
|
||||||
- Gianfar Ethernet Driver.
|
- Gianfar Ethernet Driver.
|
||||||
i40e.txt
|
i40e.txt
|
||||||
- README for the Intel Ethernet Controller XL710 Driver (i40e).
|
- README for the Intel Ethernet Controller XL710 Driver (i40e).
|
||||||
|
i40evf.txt
|
||||||
|
- Short note on the Driver for the Intel(R) XL710 X710 Virtual Function
|
||||||
ieee802154.txt
|
ieee802154.txt
|
||||||
- Linux IEEE 802.15.4 implementation, API and drivers
|
- Linux IEEE 802.15.4 implementation, API and drivers
|
||||||
igb.txt
|
igb.txt
|
||||||
|
@ -102,6 +110,8 @@ ipddp.txt
|
||||||
- AppleTalk-IP Decapsulation and AppleTalk-IP Encapsulation
|
- AppleTalk-IP Decapsulation and AppleTalk-IP Encapsulation
|
||||||
iphase.txt
|
iphase.txt
|
||||||
- Interphase PCI ATM (i)Chip IA Linux driver info.
|
- Interphase PCI ATM (i)Chip IA Linux driver info.
|
||||||
|
ipsec.txt
|
||||||
|
- Note on not compressing IPSec payload and resulting failed policy check.
|
||||||
ipv6.txt
|
ipv6.txt
|
||||||
- Options to the ipv6 kernel module.
|
- Options to the ipv6 kernel module.
|
||||||
ipvs-sysctl.txt
|
ipvs-sysctl.txt
|
||||||
|
@ -120,6 +130,8 @@ lapb-module.txt
|
||||||
- programming information of the LAPB module.
|
- programming information of the LAPB module.
|
||||||
ltpc.txt
|
ltpc.txt
|
||||||
- the Apple or Farallon LocalTalk PC card driver
|
- the Apple or Farallon LocalTalk PC card driver
|
||||||
|
mac80211-auth-assoc-deauth.txt
|
||||||
|
- authentication and association / deauth-disassoc with max80211
|
||||||
mac80211-injection.txt
|
mac80211-injection.txt
|
||||||
- HOWTO use packet injection with mac80211
|
- HOWTO use packet injection with mac80211
|
||||||
multiqueue.txt
|
multiqueue.txt
|
||||||
|
@ -134,6 +146,10 @@ netdevices.txt
|
||||||
- info on network device driver functions exported to the kernel.
|
- info on network device driver functions exported to the kernel.
|
||||||
netif-msg.txt
|
netif-msg.txt
|
||||||
- Design of the network interface message level setting (NETIF_MSG_*).
|
- Design of the network interface message level setting (NETIF_MSG_*).
|
||||||
|
netlink_mmap.txt
|
||||||
|
- memory mapped I/O with netlink
|
||||||
|
nf_conntrack-sysctl.txt
|
||||||
|
- list of netfilter-sysctl knobs.
|
||||||
nfc.txt
|
nfc.txt
|
||||||
- The Linux Near Field Communication (NFS) subsystem.
|
- The Linux Near Field Communication (NFS) subsystem.
|
||||||
openvswitch.txt
|
openvswitch.txt
|
||||||
|
@ -176,7 +192,7 @@ skfp.txt
|
||||||
- SysKonnect FDDI (SK-5xxx, Compaq Netelligent) driver info.
|
- SysKonnect FDDI (SK-5xxx, Compaq Netelligent) driver info.
|
||||||
smc9.txt
|
smc9.txt
|
||||||
- the driver for SMC's 9000 series of Ethernet cards
|
- the driver for SMC's 9000 series of Ethernet cards
|
||||||
spider-net.txt
|
spider_net.txt
|
||||||
- README for the Spidernet Driver (as found in PS3 / Cell BE).
|
- README for the Spidernet Driver (as found in PS3 / Cell BE).
|
||||||
stmmac.txt
|
stmmac.txt
|
||||||
- README for the STMicro Synopsys Ethernet driver.
|
- README for the STMicro Synopsys Ethernet driver.
|
||||||
|
@ -188,6 +204,8 @@ tcp.txt
|
||||||
- short blurb on how TCP output takes place.
|
- short blurb on how TCP output takes place.
|
||||||
tcp-thin.txt
|
tcp-thin.txt
|
||||||
- kernel tuning options for low rate 'thin' TCP streams.
|
- kernel tuning options for low rate 'thin' TCP streams.
|
||||||
|
team.txt
|
||||||
|
- pointer to information for ethernet teaming devices.
|
||||||
tlan.txt
|
tlan.txt
|
||||||
- ThunderLAN (Compaq Netelligent 10/100, Olicom OC-2xxx) driver info.
|
- ThunderLAN (Compaq Netelligent 10/100, Olicom OC-2xxx) driver info.
|
||||||
tproxy.txt
|
tproxy.txt
|
||||||
|
@ -200,6 +218,8 @@ vortex.txt
|
||||||
- info on using 3Com Vortex (3c590, 3c592, 3c595, 3c597) Ethernet cards.
|
- info on using 3Com Vortex (3c590, 3c592, 3c595, 3c597) Ethernet cards.
|
||||||
vxge.txt
|
vxge.txt
|
||||||
- README for the Neterion X3100 PCIe Server Adapter.
|
- README for the Neterion X3100 PCIe Server Adapter.
|
||||||
|
vxlan.txt
|
||||||
|
- Virtual extensible LAN overview
|
||||||
x25.txt
|
x25.txt
|
||||||
- general info on X.25 development.
|
- general info on X.25 development.
|
||||||
x25-iface.txt
|
x25-iface.txt
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
The 3Com Etherlink Plus (3c505) driver.
|
|
||||||
|
|
||||||
This driver now uses DMA. There is currently no support for PIO operation.
|
|
||||||
The default DMA channel is 6; this is _not_ autoprobed, so you must
|
|
||||||
make sure you configure it correctly. If loading the driver as a
|
|
||||||
module, you can do this with "modprobe 3c505 dma=n". If the driver is
|
|
||||||
linked statically into the kernel, you must either use an "ether="
|
|
||||||
statement on the command line, or change the definition of ELP_DMA in 3c505.h.
|
|
||||||
|
|
||||||
The driver will warn you if it has to fall back on the compiled in
|
|
||||||
default DMA channel.
|
|
||||||
|
|
||||||
If no base address is given at boot time, the driver will autoprobe
|
|
||||||
ports 0x300, 0x280 and 0x310 (in that order). If no IRQ is given, the driver
|
|
||||||
will try to probe for it.
|
|
||||||
|
|
||||||
The driver can be used as a loadable module.
|
|
||||||
|
|
||||||
Theoretically, one instance of the driver can now run multiple cards,
|
|
||||||
in the standard way (when loading a module, say "modprobe 3c505
|
|
||||||
io=0x300,0x340 irq=10,11 dma=6,7" or whatever). I have not tested
|
|
||||||
this, though.
|
|
||||||
|
|
||||||
The driver may now support revision 2 hardware; the dependency on
|
|
||||||
being able to read the host control register has been removed. This
|
|
||||||
is also untested, since I don't have a suitable card.
|
|
||||||
|
|
||||||
Known problems:
|
|
||||||
I still see "DMA upload timed out" messages from time to time. These
|
|
||||||
seem to be fairly non-fatal though.
|
|
||||||
The card is old and slow.
|
|
||||||
|
|
||||||
To do:
|
|
||||||
Improve probe/setup code
|
|
||||||
Test multicast and promiscuous operation
|
|
||||||
|
|
||||||
Authors:
|
|
||||||
The driver is mainly written by Craig Southeren, email
|
|
||||||
<craigs@ineluki.apana.org.au>.
|
|
||||||
Parts of the driver (adapting the driver to 1.1.4+ kernels,
|
|
||||||
IRQ/address detection, some changes) and this README by
|
|
||||||
Juha Laiho <jlaiho@ichaos.nullnet.fi>.
|
|
||||||
DMA mode, more fixes, etc, by Philip Blundell <pjb27@cam.ac.uk>
|
|
||||||
Multicard support, Software configurable DMA, etc., by
|
|
||||||
Christopher Collins <ccollins@pcug.org.au>
|
|
|
@ -554,12 +554,6 @@ solution for a couple of reasons:
|
||||||
not specified in the struct can_frame and therefore it is only valid in
|
not specified in the struct can_frame and therefore it is only valid in
|
||||||
CANFD_MTU sized CAN FD frames.
|
CANFD_MTU sized CAN FD frames.
|
||||||
|
|
||||||
As long as the payload length is <=8 the received CAN frames from CAN FD
|
|
||||||
capable CAN devices can be received and read by legacy sockets too. When
|
|
||||||
user-generated CAN FD frames have a payload length <=8 these can be send
|
|
||||||
by legacy CAN network interfaces too. Sending CAN FD frames with payload
|
|
||||||
length > 8 to a legacy CAN network interface returns an -EMSGSIZE error.
|
|
||||||
|
|
||||||
Implementation hint for new CAN applications:
|
Implementation hint for new CAN applications:
|
||||||
|
|
||||||
To build a CAN FD aware application use struct canfd_frame as basic CAN
|
To build a CAN FD aware application use struct canfd_frame as basic CAN
|
||||||
|
|
|
@ -75,14 +75,26 @@ Before the controller can make use of the PHY, it has to get a reference to
|
||||||
it. This framework provides the following APIs to get a reference to the PHY.
|
it. This framework provides the following APIs to get a reference to the PHY.
|
||||||
|
|
||||||
struct phy *phy_get(struct device *dev, const char *string);
|
struct phy *phy_get(struct device *dev, const char *string);
|
||||||
|
struct phy *phy_optional_get(struct device *dev, const char *string);
|
||||||
struct phy *devm_phy_get(struct device *dev, const char *string);
|
struct phy *devm_phy_get(struct device *dev, const char *string);
|
||||||
|
struct phy *devm_phy_optional_get(struct device *dev, const char *string);
|
||||||
|
|
||||||
phy_get and devm_phy_get can be used to get the PHY. In the case of dt boot,
|
phy_get, phy_optional_get, devm_phy_get and devm_phy_optional_get can
|
||||||
the string arguments should contain the phy name as given in the dt data and
|
be used to get the PHY. In the case of dt boot, the string arguments
|
||||||
in the case of non-dt boot, it should contain the label of the PHY.
|
should contain the phy name as given in the dt data and in the case of
|
||||||
The only difference between the two APIs is that devm_phy_get associates the
|
non-dt boot, it should contain the label of the PHY. The two
|
||||||
device with the PHY using devres on successful PHY get. On driver detach,
|
devm_phy_get associates the device with the PHY using devres on
|
||||||
release function is invoked on the the devres data and devres data is freed.
|
successful PHY get. On driver detach, release function is invoked on
|
||||||
|
the the devres data and devres data is freed. phy_optional_get and
|
||||||
|
devm_phy_optional_get should be used when the phy is optional. These
|
||||||
|
two functions will never return -ENODEV, but instead returns NULL when
|
||||||
|
the phy cannot be found.
|
||||||
|
|
||||||
|
It should be noted that NULL is a valid phy reference. All phy
|
||||||
|
consumer calls on the NULL phy become NOPs. That is the release calls,
|
||||||
|
the phy_init() and phy_exit() calls, and phy_power_on() and
|
||||||
|
phy_power_off() calls are all NOP when applied to a NULL phy. The NULL
|
||||||
|
phy is useful in devices for handling optional phy devices.
|
||||||
|
|
||||||
5. Releasing a reference to the PHY
|
5. Releasing a reference to the PHY
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,8 @@ apm-acpi.txt
|
||||||
- basic info about the APM and ACPI support.
|
- basic info about the APM and ACPI support.
|
||||||
basic-pm-debugging.txt
|
basic-pm-debugging.txt
|
||||||
- Debugging suspend and resume
|
- Debugging suspend and resume
|
||||||
|
charger-manager.txt
|
||||||
|
- Battery charger management.
|
||||||
devices.txt
|
devices.txt
|
||||||
- How drivers interact with system-wide power management
|
- How drivers interact with system-wide power management
|
||||||
drivers-testing.txt
|
drivers-testing.txt
|
||||||
|
@ -22,6 +24,8 @@ pm_qos_interface.txt
|
||||||
- info on Linux PM Quality of Service interface
|
- info on Linux PM Quality of Service interface
|
||||||
power_supply_class.txt
|
power_supply_class.txt
|
||||||
- Tells userspace about battery, UPS, AC or DC power supply properties
|
- Tells userspace about battery, UPS, AC or DC power supply properties
|
||||||
|
runtime_pm.txt
|
||||||
|
- Power management framework for I/O devices.
|
||||||
s2ram.txt
|
s2ram.txt
|
||||||
- How to get suspend to ram working (and debug it when it isn't)
|
- How to get suspend to ram working (and debug it when it isn't)
|
||||||
states.txt
|
states.txt
|
||||||
|
@ -38,7 +42,5 @@ tricks.txt
|
||||||
- How to trick software suspend (to disk) into working when it isn't
|
- How to trick software suspend (to disk) into working when it isn't
|
||||||
userland-swsusp.txt
|
userland-swsusp.txt
|
||||||
- Experimental implementation of software suspend in userspace
|
- Experimental implementation of software suspend in userspace
|
||||||
video_extension.txt
|
|
||||||
- ACPI video extensions
|
|
||||||
video.txt
|
video.txt
|
||||||
- Video issues during resume from suspend
|
- Video issues during resume from suspend
|
||||||
|
|
|
@ -117,6 +117,7 @@ static void usage(char *progname)
|
||||||
" -f val adjust the ptp clock frequency by 'val' ppb\n"
|
" -f val adjust the ptp clock frequency by 'val' ppb\n"
|
||||||
" -g get the ptp clock time\n"
|
" -g get the ptp clock time\n"
|
||||||
" -h prints this message\n"
|
" -h prints this message\n"
|
||||||
|
" -i val index for event/trigger\n"
|
||||||
" -k val measure the time offset between system and phc clock\n"
|
" -k val measure the time offset between system and phc clock\n"
|
||||||
" for 'val' times (Maximum 25)\n"
|
" for 'val' times (Maximum 25)\n"
|
||||||
" -p val enable output with a period of 'val' nanoseconds\n"
|
" -p val enable output with a period of 'val' nanoseconds\n"
|
||||||
|
@ -154,6 +155,7 @@ int main(int argc, char *argv[])
|
||||||
int capabilities = 0;
|
int capabilities = 0;
|
||||||
int extts = 0;
|
int extts = 0;
|
||||||
int gettime = 0;
|
int gettime = 0;
|
||||||
|
int index = 0;
|
||||||
int oneshot = 0;
|
int oneshot = 0;
|
||||||
int pct_offset = 0;
|
int pct_offset = 0;
|
||||||
int n_samples = 0;
|
int n_samples = 0;
|
||||||
|
@ -167,7 +169,7 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
progname = strrchr(argv[0], '/');
|
progname = strrchr(argv[0], '/');
|
||||||
progname = progname ? 1+progname : argv[0];
|
progname = progname ? 1+progname : argv[0];
|
||||||
while (EOF != (c = getopt(argc, argv, "a:A:cd:e:f:ghk:p:P:sSt:v"))) {
|
while (EOF != (c = getopt(argc, argv, "a:A:cd:e:f:ghi:k:p:P:sSt:v"))) {
|
||||||
switch (c) {
|
switch (c) {
|
||||||
case 'a':
|
case 'a':
|
||||||
oneshot = atoi(optarg);
|
oneshot = atoi(optarg);
|
||||||
|
@ -190,6 +192,9 @@ int main(int argc, char *argv[])
|
||||||
case 'g':
|
case 'g':
|
||||||
gettime = 1;
|
gettime = 1;
|
||||||
break;
|
break;
|
||||||
|
case 'i':
|
||||||
|
index = atoi(optarg);
|
||||||
|
break;
|
||||||
case 'k':
|
case 'k':
|
||||||
pct_offset = 1;
|
pct_offset = 1;
|
||||||
n_samples = atoi(optarg);
|
n_samples = atoi(optarg);
|
||||||
|
@ -301,7 +306,7 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
if (extts) {
|
if (extts) {
|
||||||
memset(&extts_request, 0, sizeof(extts_request));
|
memset(&extts_request, 0, sizeof(extts_request));
|
||||||
extts_request.index = 0;
|
extts_request.index = index;
|
||||||
extts_request.flags = PTP_ENABLE_FEATURE;
|
extts_request.flags = PTP_ENABLE_FEATURE;
|
||||||
if (ioctl(fd, PTP_EXTTS_REQUEST, &extts_request)) {
|
if (ioctl(fd, PTP_EXTTS_REQUEST, &extts_request)) {
|
||||||
perror("PTP_EXTTS_REQUEST");
|
perror("PTP_EXTTS_REQUEST");
|
||||||
|
@ -375,7 +380,7 @@ int main(int argc, char *argv[])
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
memset(&perout_request, 0, sizeof(perout_request));
|
memset(&perout_request, 0, sizeof(perout_request));
|
||||||
perout_request.index = 0;
|
perout_request.index = index;
|
||||||
perout_request.start.sec = ts.tv_sec + 2;
|
perout_request.start.sec = ts.tv_sec + 2;
|
||||||
perout_request.start.nsec = 0;
|
perout_request.start.nsec = 0;
|
||||||
perout_request.period.sec = 0;
|
perout_request.period.sec = 0;
|
||||||
|
|
|
@ -16,11 +16,13 @@ Debugging390.txt
|
||||||
- hints for debugging on s390 systems.
|
- hints for debugging on s390 systems.
|
||||||
driver-model.txt
|
driver-model.txt
|
||||||
- information on s390 devices and the driver model.
|
- information on s390 devices and the driver model.
|
||||||
|
kvm.txt
|
||||||
|
- ioctl calls to /dev/kvm on s390.
|
||||||
monreader.txt
|
monreader.txt
|
||||||
- information on accessing the z/VM monitor stream from Linux.
|
- information on accessing the z/VM monitor stream from Linux.
|
||||||
|
qeth.txt
|
||||||
|
- HiperSockets Bridge Port Support.
|
||||||
s390dbf.txt
|
s390dbf.txt
|
||||||
- information on using the s390 debug feature.
|
- information on using the s390 debug feature.
|
||||||
TAPE
|
zfcpdump.txt
|
||||||
- information on the driver for channel-attached tapes.
|
|
||||||
zfcpdump
|
|
||||||
- information on the s390 SCSI dump tool.
|
- information on the s390 SCSI dump tool.
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
- this file.
|
- this file.
|
||||||
sched-arch.txt
|
sched-arch.txt
|
||||||
- CPU Scheduler implementation hints for architecture specific code.
|
- CPU Scheduler implementation hints for architecture specific code.
|
||||||
|
sched-bwc.txt
|
||||||
|
- CFS bandwidth control overview.
|
||||||
sched-design-CFS.txt
|
sched-design-CFS.txt
|
||||||
- goals, design and implementation of the Completely Fair Scheduler.
|
- goals, design and implementation of the Completely Fair Scheduler.
|
||||||
sched-domains.txt
|
sched-domains.txt
|
||||||
|
|
|
@ -36,6 +36,8 @@ NinjaSCSI.txt
|
||||||
- info on WorkBiT NinjaSCSI-32/32Bi driver
|
- info on WorkBiT NinjaSCSI-32/32Bi driver
|
||||||
aacraid.txt
|
aacraid.txt
|
||||||
- Driver supporting Adaptec RAID controllers
|
- Driver supporting Adaptec RAID controllers
|
||||||
|
advansys.txt
|
||||||
|
- List of Advansys Host Adapters
|
||||||
aha152x.txt
|
aha152x.txt
|
||||||
- info on driver for Adaptec AHA152x based adapters
|
- info on driver for Adaptec AHA152x based adapters
|
||||||
aic79xx.txt
|
aic79xx.txt
|
||||||
|
@ -44,6 +46,12 @@ aic7xxx.txt
|
||||||
- info on driver for Adaptec controllers
|
- info on driver for Adaptec controllers
|
||||||
arcmsr_spec.txt
|
arcmsr_spec.txt
|
||||||
- ARECA FIRMWARE SPEC (for IOP331 adapter)
|
- ARECA FIRMWARE SPEC (for IOP331 adapter)
|
||||||
|
bfa.txt
|
||||||
|
- Brocade FC/FCOE adapter driver.
|
||||||
|
bnx2fc.txt
|
||||||
|
- FCoE hardware offload for Broadcom network interfaces.
|
||||||
|
cxgb3i.txt
|
||||||
|
- Chelsio iSCSI Linux Driver
|
||||||
dc395x.txt
|
dc395x.txt
|
||||||
- README file for the dc395x SCSI driver
|
- README file for the dc395x SCSI driver
|
||||||
dpti.txt
|
dpti.txt
|
||||||
|
@ -52,18 +60,24 @@ dtc3x80.txt
|
||||||
- info on driver for DTC 2x80 based adapters
|
- info on driver for DTC 2x80 based adapters
|
||||||
g_NCR5380.txt
|
g_NCR5380.txt
|
||||||
- info on driver for NCR5380 and NCR53c400 based adapters
|
- info on driver for NCR5380 and NCR53c400 based adapters
|
||||||
|
hpsa.txt
|
||||||
|
- HP Smart Array Controller SCSI driver.
|
||||||
hptiop.txt
|
hptiop.txt
|
||||||
- HIGHPOINT ROCKETRAID 3xxx RAID DRIVER
|
- HIGHPOINT ROCKETRAID 3xxx RAID DRIVER
|
||||||
in2000.txt
|
in2000.txt
|
||||||
- info on in2000 driver
|
- info on in2000 driver
|
||||||
libsas.txt
|
libsas.txt
|
||||||
- Serial Attached SCSI management layer.
|
- Serial Attached SCSI management layer.
|
||||||
|
link_power_management_policy.txt
|
||||||
|
- Link power management options.
|
||||||
lpfc.txt
|
lpfc.txt
|
||||||
- LPFC driver release notes
|
- LPFC driver release notes
|
||||||
megaraid.txt
|
megaraid.txt
|
||||||
- Common Management Module, shared code handling ioctls for LSI drivers
|
- Common Management Module, shared code handling ioctls for LSI drivers
|
||||||
ncr53c8xx.txt
|
ncr53c8xx.txt
|
||||||
- info on driver for NCR53c8xx based adapters
|
- info on driver for NCR53c8xx based adapters
|
||||||
|
osd.txt
|
||||||
|
Object-Based Storage Device, command set introduction.
|
||||||
osst.txt
|
osst.txt
|
||||||
- info on driver for OnStream SC-x0 SCSI tape
|
- info on driver for OnStream SC-x0 SCSI tape
|
||||||
ppa.txt
|
ppa.txt
|
||||||
|
@ -74,6 +88,8 @@ scsi-changer.txt
|
||||||
- README for the SCSI media changer driver
|
- README for the SCSI media changer driver
|
||||||
scsi-generic.txt
|
scsi-generic.txt
|
||||||
- info on the sg driver for generic (non-disk/CD/tape) SCSI devices.
|
- info on the sg driver for generic (non-disk/CD/tape) SCSI devices.
|
||||||
|
scsi-parameters.txt
|
||||||
|
- List of SCSI-parameters to pass to the kernel at module load-time.
|
||||||
scsi.txt
|
scsi.txt
|
||||||
- short blurb on using SCSI support as a module.
|
- short blurb on using SCSI support as a module.
|
||||||
scsi_mid_low_api.txt
|
scsi_mid_low_api.txt
|
||||||
|
|
|
@ -4,10 +4,12 @@ README.cycladesZ
|
||||||
- info on Cyclades-Z firmware loading.
|
- info on Cyclades-Z firmware loading.
|
||||||
digiepca.txt
|
digiepca.txt
|
||||||
- info on Digi Intl. {PC,PCI,EISA}Xx and Xem series cards.
|
- info on Digi Intl. {PC,PCI,EISA}Xx and Xem series cards.
|
||||||
hayes-esp.txt
|
driver
|
||||||
- info on using the Hayes ESP serial driver.
|
- intro to the low level serial driver.
|
||||||
moxa-smartio
|
moxa-smartio
|
||||||
- file with info on installing/using Moxa multiport serial driver.
|
- file with info on installing/using Moxa multiport serial driver.
|
||||||
|
n_gsm.txt
|
||||||
|
- GSM 0710 tty multiplexer howto.
|
||||||
riscom8.txt
|
riscom8.txt
|
||||||
- notes on using the RISCom/8 multi-port serial driver.
|
- notes on using the RISCom/8 multi-port serial driver.
|
||||||
rocket.txt
|
rocket.txt
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
00-INDEX
|
||||||
|
- this file.
|
||||||
|
Makefile
|
||||||
|
- Makefile for the example sourcefiles.
|
||||||
|
butterfly
|
||||||
|
- AVR Butterfly SPI driver overview and pin configuration.
|
||||||
|
ep93xx_spi
|
||||||
|
- Basic EP93xx SPI driver configuration.
|
||||||
|
pxa2xx
|
||||||
|
- PXA2xx SPI master controller build by spi_message fifo wq
|
||||||
|
spidev
|
||||||
|
- Intro to the userspace API for spi devices
|
||||||
|
spidev_fdx.c
|
||||||
|
- spidev example file
|
||||||
|
spi-lm70llp
|
||||||
|
- Connecting an LM70-LLP sensor to the kernel via the SPI subsys.
|
||||||
|
spi-sc18is602
|
||||||
|
- NXP SC18IS602/603 I2C-bus to SPI bridge
|
||||||
|
spi-summary
|
||||||
|
- (Linux) SPI overview. If unsure about SPI or SPI in Linux, start here.
|
||||||
|
spidev_test.c
|
||||||
|
- SPI testing utility.
|
|
@ -543,7 +543,22 @@ SPI MASTER METHODS
|
||||||
queuing transfers that arrive in the meantime. When the driver is
|
queuing transfers that arrive in the meantime. When the driver is
|
||||||
finished with this message, it must call
|
finished with this message, it must call
|
||||||
spi_finalize_current_message() so the subsystem can issue the next
|
spi_finalize_current_message() so the subsystem can issue the next
|
||||||
transfer. This may sleep.
|
message. This may sleep.
|
||||||
|
|
||||||
|
master->transfer_one(struct spi_master *master, struct spi_device *spi,
|
||||||
|
struct spi_transfer *transfer)
|
||||||
|
The subsystem calls the driver to transfer a single transfer while
|
||||||
|
queuing transfers that arrive in the meantime. When the driver is
|
||||||
|
finished with this transfer, it must call
|
||||||
|
spi_finalize_current_transfer() so the subsystem can issue the next
|
||||||
|
transfer. This may sleep. Note: transfer_one and transfer_one_message
|
||||||
|
are mutually exclusive; when both are set, the generic subsystem does
|
||||||
|
not call your transfer_one callback.
|
||||||
|
|
||||||
|
Return values:
|
||||||
|
negative errno: error
|
||||||
|
0: transfer is finished
|
||||||
|
1: transfer is still in progress
|
||||||
|
|
||||||
DEPRECATED METHODS
|
DEPRECATED METHODS
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,8 @@ hpet_example.c
|
||||||
- sample hpet timer test program
|
- sample hpet timer test program
|
||||||
hrtimers.txt
|
hrtimers.txt
|
||||||
- subsystem for high-resolution kernel timers
|
- subsystem for high-resolution kernel timers
|
||||||
|
Makefile
|
||||||
|
- Build and link hpet_example
|
||||||
NO_HZ.txt
|
NO_HZ.txt
|
||||||
- Summary of the different methods for the scheduler clock-interrupts management.
|
- Summary of the different methods for the scheduler clock-interrupts management.
|
||||||
timers-howto.txt
|
timers-howto.txt
|
||||||
|
|
|
@ -20,5 +20,7 @@ ppc-pv.txt
|
||||||
- the paravirtualization interface on PowerPC.
|
- the paravirtualization interface on PowerPC.
|
||||||
review-checklist.txt
|
review-checklist.txt
|
||||||
- review checklist for KVM patches.
|
- review checklist for KVM patches.
|
||||||
|
s390-diag.txt
|
||||||
|
- Diagnose hypercall description (for IBM S/390)
|
||||||
timekeeping.txt
|
timekeeping.txt
|
||||||
- timekeeping virtualization for x86-based architectures.
|
- timekeeping virtualization for x86-based architectures.
|
||||||
|
|
|
@ -16,8 +16,6 @@ hwpoison.txt
|
||||||
- explains what hwpoison is
|
- explains what hwpoison is
|
||||||
ksm.txt
|
ksm.txt
|
||||||
- how to use the Kernel Samepage Merging feature.
|
- how to use the Kernel Samepage Merging feature.
|
||||||
locking
|
|
||||||
- info on how locking and synchronization is done in the Linux vm code.
|
|
||||||
numa
|
numa
|
||||||
- information about NUMA specific code in the Linux vm.
|
- information about NUMA specific code in the Linux vm.
|
||||||
numa_memory_policy.txt
|
numa_memory_policy.txt
|
||||||
|
@ -32,6 +30,8 @@ slub.txt
|
||||||
- a short users guide for SLUB.
|
- a short users guide for SLUB.
|
||||||
soft-dirty.txt
|
soft-dirty.txt
|
||||||
- short explanation for soft-dirty PTEs
|
- short explanation for soft-dirty PTEs
|
||||||
|
split_page_table_lock
|
||||||
|
- Separate per-table lock to improve scalability of the old page_table_lock.
|
||||||
transhuge.txt
|
transhuge.txt
|
||||||
- Transparent Hugepage Support, alternative way of using hugepages.
|
- Transparent Hugepage Support, alternative way of using hugepages.
|
||||||
unevictable-lru.txt
|
unevictable-lru.txt
|
||||||
|
|
|
@ -4,7 +4,9 @@ ds2482
|
||||||
- The Maxim/Dallas Semiconductor DS2482 provides 1-wire busses.
|
- The Maxim/Dallas Semiconductor DS2482 provides 1-wire busses.
|
||||||
ds2490
|
ds2490
|
||||||
- The Maxim/Dallas Semiconductor DS2490 builds USB <-> W1 bridges.
|
- The Maxim/Dallas Semiconductor DS2490 builds USB <-> W1 bridges.
|
||||||
mxc_w1
|
mxc-w1
|
||||||
- W1 master controller driver found on Freescale MX2/MX3 SoCs
|
- W1 master controller driver found on Freescale MX2/MX3 SoCs
|
||||||
|
omap-hdq
|
||||||
|
- HDQ/1-wire module of TI OMAP 2430/3430.
|
||||||
w1-gpio
|
w1-gpio
|
||||||
- GPIO 1-wire bus master driver.
|
- GPIO 1-wire bus master driver.
|
||||||
|
|
|
@ -4,3 +4,5 @@ w1_therm
|
||||||
- The Maxim/Dallas Semiconductor ds18*20 temperature sensor.
|
- The Maxim/Dallas Semiconductor ds18*20 temperature sensor.
|
||||||
w1_ds2423
|
w1_ds2423
|
||||||
- The Maxim/Dallas Semiconductor ds2423 counter device.
|
- The Maxim/Dallas Semiconductor ds2423 counter device.
|
||||||
|
w1_ds28e04
|
||||||
|
- The Maxim/Dallas Semiconductor ds28e04 eeprom.
|
||||||
|
|
|
@ -1,6 +1,20 @@
|
||||||
00-INDEX
|
00-INDEX
|
||||||
- this file
|
- this file
|
||||||
mtrr.txt
|
boot.txt
|
||||||
- how to use x86 Memory Type Range Registers to increase performance
|
- List of boot protocol versions
|
||||||
|
early-microcode.txt
|
||||||
|
- How to load microcode from an initrd-CPIO archive early to fix CPU issues.
|
||||||
|
earlyprintk.txt
|
||||||
|
- Using earlyprintk with a USB2 debug port key.
|
||||||
|
entry_64.txt
|
||||||
|
- Describe (some of the) kernel entry points for x86.
|
||||||
exception-tables.txt
|
exception-tables.txt
|
||||||
- why and how Linux kernel uses exception tables on x86
|
- why and how Linux kernel uses exception tables on x86
|
||||||
|
mtrr.txt
|
||||||
|
- how to use x86 Memory Type Range Registers to increase performance
|
||||||
|
pat.txt
|
||||||
|
- Page Attribute Table intro and API
|
||||||
|
usb-legacy-support.txt
|
||||||
|
- how to fix/avoid quirks when using emulated PS/2 mouse/keyboard.
|
||||||
|
zero-page.txt
|
||||||
|
- layout of the first page of memory.
|
||||||
|
|
|
@ -7,7 +7,7 @@ help. Contact the Chinese maintainer if this translation is outdated
|
||||||
or if there is a problem with the translation.
|
or if there is a problem with the translation.
|
||||||
|
|
||||||
Maintainer: Will Deacon <will.deacon@arm.com>
|
Maintainer: Will Deacon <will.deacon@arm.com>
|
||||||
Chinese maintainer: Fu Wei <tekkamanninja@gmail.com>
|
Chinese maintainer: Fu Wei <wefu@redhat.com>
|
||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
Documentation/arm64/booting.txt 的中文翻译
|
Documentation/arm64/booting.txt 的中文翻译
|
||||||
|
|
||||||
|
@ -16,9 +16,9 @@ Documentation/arm64/booting.txt 的中文翻译
|
||||||
译存在问题,请联系中文版维护者。
|
译存在问题,请联系中文版维护者。
|
||||||
|
|
||||||
英文版维护者: Will Deacon <will.deacon@arm.com>
|
英文版维护者: Will Deacon <will.deacon@arm.com>
|
||||||
中文版维护者: 傅炜 Fu Wei <tekkamanninja@gmail.com>
|
中文版维护者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
中文版翻译者: 傅炜 Fu Wei <tekkamanninja@gmail.com>
|
中文版翻译者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
中文版校译者: 傅炜 Fu Wei <tekkamanninja@gmail.com>
|
中文版校译者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
|
|
||||||
以下为正文
|
以下为正文
|
||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
|
@ -64,8 +64,8 @@ RAM,或可能使用对这个设备已知的 RAM 信息,还可能使用任何
|
||||||
|
|
||||||
必要性: 强制
|
必要性: 强制
|
||||||
|
|
||||||
设备树数据块(dtb)大小必须不大于 2 MB,且位于从内核映像起始算起第一个
|
设备树数据块(dtb)必须 8 字节对齐,并位于从内核映像起始算起第一个 512MB
|
||||||
512MB 内的 2MB 边界上。这使得内核可以通过初始页表中的单个节描述符来
|
内,且不得跨越 2MB 对齐边界。这使得内核可以通过初始页表中的单个节描述符来
|
||||||
映射此数据块。
|
映射此数据块。
|
||||||
|
|
||||||
|
|
||||||
|
@ -84,13 +84,23 @@ AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内
|
||||||
|
|
||||||
必要性: 强制
|
必要性: 强制
|
||||||
|
|
||||||
已解压的内核映像包含一个 32 字节的头,内容如下:
|
已解压的内核映像包含一个 64 字节的头,内容如下:
|
||||||
|
|
||||||
u32 magic = 0x14000008; /* 跳转到 stext, 小端 */
|
u32 code0; /* 可执行代码 */
|
||||||
u32 res0 = 0; /* 保留 */
|
u32 code1; /* 可执行代码 */
|
||||||
u64 text_offset; /* 映像装载偏移 */
|
u64 text_offset; /* 映像装载偏移 */
|
||||||
|
u64 res0 = 0; /* 保留 */
|
||||||
u64 res1 = 0; /* 保留 */
|
u64 res1 = 0; /* 保留 */
|
||||||
u64 res2 = 0; /* 保留 */
|
u64 res2 = 0; /* 保留 */
|
||||||
|
u64 res3 = 0; /* 保留 */
|
||||||
|
u64 res4 = 0; /* 保留 */
|
||||||
|
u32 magic = 0x644d5241; /* 魔数, 小端, "ARM\x64" */
|
||||||
|
u32 res5 = 0; /* 保留 */
|
||||||
|
|
||||||
|
|
||||||
|
映像头注释:
|
||||||
|
|
||||||
|
- code0/code1 负责跳转到 stext.
|
||||||
|
|
||||||
映像必须位于系统 RAM 起始处的特定偏移(当前是 0x80000)。系统 RAM
|
映像必须位于系统 RAM 起始处的特定偏移(当前是 0x80000)。系统 RAM
|
||||||
的起始地址必须是以 2MB 对齐的。
|
的起始地址必须是以 2MB 对齐的。
|
||||||
|
@ -118,9 +128,9 @@ AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内
|
||||||
外部高速缓存(如果存在)必须配置并禁用。
|
外部高速缓存(如果存在)必须配置并禁用。
|
||||||
|
|
||||||
- 架构计时器
|
- 架构计时器
|
||||||
CNTFRQ 必须设定为计时器的频率。
|
CNTFRQ 必须设定为计时器的频率,且 CNTVOFF 必须设定为对所有 CPU
|
||||||
如果在 EL1 模式下进入内核,则 CNTHCTL_EL2 中的 EL1PCTEN (bit 0)
|
都一致的值。如果在 EL1 模式下进入内核,则 CNTHCTL_EL2 中的
|
||||||
必须置位。
|
EL1PCTEN (bit 0) 必须置位。
|
||||||
|
|
||||||
- 一致性
|
- 一致性
|
||||||
通过内核启动的所有 CPU 在内核入口地址上必须处于相同的一致性域中。
|
通过内核启动的所有 CPU 在内核入口地址上必须处于相同的一致性域中。
|
||||||
|
@ -131,23 +141,40 @@ AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内
|
||||||
在进入内核映像的异常级中,所有构架中可写的系统寄存器必须通过软件
|
在进入内核映像的异常级中,所有构架中可写的系统寄存器必须通过软件
|
||||||
在一个更高的异常级别下初始化,以防止在 未知 状态下运行。
|
在一个更高的异常级别下初始化,以防止在 未知 状态下运行。
|
||||||
|
|
||||||
|
以上对于 CPU 模式、高速缓存、MMU、架构计时器、一致性、系统寄存器的
|
||||||
|
必要条件描述适用于所有 CPU。所有 CPU 必须在同一异常级别跳入内核。
|
||||||
|
|
||||||
引导装载程序必须在每个 CPU 处于以下状态时跳入内核入口:
|
引导装载程序必须在每个 CPU 处于以下状态时跳入内核入口:
|
||||||
|
|
||||||
- 主 CPU 必须直接跳入内核映像的第一条指令。通过此 CPU 传递的设备树
|
- 主 CPU 必须直接跳入内核映像的第一条指令。通过此 CPU 传递的设备树
|
||||||
数据块必须在每个 CPU 节点中包含以下内容:
|
数据块必须在每个 CPU 节点中包含一个 ‘enable-method’ 属性,所
|
||||||
|
支持的 enable-method 请见下文。
|
||||||
1、‘enable-method’属性。目前,此字段支持的值仅为字符串“spin-table”。
|
|
||||||
|
|
||||||
2、‘cpu-release-addr’标识一个 64-bit、初始化为零的内存位置。
|
|
||||||
|
|
||||||
引导装载程序必须生成这些设备树属性,并在跳入内核入口之前将其插入
|
引导装载程序必须生成这些设备树属性,并在跳入内核入口之前将其插入
|
||||||
数据块。
|
数据块。
|
||||||
|
|
||||||
- 任何辅助 CPU 必须在内存保留区(通过设备树中的 /memreserve/ 域传递
|
- enable-method 为 “spin-table” 的 CPU 必须在它们的 CPU
|
||||||
|
节点中包含一个 ‘cpu-release-addr’ 属性。这个属性标识了一个
|
||||||
|
64 位自然对齐且初始化为零的内存位置。
|
||||||
|
|
||||||
|
这些 CPU 必须在内存保留区(通过设备树中的 /memreserve/ 域传递
|
||||||
给内核)中自旋于内核之外,轮询它们的 cpu-release-addr 位置(必须
|
给内核)中自旋于内核之外,轮询它们的 cpu-release-addr 位置(必须
|
||||||
包含在保留区中)。可通过插入 wfe 指令来降低忙循环开销,而主 CPU 将
|
包含在保留区中)。可通过插入 wfe 指令来降低忙循环开销,而主 CPU 将
|
||||||
发出 sev 指令。当对 cpu-release-addr 所指位置的读取操作返回非零值
|
发出 sev 指令。当对 cpu-release-addr 所指位置的读取操作返回非零值
|
||||||
时,CPU 必须直接跳入此值所指向的地址。
|
时,CPU 必须跳入此值所指向的地址。此值为一个单独的 64 位小端值,
|
||||||
|
因此 CPU 须在跳转前将所读取的值转换为其本身的端模式。
|
||||||
|
|
||||||
|
- enable-method 为 “psci” 的 CPU 保持在内核外(比如,在
|
||||||
|
memory 节点中描述为内核空间的内存区外,或在通过设备树 /memreserve/
|
||||||
|
域中描述为内核保留区的空间中)。内核将会发起在 ARM 文档(编号
|
||||||
|
ARM DEN 0022A:用于 ARM 上的电源状态协调接口系统软件)中描述的
|
||||||
|
CPU_ON 调用来将 CPU 带入内核。
|
||||||
|
|
||||||
|
*译者注:到文档翻译时,此文档已更新为 ARM DEN 0022B。
|
||||||
|
|
||||||
|
设备树必须包含一个 ‘psci’ 节点,请参考以下文档:
|
||||||
|
Documentation/devicetree/bindings/arm/psci.txt
|
||||||
|
|
||||||
|
|
||||||
- 辅助 CPU 通用寄存器设置
|
- 辅助 CPU 通用寄存器设置
|
||||||
x0 = 0 (保留,将来可能使用)
|
x0 = 0 (保留,将来可能使用)
|
||||||
|
|
|
@ -7,7 +7,7 @@ help. Contact the Chinese maintainer if this translation is outdated
|
||||||
or if there is a problem with the translation.
|
or if there is a problem with the translation.
|
||||||
|
|
||||||
Maintainer: Catalin Marinas <catalin.marinas@arm.com>
|
Maintainer: Catalin Marinas <catalin.marinas@arm.com>
|
||||||
Chinese maintainer: Fu Wei <tekkamanninja@gmail.com>
|
Chinese maintainer: Fu Wei <wefu@redhat.com>
|
||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
Documentation/arm64/memory.txt 的中文翻译
|
Documentation/arm64/memory.txt 的中文翻译
|
||||||
|
|
||||||
|
@ -16,9 +16,9 @@ Documentation/arm64/memory.txt 的中文翻译
|
||||||
译存在问题,请联系中文版维护者。
|
译存在问题,请联系中文版维护者。
|
||||||
|
|
||||||
英文版维护者: Catalin Marinas <catalin.marinas@arm.com>
|
英文版维护者: Catalin Marinas <catalin.marinas@arm.com>
|
||||||
中文版维护者: 傅炜 Fu Wei <tekkamanninja@gmail.com>
|
中文版维护者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
中文版翻译者: 傅炜 Fu Wei <tekkamanninja@gmail.com>
|
中文版翻译者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
中文版校译者: 傅炜 Fu Wei <tekkamanninja@gmail.com>
|
中文版校译者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
|
|
||||||
以下为正文
|
以下为正文
|
||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
|
@ -41,7 +41,7 @@ AArch64 Linux 使用页大小为 4KB 的 3 级转换表配置,对于用户和
|
||||||
TTBR1 中,且从不写入 TTBR0。
|
TTBR1 中,且从不写入 TTBR0。
|
||||||
|
|
||||||
|
|
||||||
AArch64 Linux 内存布局:
|
AArch64 Linux 在页大小为 4KB 时的内存布局:
|
||||||
|
|
||||||
起始地址 结束地址 大小 用途
|
起始地址 结束地址 大小 用途
|
||||||
-----------------------------------------------------------------------
|
-----------------------------------------------------------------------
|
||||||
|
@ -55,15 +55,42 @@ ffffffbc00000000 ffffffbdffffffff 8GB vmemmap
|
||||||
|
|
||||||
ffffffbe00000000 ffffffbffbbfffff ~8GB [防护页,未来用于 vmmemap]
|
ffffffbe00000000 ffffffbffbbfffff ~8GB [防护页,未来用于 vmmemap]
|
||||||
|
|
||||||
|
ffffffbffbc00000 ffffffbffbdfffff 2MB earlyprintk 设备
|
||||||
|
|
||||||
ffffffbffbe00000 ffffffbffbe0ffff 64KB PCI I/O 空间
|
ffffffbffbe00000 ffffffbffbe0ffff 64KB PCI I/O 空间
|
||||||
|
|
||||||
ffffffbbffff0000 ffffffbcffffffff ~2MB [防护页]
|
ffffffbffbe10000 ffffffbcffffffff ~2MB [防护页]
|
||||||
|
|
||||||
ffffffbffc000000 ffffffbfffffffff 64MB 模块
|
ffffffbffc000000 ffffffbfffffffff 64MB 模块
|
||||||
|
|
||||||
ffffffc000000000 ffffffffffffffff 256GB 内核逻辑内存映射
|
ffffffc000000000 ffffffffffffffff 256GB 内核逻辑内存映射
|
||||||
|
|
||||||
|
|
||||||
|
AArch64 Linux 在页大小为 64KB 时的内存布局:
|
||||||
|
|
||||||
|
起始地址 结束地址 大小 用途
|
||||||
|
-----------------------------------------------------------------------
|
||||||
|
0000000000000000 000003ffffffffff 4TB 用户空间
|
||||||
|
|
||||||
|
fffffc0000000000 fffffdfbfffeffff ~2TB vmalloc
|
||||||
|
|
||||||
|
fffffdfbffff0000 fffffdfbffffffff 64KB [防护页]
|
||||||
|
|
||||||
|
fffffdfc00000000 fffffdfdffffffff 8GB vmemmap
|
||||||
|
|
||||||
|
fffffdfe00000000 fffffdfffbbfffff ~8GB [防护页,未来用于 vmmemap]
|
||||||
|
|
||||||
|
fffffdfffbc00000 fffffdfffbdfffff 2MB earlyprintk 设备
|
||||||
|
|
||||||
|
fffffdfffbe00000 fffffdfffbe0ffff 64KB PCI I/O 空间
|
||||||
|
|
||||||
|
fffffdfffbe10000 fffffdfffbffffff ~2MB [防护页]
|
||||||
|
|
||||||
|
fffffdfffc000000 fffffdffffffffff 64MB 模块
|
||||||
|
|
||||||
|
fffffe0000000000 ffffffffffffffff 2TB 内核逻辑内存映射
|
||||||
|
|
||||||
|
|
||||||
4KB 页大小的转换表查找:
|
4KB 页大小的转换表查找:
|
||||||
|
|
||||||
+--------+--------+--------+--------+--------+--------+--------+--------+
|
+--------+--------+--------+--------+--------+--------+--------+--------+
|
||||||
|
@ -91,3 +118,10 @@ ffffffc000000000 ffffffffffffffff 256GB 内核逻辑内存映射
|
||||||
| | +--------------------------> [41:29] L2 索引 (仅使用 38:29 )
|
| | +--------------------------> [41:29] L2 索引 (仅使用 38:29 )
|
||||||
| +-------------------------------> [47:42] L1 索引 (未使用)
|
| +-------------------------------> [47:42] L1 索引 (未使用)
|
||||||
+-------------------------------------------------> [63] TTBR0/1
|
+-------------------------------------------------> [63] TTBR0/1
|
||||||
|
|
||||||
|
当使用 KVM 时, 管理程序(hypervisor)在 EL2 中通过相对内核虚拟地址的
|
||||||
|
一个固定偏移来映射内核页(内核虚拟地址的高 24 位设为零):
|
||||||
|
|
||||||
|
起始地址 结束地址 大小 用途
|
||||||
|
-----------------------------------------------------------------------
|
||||||
|
0000004000000000 0000007fffffffff 256GB 在 HYP 中映射的内核对象
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
Chinese translated version of Documentation/arm64/tagged-pointers.txt
|
||||||
|
|
||||||
|
If you have any comment or update to the content, please contact the
|
||||||
|
original document maintainer directly. However, if you have a problem
|
||||||
|
communicating in English you can also ask the Chinese maintainer for
|
||||||
|
help. Contact the Chinese maintainer if this translation is outdated
|
||||||
|
or if there is a problem with the translation.
|
||||||
|
|
||||||
|
Maintainer: Will Deacon <will.deacon@arm.com>
|
||||||
|
Chinese maintainer: Fu Wei <wefu@redhat.com>
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Documentation/arm64/tagged-pointers.txt 的中文翻译
|
||||||
|
|
||||||
|
如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
|
||||||
|
交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
|
||||||
|
译存在问题,请联系中文版维护者。
|
||||||
|
|
||||||
|
英文版维护者: Will Deacon <will.deacon@arm.com>
|
||||||
|
中文版维护者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
|
中文版翻译者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
|
中文版校译者: 傅炜 Fu Wei <wefu@redhat.com>
|
||||||
|
|
||||||
|
以下为正文
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Linux 在 AArch64 中带标记的虚拟地址
|
||||||
|
=================================
|
||||||
|
|
||||||
|
作者: Will Deacon <will.deacon@arm.com>
|
||||||
|
日期: 2013 年 06 月 12 日
|
||||||
|
|
||||||
|
本文档简述了在 AArch64 地址转换系统中提供的带标记的虚拟地址及其在
|
||||||
|
AArch64 Linux 中的潜在用途。
|
||||||
|
|
||||||
|
内核提供的地址转换表配置使通过 TTBR0 完成的虚拟地址转换(即用户空间
|
||||||
|
映射),其虚拟地址的最高 8 位(63:56)会被转换硬件所忽略。这种机制
|
||||||
|
让这些位可供应用程序自由使用,其注意事项如下:
|
||||||
|
|
||||||
|
(1) 内核要求所有传递到 EL1 的用户空间地址带有 0x00 标记。
|
||||||
|
这意味着任何携带用户空间虚拟地址的系统调用(syscall)
|
||||||
|
参数 *必须* 在陷入内核前使它们的最高字节被清零。
|
||||||
|
|
||||||
|
(2) 非零标记在传递信号时不被保存。这意味着在应用程序中利用了
|
||||||
|
标记的信号处理函数无法依赖 siginfo_t 的用户空间虚拟
|
||||||
|
地址所携带的包含其内部域信息的标记。此规则的一个例外是
|
||||||
|
当信号是在调试观察点的异常处理程序中产生的,此时标记的
|
||||||
|
信息将被保存。
|
||||||
|
|
||||||
|
(3) 当使用带标记的指针时需特别留心,因为仅对两个虚拟地址
|
||||||
|
的高字节,C 编译器很可能无法判断它们是不同的。
|
||||||
|
|
||||||
|
此构架会阻止对带标记的 PC 指针的利用,因此在异常返回时,其高字节
|
||||||
|
将被设置成一个为 “55” 的扩展符。
|
158
MAINTAINERS
158
MAINTAINERS
|
@ -73,7 +73,8 @@ Descriptions of section entries:
|
||||||
L: Mailing list that is relevant to this area
|
L: Mailing list that is relevant to this area
|
||||||
W: Web-page with status/info
|
W: Web-page with status/info
|
||||||
Q: Patchwork web based patch tracking system site
|
Q: Patchwork web based patch tracking system site
|
||||||
T: SCM tree type and location. Type is one of: git, hg, quilt, stgit, topgit.
|
T: SCM tree type and location.
|
||||||
|
Type is one of: git, hg, quilt, stgit, topgit
|
||||||
S: Status, one of the following:
|
S: Status, one of the following:
|
||||||
Supported: Someone is actually paid to look after this.
|
Supported: Someone is actually paid to look after this.
|
||||||
Maintained: Someone actually looks after it.
|
Maintained: Someone actually looks after it.
|
||||||
|
@ -473,7 +474,7 @@ F: net/rxrpc/af_rxrpc.c
|
||||||
|
|
||||||
AGPGART DRIVER
|
AGPGART DRIVER
|
||||||
M: David Airlie <airlied@linux.ie>
|
M: David Airlie <airlied@linux.ie>
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git
|
T: git git://people.freedesktop.org/~airlied/linux (part of drm maint)
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/char/agp/
|
F: drivers/char/agp/
|
||||||
F: include/linux/agp*
|
F: include/linux/agp*
|
||||||
|
@ -538,7 +539,7 @@ F: arch/alpha/
|
||||||
ALTERA UART/JTAG UART SERIAL DRIVERS
|
ALTERA UART/JTAG UART SERIAL DRIVERS
|
||||||
M: Tobias Klauser <tklauser@distanz.ch>
|
M: Tobias Klauser <tklauser@distanz.ch>
|
||||||
L: linux-serial@vger.kernel.org
|
L: linux-serial@vger.kernel.org
|
||||||
L: nios2-dev@sopc.et.ntust.edu.tw (moderated for non-subscribers)
|
L: nios2-dev@lists.rocketboards.org (moderated for non-subscribers)
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/tty/serial/altera_uart.c
|
F: drivers/tty/serial/altera_uart.c
|
||||||
F: drivers/tty/serial/altera_jtaguart.c
|
F: drivers/tty/serial/altera_jtaguart.c
|
||||||
|
@ -1612,11 +1613,11 @@ S: Maintained
|
||||||
F: drivers/net/wireless/atmel*
|
F: drivers/net/wireless/atmel*
|
||||||
|
|
||||||
ATTO EXPRESSSAS SAS/SATA RAID SCSI DRIVER
|
ATTO EXPRESSSAS SAS/SATA RAID SCSI DRIVER
|
||||||
M: Bradley Grove <linuxdrivers@attotech.com>
|
M: Bradley Grove <linuxdrivers@attotech.com>
|
||||||
L: linux-scsi@vger.kernel.org
|
L: linux-scsi@vger.kernel.org
|
||||||
W: http://www.attotech.com
|
W: http://www.attotech.com
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/scsi/esas2r
|
F: drivers/scsi/esas2r
|
||||||
|
|
||||||
AUDIT SUBSYSTEM
|
AUDIT SUBSYSTEM
|
||||||
M: Eric Paris <eparis@redhat.com>
|
M: Eric Paris <eparis@redhat.com>
|
||||||
|
@ -1860,6 +1861,7 @@ F: drivers/net/ethernet/broadcom/bnx2x/
|
||||||
|
|
||||||
BROADCOM BCM281XX/BCM11XXX ARM ARCHITECTURE
|
BROADCOM BCM281XX/BCM11XXX ARM ARCHITECTURE
|
||||||
M: Christian Daudt <bcm@fixthebug.org>
|
M: Christian Daudt <bcm@fixthebug.org>
|
||||||
|
M: Matt Porter <mporter@linaro.org>
|
||||||
L: bcm-kernel-feedback-list@broadcom.com
|
L: bcm-kernel-feedback-list@broadcom.com
|
||||||
T: git git://git.github.com/broadcom/bcm11351
|
T: git git://git.github.com/broadcom/bcm11351
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
@ -2165,7 +2167,7 @@ F: Documentation/zh_CN/
|
||||||
|
|
||||||
CHIPIDEA USB HIGH SPEED DUAL ROLE CONTROLLER
|
CHIPIDEA USB HIGH SPEED DUAL ROLE CONTROLLER
|
||||||
M: Peter Chen <Peter.Chen@freescale.com>
|
M: Peter Chen <Peter.Chen@freescale.com>
|
||||||
T: git://github.com/hzpeterchen/linux-usb.git
|
T: git git://github.com/hzpeterchen/linux-usb.git
|
||||||
L: linux-usb@vger.kernel.org
|
L: linux-usb@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/usb/chipidea/
|
F: drivers/usb/chipidea/
|
||||||
|
@ -2185,9 +2187,9 @@ S: Supported
|
||||||
F: drivers/net/ethernet/cisco/enic/
|
F: drivers/net/ethernet/cisco/enic/
|
||||||
|
|
||||||
CISCO VIC LOW LATENCY NIC DRIVER
|
CISCO VIC LOW LATENCY NIC DRIVER
|
||||||
M: Upinder Malhi <umalhi@cisco.com>
|
M: Upinder Malhi <umalhi@cisco.com>
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/infiniband/hw/usnic
|
F: drivers/infiniband/hw/usnic
|
||||||
|
|
||||||
CIRRUS LOGIC EP93XX ETHERNET DRIVER
|
CIRRUS LOGIC EP93XX ETHERNET DRIVER
|
||||||
M: Hartley Sweeten <hsweeten@visionengravers.com>
|
M: Hartley Sweeten <hsweeten@visionengravers.com>
|
||||||
|
@ -2374,7 +2376,7 @@ F: include/linux/cpufreq.h
|
||||||
|
|
||||||
CPU FREQUENCY DRIVERS - ARM BIG LITTLE
|
CPU FREQUENCY DRIVERS - ARM BIG LITTLE
|
||||||
M: Viresh Kumar <viresh.kumar@linaro.org>
|
M: Viresh Kumar <viresh.kumar@linaro.org>
|
||||||
M: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
|
M: Sudeep Holla <sudeep.holla@arm.com>
|
||||||
L: cpufreq@vger.kernel.org
|
L: cpufreq@vger.kernel.org
|
||||||
L: linux-pm@vger.kernel.org
|
L: linux-pm@vger.kernel.org
|
||||||
W: http://www.arm.com/products/processors/technologies/biglittleprocessing.php
|
W: http://www.arm.com/products/processors/technologies/biglittleprocessing.php
|
||||||
|
@ -2384,20 +2386,20 @@ F: drivers/cpufreq/arm_big_little.c
|
||||||
F: drivers/cpufreq/arm_big_little_dt.c
|
F: drivers/cpufreq/arm_big_little_dt.c
|
||||||
|
|
||||||
CPUIDLE DRIVER - ARM BIG LITTLE
|
CPUIDLE DRIVER - ARM BIG LITTLE
|
||||||
M: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
M: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
||||||
M: Daniel Lezcano <daniel.lezcano@linaro.org>
|
M: Daniel Lezcano <daniel.lezcano@linaro.org>
|
||||||
L: linux-pm@vger.kernel.org
|
L: linux-pm@vger.kernel.org
|
||||||
L: linux-arm-kernel@lists.infradead.org
|
L: linux-arm-kernel@lists.infradead.org
|
||||||
T: git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/cpuidle/cpuidle-big_little.c
|
F: drivers/cpuidle/cpuidle-big_little.c
|
||||||
|
|
||||||
CPUIDLE DRIVERS
|
CPUIDLE DRIVERS
|
||||||
M: Rafael J. Wysocki <rjw@rjwysocki.net>
|
M: Rafael J. Wysocki <rjw@rjwysocki.net>
|
||||||
M: Daniel Lezcano <daniel.lezcano@linaro.org>
|
M: Daniel Lezcano <daniel.lezcano@linaro.org>
|
||||||
L: linux-pm@vger.kernel.org
|
L: linux-pm@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
|
||||||
F: drivers/cpuidle/*
|
F: drivers/cpuidle/*
|
||||||
F: include/linux/cpuidle.h
|
F: include/linux/cpuidle.h
|
||||||
|
|
||||||
|
@ -2415,8 +2417,10 @@ F: tools/power/cpupower/
|
||||||
|
|
||||||
CPUSETS
|
CPUSETS
|
||||||
M: Li Zefan <lizefan@huawei.com>
|
M: Li Zefan <lizefan@huawei.com>
|
||||||
|
L: cgroups@vger.kernel.org
|
||||||
W: http://www.bullopensource.org/cpuset/
|
W: http://www.bullopensource.org/cpuset/
|
||||||
W: http://oss.sgi.com/projects/cpusets/
|
W: http://oss.sgi.com/projects/cpusets/
|
||||||
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/cgroups/cpusets.txt
|
F: Documentation/cgroups/cpusets.txt
|
||||||
F: include/linux/cpuset.h
|
F: include/linux/cpuset.h
|
||||||
|
@ -2462,9 +2466,9 @@ S: Maintained
|
||||||
F: sound/pci/cs5535audio/
|
F: sound/pci/cs5535audio/
|
||||||
|
|
||||||
CW1200 WLAN driver
|
CW1200 WLAN driver
|
||||||
M: Solomon Peachy <pizza@shaftnet.org>
|
M: Solomon Peachy <pizza@shaftnet.org>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/net/wireless/cw1200/
|
F: drivers/net/wireless/cw1200/
|
||||||
|
|
||||||
CX18 VIDEO4LINUX DRIVER
|
CX18 VIDEO4LINUX DRIVER
|
||||||
M: Andy Walls <awalls@md.metrocast.net>
|
M: Andy Walls <awalls@md.metrocast.net>
|
||||||
|
@ -2615,9 +2619,9 @@ DC395x SCSI driver
|
||||||
M: Oliver Neukum <oliver@neukum.org>
|
M: Oliver Neukum <oliver@neukum.org>
|
||||||
M: Ali Akcaagac <aliakc@web.de>
|
M: Ali Akcaagac <aliakc@web.de>
|
||||||
M: Jamie Lenehan <lenehan@twibble.org>
|
M: Jamie Lenehan <lenehan@twibble.org>
|
||||||
W: http://twibble.org/dist/dc395x/
|
|
||||||
L: dc395x@twibble.org
|
L: dc395x@twibble.org
|
||||||
L: http://lists.twibble.org/mailman/listinfo/dc395x/
|
W: http://twibble.org/dist/dc395x/
|
||||||
|
W: http://lists.twibble.org/mailman/listinfo/dc395x/
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/scsi/dc395x.txt
|
F: Documentation/scsi/dc395x.txt
|
||||||
F: drivers/scsi/dc395x.*
|
F: drivers/scsi/dc395x.*
|
||||||
|
@ -2852,19 +2856,29 @@ F: lib/kobj*
|
||||||
DRM DRIVERS
|
DRM DRIVERS
|
||||||
M: David Airlie <airlied@linux.ie>
|
M: David Airlie <airlied@linux.ie>
|
||||||
L: dri-devel@lists.freedesktop.org
|
L: dri-devel@lists.freedesktop.org
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git
|
T: git git://people.freedesktop.org/~airlied/linux
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/gpu/drm/
|
F: drivers/gpu/drm/
|
||||||
F: include/drm/
|
F: include/drm/
|
||||||
F: include/uapi/drm/
|
F: include/uapi/drm/
|
||||||
|
|
||||||
|
RADEON DRM DRIVERS
|
||||||
|
M: Alex Deucher <alexander.deucher@amd.com>
|
||||||
|
M: Christian König <christian.koenig@amd.com>
|
||||||
|
L: dri-devel@lists.freedesktop.org
|
||||||
|
T: git git://people.freedesktop.org/~agd5f/linux
|
||||||
|
S: Supported
|
||||||
|
F: drivers/gpu/drm/radeon/
|
||||||
|
F: include/drm/radeon*
|
||||||
|
F: include/uapi/drm/radeon*
|
||||||
|
|
||||||
INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets)
|
INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets)
|
||||||
M: Daniel Vetter <daniel.vetter@ffwll.ch>
|
M: Daniel Vetter <daniel.vetter@ffwll.ch>
|
||||||
M: Jani Nikula <jani.nikula@linux.intel.com>
|
M: Jani Nikula <jani.nikula@linux.intel.com>
|
||||||
L: intel-gfx@lists.freedesktop.org
|
L: intel-gfx@lists.freedesktop.org
|
||||||
L: dri-devel@lists.freedesktop.org
|
L: dri-devel@lists.freedesktop.org
|
||||||
Q: http://patchwork.freedesktop.org/project/intel-gfx/
|
Q: http://patchwork.freedesktop.org/project/intel-gfx/
|
||||||
T: git git://people.freedesktop.org/~danvet/drm-intel
|
T: git git://anongit.freedesktop.org/drm-intel
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/gpu/drm/i915/
|
F: drivers/gpu/drm/i915/
|
||||||
F: include/drm/i915*
|
F: include/drm/i915*
|
||||||
|
@ -3089,6 +3103,8 @@ F: fs/ecryptfs/
|
||||||
|
|
||||||
EDAC-CORE
|
EDAC-CORE
|
||||||
M: Doug Thompson <dougthompson@xmission.com>
|
M: Doug Thompson <dougthompson@xmission.com>
|
||||||
|
M: Borislav Petkov <bp@alien8.de>
|
||||||
|
M: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
||||||
L: linux-edac@vger.kernel.org
|
L: linux-edac@vger.kernel.org
|
||||||
W: bluesmoke.sourceforge.net
|
W: bluesmoke.sourceforge.net
|
||||||
S: Supported
|
S: Supported
|
||||||
|
@ -3331,6 +3347,17 @@ S: Maintained
|
||||||
F: include/linux/netfilter_bridge/
|
F: include/linux/netfilter_bridge/
|
||||||
F: net/bridge/
|
F: net/bridge/
|
||||||
|
|
||||||
|
ETHERNET PHY LIBRARY
|
||||||
|
M: Florian Fainelli <f.fainelli@gmail.com>
|
||||||
|
L: netdev@vger.kernel.org
|
||||||
|
S: Maintained
|
||||||
|
F: include/linux/phy.h
|
||||||
|
F: include/linux/phy_fixed.h
|
||||||
|
F: drivers/net/phy/
|
||||||
|
F: Documentation/networking/phy.txt
|
||||||
|
F: drivers/of/of_mdio.c
|
||||||
|
F: drivers/of/of_net.c
|
||||||
|
|
||||||
EXT2 FILE SYSTEM
|
EXT2 FILE SYSTEM
|
||||||
M: Jan Kara <jack@suse.cz>
|
M: Jan Kara <jack@suse.cz>
|
||||||
L: linux-ext4@vger.kernel.org
|
L: linux-ext4@vger.kernel.org
|
||||||
|
@ -4541,6 +4568,7 @@ F: Documentation/networking/ixgbevf.txt
|
||||||
F: Documentation/networking/i40e.txt
|
F: Documentation/networking/i40e.txt
|
||||||
F: Documentation/networking/i40evf.txt
|
F: Documentation/networking/i40evf.txt
|
||||||
F: drivers/net/ethernet/intel/
|
F: drivers/net/ethernet/intel/
|
||||||
|
F: drivers/net/ethernet/intel/*/
|
||||||
|
|
||||||
INTEL-MID GPIO DRIVER
|
INTEL-MID GPIO DRIVER
|
||||||
M: David Cohen <david.a.cohen@linux.intel.com>
|
M: David Cohen <david.a.cohen@linux.intel.com>
|
||||||
|
@ -4897,7 +4925,7 @@ F: drivers/staging/ktap/
|
||||||
KCONFIG
|
KCONFIG
|
||||||
M: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
M: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
||||||
L: linux-kbuild@vger.kernel.org
|
L: linux-kbuild@vger.kernel.org
|
||||||
T: git://gitorious.org/linux-kconfig/linux-kconfig
|
T: git git://gitorious.org/linux-kconfig/linux-kconfig
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/kbuild/kconfig-language.txt
|
F: Documentation/kbuild/kconfig-language.txt
|
||||||
F: scripts/kconfig/
|
F: scripts/kconfig/
|
||||||
|
@ -5454,11 +5482,11 @@ S: Maintained
|
||||||
F: drivers/media/tuners/m88ts2022*
|
F: drivers/media/tuners/m88ts2022*
|
||||||
|
|
||||||
MA901 MASTERKIT USB FM RADIO DRIVER
|
MA901 MASTERKIT USB FM RADIO DRIVER
|
||||||
M: Alexey Klimov <klimov.linux@gmail.com>
|
M: Alexey Klimov <klimov.linux@gmail.com>
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/media/radio/radio-ma901.c
|
F: drivers/media/radio/radio-ma901.c
|
||||||
|
|
||||||
MAC80211
|
MAC80211
|
||||||
M: Johannes Berg <johannes@sipsolutions.net>
|
M: Johannes Berg <johannes@sipsolutions.net>
|
||||||
|
@ -5494,6 +5522,11 @@ W: http://www.kernel.org/doc/man-pages
|
||||||
L: linux-man@vger.kernel.org
|
L: linux-man@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
||||||
|
MARVELL ARMADA DRM SUPPORT
|
||||||
|
M: Russell King <rmk+kernel@arm.linux.org.uk>
|
||||||
|
S: Maintained
|
||||||
|
F: drivers/gpu/drm/armada/
|
||||||
|
|
||||||
MARVELL GIGABIT ETHERNET DRIVERS (skge/sky2)
|
MARVELL GIGABIT ETHERNET DRIVERS (skge/sky2)
|
||||||
M: Mirko Lindner <mlindner@marvell.com>
|
M: Mirko Lindner <mlindner@marvell.com>
|
||||||
M: Stephen Hemminger <stephen@networkplumber.org>
|
M: Stephen Hemminger <stephen@networkplumber.org>
|
||||||
|
@ -5614,7 +5647,7 @@ F: drivers/scsi/megaraid/
|
||||||
|
|
||||||
MELLANOX ETHERNET DRIVER (mlx4_en)
|
MELLANOX ETHERNET DRIVER (mlx4_en)
|
||||||
M: Amir Vadai <amirv@mellanox.com>
|
M: Amir Vadai <amirv@mellanox.com>
|
||||||
L: netdev@vger.kernel.org
|
L: netdev@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
W: http://www.mellanox.com
|
W: http://www.mellanox.com
|
||||||
Q: http://patchwork.ozlabs.org/project/netdev/list/
|
Q: http://patchwork.ozlabs.org/project/netdev/list/
|
||||||
|
@ -5655,7 +5688,7 @@ F: include/linux/mtd/
|
||||||
F: include/uapi/mtd/
|
F: include/uapi/mtd/
|
||||||
|
|
||||||
MEN A21 WATCHDOG DRIVER
|
MEN A21 WATCHDOG DRIVER
|
||||||
M: Johannes Thumshirn <johannes.thumshirn@men.de>
|
M: Johannes Thumshirn <johannes.thumshirn@men.de>
|
||||||
L: linux-watchdog@vger.kernel.org
|
L: linux-watchdog@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/watchdog/mena21_wdt.c
|
F: drivers/watchdog/mena21_wdt.c
|
||||||
|
@ -5711,20 +5744,20 @@ L: linux-rdma@vger.kernel.org
|
||||||
W: http://www.mellanox.com
|
W: http://www.mellanox.com
|
||||||
Q: http://patchwork.ozlabs.org/project/netdev/list/
|
Q: http://patchwork.ozlabs.org/project/netdev/list/
|
||||||
Q: http://patchwork.kernel.org/project/linux-rdma/list/
|
Q: http://patchwork.kernel.org/project/linux-rdma/list/
|
||||||
T: git://openfabrics.org/~eli/connect-ib.git
|
T: git git://openfabrics.org/~eli/connect-ib.git
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/net/ethernet/mellanox/mlx5/core/
|
F: drivers/net/ethernet/mellanox/mlx5/core/
|
||||||
F: include/linux/mlx5/
|
F: include/linux/mlx5/
|
||||||
|
|
||||||
Mellanox MLX5 IB driver
|
Mellanox MLX5 IB driver
|
||||||
M: Eli Cohen <eli@mellanox.com>
|
M: Eli Cohen <eli@mellanox.com>
|
||||||
L: linux-rdma@vger.kernel.org
|
L: linux-rdma@vger.kernel.org
|
||||||
W: http://www.mellanox.com
|
W: http://www.mellanox.com
|
||||||
Q: http://patchwork.kernel.org/project/linux-rdma/list/
|
Q: http://patchwork.kernel.org/project/linux-rdma/list/
|
||||||
T: git://openfabrics.org/~eli/connect-ib.git
|
T: git git://openfabrics.org/~eli/connect-ib.git
|
||||||
S: Supported
|
S: Supported
|
||||||
F: include/linux/mlx5/
|
F: include/linux/mlx5/
|
||||||
F: drivers/infiniband/hw/mlx5/
|
F: drivers/infiniband/hw/mlx5/
|
||||||
|
|
||||||
MODULE SUPPORT
|
MODULE SUPPORT
|
||||||
M: Rusty Russell <rusty@rustcorp.com.au>
|
M: Rusty Russell <rusty@rustcorp.com.au>
|
||||||
|
@ -6149,6 +6182,12 @@ S: Supported
|
||||||
F: drivers/block/nvme*
|
F: drivers/block/nvme*
|
||||||
F: include/linux/nvme.h
|
F: include/linux/nvme.h
|
||||||
|
|
||||||
|
NXP TDA998X DRM DRIVER
|
||||||
|
M: Russell King <rmk+kernel@arm.linux.org.uk>
|
||||||
|
S: Supported
|
||||||
|
F: drivers/gpu/drm/i2c/tda998x_drv.c
|
||||||
|
F: include/drm/i2c/tda998x.h
|
||||||
|
|
||||||
OMAP SUPPORT
|
OMAP SUPPORT
|
||||||
M: Tony Lindgren <tony@atomide.com>
|
M: Tony Lindgren <tony@atomide.com>
|
||||||
L: linux-omap@vger.kernel.org
|
L: linux-omap@vger.kernel.org
|
||||||
|
@ -7203,7 +7242,7 @@ S: Maintained
|
||||||
F: drivers/net/ethernet/rdc/r6040.c
|
F: drivers/net/ethernet/rdc/r6040.c
|
||||||
|
|
||||||
RDS - RELIABLE DATAGRAM SOCKETS
|
RDS - RELIABLE DATAGRAM SOCKETS
|
||||||
M: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
|
M: Chien Yen <chien.yen@oracle.com>
|
||||||
L: rds-devel@oss.oracle.com (moderated for non-subscribers)
|
L: rds-devel@oss.oracle.com (moderated for non-subscribers)
|
||||||
S: Supported
|
S: Supported
|
||||||
F: net/rds/
|
F: net/rds/
|
||||||
|
@ -8436,8 +8475,8 @@ TARGET SUBSYSTEM
|
||||||
M: Nicholas A. Bellinger <nab@linux-iscsi.org>
|
M: Nicholas A. Bellinger <nab@linux-iscsi.org>
|
||||||
L: linux-scsi@vger.kernel.org
|
L: linux-scsi@vger.kernel.org
|
||||||
L: target-devel@vger.kernel.org
|
L: target-devel@vger.kernel.org
|
||||||
L: http://groups.google.com/group/linux-iscsi-target-dev
|
|
||||||
W: http://www.linux-iscsi.org
|
W: http://www.linux-iscsi.org
|
||||||
|
W: http://groups.google.com/group/linux-iscsi-target-dev
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending.git master
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending.git master
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/target/
|
F: drivers/target/
|
||||||
|
@ -8678,17 +8717,17 @@ S: Maintained
|
||||||
F: drivers/media/radio/radio-raremono.c
|
F: drivers/media/radio/radio-raremono.c
|
||||||
|
|
||||||
THERMAL
|
THERMAL
|
||||||
M: Zhang Rui <rui.zhang@intel.com>
|
M: Zhang Rui <rui.zhang@intel.com>
|
||||||
M: Eduardo Valentin <eduardo.valentin@ti.com>
|
M: Eduardo Valentin <eduardo.valentin@ti.com>
|
||||||
L: linux-pm@vger.kernel.org
|
L: linux-pm@vger.kernel.org
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux.git
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal.git
|
||||||
Q: https://patchwork.kernel.org/project/linux-pm/list/
|
Q: https://patchwork.kernel.org/project/linux-pm/list/
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/thermal/
|
F: drivers/thermal/
|
||||||
F: include/linux/thermal.h
|
F: include/linux/thermal.h
|
||||||
F: include/linux/cpu_cooling.h
|
F: include/linux/cpu_cooling.h
|
||||||
F: Documentation/devicetree/bindings/thermal/
|
F: Documentation/devicetree/bindings/thermal/
|
||||||
|
|
||||||
THINGM BLINK(1) USB RGB LED DRIVER
|
THINGM BLINK(1) USB RGB LED DRIVER
|
||||||
M: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
|
M: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
|
||||||
|
@ -9722,7 +9761,6 @@ F: drivers/xen/*swiotlb*
|
||||||
XFS FILESYSTEM
|
XFS FILESYSTEM
|
||||||
P: Silicon Graphics Inc
|
P: Silicon Graphics Inc
|
||||||
M: Dave Chinner <david@fromorbit.com>
|
M: Dave Chinner <david@fromorbit.com>
|
||||||
M: Ben Myers <bpm@sgi.com>
|
|
||||||
M: xfs@oss.sgi.com
|
M: xfs@oss.sgi.com
|
||||||
L: xfs@oss.sgi.com
|
L: xfs@oss.sgi.com
|
||||||
W: http://oss.sgi.com/projects/xfs
|
W: http://oss.sgi.com/projects/xfs
|
||||||
|
@ -9791,7 +9829,7 @@ ZR36067 VIDEO FOR LINUX DRIVER
|
||||||
L: mjpeg-users@lists.sourceforge.net
|
L: mjpeg-users@lists.sourceforge.net
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
W: http://mjpeg.sourceforge.net/driver-zoran/
|
W: http://mjpeg.sourceforge.net/driver-zoran/
|
||||||
T: Mercurial http://linuxtv.org/hg/v4l-dvb
|
T: hg http://linuxtv.org/hg/v4l-dvb
|
||||||
S: Odd Fixes
|
S: Odd Fixes
|
||||||
F: drivers/media/pci/zoran/
|
F: drivers/media/pci/zoran/
|
||||||
|
|
||||||
|
|
10
Makefile
10
Makefile
|
@ -1,7 +1,7 @@
|
||||||
VERSION = 3
|
VERSION = 3
|
||||||
PATCHLEVEL = 14
|
PATCHLEVEL = 14
|
||||||
SUBLEVEL = 0
|
SUBLEVEL = 0
|
||||||
EXTRAVERSION = -rc1
|
EXTRAVERSION = -rc6
|
||||||
NAME = Shuffling Zombie Juror
|
NAME = Shuffling Zombie Juror
|
||||||
|
|
||||||
# *DOCUMENTATION*
|
# *DOCUMENTATION*
|
||||||
|
@ -605,10 +605,11 @@ endif
|
||||||
ifdef CONFIG_CC_STACKPROTECTOR_REGULAR
|
ifdef CONFIG_CC_STACKPROTECTOR_REGULAR
|
||||||
stackp-flag := -fstack-protector
|
stackp-flag := -fstack-protector
|
||||||
ifeq ($(call cc-option, $(stackp-flag)),)
|
ifeq ($(call cc-option, $(stackp-flag)),)
|
||||||
$(warning Cannot use CONFIG_CC_STACKPROTECTOR: \
|
$(warning Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: \
|
||||||
-fstack-protector not supported by compiler))
|
-fstack-protector not supported by compiler)
|
||||||
endif
|
endif
|
||||||
else ifdef CONFIG_CC_STACKPROTECTOR_STRONG
|
else
|
||||||
|
ifdef CONFIG_CC_STACKPROTECTOR_STRONG
|
||||||
stackp-flag := -fstack-protector-strong
|
stackp-flag := -fstack-protector-strong
|
||||||
ifeq ($(call cc-option, $(stackp-flag)),)
|
ifeq ($(call cc-option, $(stackp-flag)),)
|
||||||
$(warning Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: \
|
$(warning Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: \
|
||||||
|
@ -618,6 +619,7 @@ else
|
||||||
# Force off for distro compilers that enable stack protector by default.
|
# Force off for distro compilers that enable stack protector by default.
|
||||||
stackp-flag := $(call cc-option, -fno-stack-protector)
|
stackp-flag := $(call cc-option, -fno-stack-protector)
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
KBUILD_CFLAGS += $(stackp-flag)
|
KBUILD_CFLAGS += $(stackp-flag)
|
||||||
|
|
||||||
# This warning generated too much noise in a regular build.
|
# This warning generated too much noise in a regular build.
|
||||||
|
|
|
@ -282,7 +282,7 @@ static inline void __cache_line_loop(unsigned long paddr, unsigned long vaddr,
|
||||||
#else
|
#else
|
||||||
/* if V-P const for loop, PTAG can be written once outside loop */
|
/* if V-P const for loop, PTAG can be written once outside loop */
|
||||||
if (full_page_op)
|
if (full_page_op)
|
||||||
write_aux_reg(ARC_REG_DC_PTAG, paddr);
|
write_aux_reg(aux_tag, paddr);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
while (num_lines-- > 0) {
|
while (num_lines-- > 0) {
|
||||||
|
@ -296,7 +296,7 @@ static inline void __cache_line_loop(unsigned long paddr, unsigned long vaddr,
|
||||||
write_aux_reg(aux_cmd, vaddr);
|
write_aux_reg(aux_cmd, vaddr);
|
||||||
vaddr += L1_CACHE_BYTES;
|
vaddr += L1_CACHE_BYTES;
|
||||||
#else
|
#else
|
||||||
write_aux_reg(aux, paddr);
|
write_aux_reg(aux_cmd, paddr);
|
||||||
paddr += L1_CACHE_BYTES;
|
paddr += L1_CACHE_BYTES;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -1578,6 +1578,7 @@ config BL_SWITCHER_DUMMY_IF
|
||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "Memory split"
|
prompt "Memory split"
|
||||||
|
depends on MMU
|
||||||
default VMSPLIT_3G
|
default VMSPLIT_3G
|
||||||
help
|
help
|
||||||
Select the desired split between kernel and user memory.
|
Select the desired split between kernel and user memory.
|
||||||
|
@ -1595,6 +1596,7 @@ endchoice
|
||||||
|
|
||||||
config PAGE_OFFSET
|
config PAGE_OFFSET
|
||||||
hex
|
hex
|
||||||
|
default PHYS_OFFSET if !MMU
|
||||||
default 0x40000000 if VMSPLIT_1G
|
default 0x40000000 if VMSPLIT_1G
|
||||||
default 0x80000000 if VMSPLIT_2G
|
default 0x80000000 if VMSPLIT_2G
|
||||||
default 0xC0000000
|
default 0xC0000000
|
||||||
|
@ -1903,6 +1905,7 @@ config XEN
|
||||||
depends on ARM && AEABI && OF
|
depends on ARM && AEABI && OF
|
||||||
depends on CPU_V7 && !CPU_V6
|
depends on CPU_V7 && !CPU_V6
|
||||||
depends on !GENERIC_ATOMIC64
|
depends on !GENERIC_ATOMIC64
|
||||||
|
depends on MMU
|
||||||
select ARM_PSCI
|
select ARM_PSCI
|
||||||
select SWIOTLB_XEN
|
select SWIOTLB_XEN
|
||||||
select ARCH_DMA_ADDR_T_64BIT
|
select ARCH_DMA_ADDR_T_64BIT
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
ashldi3.S
|
ashldi3.S
|
||||||
|
bswapsdi2.S
|
||||||
font.c
|
font.c
|
||||||
lib1funcs.S
|
lib1funcs.S
|
||||||
hyp-stub.S
|
hyp-stub.S
|
||||||
|
|
|
@ -38,6 +38,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91sam9g35ek.dtb
|
||||||
dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb
|
dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb
|
||||||
dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb
|
dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb
|
||||||
# sama5d3
|
# sama5d3
|
||||||
|
dtb-$(CONFIG_ARCH_AT91) += at91-sama5d3_xplained.dtb
|
||||||
dtb-$(CONFIG_ARCH_AT91) += sama5d31ek.dtb
|
dtb-$(CONFIG_ARCH_AT91) += sama5d31ek.dtb
|
||||||
dtb-$(CONFIG_ARCH_AT91) += sama5d33ek.dtb
|
dtb-$(CONFIG_ARCH_AT91) += sama5d33ek.dtb
|
||||||
dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb
|
dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb
|
||||||
|
@ -208,7 +209,8 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
|
||||||
omap3-n900.dtb \
|
omap3-n900.dtb \
|
||||||
omap3-n9.dtb \
|
omap3-n9.dtb \
|
||||||
omap3-n950.dtb \
|
omap3-n950.dtb \
|
||||||
omap3-tobi.dtb \
|
omap3-overo-tobi.dtb \
|
||||||
|
omap3-overo-storm-tobi.dtb \
|
||||||
omap3-gta04.dtb \
|
omap3-gta04.dtb \
|
||||||
omap3-igep0020.dtb \
|
omap3-igep0020.dtb \
|
||||||
omap3-igep0030.dtb \
|
omap3-igep0030.dtb \
|
||||||
|
|
|
@ -121,7 +121,7 @@
|
||||||
ti,model = "AM335x-EVMSK";
|
ti,model = "AM335x-EVMSK";
|
||||||
ti,audio-codec = <&tlv320aic3106>;
|
ti,audio-codec = <&tlv320aic3106>;
|
||||||
ti,mcasp-controller = <&mcasp1>;
|
ti,mcasp-controller = <&mcasp1>;
|
||||||
ti,codec-clock-rate = <24576000>;
|
ti,codec-clock-rate = <24000000>;
|
||||||
ti,audio-routing =
|
ti,audio-routing =
|
||||||
"Headphone Jack", "HPLOUT",
|
"Headphone Jack", "HPLOUT",
|
||||||
"Headphone Jack", "HPROUT";
|
"Headphone Jack", "HPROUT";
|
||||||
|
@ -256,6 +256,12 @@
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
mmc1_pins: pinmux_mmc1_pins {
|
||||||
|
pinctrl-single,pins = <
|
||||||
|
0x160 (PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
mcasp1_pins: mcasp1_pins {
|
mcasp1_pins: mcasp1_pins {
|
||||||
pinctrl-single,pins = <
|
pinctrl-single,pins = <
|
||||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
|
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
|
||||||
|
@ -456,6 +462,9 @@
|
||||||
status = "okay";
|
status = "okay";
|
||||||
vmmc-supply = <&vmmc_reg>;
|
vmmc-supply = <&vmmc_reg>;
|
||||||
bus-width = <4>;
|
bus-width = <4>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&mmc1_pins>;
|
||||||
|
cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
||||||
&sham {
|
&sham {
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
gpio0 = &gpio0;
|
gpio0 = &gpio0;
|
||||||
gpio1 = &gpio1;
|
gpio1 = &gpio1;
|
||||||
gpio2 = &gpio2;
|
gpio2 = &gpio2;
|
||||||
|
eth3 = ð3;
|
||||||
};
|
};
|
||||||
|
|
||||||
cpus {
|
cpus {
|
||||||
|
@ -291,7 +292,7 @@
|
||||||
interrupts = <91>;
|
interrupts = <91>;
|
||||||
};
|
};
|
||||||
|
|
||||||
ethernet@34000 {
|
eth3: ethernet@34000 {
|
||||||
compatible = "marvell,armada-370-neta";
|
compatible = "marvell,armada-370-neta";
|
||||||
reg = <0x34000 0x4000>;
|
reg = <0x34000 0x4000>;
|
||||||
interrupts = <14>;
|
interrupts = <14>;
|
||||||
|
|
|
@ -0,0 +1,229 @@
|
||||||
|
/*
|
||||||
|
* at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board
|
||||||
|
*
|
||||||
|
* Copyright (C) 2014 Atmel,
|
||||||
|
* 2014 Nicolas Ferre <nicolas.ferre@atmel.com>
|
||||||
|
*
|
||||||
|
* Licensed under GPLv2 or later.
|
||||||
|
*/
|
||||||
|
/dts-v1/;
|
||||||
|
#include "sama5d36.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "SAMA5D3 Xplained";
|
||||||
|
compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs = "console=ttyS0,115200";
|
||||||
|
};
|
||||||
|
|
||||||
|
memory {
|
||||||
|
reg = <0x20000000 0x10000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
ahb {
|
||||||
|
apb {
|
||||||
|
mmc0: mmc@f0000000 {
|
||||||
|
pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>;
|
||||||
|
status = "okay";
|
||||||
|
slot@0 {
|
||||||
|
reg = <0>;
|
||||||
|
bus-width = <8>;
|
||||||
|
cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi0: spi@f0004000 {
|
||||||
|
cs-gpios = <&pioD 13 0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
can0: can@f000c000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c0: i2c@f0014000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c1: i2c@f0018000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
macb0: ethernet@f0028000 {
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
usart0: serial@f001c000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
usart1: serial@f0020000 {
|
||||||
|
pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
uart0: serial@f0024000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
mmc1: mmc@f8000000 {
|
||||||
|
pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>;
|
||||||
|
status = "okay";
|
||||||
|
slot@0 {
|
||||||
|
reg = <0>;
|
||||||
|
bus-width = <4>;
|
||||||
|
cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi1: spi@f8008000 {
|
||||||
|
cs-gpios = <&pioC 25 0>, <0>, <0>, <&pioD 16 0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
adc0: adc@f8018000 {
|
||||||
|
pinctrl-0 = <
|
||||||
|
&pinctrl_adc0_adtrg
|
||||||
|
&pinctrl_adc0_ad0
|
||||||
|
&pinctrl_adc0_ad1
|
||||||
|
&pinctrl_adc0_ad2
|
||||||
|
&pinctrl_adc0_ad3
|
||||||
|
&pinctrl_adc0_ad4
|
||||||
|
&pinctrl_adc0_ad5
|
||||||
|
&pinctrl_adc0_ad6
|
||||||
|
&pinctrl_adc0_ad7
|
||||||
|
&pinctrl_adc0_ad8
|
||||||
|
&pinctrl_adc0_ad9
|
||||||
|
>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c2: i2c@f801c000 {
|
||||||
|
dmas = <0>, <0>; /* Do not use DMA for i2c2 */
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
macb1: ethernet@f802c000 {
|
||||||
|
phy-mode = "rmii";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
dbgu: serial@ffffee00 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl@fffff200 {
|
||||||
|
board {
|
||||||
|
pinctrl_mmc0_cd: mmc0_cd {
|
||||||
|
atmel,pins =
|
||||||
|
<AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl_mmc1_cd: mmc1_cd {
|
||||||
|
atmel,pins =
|
||||||
|
<AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl_usba_vbus: usba_vbus {
|
||||||
|
atmel,pins =
|
||||||
|
<AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PE9, conflicts with A9 */
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pmc: pmc@fffffc00 {
|
||||||
|
main: mainck {
|
||||||
|
clock-frequency = <12000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nand0: nand@60000000 {
|
||||||
|
nand-bus-width = <8>;
|
||||||
|
nand-ecc-mode = "hw";
|
||||||
|
atmel,has-pmecc;
|
||||||
|
atmel,pmecc-cap = <4>;
|
||||||
|
atmel,pmecc-sector-size = <512>;
|
||||||
|
nand-on-flash-bbt;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
at91bootstrap@0 {
|
||||||
|
label = "at91bootstrap";
|
||||||
|
reg = <0x0 0x40000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
bootloader@40000 {
|
||||||
|
label = "bootloader";
|
||||||
|
reg = <0x40000 0x80000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
bootloaderenv@c0000 {
|
||||||
|
label = "bootloader env";
|
||||||
|
reg = <0xc0000 0xc0000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
dtb@180000 {
|
||||||
|
label = "device tree";
|
||||||
|
reg = <0x180000 0x80000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
kernel@200000 {
|
||||||
|
label = "kernel";
|
||||||
|
reg = <0x200000 0x600000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
rootfs@800000 {
|
||||||
|
label = "rootfs";
|
||||||
|
reg = <0x800000 0x0f800000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
usb0: gadget@00500000 {
|
||||||
|
atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_usba_vbus>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
usb1: ohci@00600000 {
|
||||||
|
num-ports = <3>;
|
||||||
|
atmel,vbus-gpio = <0
|
||||||
|
&pioE 3 GPIO_ACTIVE_LOW
|
||||||
|
&pioE 4 GPIO_ACTIVE_LOW
|
||||||
|
>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
usb2: ehci@00700000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
|
||||||
|
bp3 {
|
||||||
|
label = "PB_USER";
|
||||||
|
gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <0x104>;
|
||||||
|
gpio-key,wakeup;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
d2 {
|
||||||
|
label = "d2";
|
||||||
|
gpios = <&pioE 23 GPIO_ACTIVE_LOW>; /* PE23, conflicts with A23, CTS2 */
|
||||||
|
linux,default-trigger = "heartbeat";
|
||||||
|
};
|
||||||
|
|
||||||
|
d3 {
|
||||||
|
label = "d3";
|
||||||
|
gpios = <&pioE 24 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -523,7 +523,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
i2c0: i2c@fff88000 {
|
i2c0: i2c@fff88000 {
|
||||||
compatible = "atmel,at91sam9263-i2c";
|
compatible = "atmel,at91sam9260-i2c";
|
||||||
reg = <0xfff88000 0x100>;
|
reg = <0xfff88000 0x100>;
|
||||||
interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>;
|
interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
|
|
@ -124,6 +124,10 @@
|
||||||
nand-on-flash-bbt;
|
nand-on-flash-bbt;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
usb0: ohci@00500000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
leds {
|
leds {
|
||||||
|
|
|
@ -147,7 +147,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl@35004800 {
|
pinctrl@35004800 {
|
||||||
compatible = "brcm,capri-pinctrl";
|
compatible = "brcm,bcm11351-pinctrl";
|
||||||
reg = <0x35004800 0x430>;
|
reg = <0x35004800 0x430>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -379,15 +379,6 @@
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pmu_intc: pmu-interrupt-ctrl@d0050 {
|
|
||||||
compatible = "marvell,dove-pmu-intc";
|
|
||||||
interrupt-controller;
|
|
||||||
#interrupt-cells = <1>;
|
|
||||||
reg = <0xd0050 0x8>;
|
|
||||||
interrupts = <33>;
|
|
||||||
marvell,#interrupts = <7>;
|
|
||||||
};
|
|
||||||
|
|
||||||
pinctrl: pin-ctrl@d0200 {
|
pinctrl: pin-ctrl@d0200 {
|
||||||
compatible = "marvell,dove-pinctrl";
|
compatible = "marvell,dove-pinctrl";
|
||||||
reg = <0xd0200 0x10>;
|
reg = <0xd0200 0x10>;
|
||||||
|
@ -610,8 +601,6 @@
|
||||||
rtc: real-time-clock@d8500 {
|
rtc: real-time-clock@d8500 {
|
||||||
compatible = "marvell,orion-rtc";
|
compatible = "marvell,orion-rtc";
|
||||||
reg = <0xd8500 0x20>;
|
reg = <0xd8500 0x20>;
|
||||||
interrupt-parent = <&pmu_intc>;
|
|
||||||
interrupts = <5>;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
gpio2: gpio-ctrl@e8400 {
|
gpio2: gpio-ctrl@e8400 {
|
||||||
|
|
|
@ -52,12 +52,6 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
codec: spdif-transmitter {
|
|
||||||
compatible = "linux,spdif-dit";
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&pinctrl_hummingboard_spdif>;
|
|
||||||
};
|
|
||||||
|
|
||||||
sound-spdif {
|
sound-spdif {
|
||||||
compatible = "fsl,imx-audio-spdif";
|
compatible = "fsl,imx-audio-spdif";
|
||||||
model = "imx-spdif";
|
model = "imx-spdif";
|
||||||
|
@ -111,7 +105,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_hummingboard_spdif: hummingboard-spdif {
|
pinctrl_hummingboard_spdif: hummingboard-spdif {
|
||||||
fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0>;
|
fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x13091>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_hummingboard_usbh1_vbus: hummingboard-usbh1-vbus {
|
pinctrl_hummingboard_usbh1_vbus: hummingboard-usbh1-vbus {
|
||||||
|
@ -142,6 +136,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
&spdif {
|
&spdif {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_hummingboard_spdif>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -46,12 +46,6 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
codec: spdif-transmitter {
|
|
||||||
compatible = "linux,spdif-dit";
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&pinctrl_cubox_i_spdif>;
|
|
||||||
};
|
|
||||||
|
|
||||||
sound-spdif {
|
sound-spdif {
|
||||||
compatible = "fsl,imx-audio-spdif";
|
compatible = "fsl,imx-audio-spdif";
|
||||||
model = "imx-spdif";
|
model = "imx-spdif";
|
||||||
|
@ -89,7 +83,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_cubox_i_spdif: cubox-i-spdif {
|
pinctrl_cubox_i_spdif: cubox-i-spdif {
|
||||||
fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0>;
|
fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x13091>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_cubox_i_usbh1_vbus: cubox-i-usbh1-vbus {
|
pinctrl_cubox_i_usbh1_vbus: cubox-i-usbh1-vbus {
|
||||||
|
@ -121,6 +115,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
&spdif {
|
&spdif {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_cubox_i_spdif>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -612,7 +612,7 @@ clocks {
|
||||||
compatible = "ti,keystone,psc-clock";
|
compatible = "ti,keystone,psc-clock";
|
||||||
clocks = <&chipclk13>;
|
clocks = <&chipclk13>;
|
||||||
clock-output-names = "vcp-3";
|
clock-output-names = "vcp-3";
|
||||||
reg = <0x0235000a8 0xb00>, <0x02350060 0x400>;
|
reg = <0x023500a8 0xb00>, <0x02350060 0x400>;
|
||||||
reg-names = "control", "domain";
|
reg-names = "control", "domain";
|
||||||
domain-id = <24>;
|
domain-id = <24>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "OMAP3 GTA04";
|
model = "OMAP3 GTA04";
|
||||||
compatible = "ti,omap3-gta04", "ti,omap3";
|
compatible = "ti,omap3-gta04", "ti,omap36xx", "ti,omap3";
|
||||||
|
|
||||||
cpus {
|
cpus {
|
||||||
cpu@0 {
|
cpu@0 {
|
||||||
|
@ -32,7 +32,7 @@
|
||||||
aux-button {
|
aux-button {
|
||||||
label = "aux";
|
label = "aux";
|
||||||
linux,code = <169>;
|
linux,code = <169>;
|
||||||
gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
|
gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
|
||||||
gpio-key,wakeup;
|
gpio-key,wakeup;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -92,6 +92,8 @@
|
||||||
bmp085@77 {
|
bmp085@77 {
|
||||||
compatible = "bosch,bmp085";
|
compatible = "bosch,bmp085";
|
||||||
reg = <0x77>;
|
reg = <0x77>;
|
||||||
|
interrupt-parent = <&gpio4>;
|
||||||
|
interrupts = <17 IRQ_TYPE_EDGE_RISING>;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* leds */
|
/* leds */
|
||||||
|
@ -141,8 +143,8 @@
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&mmc1_pins>;
|
pinctrl-0 = <&mmc1_pins>;
|
||||||
vmmc-supply = <&vmmc1>;
|
vmmc-supply = <&vmmc1>;
|
||||||
vmmc_aux-supply = <&vsim>;
|
|
||||||
bus-width = <4>;
|
bus-width = <4>;
|
||||||
|
ti,non-removable;
|
||||||
};
|
};
|
||||||
|
|
||||||
&mmc2 {
|
&mmc2 {
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "IGEPv2 (TI OMAP AM/DM37x)";
|
model = "IGEPv2 (TI OMAP AM/DM37x)";
|
||||||
compatible = "isee,omap3-igep0020", "ti,omap3";
|
compatible = "isee,omap3-igep0020", "ti,omap36xx", "ti,omap3";
|
||||||
|
|
||||||
leds {
|
leds {
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "IGEP COM MODULE (TI OMAP AM/DM37x)";
|
model = "IGEP COM MODULE (TI OMAP AM/DM37x)";
|
||||||
compatible = "isee,omap3-igep0030", "ti,omap3";
|
compatible = "isee,omap3-igep0030", "ti,omap36xx", "ti,omap3";
|
||||||
|
|
||||||
leds {
|
leds {
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
|
|
|
@ -14,5 +14,5 @@
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "Nokia N9";
|
model = "Nokia N9";
|
||||||
compatible = "nokia,omap3-n9", "ti,omap3";
|
compatible = "nokia,omap3-n9", "ti,omap36xx", "ti,omap3";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
|
* Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
|
||||||
* Copyright 2013 Aaro Koskinen <aaro.koskinen@iki.fi>
|
* Copyright (C) 2013-2014 Aaro Koskinen <aaro.koskinen@iki.fi>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License version 2 (or later) as
|
* it under the terms of the GNU General Public License version 2 (or later) as
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "Nokia N900";
|
model = "Nokia N900";
|
||||||
compatible = "nokia,omap3-n900", "ti,omap3";
|
compatible = "nokia,omap3-n900", "ti,omap3430", "ti,omap3";
|
||||||
|
|
||||||
cpus {
|
cpus {
|
||||||
cpu@0 {
|
cpu@0 {
|
||||||
|
|
|
@ -14,5 +14,5 @@
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "Nokia N950";
|
model = "Nokia N950";
|
||||||
compatible = "nokia,omap3-n950", "ti,omap3";
|
compatible = "nokia,omap3-n950", "ti,omap36xx", "ti,omap3";
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2012 Florian Vaussard, EPFL Mobots group
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License version 2 as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Tobi expansion board is manufactured by Gumstix Inc.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "omap36xx.dtsi"
|
||||||
|
#include "omap3-overo-tobi-common.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "OMAP36xx/AM37xx/DM37xx Gumstix Overo on Tobi";
|
||||||
|
compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap36xx", "ti,omap3";
|
||||||
|
};
|
||||||
|
|
|
@ -13,9 +13,6 @@
|
||||||
#include "omap3-overo.dtsi"
|
#include "omap3-overo.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "TI OMAP3 Gumstix Overo on Tobi";
|
|
||||||
compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3";
|
|
||||||
|
|
||||||
leds {
|
leds {
|
||||||
compatible = "gpio-leds";
|
compatible = "gpio-leds";
|
||||||
heartbeat {
|
heartbeat {
|
|
@ -0,0 +1,22 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2012 Florian Vaussard, EPFL Mobots group
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License version 2 as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Tobi expansion board is manufactured by Gumstix Inc.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "omap34xx.dtsi"
|
||||||
|
#include "omap3-overo-tobi-common.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "OMAP35xx Gumstix Overo on Tobi";
|
||||||
|
compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3430", "ti,omap3";
|
||||||
|
};
|
||||||
|
|
|
@ -9,9 +9,6 @@
|
||||||
/*
|
/*
|
||||||
* The Gumstix Overo must be combined with an expansion board.
|
* The Gumstix Overo must be combined with an expansion board.
|
||||||
*/
|
*/
|
||||||
/dts-v1/;
|
|
||||||
|
|
||||||
#include "omap34xx.dtsi"
|
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
pwmleds {
|
pwmleds {
|
||||||
|
|
|
@ -1228,7 +1228,7 @@
|
||||||
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
|
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
|
||||||
reg = <0x00600000 0x100000>;
|
reg = <0x00600000 0x100000>;
|
||||||
interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>;
|
interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>;
|
||||||
clocks = <&usb>, <&uhphs_clk>, <&udphs_clk>,
|
clocks = <&usb>, <&uhphs_clk>, <&uhphs_clk>,
|
||||||
<&uhpck>;
|
<&uhpck>;
|
||||||
clock-names = "usb_clk", "ohci_clk", "hclk", "uhpck";
|
clock-names = "usb_clk", "ohci_clk", "hclk", "uhpck";
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
|
|
|
@ -188,7 +188,6 @@
|
||||||
msp2: msp@80117000 {
|
msp2: msp@80117000 {
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&msp2_default_mode>;
|
pinctrl-0 = <&msp2_default_mode>;
|
||||||
status = "okay";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
msp3: msp@80125000 {
|
msp3: msp@80125000 {
|
||||||
|
|
|
@ -315,7 +315,7 @@
|
||||||
ranges;
|
ranges;
|
||||||
|
|
||||||
emac: ethernet@01c0b000 {
|
emac: ethernet@01c0b000 {
|
||||||
compatible = "allwinner,sun4i-emac";
|
compatible = "allwinner,sun4i-a10-emac";
|
||||||
reg = <0x01c0b000 0x1000>;
|
reg = <0x01c0b000 0x1000>;
|
||||||
interrupts = <55>;
|
interrupts = <55>;
|
||||||
clocks = <&ahb_gates 17>;
|
clocks = <&ahb_gates 17>;
|
||||||
|
@ -323,7 +323,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
mdio@01c0b080 {
|
mdio@01c0b080 {
|
||||||
compatible = "allwinner,sun4i-mdio";
|
compatible = "allwinner,sun4i-a10-mdio";
|
||||||
reg = <0x01c0b080 0x14>;
|
reg = <0x01c0b080 0x14>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
@ -426,7 +426,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
rtp: rtp@01c25000 {
|
rtp: rtp@01c25000 {
|
||||||
compatible = "allwinner,sun4i-ts";
|
compatible = "allwinner,sun4i-a10-ts";
|
||||||
reg = <0x01c25000 0x100>;
|
reg = <0x01c25000 0x100>;
|
||||||
interrupts = <29>;
|
interrupts = <29>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -278,7 +278,7 @@
|
||||||
ranges;
|
ranges;
|
||||||
|
|
||||||
emac: ethernet@01c0b000 {
|
emac: ethernet@01c0b000 {
|
||||||
compatible = "allwinner,sun4i-emac";
|
compatible = "allwinner,sun4i-a10-emac";
|
||||||
reg = <0x01c0b000 0x1000>;
|
reg = <0x01c0b000 0x1000>;
|
||||||
interrupts = <55>;
|
interrupts = <55>;
|
||||||
clocks = <&ahb_gates 17>;
|
clocks = <&ahb_gates 17>;
|
||||||
|
@ -286,7 +286,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
mdio@01c0b080 {
|
mdio@01c0b080 {
|
||||||
compatible = "allwinner,sun4i-mdio";
|
compatible = "allwinner,sun4i-a10-mdio";
|
||||||
reg = <0x01c0b080 0x14>;
|
reg = <0x01c0b080 0x14>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
@ -383,7 +383,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
rtp: rtp@01c25000 {
|
rtp: rtp@01c25000 {
|
||||||
compatible = "allwinner,sun4i-ts";
|
compatible = "allwinner,sun4i-a10-ts";
|
||||||
reg = <0x01c25000 0x100>;
|
reg = <0x01c25000 0x100>;
|
||||||
interrupts = <29>;
|
interrupts = <29>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -346,7 +346,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
rtp: rtp@01c25000 {
|
rtp: rtp@01c25000 {
|
||||||
compatible = "allwinner,sun4i-ts";
|
compatible = "allwinner,sun4i-a10-ts";
|
||||||
reg = <0x01c25000 0x100>;
|
reg = <0x01c25000 0x100>;
|
||||||
interrupts = <29>;
|
interrupts = <29>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -340,7 +340,7 @@
|
||||||
ranges;
|
ranges;
|
||||||
|
|
||||||
emac: ethernet@01c0b000 {
|
emac: ethernet@01c0b000 {
|
||||||
compatible = "allwinner,sun4i-emac";
|
compatible = "allwinner,sun4i-a10-emac";
|
||||||
reg = <0x01c0b000 0x1000>;
|
reg = <0x01c0b000 0x1000>;
|
||||||
interrupts = <0 55 4>;
|
interrupts = <0 55 4>;
|
||||||
clocks = <&ahb_gates 17>;
|
clocks = <&ahb_gates 17>;
|
||||||
|
@ -348,7 +348,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
mdio@01c0b080 {
|
mdio@01c0b080 {
|
||||||
compatible = "allwinner,sun4i-mdio";
|
compatible = "allwinner,sun4i-a10-mdio";
|
||||||
reg = <0x01c0b080 0x14>;
|
reg = <0x01c0b080 0x14>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
@ -454,7 +454,7 @@
|
||||||
rtc: rtc@01c20d00 {
|
rtc: rtc@01c20d00 {
|
||||||
compatible = "allwinner,sun7i-a20-rtc";
|
compatible = "allwinner,sun7i-a20-rtc";
|
||||||
reg = <0x01c20d00 0x20>;
|
reg = <0x01c20d00 0x20>;
|
||||||
interrupts = <0 24 1>;
|
interrupts = <0 24 4>;
|
||||||
};
|
};
|
||||||
|
|
||||||
sid: eeprom@01c23800 {
|
sid: eeprom@01c23800 {
|
||||||
|
@ -463,7 +463,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
rtp: rtp@01c25000 {
|
rtp: rtp@01c25000 {
|
||||||
compatible = "allwinner,sun4i-ts";
|
compatible = "allwinner,sun4i-a10-ts";
|
||||||
reg = <0x01c25000 0x100>;
|
reg = <0x01c25000 0x100>;
|
||||||
interrupts = <0 29 4>;
|
interrupts = <0 29 4>;
|
||||||
};
|
};
|
||||||
|
@ -596,10 +596,10 @@
|
||||||
hstimer@01c60000 {
|
hstimer@01c60000 {
|
||||||
compatible = "allwinner,sun7i-a20-hstimer";
|
compatible = "allwinner,sun7i-a20-hstimer";
|
||||||
reg = <0x01c60000 0x1000>;
|
reg = <0x01c60000 0x1000>;
|
||||||
interrupts = <0 81 1>,
|
interrupts = <0 81 4>,
|
||||||
<0 82 1>,
|
<0 82 4>,
|
||||||
<0 83 1>,
|
<0 83 4>,
|
||||||
<0 84 1>;
|
<0 84 4>;
|
||||||
clocks = <&ahb_gates 28>;
|
clocks = <&ahb_gates 28>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -57,6 +57,8 @@
|
||||||
resets = <&tegra_car 27>;
|
resets = <&tegra_car 27>;
|
||||||
reset-names = "dc";
|
reset-names = "dc";
|
||||||
|
|
||||||
|
nvidia,head = <0>;
|
||||||
|
|
||||||
rgb {
|
rgb {
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
@ -72,6 +74,8 @@
|
||||||
resets = <&tegra_car 26>;
|
resets = <&tegra_car 26>;
|
||||||
reset-names = "dc";
|
reset-names = "dc";
|
||||||
|
|
||||||
|
nvidia,head = <1>;
|
||||||
|
|
||||||
rgb {
|
rgb {
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
|
@ -94,6 +94,8 @@
|
||||||
resets = <&tegra_car 27>;
|
resets = <&tegra_car 27>;
|
||||||
reset-names = "dc";
|
reset-names = "dc";
|
||||||
|
|
||||||
|
nvidia,head = <0>;
|
||||||
|
|
||||||
rgb {
|
rgb {
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
@ -109,6 +111,8 @@
|
||||||
resets = <&tegra_car 26>;
|
resets = <&tegra_car 26>;
|
||||||
reset-names = "dc";
|
reset-names = "dc";
|
||||||
|
|
||||||
|
nvidia,head = <1>;
|
||||||
|
|
||||||
rgb {
|
rgb {
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
compatible = "nvidia,cardhu", "nvidia,tegra30";
|
compatible = "nvidia,cardhu", "nvidia,tegra30";
|
||||||
|
|
||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps6586x@34";
|
rtc0 = "/i2c@7000d000/tps65911@2d";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -170,6 +170,8 @@
|
||||||
resets = <&tegra_car 27>;
|
resets = <&tegra_car 27>;
|
||||||
reset-names = "dc";
|
reset-names = "dc";
|
||||||
|
|
||||||
|
nvidia,head = <0>;
|
||||||
|
|
||||||
rgb {
|
rgb {
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
@ -185,6 +187,8 @@
|
||||||
resets = <&tegra_car 26>;
|
resets = <&tegra_car 26>;
|
||||||
reset-names = "dc";
|
reset-names = "dc";
|
||||||
|
|
||||||
|
nvidia,head = <1>;
|
||||||
|
|
||||||
rgb {
|
rgb {
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
/include/ "tests-phandle.dtsi"
|
|
||||||
/include/ "tests-interrupts.dtsi"
|
|
|
@ -1,4 +1,4 @@
|
||||||
/include/ "versatile-ab.dts"
|
#include <versatile-ab.dts>
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "ARM Versatile PB";
|
model = "ARM Versatile PB";
|
||||||
|
@ -47,4 +47,4 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
/include/ "testcases/tests.dtsi"
|
#include <testcases.dtsi>
|
||||||
|
|
|
@ -29,6 +29,7 @@ CONFIG_ARCH_OMAP3=y
|
||||||
CONFIG_ARCH_OMAP4=y
|
CONFIG_ARCH_OMAP4=y
|
||||||
CONFIG_SOC_OMAP5=y
|
CONFIG_SOC_OMAP5=y
|
||||||
CONFIG_SOC_AM33XX=y
|
CONFIG_SOC_AM33XX=y
|
||||||
|
CONFIG_SOC_DRA7XX=y
|
||||||
CONFIG_SOC_AM43XX=y
|
CONFIG_SOC_AM43XX=y
|
||||||
CONFIG_ARCH_ROCKCHIP=y
|
CONFIG_ARCH_ROCKCHIP=y
|
||||||
CONFIG_ARCH_SOCFPGA=y
|
CONFIG_ARCH_SOCFPGA=y
|
||||||
|
|
|
@ -204,7 +204,10 @@ CONFIG_MMC_BLOCK_MINORS=16
|
||||||
CONFIG_MMC_SDHCI=y
|
CONFIG_MMC_SDHCI=y
|
||||||
CONFIG_MMC_SDHCI_PLTFM=y
|
CONFIG_MMC_SDHCI_PLTFM=y
|
||||||
CONFIG_MMC_SDHCI_TEGRA=y
|
CONFIG_MMC_SDHCI_TEGRA=y
|
||||||
|
CONFIG_NEW_LEDS=y
|
||||||
|
CONFIG_LEDS_CLASS=y
|
||||||
CONFIG_LEDS_GPIO=y
|
CONFIG_LEDS_GPIO=y
|
||||||
|
CONFIG_LEDS_TRIGGERS=y
|
||||||
CONFIG_LEDS_TRIGGER_TIMER=y
|
CONFIG_LEDS_TRIGGER_TIMER=y
|
||||||
CONFIG_LEDS_TRIGGER_ONESHOT=y
|
CONFIG_LEDS_TRIGGER_ONESHOT=y
|
||||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||||
|
|
|
@ -212,6 +212,7 @@ extern void copy_to_user_page(struct vm_area_struct *, struct page *,
|
||||||
static inline void __flush_icache_all(void)
|
static inline void __flush_icache_all(void)
|
||||||
{
|
{
|
||||||
__flush_icache_preferred();
|
__flush_icache_preferred();
|
||||||
|
dsb();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -30,14 +30,15 @@
|
||||||
*/
|
*/
|
||||||
#define UL(x) _AC(x, UL)
|
#define UL(x) _AC(x, UL)
|
||||||
|
|
||||||
|
/* PAGE_OFFSET - the virtual address of the start of the kernel image */
|
||||||
|
#define PAGE_OFFSET UL(CONFIG_PAGE_OFFSET)
|
||||||
|
|
||||||
#ifdef CONFIG_MMU
|
#ifdef CONFIG_MMU
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* PAGE_OFFSET - the virtual address of the start of the kernel image
|
|
||||||
* TASK_SIZE - the maximum size of a user space task.
|
* TASK_SIZE - the maximum size of a user space task.
|
||||||
* TASK_UNMAPPED_BASE - the lower boundary of the mmap VM area
|
* TASK_UNMAPPED_BASE - the lower boundary of the mmap VM area
|
||||||
*/
|
*/
|
||||||
#define PAGE_OFFSET UL(CONFIG_PAGE_OFFSET)
|
|
||||||
#define TASK_SIZE (UL(CONFIG_PAGE_OFFSET) - UL(SZ_16M))
|
#define TASK_SIZE (UL(CONFIG_PAGE_OFFSET) - UL(SZ_16M))
|
||||||
#define TASK_UNMAPPED_BASE ALIGN(TASK_SIZE / 3, SZ_16M)
|
#define TASK_UNMAPPED_BASE ALIGN(TASK_SIZE / 3, SZ_16M)
|
||||||
|
|
||||||
|
@ -104,10 +105,6 @@
|
||||||
#define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE)
|
#define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef PAGE_OFFSET
|
|
||||||
#define PAGE_OFFSET PLAT_PHYS_OFFSET
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The module can be at any place in ram in nommu mode.
|
* The module can be at any place in ram in nommu mode.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -120,13 +120,16 @@
|
||||||
/*
|
/*
|
||||||
* 2nd stage PTE definitions for LPAE.
|
* 2nd stage PTE definitions for LPAE.
|
||||||
*/
|
*/
|
||||||
#define L_PTE_S2_MT_UNCACHED (_AT(pteval_t, 0x5) << 2) /* MemAttr[3:0] */
|
#define L_PTE_S2_MT_UNCACHED (_AT(pteval_t, 0x0) << 2) /* strongly ordered */
|
||||||
#define L_PTE_S2_MT_WRITETHROUGH (_AT(pteval_t, 0xa) << 2) /* MemAttr[3:0] */
|
#define L_PTE_S2_MT_WRITETHROUGH (_AT(pteval_t, 0xa) << 2) /* normal inner write-through */
|
||||||
#define L_PTE_S2_MT_WRITEBACK (_AT(pteval_t, 0xf) << 2) /* MemAttr[3:0] */
|
#define L_PTE_S2_MT_WRITEBACK (_AT(pteval_t, 0xf) << 2) /* normal inner write-back */
|
||||||
#define L_PTE_S2_RDONLY (_AT(pteval_t, 1) << 6) /* HAP[1] */
|
#define L_PTE_S2_MT_DEV_SHARED (_AT(pteval_t, 0x1) << 2) /* device */
|
||||||
#define L_PTE_S2_RDWR (_AT(pteval_t, 3) << 6) /* HAP[2:1] */
|
#define L_PTE_S2_MT_MASK (_AT(pteval_t, 0xf) << 2)
|
||||||
|
|
||||||
#define L_PMD_S2_RDWR (_AT(pmdval_t, 3) << 6) /* HAP[2:1] */
|
#define L_PTE_S2_RDONLY (_AT(pteval_t, 1) << 6) /* HAP[1] */
|
||||||
|
#define L_PTE_S2_RDWR (_AT(pteval_t, 3) << 6) /* HAP[2:1] */
|
||||||
|
|
||||||
|
#define L_PMD_S2_RDWR (_AT(pmdval_t, 3) << 6) /* HAP[2:1] */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Hyp-mode PL2 PTE definitions for LPAE.
|
* Hyp-mode PL2 PTE definitions for LPAE.
|
||||||
|
|
|
@ -37,18 +37,9 @@
|
||||||
|
|
||||||
static inline void dsb_sev(void)
|
static inline void dsb_sev(void)
|
||||||
{
|
{
|
||||||
#if __LINUX_ARM_ARCH__ >= 7
|
|
||||||
__asm__ __volatile__ (
|
dsb(ishst);
|
||||||
"dsb ishst\n"
|
__asm__(SEV);
|
||||||
SEV
|
|
||||||
);
|
|
||||||
#else
|
|
||||||
__asm__ __volatile__ (
|
|
||||||
"mcr p15, 0, %0, c7, c10, 4\n"
|
|
||||||
SEV
|
|
||||||
: : "r" (0)
|
|
||||||
);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -177,6 +177,18 @@ __lookup_processor_type_data:
|
||||||
.long __proc_info_end
|
.long __proc_info_end
|
||||||
.size __lookup_processor_type_data, . - __lookup_processor_type_data
|
.size __lookup_processor_type_data, . - __lookup_processor_type_data
|
||||||
|
|
||||||
|
__error_lpae:
|
||||||
|
#ifdef CONFIG_DEBUG_LL
|
||||||
|
adr r0, str_lpae
|
||||||
|
bl printascii
|
||||||
|
b __error
|
||||||
|
str_lpae: .asciz "\nError: Kernel with LPAE support, but CPU does not support LPAE.\n"
|
||||||
|
#else
|
||||||
|
b __error
|
||||||
|
#endif
|
||||||
|
.align
|
||||||
|
ENDPROC(__error_lpae)
|
||||||
|
|
||||||
__error_p:
|
__error_p:
|
||||||
#ifdef CONFIG_DEBUG_LL
|
#ifdef CONFIG_DEBUG_LL
|
||||||
adr r0, str_p1
|
adr r0, str_p1
|
||||||
|
|
|
@ -102,7 +102,7 @@ ENTRY(stext)
|
||||||
and r3, r3, #0xf @ extract VMSA support
|
and r3, r3, #0xf @ extract VMSA support
|
||||||
cmp r3, #5 @ long-descriptor translation table format?
|
cmp r3, #5 @ long-descriptor translation table format?
|
||||||
THUMB( it lo ) @ force fixup-able long branch encoding
|
THUMB( it lo ) @ force fixup-able long branch encoding
|
||||||
blo __error_p @ only classic page table format
|
blo __error_lpae @ only classic page table format
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CONFIG_XIP_KERNEL
|
#ifndef CONFIG_XIP_KERNEL
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue