mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-09 06:43:09 +00:00
Merge branch 'iov_iter' into for-next
This commit is contained in:
commit
ba00410b81
@ -20,4 +20,4 @@ Date: November 2007
|
|||||||
Contact: Konrad Rzeszutek <ketuzsezr@darnok.org>
|
Contact: Konrad Rzeszutek <ketuzsezr@darnok.org>
|
||||||
Description: The /sys/firmware/ibft/ethernetX directory will contain
|
Description: The /sys/firmware/ibft/ethernetX directory will contain
|
||||||
files that expose the iSCSI Boot Firmware Table NIC data.
|
files that expose the iSCSI Boot Firmware Table NIC data.
|
||||||
This can this can the IP address, MAC, and gateway of the NIC.
|
Usually this contains the IP address, MAC, and gateway of the NIC.
|
||||||
|
@ -25,7 +25,7 @@ GENFILES := $(addprefix $(MEDIA_OBJ_DIR)/, $(MEDIA_TEMP))
|
|||||||
PHONY += cleanmediadocs
|
PHONY += cleanmediadocs
|
||||||
|
|
||||||
cleanmediadocs:
|
cleanmediadocs:
|
||||||
-@rm `find $(MEDIA_OBJ_DIR) -type l` $(GENFILES) $(OBJIMGFILES) 2>/dev/null
|
-@rm -f `find $(MEDIA_OBJ_DIR) -type l` $(GENFILES) $(OBJIMGFILES) 2>/dev/null
|
||||||
|
|
||||||
$(obj)/media_api.xml: $(GENFILES) FORCE
|
$(obj)/media_api.xml: $(GENFILES) FORCE
|
||||||
|
|
||||||
|
@ -2566,6 +2566,10 @@ fields changed from _s32 to _u32.
|
|||||||
<para>Added compound control types and &VIDIOC-QUERY-EXT-CTRL;.
|
<para>Added compound control types and &VIDIOC-QUERY-EXT-CTRL;.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</orderedlist>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
<title>V4L2 in Linux 3.18</title>
|
<title>V4L2 in Linux 3.18</title>
|
||||||
<orderedlist>
|
<orderedlist>
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -324,7 +324,6 @@ tree, they need to be integration-tested. For this purpose, a special
|
|||||||
testing repository exists into which virtually all subsystem trees are
|
testing repository exists into which virtually all subsystem trees are
|
||||||
pulled on an almost daily basis:
|
pulled on an almost daily basis:
|
||||||
http://git.kernel.org/?p=linux/kernel/git/next/linux-next.git
|
http://git.kernel.org/?p=linux/kernel/git/next/linux-next.git
|
||||||
http://linux.f-seidel.de/linux-next/pmwiki/
|
|
||||||
|
|
||||||
This way, the -next kernel gives a summary outlook onto what will be
|
This way, the -next kernel gives a summary outlook onto what will be
|
||||||
expected to go into the mainline kernel at the next merge period.
|
expected to go into the mainline kernel at the next merge period.
|
||||||
|
@ -483,12 +483,10 @@ have been included in the discussion
|
|||||||
|
|
||||||
14) Using Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: and Fixes:
|
14) Using Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: and Fixes:
|
||||||
|
|
||||||
If this patch fixes a problem reported by somebody else, consider adding a
|
The Reported-by tag gives credit to people who find bugs and report them and it
|
||||||
Reported-by: tag to credit the reporter for their contribution. Please
|
hopefully inspires them to help us again in the future. Please note that if
|
||||||
note that this tag should not be added without the reporter's permission,
|
the bug was reported in private, then ask for permission first before using the
|
||||||
especially if the problem was not reported in a public forum. That said,
|
Reported-by tag.
|
||||||
if we diligently credit our bug reporters, they will, hopefully, be
|
|
||||||
inspired to help us again in the future.
|
|
||||||
|
|
||||||
A Tested-by: tag indicates that the patch has been successfully tested (in
|
A Tested-by: tag indicates that the patch has been successfully tested (in
|
||||||
some environment) by the person named. This tag informs maintainers that
|
some environment) by the person named. This tag informs maintainers that
|
||||||
|
@ -289,10 +289,6 @@ lists when they are assembled; they can be downloaded from:
|
|||||||
|
|
||||||
http://www.kernel.org/pub/linux/kernel/next/
|
http://www.kernel.org/pub/linux/kernel/next/
|
||||||
|
|
||||||
Some information about linux-next has been gathered at:
|
|
||||||
|
|
||||||
http://linux.f-seidel.de/linux-next/pmwiki/
|
|
||||||
|
|
||||||
Linux-next has become an integral part of the kernel development process;
|
Linux-next has become an integral part of the kernel development process;
|
||||||
all patches merged during a given merge window should really have found
|
all patches merged during a given merge window should really have found
|
||||||
their way into linux-next some time before the merge window opens.
|
their way into linux-next some time before the merge window opens.
|
||||||
|
@ -22,10 +22,6 @@ Beyond that, a valuable resource for kernel developers is:
|
|||||||
|
|
||||||
http://kernelnewbies.org/
|
http://kernelnewbies.org/
|
||||||
|
|
||||||
Information about the linux-next tree gathers at:
|
|
||||||
|
|
||||||
http://linux.f-seidel.de/linux-next/pmwiki/
|
|
||||||
|
|
||||||
And, of course, one should not forget http://kernel.org/, the definitive
|
And, of course, one should not forget http://kernel.org/, the definitive
|
||||||
location for kernel release information.
|
location for kernel release information.
|
||||||
|
|
||||||
|
@ -3,8 +3,10 @@
|
|||||||
Required properties:
|
Required properties:
|
||||||
- compatible : should contain one of the following:
|
- compatible : should contain one of the following:
|
||||||
- "renesas,sata-r8a7779" for R-Car H1
|
- "renesas,sata-r8a7779" for R-Car H1
|
||||||
- "renesas,sata-r8a7790" for R-Car H2
|
- "renesas,sata-r8a7790-es1" for R-Car H2 ES1
|
||||||
- "renesas,sata-r8a7791" for R-Car M2
|
- "renesas,sata-r8a7790" for R-Car H2 other than ES1
|
||||||
|
- "renesas,sata-r8a7791" for R-Car M2-W
|
||||||
|
- "renesas,sata-r8a7793" for R-Car M2-N
|
||||||
- reg : address and length of the SATA registers;
|
- reg : address and length of the SATA registers;
|
||||||
- interrupts : must consist of one interrupt specifier.
|
- interrupts : must consist of one interrupt specifier.
|
||||||
|
|
||||||
|
@ -30,10 +30,6 @@ should only be used when a device has multiple interrupt parents.
|
|||||||
Example:
|
Example:
|
||||||
interrupts-extended = <&intc1 5 1>, <&intc2 1 0>;
|
interrupts-extended = <&intc1 5 1>, <&intc2 1 0>;
|
||||||
|
|
||||||
A device node may contain either "interrupts" or "interrupts-extended", but not
|
|
||||||
both. If both properties are present, then the operating system should log an
|
|
||||||
error and use only the data in "interrupts".
|
|
||||||
|
|
||||||
2) Interrupt controller nodes
|
2) Interrupt controller nodes
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
|
@ -11,3 +11,5 @@ Optional properties:
|
|||||||
are supported on the device. Valid value for SMSC LAN91c111 are
|
are supported on the device. Valid value for SMSC LAN91c111 are
|
||||||
1, 2 or 4. If it's omitted or invalid, the size would be 2 meaning
|
1, 2 or 4. If it's omitted or invalid, the size would be 2 meaning
|
||||||
16-bit access only.
|
16-bit access only.
|
||||||
|
- power-gpios: GPIO to control the PWRDWN pin
|
||||||
|
- reset-gpios: GPIO to control the RESET pin
|
||||||
|
@ -7,3 +7,14 @@ And for the interrupt mapping part:
|
|||||||
|
|
||||||
Open Firmware Recommended Practice: Interrupt Mapping
|
Open Firmware Recommended Practice: Interrupt Mapping
|
||||||
http://www.openfirmware.org/1275/practice/imap/imap0_9d.pdf
|
http://www.openfirmware.org/1275/practice/imap/imap0_9d.pdf
|
||||||
|
|
||||||
|
Additionally to the properties specified in the above standards a host bridge
|
||||||
|
driver implementation may support the following properties:
|
||||||
|
|
||||||
|
- linux,pci-domain:
|
||||||
|
If present this property assigns a fixed PCI domain number to a host bridge,
|
||||||
|
otherwise an unstable (across boots) unique number will be assigned.
|
||||||
|
It is required to either not set this property at all or set it for all
|
||||||
|
host bridges in the system, otherwise potentially conflicting domain numbers
|
||||||
|
may be assigned to root buses behind different host bridges. The domain
|
||||||
|
number for each host bridge in the system must be unique.
|
||||||
|
@ -9,7 +9,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
TZ1090-PDC's pin configuration nodes act as a container for an abitrary number
|
TZ1090-PDC's pin configuration nodes act as a container for an arbitrary number
|
||||||
of subnodes. Each of these subnodes represents some desired configuration for a
|
of subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -9,7 +9,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
TZ1090's pin configuration nodes act as a container for an abitrary number of
|
TZ1090's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -9,7 +9,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
Lantiq's pin configuration nodes act as a container for an abitrary number of
|
Lantiq's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those group(s), and two pin configuration parameters:
|
mux function to select on those group(s), and two pin configuration parameters:
|
||||||
|
@ -9,7 +9,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
Lantiq's pin configuration nodes act as a container for an abitrary number of
|
Lantiq's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those group(s), and two pin configuration parameters:
|
mux function to select on those group(s), and two pin configuration parameters:
|
||||||
|
@ -9,7 +9,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
Tegra's pin configuration nodes act as a container for an abitrary number of
|
Tegra's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -13,7 +13,7 @@ Optional properties:
|
|||||||
Please refer to pinctrl-bindings.txt in this directory for details of the common
|
Please refer to pinctrl-bindings.txt in this directory for details of the common
|
||||||
pinctrl bindings used by client devices.
|
pinctrl bindings used by client devices.
|
||||||
|
|
||||||
SiRFprimaII's pinmux nodes act as a container for an abitrary number of subnodes.
|
SiRFprimaII's pinmux nodes act as a container for an arbitrary number of subnodes.
|
||||||
Each of these subnodes represents some desired configuration for a group of pins.
|
Each of these subnodes represents some desired configuration for a group of pins.
|
||||||
|
|
||||||
Required subnode-properties:
|
Required subnode-properties:
|
||||||
|
@ -32,7 +32,7 @@ Required properties:
|
|||||||
Please refer to pinctrl-bindings.txt in this directory for details of the common
|
Please refer to pinctrl-bindings.txt in this directory for details of the common
|
||||||
pinctrl bindings used by client devices.
|
pinctrl bindings used by client devices.
|
||||||
|
|
||||||
SPEAr's pinmux nodes act as a container for an abitrary number of subnodes. Each
|
SPEAr's pinmux nodes act as a container for an arbitrary number of subnodes. Each
|
||||||
of these subnodes represents muxing for a pin, a group, or a list of pins or
|
of these subnodes represents muxing for a pin, a group, or a list of pins or
|
||||||
groups.
|
groups.
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
Qualcomm's pin configuration nodes act as a container for an abitrary number of
|
Qualcomm's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -47,7 +47,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
The pin configuration nodes act as a container for an abitrary number of
|
The pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -18,7 +18,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
Qualcomm's pin configuration nodes act as a container for an abitrary number of
|
Qualcomm's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -47,7 +47,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
The pin configuration nodes act as a container for an abitrary number of
|
The pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -18,7 +18,7 @@ Please refer to pinctrl-bindings.txt in this directory for details of the
|
|||||||
common pinctrl bindings used by client devices, including the meaning of the
|
common pinctrl bindings used by client devices, including the meaning of the
|
||||||
phrase "pin configuration node".
|
phrase "pin configuration node".
|
||||||
|
|
||||||
Qualcomm's pin configuration nodes act as a container for an abitrary number of
|
Qualcomm's pin configuration nodes act as a container for an arbitrary number of
|
||||||
subnodes. Each of these subnodes represents some desired configuration for a
|
subnodes. Each of these subnodes represents some desired configuration for a
|
||||||
pin, a group, or a list of pins or groups. This configuration can include the
|
pin, a group, or a list of pins or groups. This configuration can include the
|
||||||
mux function to select on those pin(s)/group(s), and various pin configuration
|
mux function to select on those pin(s)/group(s), and various pin configuration
|
||||||
|
@ -7,10 +7,20 @@ Required properties:
|
|||||||
|
|
||||||
- clocks : the clock provider of SYS_MCLK
|
- clocks : the clock provider of SYS_MCLK
|
||||||
|
|
||||||
|
- VDDA-supply : the regulator provider of VDDA
|
||||||
|
|
||||||
|
- VDDIO-supply: the regulator provider of VDDIO
|
||||||
|
|
||||||
|
Optional properties:
|
||||||
|
|
||||||
|
- VDDD-supply : the regulator provider of VDDD
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
codec: sgtl5000@0a {
|
codec: sgtl5000@0a {
|
||||||
compatible = "fsl,sgtl5000";
|
compatible = "fsl,sgtl5000";
|
||||||
reg = <0x0a>;
|
reg = <0x0a>;
|
||||||
clocks = <&clks 150>;
|
clocks = <&clks 150>;
|
||||||
|
VDDA-supply = <®_3p3v>;
|
||||||
|
VDDIO-supply = <®_3p3v>;
|
||||||
};
|
};
|
||||||
|
@ -12,6 +12,9 @@ I. For patch submitters
|
|||||||
|
|
||||||
devicetree@vger.kernel.org
|
devicetree@vger.kernel.org
|
||||||
|
|
||||||
|
3) The Documentation/ portion of the patch should come in the series before
|
||||||
|
the code implementing the binding.
|
||||||
|
|
||||||
II. For kernel maintainers
|
II. For kernel maintainers
|
||||||
|
|
||||||
1) If you aren't comfortable reviewing a given binding, reply to it and ask
|
1) If you aren't comfortable reviewing a given binding, reply to it and ask
|
||||||
|
@ -7,7 +7,10 @@ Required properties:
|
|||||||
- "renesas,thermal-r8a73a4" (R-Mobile AP6)
|
- "renesas,thermal-r8a73a4" (R-Mobile AP6)
|
||||||
- "renesas,thermal-r8a7779" (R-Car H1)
|
- "renesas,thermal-r8a7779" (R-Car H1)
|
||||||
- "renesas,thermal-r8a7790" (R-Car H2)
|
- "renesas,thermal-r8a7790" (R-Car H2)
|
||||||
- "renesas,thermal-r8a7791" (R-Car M2)
|
- "renesas,thermal-r8a7791" (R-Car M2-W)
|
||||||
|
- "renesas,thermal-r8a7792" (R-Car V2H)
|
||||||
|
- "renesas,thermal-r8a7793" (R-Car M2-N)
|
||||||
|
- "renesas,thermal-r8a7794" (R-Car E2)
|
||||||
- reg : Address range of the thermal registers.
|
- reg : Address range of the thermal registers.
|
||||||
The 1st reg will be recognized as common register
|
The 1st reg will be recognized as common register
|
||||||
if it has "interrupts".
|
if it has "interrupts".
|
||||||
|
@ -34,6 +34,7 @@ chipidea Chipidea, Inc
|
|||||||
chrp Common Hardware Reference Platform
|
chrp Common Hardware Reference Platform
|
||||||
chunghwa Chunghwa Picture Tubes Ltd.
|
chunghwa Chunghwa Picture Tubes Ltd.
|
||||||
cirrus Cirrus Logic, Inc.
|
cirrus Cirrus Logic, Inc.
|
||||||
|
cnm Chips&Media, Inc.
|
||||||
cortina Cortina Systems, Inc.
|
cortina Cortina Systems, Inc.
|
||||||
crystalfontz Crystalfontz America, Inc.
|
crystalfontz Crystalfontz America, Inc.
|
||||||
dallas Maxim Integrated Products (formerly Dallas Semiconductor)
|
dallas Maxim Integrated Products (formerly Dallas Semiconductor)
|
||||||
@ -92,6 +93,7 @@ maxim Maxim Integrated Products
|
|||||||
mediatek MediaTek Inc.
|
mediatek MediaTek Inc.
|
||||||
micrel Micrel Inc.
|
micrel Micrel Inc.
|
||||||
microchip Microchip Technology Inc.
|
microchip Microchip Technology Inc.
|
||||||
|
micron Micron Technology Inc.
|
||||||
mitsubishi Mitsubishi Electric Corporation
|
mitsubishi Mitsubishi Electric Corporation
|
||||||
mosaixtech Mosaix Technologies, Inc.
|
mosaixtech Mosaix Technologies, Inc.
|
||||||
moxa Moxa
|
moxa Moxa
|
||||||
@ -127,6 +129,7 @@ renesas Renesas Electronics Corporation
|
|||||||
ricoh Ricoh Co. Ltd.
|
ricoh Ricoh Co. Ltd.
|
||||||
rockchip Fuzhou Rockchip Electronics Co., Ltd
|
rockchip Fuzhou Rockchip Electronics Co., Ltd
|
||||||
samsung Samsung Semiconductor
|
samsung Samsung Semiconductor
|
||||||
|
sandisk Sandisk Corporation
|
||||||
sbs Smart Battery System
|
sbs Smart Battery System
|
||||||
schindler Schindler
|
schindler Schindler
|
||||||
seagate Seagate Technology PLC
|
seagate Seagate Technology PLC
|
||||||
@ -138,7 +141,7 @@ silergy Silergy Corp.
|
|||||||
sirf SiRF Technology, Inc.
|
sirf SiRF Technology, Inc.
|
||||||
sitronix Sitronix Technology Corporation
|
sitronix Sitronix Technology Corporation
|
||||||
smsc Standard Microsystems Corporation
|
smsc Standard Microsystems Corporation
|
||||||
snps Synopsys, Inc.
|
snps Synopsys, Inc.
|
||||||
solidrun SolidRun
|
solidrun SolidRun
|
||||||
sony Sony Corporation
|
sony Sony Corporation
|
||||||
spansion Spansion Inc.
|
spansion Spansion Inc.
|
||||||
|
@ -64,7 +64,7 @@ is formed.
|
|||||||
At mount time, the two directories given as mount options "lowerdir" and
|
At mount time, the two directories given as mount options "lowerdir" and
|
||||||
"upperdir" are combined into a merged directory:
|
"upperdir" are combined into a merged directory:
|
||||||
|
|
||||||
mount -t overlayfs overlayfs -olowerdir=/lower,upperdir=/upper,\
|
mount -t overlay overlay -olowerdir=/lower,upperdir=/upper,\
|
||||||
workdir=/work /merged
|
workdir=/work /merged
|
||||||
|
|
||||||
The "workdir" needs to be an empty directory on the same filesystem
|
The "workdir" needs to be an empty directory on the same filesystem
|
||||||
|
@ -38,22 +38,38 @@ Contents
|
|||||||
7.2.1 Status packet
|
7.2.1 Status packet
|
||||||
7.2.2 Head packet
|
7.2.2 Head packet
|
||||||
7.2.3 Motion packet
|
7.2.3 Motion packet
|
||||||
|
8. Trackpoint (for Hardware version 3 and 4)
|
||||||
|
8.1 Registers
|
||||||
|
8.2 Native relative mode 6 byte packet format
|
||||||
|
8.2.1 Status Packet
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
1. Introduction
|
1. Introduction
|
||||||
~~~~~~~~~~~~
|
~~~~~~~~~~~~
|
||||||
|
|
||||||
Currently the Linux Elantech touchpad driver is aware of two different
|
Currently the Linux Elantech touchpad driver is aware of four different
|
||||||
hardware versions unimaginatively called version 1 and version 2. Version 1
|
hardware versions unimaginatively called version 1,version 2, version 3
|
||||||
is found in "older" laptops and uses 4 bytes per packet. Version 2 seems to
|
and version 4. Version 1 is found in "older" laptops and uses 4 bytes per
|
||||||
be introduced with the EeePC and uses 6 bytes per packet, and provides
|
packet. Version 2 seems to be introduced with the EeePC and uses 6 bytes
|
||||||
additional features such as position of two fingers, and width of the touch.
|
per packet, and provides additional features such as position of two fingers,
|
||||||
|
and width of the touch. Hardware version 3 uses 6 bytes per packet (and
|
||||||
|
for 2 fingers the concatenation of two 6 bytes packets) and allows tracking
|
||||||
|
of up to 3 fingers. Hardware version 4 uses 6 bytes per packet, and can
|
||||||
|
combine a status packet with multiple head or motion packets. Hardware version
|
||||||
|
4 allows tracking up to 5 fingers.
|
||||||
|
|
||||||
|
Some Hardware version 3 and version 4 also have a trackpoint which uses a
|
||||||
|
separate packet format. It is also 6 bytes per packet.
|
||||||
|
|
||||||
The driver tries to support both hardware versions and should be compatible
|
The driver tries to support both hardware versions and should be compatible
|
||||||
with the Xorg Synaptics touchpad driver and its graphical configuration
|
with the Xorg Synaptics touchpad driver and its graphical configuration
|
||||||
utilities.
|
utilities.
|
||||||
|
|
||||||
|
Note that a mouse button is also associated with either the touchpad or the
|
||||||
|
trackpoint when a trackpoint is available. Disabling the Touchpad in xorg
|
||||||
|
(TouchPadOff=0) will also disable the buttons associated with the touchpad.
|
||||||
|
|
||||||
Additionally the operation of the touchpad can be altered by adjusting the
|
Additionally the operation of the touchpad can be altered by adjusting the
|
||||||
contents of some of its internal registers. These registers are represented
|
contents of some of its internal registers. These registers are represented
|
||||||
by the driver as sysfs entries under /sys/bus/serio/drivers/psmouse/serio?
|
by the driver as sysfs entries under /sys/bus/serio/drivers/psmouse/serio?
|
||||||
@ -78,7 +94,7 @@ completeness sake.
|
|||||||
2. Extra knobs
|
2. Extra knobs
|
||||||
~~~~~~~~~~~
|
~~~~~~~~~~~
|
||||||
|
|
||||||
Currently the Linux Elantech touchpad driver provides two extra knobs under
|
Currently the Linux Elantech touchpad driver provides three extra knobs under
|
||||||
/sys/bus/serio/drivers/psmouse/serio? for the user.
|
/sys/bus/serio/drivers/psmouse/serio? for the user.
|
||||||
|
|
||||||
* debug
|
* debug
|
||||||
@ -112,6 +128,20 @@ Currently the Linux Elantech touchpad driver provides two extra knobs under
|
|||||||
data consistency checking can be done. For now checking is disabled by
|
data consistency checking can be done. For now checking is disabled by
|
||||||
default. Currently even turning it on will do nothing.
|
default. Currently even turning it on will do nothing.
|
||||||
|
|
||||||
|
* crc_enabled
|
||||||
|
|
||||||
|
Sets crc_enabled to 0/1. The name "crc_enabled" is the official name of
|
||||||
|
this integrity check, even though it is not an actual cyclic redundancy
|
||||||
|
check.
|
||||||
|
|
||||||
|
Depending on the state of crc_enabled, certain basic data integrity
|
||||||
|
verification is done by the driver on hardware version 3 and 4. The
|
||||||
|
driver will reject any packet that appears corrupted. Using this knob,
|
||||||
|
The state of crc_enabled can be altered with this knob.
|
||||||
|
|
||||||
|
Reading the crc_enabled value will show the active value. Echoing
|
||||||
|
"0" or "1" to this file will set the state to "0" or "1".
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
3. Differentiating hardware versions
|
3. Differentiating hardware versions
|
||||||
@ -746,3 +776,42 @@ byte 5:
|
|||||||
|
|
||||||
byte 0 ~ 2 for one finger
|
byte 0 ~ 2 for one finger
|
||||||
byte 3 ~ 5 for another
|
byte 3 ~ 5 for another
|
||||||
|
|
||||||
|
|
||||||
|
8. Trackpoint (for Hardware version 3 and 4)
|
||||||
|
=========================================
|
||||||
|
8.1 Registers
|
||||||
|
~~~~~~~~~
|
||||||
|
No special registers have been identified.
|
||||||
|
|
||||||
|
8.2 Native relative mode 6 byte packet format
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
8.2.1 Status Packet
|
||||||
|
~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
byte 0:
|
||||||
|
bit 7 6 5 4 3 2 1 0
|
||||||
|
0 0 sx sy 0 M R L
|
||||||
|
byte 1:
|
||||||
|
bit 7 6 5 4 3 2 1 0
|
||||||
|
~sx 0 0 0 0 0 0 0
|
||||||
|
byte 2:
|
||||||
|
bit 7 6 5 4 3 2 1 0
|
||||||
|
~sy 0 0 0 0 0 0 0
|
||||||
|
byte 3:
|
||||||
|
bit 7 6 5 4 3 2 1 0
|
||||||
|
0 0 ~sy ~sx 0 1 1 0
|
||||||
|
byte 4:
|
||||||
|
bit 7 6 5 4 3 2 1 0
|
||||||
|
x7 x6 x5 x4 x3 x2 x1 x0
|
||||||
|
byte 5:
|
||||||
|
bit 7 6 5 4 3 2 1 0
|
||||||
|
y7 y6 y5 y4 y3 y2 y1 y0
|
||||||
|
|
||||||
|
|
||||||
|
x and y are written in two's complement spread
|
||||||
|
over 9 bits with sx/sy the relative top bit and
|
||||||
|
x7..x0 and y7..y0 the lower bits.
|
||||||
|
~sx is the inverse of sx, ~sy is the inverse of sy.
|
||||||
|
The sign of y is opposite to what the input driver
|
||||||
|
expects for a relative movement
|
||||||
|
@ -1264,7 +1264,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
|||||||
i8042.noloop [HW] Disable the AUX Loopback command while probing
|
i8042.noloop [HW] Disable the AUX Loopback command while probing
|
||||||
for the AUX port
|
for the AUX port
|
||||||
i8042.nomux [HW] Don't check presence of an active multiplexing
|
i8042.nomux [HW] Don't check presence of an active multiplexing
|
||||||
controller. Default: true.
|
controller
|
||||||
i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX
|
i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX
|
||||||
controllers
|
controllers
|
||||||
i8042.notimeout [HW] Ignore timeout condition signalled by controller
|
i8042.notimeout [HW] Ignore timeout condition signalled by controller
|
||||||
@ -1307,6 +1307,18 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
|||||||
.cdrom .chs .ignore_cable are additional options
|
.cdrom .chs .ignore_cable are additional options
|
||||||
See Documentation/ide/ide.txt.
|
See Documentation/ide/ide.txt.
|
||||||
|
|
||||||
|
ide-generic.probe-mask= [HW] (E)IDE subsystem
|
||||||
|
Format: <int>
|
||||||
|
Probe mask for legacy ISA IDE ports. Depending on
|
||||||
|
platform up to 6 ports are supported, enabled by
|
||||||
|
setting corresponding bits in the mask to 1. The
|
||||||
|
default value is 0x0, which has a special meaning.
|
||||||
|
On systems that have PCI, it triggers scanning the
|
||||||
|
PCI bus for the first and the second port, which
|
||||||
|
are then probed. On systems without PCI the value
|
||||||
|
of 0x0 enables probing the two first ports as if it
|
||||||
|
was 0x3.
|
||||||
|
|
||||||
ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem
|
ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem
|
||||||
Claim all unknown PCI IDE storage controllers.
|
Claim all unknown PCI IDE storage controllers.
|
||||||
|
|
||||||
@ -1587,6 +1599,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
|||||||
kmemleak= [KNL] Boot-time kmemleak enable/disable
|
kmemleak= [KNL] Boot-time kmemleak enable/disable
|
||||||
Valid arguments: on, off
|
Valid arguments: on, off
|
||||||
Default: on
|
Default: on
|
||||||
|
Built with CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y,
|
||||||
|
the default is off.
|
||||||
|
|
||||||
kmemcheck= [X86] Boot-time kmemcheck enable/disable/one-shot mode
|
kmemcheck= [X86] Boot-time kmemcheck enable/disable/one-shot mode
|
||||||
Valid arguments: 0, 1, 2
|
Valid arguments: 0, 1, 2
|
||||||
@ -3607,7 +3621,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
|||||||
|
|
||||||
usb-storage.delay_use=
|
usb-storage.delay_use=
|
||||||
[UMS] The delay in seconds before a new device is
|
[UMS] The delay in seconds before a new device is
|
||||||
scanned for Logical Units (default 5).
|
scanned for Logical Units (default 1).
|
||||||
|
|
||||||
usb-storage.quirks=
|
usb-storage.quirks=
|
||||||
[UMS] A list of quirks entries to supplement or
|
[UMS] A list of quirks entries to supplement or
|
||||||
|
@ -62,6 +62,10 @@ Memory may be allocated or freed before kmemleak is initialised and
|
|||||||
these actions are stored in an early log buffer. The size of this buffer
|
these actions are stored in an early log buffer. The size of this buffer
|
||||||
is configured via the CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE option.
|
is configured via the CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE option.
|
||||||
|
|
||||||
|
If CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF are enabled, the kmemleak is
|
||||||
|
disabled by default. Passing "kmemleak=on" on the kernel command
|
||||||
|
line enables the function.
|
||||||
|
|
||||||
Basic Algorithm
|
Basic Algorithm
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
|
@ -56,6 +56,13 @@ ip_forward_use_pmtu - BOOLEAN
|
|||||||
0 - disabled
|
0 - disabled
|
||||||
1 - enabled
|
1 - enabled
|
||||||
|
|
||||||
|
fwmark_reflect - BOOLEAN
|
||||||
|
Controls the fwmark of kernel-generated IPv4 reply packets that are not
|
||||||
|
associated with a socket for example, TCP RSTs or ICMP echo replies).
|
||||||
|
If unset, these packets have a fwmark of zero. If set, they have the
|
||||||
|
fwmark of the packet they are replying to.
|
||||||
|
Default: 0
|
||||||
|
|
||||||
route/max_size - INTEGER
|
route/max_size - INTEGER
|
||||||
Maximum number of routes allowed in the kernel. Increase
|
Maximum number of routes allowed in the kernel. Increase
|
||||||
this when using large numbers of interfaces and/or routes.
|
this when using large numbers of interfaces and/or routes.
|
||||||
@ -1201,6 +1208,13 @@ conf/all/forwarding - BOOLEAN
|
|||||||
proxy_ndp - BOOLEAN
|
proxy_ndp - BOOLEAN
|
||||||
Do proxy ndp.
|
Do proxy ndp.
|
||||||
|
|
||||||
|
fwmark_reflect - BOOLEAN
|
||||||
|
Controls the fwmark of kernel-generated IPv6 reply packets that are not
|
||||||
|
associated with a socket for example, TCP RSTs or ICMPv6 echo replies).
|
||||||
|
If unset, these packets have a fwmark of zero. If set, they have the
|
||||||
|
fwmark of the packet they are replying to.
|
||||||
|
Default: 0
|
||||||
|
|
||||||
conf/interface/*:
|
conf/interface/*:
|
||||||
Change special settings per interface.
|
Change special settings per interface.
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# List of programs to build
|
# List of programs to build
|
||||||
hostprogs-y := disable-tsc-ctxt-sw-stress-test disable-tsc-on-off-stress-test disable-tsc-test
|
hostprogs-$(CONFIG_X86) := disable-tsc-ctxt-sw-stress-test disable-tsc-on-off-stress-test disable-tsc-test
|
||||||
# Tell kbuild to always build the programs
|
# Tell kbuild to always build the programs
|
||||||
always := $(hostprogs-y)
|
always := $(hostprogs-y)
|
||||||
|
|
||||||
|
33
Documentation/ptp/testptp.mk
Normal file
33
Documentation/ptp/testptp.mk
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
# PTP 1588 clock support - User space test program
|
||||||
|
#
|
||||||
|
# Copyright (C) 2010 OMICRON electronics GmbH
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
CC = $(CROSS_COMPILE)gcc
|
||||||
|
INC = -I$(KBUILD_OUTPUT)/usr/include
|
||||||
|
CFLAGS = -Wall $(INC)
|
||||||
|
LDLIBS = -lrt
|
||||||
|
PROGS = testptp
|
||||||
|
|
||||||
|
all: $(PROGS)
|
||||||
|
|
||||||
|
testptp: testptp.o
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f testptp.o
|
||||||
|
|
||||||
|
distclean: clean
|
||||||
|
rm -f $(PROGS)
|
@ -10,3 +10,6 @@ always := $(hostprogs-y)
|
|||||||
HOSTCFLAGS := -I$(objtree)/usr/include -std=gnu99
|
HOSTCFLAGS := -I$(objtree)/usr/include -std=gnu99
|
||||||
HOSTCFLAGS_vdso_standalone_test_x86.o := -fno-asynchronous-unwind-tables -fno-stack-protector
|
HOSTCFLAGS_vdso_standalone_test_x86.o := -fno-asynchronous-unwind-tables -fno-stack-protector
|
||||||
HOSTLOADLIBES_vdso_standalone_test_x86 := -nostdlib
|
HOSTLOADLIBES_vdso_standalone_test_x86 := -nostdlib
|
||||||
|
ifeq ($(CONFIG_X86_32),y)
|
||||||
|
HOSTLOADLIBES_vdso_standalone_test_x86 += -lgcc_s
|
||||||
|
endif
|
||||||
|
@ -63,7 +63,7 @@ static inline void linux_exit(int code)
|
|||||||
x86_syscall3(__NR_exit, code, 0, 0);
|
x86_syscall3(__NR_exit, code, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void to_base10(char *lastdig, uint64_t n)
|
void to_base10(char *lastdig, time_t n)
|
||||||
{
|
{
|
||||||
while (n) {
|
while (n) {
|
||||||
*lastdig = (n % 10) + '0';
|
*lastdig = (n % 10) + '0';
|
||||||
|
@ -221,12 +221,11 @@ ccs_out_mode: specify the allowed video output crop/compose/scaling combination
|
|||||||
key, not quality.
|
key, not quality.
|
||||||
|
|
||||||
multiplanar: select whether each device instance supports multi-planar formats,
|
multiplanar: select whether each device instance supports multi-planar formats,
|
||||||
and thus the V4L2 multi-planar API. By default the first device instance
|
and thus the V4L2 multi-planar API. By default device instances are
|
||||||
is single-planar, the second multi-planar, and it keeps alternating.
|
single-planar.
|
||||||
|
|
||||||
This module option can override that for each instance. Values are:
|
This module option can override that for each instance. Values are:
|
||||||
|
|
||||||
0: use alternating single and multi-planar devices.
|
|
||||||
1: this is a single-planar instance.
|
1: this is a single-planar instance.
|
||||||
2: this is a multi-planar instance.
|
2: this is a multi-planar instance.
|
||||||
|
|
||||||
@ -975,9 +974,8 @@ is set, then the alpha component is only used for the color red and set to
|
|||||||
0 otherwise.
|
0 otherwise.
|
||||||
|
|
||||||
The driver has to be configured to support the multiplanar formats. By default
|
The driver has to be configured to support the multiplanar formats. By default
|
||||||
the first driver instance is single-planar, the second is multi-planar, and it
|
the driver instances are single-planar. This can be changed by setting the
|
||||||
keeps alternating. This can be changed by setting the multiplanar module option,
|
multiplanar module option, see section 1 for more details on that option.
|
||||||
see section 1 for more details on that option.
|
|
||||||
|
|
||||||
If the driver instance is using the multiplanar formats/API, then the first
|
If the driver instance is using the multiplanar formats/API, then the first
|
||||||
single planar format (YUYV) and the multiplanar NV16M and NV61M formats the
|
single planar format (YUYV) and the multiplanar NV16M and NV61M formats the
|
||||||
@ -1021,7 +1019,7 @@ the output overlay for the video output, turn on video looping and capture
|
|||||||
to see the blended framebuffer overlay that's being written to by the second
|
to see the blended framebuffer overlay that's being written to by the second
|
||||||
instance. This setup would require the following commands:
|
instance. This setup would require the following commands:
|
||||||
|
|
||||||
$ sudo modprobe vivid n_devs=2 node_types=0x10101,0x1 multiplanar=1,1
|
$ sudo modprobe vivid n_devs=2 node_types=0x10101,0x1
|
||||||
$ v4l2-ctl -d1 --find-fb
|
$ v4l2-ctl -d1 --find-fb
|
||||||
/dev/fb1 is the framebuffer associated with base address 0x12800000
|
/dev/fb1 is the framebuffer associated with base address 0x12800000
|
||||||
$ sudo v4l2-ctl -d2 --set-fbuf fb=1
|
$ sudo v4l2-ctl -d2 --set-fbuf fb=1
|
||||||
|
@ -274,7 +274,7 @@ This command mounts a (pseudo) filesystem of type hugetlbfs on the directory
|
|||||||
/mnt/huge. Any files created on /mnt/huge uses huge pages. The uid and gid
|
/mnt/huge. Any files created on /mnt/huge uses huge pages. The uid and gid
|
||||||
options sets the owner and group of the root of the file system. By default
|
options sets the owner and group of the root of the file system. By default
|
||||||
the uid and gid of the current process are taken. The mode option sets the
|
the uid and gid of the current process are taken. The mode option sets the
|
||||||
mode of root of file system to value & 0777. This value is given in octal.
|
mode of root of file system to value & 01777. This value is given in octal.
|
||||||
By default the value 0755 is picked. The size option sets the maximum value of
|
By default the value 0755 is picked. The size option sets the maximum value of
|
||||||
memory (huge pages) allowed for that filesystem (/mnt/huge). The size is
|
memory (huge pages) allowed for that filesystem (/mnt/huge). The size is
|
||||||
rounded down to HPAGE_SIZE. The option nr_inodes sets the maximum number of
|
rounded down to HPAGE_SIZE. The option nr_inodes sets the maximum number of
|
||||||
|
65
MAINTAINERS
65
MAINTAINERS
@ -1543,6 +1543,7 @@ F: arch/arm/mach-pxa/include/mach/z2.h
|
|||||||
|
|
||||||
ARM/ZYNQ ARCHITECTURE
|
ARM/ZYNQ ARCHITECTURE
|
||||||
M: Michal Simek <michal.simek@xilinx.com>
|
M: Michal Simek <michal.simek@xilinx.com>
|
||||||
|
R: Sören Brinkmann <soren.brinkmann@xilinx.com>
|
||||||
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||||
W: http://wiki.xilinx.com
|
W: http://wiki.xilinx.com
|
||||||
T: git git://git.xilinx.com/linux-xlnx.git
|
T: git git://git.xilinx.com/linux-xlnx.git
|
||||||
@ -2071,8 +2072,9 @@ F: drivers/clocksource/bcm_kona_timer.c
|
|||||||
|
|
||||||
BROADCOM BCM2835 ARM ARCHITECTURE
|
BROADCOM BCM2835 ARM ARCHITECTURE
|
||||||
M: Stephen Warren <swarren@wwwdotorg.org>
|
M: Stephen Warren <swarren@wwwdotorg.org>
|
||||||
|
M: Lee Jones <lee@kernel.org>
|
||||||
L: linux-rpi-kernel@lists.infradead.org (moderated for non-subscribers)
|
L: linux-rpi-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-rpi.git
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/rpi/linux-rpi.git
|
||||||
S: Maintained
|
S: Maintained
|
||||||
N: bcm2835
|
N: bcm2835
|
||||||
|
|
||||||
@ -2742,6 +2744,13 @@ W: http://www.chelsio.com
|
|||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/net/ethernet/chelsio/cxgb3/
|
F: drivers/net/ethernet/chelsio/cxgb3/
|
||||||
|
|
||||||
|
CXGB3 ISCSI DRIVER (CXGB3I)
|
||||||
|
M: Karen Xie <kxie@chelsio.com>
|
||||||
|
L: linux-scsi@vger.kernel.org
|
||||||
|
W: http://www.chelsio.com
|
||||||
|
S: Supported
|
||||||
|
F: drivers/scsi/cxgbi/cxgb3i
|
||||||
|
|
||||||
CXGB3 IWARP RNIC DRIVER (IW_CXGB3)
|
CXGB3 IWARP RNIC DRIVER (IW_CXGB3)
|
||||||
M: Steve Wise <swise@chelsio.com>
|
M: Steve Wise <swise@chelsio.com>
|
||||||
L: linux-rdma@vger.kernel.org
|
L: linux-rdma@vger.kernel.org
|
||||||
@ -2756,6 +2765,13 @@ W: http://www.chelsio.com
|
|||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/net/ethernet/chelsio/cxgb4/
|
F: drivers/net/ethernet/chelsio/cxgb4/
|
||||||
|
|
||||||
|
CXGB4 ISCSI DRIVER (CXGB4I)
|
||||||
|
M: Karen Xie <kxie@chelsio.com>
|
||||||
|
L: linux-scsi@vger.kernel.org
|
||||||
|
W: http://www.chelsio.com
|
||||||
|
S: Supported
|
||||||
|
F: drivers/scsi/cxgbi/cxgb4i
|
||||||
|
|
||||||
CXGB4 IWARP RNIC DRIVER (IW_CXGB4)
|
CXGB4 IWARP RNIC DRIVER (IW_CXGB4)
|
||||||
M: Steve Wise <swise@chelsio.com>
|
M: Steve Wise <swise@chelsio.com>
|
||||||
L: linux-rdma@vger.kernel.org
|
L: linux-rdma@vger.kernel.org
|
||||||
@ -4312,8 +4328,10 @@ F: Documentation/blockdev/cpqarray.txt
|
|||||||
F: drivers/block/cpqarray.*
|
F: drivers/block/cpqarray.*
|
||||||
|
|
||||||
HEWLETT-PACKARD SMART ARRAY RAID DRIVER (hpsa)
|
HEWLETT-PACKARD SMART ARRAY RAID DRIVER (hpsa)
|
||||||
M: "Stephen M. Cameron" <scameron@beardog.cce.hp.com>
|
M: Don Brace <don.brace@pmcs.com>
|
||||||
L: iss_storagedev@hp.com
|
L: iss_storagedev@hp.com
|
||||||
|
L: storagedev@pmcs.com
|
||||||
|
L: linux-scsi@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
F: Documentation/scsi/hpsa.txt
|
F: Documentation/scsi/hpsa.txt
|
||||||
F: drivers/scsi/hpsa*.[ch]
|
F: drivers/scsi/hpsa*.[ch]
|
||||||
@ -4321,8 +4339,10 @@ F: include/linux/cciss*.h
|
|||||||
F: include/uapi/linux/cciss*.h
|
F: include/uapi/linux/cciss*.h
|
||||||
|
|
||||||
HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss)
|
HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss)
|
||||||
M: Mike Miller <mike.miller@hp.com>
|
M: Don Brace <don.brace@pmcs.com>
|
||||||
L: iss_storagedev@hp.com
|
L: iss_storagedev@hp.com
|
||||||
|
L: storagedev@pmcs.com
|
||||||
|
L: linux-scsi@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
F: Documentation/blockdev/cciss.txt
|
F: Documentation/blockdev/cciss.txt
|
||||||
F: drivers/block/cciss*
|
F: drivers/block/cciss*
|
||||||
@ -4608,7 +4628,7 @@ S: Supported
|
|||||||
F: drivers/crypto/nx/
|
F: drivers/crypto/nx/
|
||||||
|
|
||||||
IBM Power 842 compression accelerator
|
IBM Power 842 compression accelerator
|
||||||
M: Nathan Fontenot <nfont@linux.vnet.ibm.com>
|
M: Dan Streetman <ddstreet@us.ibm.com>
|
||||||
S: Supported
|
S: Supported
|
||||||
F: drivers/crypto/nx/nx-842.c
|
F: drivers/crypto/nx/nx-842.c
|
||||||
F: include/linux/nx842.h
|
F: include/linux/nx842.h
|
||||||
@ -4710,6 +4730,7 @@ L: linux-iio@vger.kernel.org
|
|||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/iio/
|
F: drivers/iio/
|
||||||
F: drivers/staging/iio/
|
F: drivers/staging/iio/
|
||||||
|
F: include/linux/iio/
|
||||||
|
|
||||||
IKANOS/ADI EAGLE ADSL USB DRIVER
|
IKANOS/ADI EAGLE ADSL USB DRIVER
|
||||||
M: Matthieu Castet <castet.matthieu@free.fr>
|
M: Matthieu Castet <castet.matthieu@free.fr>
|
||||||
@ -6590,6 +6611,23 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git
|
|||||||
S: Maintained
|
S: Maintained
|
||||||
F: arch/arm/*omap*/
|
F: arch/arm/*omap*/
|
||||||
F: drivers/i2c/busses/i2c-omap.c
|
F: drivers/i2c/busses/i2c-omap.c
|
||||||
|
F: drivers/irqchip/irq-omap-intc.c
|
||||||
|
F: drivers/mfd/*omap*.c
|
||||||
|
F: drivers/mfd/menelaus.c
|
||||||
|
F: drivers/mfd/palmas.c
|
||||||
|
F: drivers/mfd/tps65217.c
|
||||||
|
F: drivers/mfd/tps65218.c
|
||||||
|
F: drivers/mfd/tps65910.c
|
||||||
|
F: drivers/mfd/twl-core.[ch]
|
||||||
|
F: drivers/mfd/twl4030*.c
|
||||||
|
F: drivers/mfd/twl6030*.c
|
||||||
|
F: drivers/mfd/twl6040*.c
|
||||||
|
F: drivers/regulator/palmas-regulator*.c
|
||||||
|
F: drivers/regulator/pbias-regulator.c
|
||||||
|
F: drivers/regulator/tps65217-regulator.c
|
||||||
|
F: drivers/regulator/tps65218-regulator.c
|
||||||
|
F: drivers/regulator/tps65910-regulator.c
|
||||||
|
F: drivers/regulator/twl-regulator.c
|
||||||
F: include/linux/i2c-omap.h
|
F: include/linux/i2c-omap.h
|
||||||
|
|
||||||
OMAP DEVICE TREE SUPPORT
|
OMAP DEVICE TREE SUPPORT
|
||||||
@ -6600,6 +6638,9 @@ L: devicetree@vger.kernel.org
|
|||||||
S: Maintained
|
S: Maintained
|
||||||
F: arch/arm/boot/dts/*omap*
|
F: arch/arm/boot/dts/*omap*
|
||||||
F: arch/arm/boot/dts/*am3*
|
F: arch/arm/boot/dts/*am3*
|
||||||
|
F: arch/arm/boot/dts/*am4*
|
||||||
|
F: arch/arm/boot/dts/*am5*
|
||||||
|
F: arch/arm/boot/dts/*dra7*
|
||||||
|
|
||||||
OMAP CLOCK FRAMEWORK SUPPORT
|
OMAP CLOCK FRAMEWORK SUPPORT
|
||||||
M: Paul Walmsley <paul@pwsan.com>
|
M: Paul Walmsley <paul@pwsan.com>
|
||||||
@ -6847,11 +6888,12 @@ F: drivers/scsi/osd/
|
|||||||
F: include/scsi/osd_*
|
F: include/scsi/osd_*
|
||||||
F: fs/exofs/
|
F: fs/exofs/
|
||||||
|
|
||||||
OVERLAYFS FILESYSTEM
|
OVERLAY FILESYSTEM
|
||||||
M: Miklos Szeredi <miklos@szeredi.hu>
|
M: Miklos Szeredi <miklos@szeredi.hu>
|
||||||
L: linux-fsdevel@vger.kernel.org
|
L: linux-unionfs@vger.kernel.org
|
||||||
|
T: git git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git
|
||||||
S: Supported
|
S: Supported
|
||||||
F: fs/overlayfs/*
|
F: fs/overlayfs/
|
||||||
F: Documentation/filesystems/overlayfs.txt
|
F: Documentation/filesystems/overlayfs.txt
|
||||||
|
|
||||||
P54 WIRELESS DRIVER
|
P54 WIRELESS DRIVER
|
||||||
@ -7175,6 +7217,7 @@ F: drivers/crypto/picoxcell*
|
|||||||
|
|
||||||
PIN CONTROL SUBSYSTEM
|
PIN CONTROL SUBSYSTEM
|
||||||
M: Linus Walleij <linus.walleij@linaro.org>
|
M: Linus Walleij <linus.walleij@linaro.org>
|
||||||
|
L: linux-gpio@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/pinctrl/
|
F: drivers/pinctrl/
|
||||||
F: include/linux/pinctrl/
|
F: include/linux/pinctrl/
|
||||||
@ -8479,7 +8522,6 @@ F: arch/arm/mach-s3c24xx/bast-irq.c
|
|||||||
TI DAVINCI MACHINE SUPPORT
|
TI DAVINCI MACHINE SUPPORT
|
||||||
M: Sekhar Nori <nsekhar@ti.com>
|
M: Sekhar Nori <nsekhar@ti.com>
|
||||||
M: Kevin Hilman <khilman@deeprootsystems.com>
|
M: Kevin Hilman <khilman@deeprootsystems.com>
|
||||||
L: davinci-linux-open-source@linux.davincidsp.com (moderated for non-subscribers)
|
|
||||||
T: git git://gitorious.org/linux-davinci/linux-davinci.git
|
T: git git://gitorious.org/linux-davinci/linux-davinci.git
|
||||||
Q: http://patchwork.kernel.org/project/linux-davinci/list/
|
Q: http://patchwork.kernel.org/project/linux-davinci/list/
|
||||||
S: Supported
|
S: Supported
|
||||||
@ -8489,7 +8531,6 @@ F: drivers/i2c/busses/i2c-davinci.c
|
|||||||
TI DAVINCI SERIES MEDIA DRIVER
|
TI DAVINCI SERIES MEDIA DRIVER
|
||||||
M: Lad, Prabhakar <prabhakar.csengg@gmail.com>
|
M: Lad, Prabhakar <prabhakar.csengg@gmail.com>
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
L: davinci-linux-open-source@linux.davincidsp.com (moderated for non-subscribers)
|
|
||||||
W: http://linuxtv.org/
|
W: http://linuxtv.org/
|
||||||
Q: http://patchwork.linuxtv.org/project/linux-media/list/
|
Q: http://patchwork.linuxtv.org/project/linux-media/list/
|
||||||
T: git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
|
T: git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
|
||||||
@ -9606,7 +9647,6 @@ F: drivers/staging/unisys/
|
|||||||
|
|
||||||
UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER
|
UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER
|
||||||
M: Vinayak Holikatti <vinholikatti@gmail.com>
|
M: Vinayak Holikatti <vinholikatti@gmail.com>
|
||||||
M: Santosh Y <santoshsy@gmail.com>
|
|
||||||
L: linux-scsi@vger.kernel.org
|
L: linux-scsi@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
F: Documentation/scsi/ufs.txt
|
F: Documentation/scsi/ufs.txt
|
||||||
@ -9700,11 +9740,6 @@ S: Maintained
|
|||||||
F: Documentation/hid/hiddev.txt
|
F: Documentation/hid/hiddev.txt
|
||||||
F: drivers/hid/usbhid/
|
F: drivers/hid/usbhid/
|
||||||
|
|
||||||
USB/IP DRIVERS
|
|
||||||
L: linux-usb@vger.kernel.org
|
|
||||||
S: Orphan
|
|
||||||
F: drivers/staging/usbip/
|
|
||||||
|
|
||||||
USB ISP116X DRIVER
|
USB ISP116X DRIVER
|
||||||
M: Olav Kongas <ok@artecdesign.ee>
|
M: Olav Kongas <ok@artecdesign.ee>
|
||||||
L: linux-usb@vger.kernel.org
|
L: linux-usb@vger.kernel.org
|
||||||
|
9
Makefile
9
Makefile
@ -1,8 +1,8 @@
|
|||||||
VERSION = 3
|
VERSION = 3
|
||||||
PATCHLEVEL = 18
|
PATCHLEVEL = 18
|
||||||
SUBLEVEL = 0
|
SUBLEVEL = 0
|
||||||
EXTRAVERSION = -rc2
|
EXTRAVERSION = -rc6
|
||||||
NAME = Shuffling Zombie Juror
|
NAME = Diseased Newt
|
||||||
|
|
||||||
# *DOCUMENTATION*
|
# *DOCUMENTATION*
|
||||||
# To see a list of typical targets execute "make help"
|
# To see a list of typical targets execute "make help"
|
||||||
@ -297,7 +297,7 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
|
|||||||
|
|
||||||
HOSTCC = gcc
|
HOSTCC = gcc
|
||||||
HOSTCXX = g++
|
HOSTCXX = g++
|
||||||
HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
|
HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89
|
||||||
HOSTCXXFLAGS = -O2
|
HOSTCXXFLAGS = -O2
|
||||||
|
|
||||||
ifeq ($(shell $(HOSTCC) -v 2>&1 | grep -c "clang version"), 1)
|
ifeq ($(shell $(HOSTCC) -v 2>&1 | grep -c "clang version"), 1)
|
||||||
@ -401,7 +401,8 @@ KBUILD_CPPFLAGS := -D__KERNEL__
|
|||||||
KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
|
KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
|
||||||
-fno-strict-aliasing -fno-common \
|
-fno-strict-aliasing -fno-common \
|
||||||
-Werror-implicit-function-declaration \
|
-Werror-implicit-function-declaration \
|
||||||
-Wno-format-security
|
-Wno-format-security \
|
||||||
|
-std=gnu89
|
||||||
|
|
||||||
KBUILD_AFLAGS_KERNEL :=
|
KBUILD_AFLAGS_KERNEL :=
|
||||||
KBUILD_CFLAGS_KERNEL :=
|
KBUILD_CFLAGS_KERNEL :=
|
||||||
|
@ -1187,7 +1187,7 @@ config DEBUG_UART_VIRT
|
|||||||
default 0xf1c28000 if DEBUG_SUNXI_UART0
|
default 0xf1c28000 if DEBUG_SUNXI_UART0
|
||||||
default 0xf1c28400 if DEBUG_SUNXI_UART1
|
default 0xf1c28400 if DEBUG_SUNXI_UART1
|
||||||
default 0xf1f02800 if DEBUG_SUNXI_R_UART
|
default 0xf1f02800 if DEBUG_SUNXI_R_UART
|
||||||
default 0xf2100000 if DEBUG_PXA_UART1
|
default 0xf6200000 if DEBUG_PXA_UART1
|
||||||
default 0xf4090000 if ARCH_LPC32XX
|
default 0xf4090000 if ARCH_LPC32XX
|
||||||
default 0xf4200000 if ARCH_GEMINI
|
default 0xf4200000 if ARCH_GEMINI
|
||||||
default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
|
default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
|
||||||
|
@ -397,8 +397,7 @@ dtb_check_done:
|
|||||||
add sp, sp, r6
|
add sp, sp, r6
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
tst r4, #1
|
bl cache_clean_flush
|
||||||
bleq cache_clean_flush
|
|
||||||
|
|
||||||
adr r0, BSYM(restart)
|
adr r0, BSYM(restart)
|
||||||
add r0, r0, r6
|
add r0, r0, r6
|
||||||
@ -1047,6 +1046,8 @@ cache_clean_flush:
|
|||||||
b call_cache_fn
|
b call_cache_fn
|
||||||
|
|
||||||
__armv4_mpu_cache_flush:
|
__armv4_mpu_cache_flush:
|
||||||
|
tst r4, #1
|
||||||
|
movne pc, lr
|
||||||
mov r2, #1
|
mov r2, #1
|
||||||
mov r3, #0
|
mov r3, #0
|
||||||
mcr p15, 0, ip, c7, c6, 0 @ invalidate D cache
|
mcr p15, 0, ip, c7, c6, 0 @ invalidate D cache
|
||||||
@ -1064,6 +1065,8 @@ __armv4_mpu_cache_flush:
|
|||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
|
||||||
__fa526_cache_flush:
|
__fa526_cache_flush:
|
||||||
|
tst r4, #1
|
||||||
|
movne pc, lr
|
||||||
mov r1, #0
|
mov r1, #0
|
||||||
mcr p15, 0, r1, c7, c14, 0 @ clean and invalidate D cache
|
mcr p15, 0, r1, c7, c14, 0 @ clean and invalidate D cache
|
||||||
mcr p15, 0, r1, c7, c5, 0 @ flush I cache
|
mcr p15, 0, r1, c7, c5, 0 @ flush I cache
|
||||||
@ -1072,13 +1075,16 @@ __fa526_cache_flush:
|
|||||||
|
|
||||||
__armv6_mmu_cache_flush:
|
__armv6_mmu_cache_flush:
|
||||||
mov r1, #0
|
mov r1, #0
|
||||||
mcr p15, 0, r1, c7, c14, 0 @ clean+invalidate D
|
tst r4, #1
|
||||||
|
mcreq p15, 0, r1, c7, c14, 0 @ clean+invalidate D
|
||||||
mcr p15, 0, r1, c7, c5, 0 @ invalidate I+BTB
|
mcr p15, 0, r1, c7, c5, 0 @ invalidate I+BTB
|
||||||
mcr p15, 0, r1, c7, c15, 0 @ clean+invalidate unified
|
mcreq p15, 0, r1, c7, c15, 0 @ clean+invalidate unified
|
||||||
mcr p15, 0, r1, c7, c10, 4 @ drain WB
|
mcr p15, 0, r1, c7, c10, 4 @ drain WB
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
|
||||||
__armv7_mmu_cache_flush:
|
__armv7_mmu_cache_flush:
|
||||||
|
tst r4, #1
|
||||||
|
bne iflush
|
||||||
mrc p15, 0, r10, c0, c1, 5 @ read ID_MMFR1
|
mrc p15, 0, r10, c0, c1, 5 @ read ID_MMFR1
|
||||||
tst r10, #0xf << 16 @ hierarchical cache (ARMv7)
|
tst r10, #0xf << 16 @ hierarchical cache (ARMv7)
|
||||||
mov r10, #0
|
mov r10, #0
|
||||||
@ -1139,6 +1145,8 @@ iflush:
|
|||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
|
||||||
__armv5tej_mmu_cache_flush:
|
__armv5tej_mmu_cache_flush:
|
||||||
|
tst r4, #1
|
||||||
|
movne pc, lr
|
||||||
1: mrc p15, 0, r15, c7, c14, 3 @ test,clean,invalidate D cache
|
1: mrc p15, 0, r15, c7, c14, 3 @ test,clean,invalidate D cache
|
||||||
bne 1b
|
bne 1b
|
||||||
mcr p15, 0, r0, c7, c5, 0 @ flush I cache
|
mcr p15, 0, r0, c7, c5, 0 @ flush I cache
|
||||||
@ -1146,6 +1154,8 @@ __armv5tej_mmu_cache_flush:
|
|||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
|
||||||
__armv4_mmu_cache_flush:
|
__armv4_mmu_cache_flush:
|
||||||
|
tst r4, #1
|
||||||
|
movne pc, lr
|
||||||
mov r2, #64*1024 @ default: 32K dcache size (*2)
|
mov r2, #64*1024 @ default: 32K dcache size (*2)
|
||||||
mov r11, #32 @ default: 32 byte line size
|
mov r11, #32 @ default: 32 byte line size
|
||||||
mrc p15, 0, r3, c0, c0, 1 @ read cache type
|
mrc p15, 0, r3, c0, c0, 1 @ read cache type
|
||||||
@ -1179,6 +1189,8 @@ no_cache_id:
|
|||||||
|
|
||||||
__armv3_mmu_cache_flush:
|
__armv3_mmu_cache_flush:
|
||||||
__armv3_mpu_cache_flush:
|
__armv3_mpu_cache_flush:
|
||||||
|
tst r4, #1
|
||||||
|
movne pc, lr
|
||||||
mov r1, #0
|
mov r1, #0
|
||||||
mcr p15, 0, r1, c7, c0, 0 @ invalidate whole cache v3
|
mcr p15, 0, r1, c7, c0, 0 @ invalidate whole cache v3
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
@ -489,7 +489,7 @@ partition@3 {
|
|||||||
reg = <0x00060000 0x00020000>;
|
reg = <0x00060000 0x00020000>;
|
||||||
};
|
};
|
||||||
partition@4 {
|
partition@4 {
|
||||||
label = "NAND.u-boot-spl";
|
label = "NAND.u-boot-spl-os";
|
||||||
reg = <0x00080000 0x00040000>;
|
reg = <0x00080000 0x00040000>;
|
||||||
};
|
};
|
||||||
partition@5 {
|
partition@5 {
|
||||||
|
@ -291,8 +291,8 @@ dcdc2: regulator-dcdc2 {
|
|||||||
dcdc3: regulator-dcdc3 {
|
dcdc3: regulator-dcdc3 {
|
||||||
compatible = "ti,tps65218-dcdc3";
|
compatible = "ti,tps65218-dcdc3";
|
||||||
regulator-name = "vdcdc3";
|
regulator-name = "vdcdc3";
|
||||||
regulator-min-microvolt = <1350000>;
|
regulator-min-microvolt = <1500000>;
|
||||||
regulator-max-microvolt = <1350000>;
|
regulator-max-microvolt = <1500000>;
|
||||||
regulator-boot-on;
|
regulator-boot-on;
|
||||||
regulator-always-on;
|
regulator-always-on;
|
||||||
};
|
};
|
||||||
|
@ -363,8 +363,8 @@ dcdc2: regulator-dcdc2 {
|
|||||||
dcdc3: regulator-dcdc3 {
|
dcdc3: regulator-dcdc3 {
|
||||||
compatible = "ti,tps65218-dcdc3";
|
compatible = "ti,tps65218-dcdc3";
|
||||||
regulator-name = "vdds_ddr";
|
regulator-name = "vdds_ddr";
|
||||||
regulator-min-microvolt = <1350000>;
|
regulator-min-microvolt = <1500000>;
|
||||||
regulator-max-microvolt = <1350000>;
|
regulator-max-microvolt = <1500000>;
|
||||||
regulator-boot-on;
|
regulator-boot-on;
|
||||||
regulator-always-on;
|
regulator-always-on;
|
||||||
};
|
};
|
||||||
|
@ -358,8 +358,8 @@ dcdc2: regulator-dcdc2 {
|
|||||||
dcdc3: regulator-dcdc3 {
|
dcdc3: regulator-dcdc3 {
|
||||||
compatible = "ti,tps65218-dcdc3";
|
compatible = "ti,tps65218-dcdc3";
|
||||||
regulator-name = "vdcdc3";
|
regulator-name = "vdcdc3";
|
||||||
regulator-min-microvolt = <1350000>;
|
regulator-min-microvolt = <1500000>;
|
||||||
regulator-max-microvolt = <1350000>;
|
regulator-max-microvolt = <1500000>;
|
||||||
regulator-boot-on;
|
regulator-boot-on;
|
||||||
regulator-always-on;
|
regulator-always-on;
|
||||||
};
|
};
|
||||||
|
@ -668,6 +668,8 @@ ethernet@gpmc {
|
|||||||
bank-width = <2>;
|
bank-width = <2>;
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <ðernet_pins>;
|
pinctrl-0 = <ðernet_pins>;
|
||||||
|
power-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>; /* gpio86 */
|
||||||
|
reset-gpios = <&gpio6 4 GPIO_ACTIVE_HIGH>; /* gpio164 */
|
||||||
gpmc,device-width = <2>;
|
gpmc,device-width = <2>;
|
||||||
gpmc,sync-clk-ps = <0>;
|
gpmc,sync-clk-ps = <0>;
|
||||||
gpmc,cs-on-ns = <0>;
|
gpmc,cs-on-ns = <0>;
|
||||||
|
@ -433,7 +433,7 @@ mstp1_clks: mstp1_clks@e6150134 {
|
|||||||
clocks = <&cpg_clocks R8A7740_CLK_S>,
|
clocks = <&cpg_clocks R8A7740_CLK_S>,
|
||||||
<&cpg_clocks R8A7740_CLK_S>, <&sub_clk>,
|
<&cpg_clocks R8A7740_CLK_S>, <&sub_clk>,
|
||||||
<&cpg_clocks R8A7740_CLK_B>,
|
<&cpg_clocks R8A7740_CLK_B>,
|
||||||
<&sub_clk>, <&sub_clk>,
|
<&cpg_clocks R8A7740_CLK_HPP>, <&sub_clk>,
|
||||||
<&cpg_clocks R8A7740_CLK_B>;
|
<&cpg_clocks R8A7740_CLK_B>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
renesas,clock-indices = <
|
renesas,clock-indices = <
|
||||||
|
@ -666,9 +666,9 @@ sd2_clk: sd2_clk@e6150078 {
|
|||||||
#clock-cells = <0>;
|
#clock-cells = <0>;
|
||||||
clock-output-names = "sd2";
|
clock-output-names = "sd2";
|
||||||
};
|
};
|
||||||
sd3_clk: sd3_clk@e615007c {
|
sd3_clk: sd3_clk@e615026c {
|
||||||
compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
|
compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
|
||||||
reg = <0 0xe615007c 0 4>;
|
reg = <0 0xe615026c 0 4>;
|
||||||
clocks = <&pll1_div2_clk>;
|
clocks = <&pll1_div2_clk>;
|
||||||
#clock-cells = <0>;
|
#clock-cells = <0>;
|
||||||
clock-output-names = "sd3";
|
clock-output-names = "sd3";
|
||||||
|
@ -12,5 +12,5 @@
|
|||||||
#include "sama5d3_uart.dtsi"
|
#include "sama5d3_uart.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "atmel,samad31", "atmel,sama5d3", "atmel,sama5";
|
compatible = "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";
|
||||||
};
|
};
|
||||||
|
@ -10,5 +10,5 @@
|
|||||||
#include "sama5d3_gmac.dtsi"
|
#include "sama5d3_gmac.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "atmel,samad33", "atmel,sama5d3", "atmel,sama5";
|
compatible = "atmel,sama5d33", "atmel,sama5d3", "atmel,sama5";
|
||||||
};
|
};
|
||||||
|
@ -12,5 +12,5 @@
|
|||||||
#include "sama5d3_mci2.dtsi"
|
#include "sama5d3_mci2.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "atmel,samad34", "atmel,sama5d3", "atmel,sama5";
|
compatible = "atmel,sama5d34", "atmel,sama5d3", "atmel,sama5";
|
||||||
};
|
};
|
||||||
|
@ -14,5 +14,5 @@
|
|||||||
#include "sama5d3_tcb1.dtsi"
|
#include "sama5d3_tcb1.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "atmel,samad35", "atmel,sama5d3", "atmel,sama5";
|
compatible = "atmel,sama5d35", "atmel,sama5d3", "atmel,sama5";
|
||||||
};
|
};
|
||||||
|
@ -16,5 +16,5 @@
|
|||||||
#include "sama5d3_uart.dtsi"
|
#include "sama5d3_uart.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "atmel,samad36", "atmel,sama5d3", "atmel,sama5";
|
compatible = "atmel,sama5d36", "atmel,sama5d3", "atmel,sama5";
|
||||||
};
|
};
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "atmel,samad3xcm", "atmel,sama5d3", "atmel,sama5";
|
compatible = "atmel,sama5d3xcm", "atmel,sama5d3", "atmel,sama5";
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
bootargs = "console=ttyS0,115200 rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs";
|
bootargs = "console=ttyS0,115200 rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs";
|
||||||
|
@ -361,6 +361,10 @@ dma: dma-controller@01c02000 {
|
|||||||
clocks = <&ahb1_gates 6>;
|
clocks = <&ahb1_gates 6>;
|
||||||
resets = <&ahb1_rst 6>;
|
resets = <&ahb1_rst 6>;
|
||||||
#dma-cells = <1>;
|
#dma-cells = <1>;
|
||||||
|
|
||||||
|
/* DMA controller requires AHB1 clocked from PLL6 */
|
||||||
|
assigned-clocks = <&ahb1_mux>;
|
||||||
|
assigned-clock-parents = <&pll6>;
|
||||||
};
|
};
|
||||||
|
|
||||||
mmc0: mmc@01c0f000 {
|
mmc0: mmc@01c0f000 {
|
||||||
|
@ -15,6 +15,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps65913@58";
|
rtc0 = "/i2c@7000d000/tps65913@58";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -15,6 +15,10 @@ chosen {
|
|||||||
linux,initrd-end = <0x82800000>;
|
linux,initrd-end = <0x82800000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &uartd;
|
||||||
|
};
|
||||||
|
|
||||||
firmware {
|
firmware {
|
||||||
trusted-foundations {
|
trusted-foundations {
|
||||||
compatible = "tlm,trusted-foundations";
|
compatible = "tlm,trusted-foundations";
|
||||||
@ -916,8 +920,6 @@ vddio_sdmmc3: ldo9 {
|
|||||||
regulator-name = "vddio-sdmmc3";
|
regulator-name = "vddio-sdmmc3";
|
||||||
regulator-min-microvolt = <1800000>;
|
regulator-min-microvolt = <1800000>;
|
||||||
regulator-max-microvolt = <3300000>;
|
regulator-max-microvolt = <3300000>;
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
ldousb {
|
ldousb {
|
||||||
@ -962,7 +964,7 @@ pmc@7000e400 {
|
|||||||
sdhci@78000400 {
|
sdhci@78000400 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
bus-width = <4>;
|
bus-width = <4>;
|
||||||
vmmc-supply = <&vddio_sdmmc3>;
|
vqmmc-supply = <&vddio_sdmmc3>;
|
||||||
cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
|
cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
|
||||||
power-gpios = <&gpio TEGRA_GPIO(H, 0) GPIO_ACTIVE_HIGH>;
|
power-gpios = <&gpio TEGRA_GPIO(H, 0) GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
@ -971,7 +973,6 @@ sdhci@78000400 {
|
|||||||
sdhci@78000600 {
|
sdhci@78000600 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
bus-width = <8>;
|
bus-width = <8>;
|
||||||
vmmc-supply = <&vdd_1v8>;
|
|
||||||
non-removable;
|
non-removable;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -15,6 +15,10 @@ chosen {
|
|||||||
linux,initrd-end = <0x82800000>;
|
linux,initrd-end = <0x82800000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &uartd;
|
||||||
|
};
|
||||||
|
|
||||||
firmware {
|
firmware {
|
||||||
trusted-foundations {
|
trusted-foundations {
|
||||||
compatible = "tlm,trusted-foundations";
|
compatible = "tlm,trusted-foundations";
|
||||||
@ -240,7 +244,6 @@ pmc@7000e400 {
|
|||||||
sdhci@78000600 {
|
sdhci@78000600 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
bus-width = <8>;
|
bus-width = <8>;
|
||||||
vmmc-supply = <&vdd_1v8>;
|
|
||||||
non-removable;
|
non-removable;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -9,13 +9,6 @@ / {
|
|||||||
compatible = "nvidia,tegra114";
|
compatible = "nvidia,tegra114";
|
||||||
interrupt-parent = <&gic>;
|
interrupt-parent = <&gic>;
|
||||||
|
|
||||||
aliases {
|
|
||||||
serial0 = &uarta;
|
|
||||||
serial1 = &uartb;
|
|
||||||
serial2 = &uartc;
|
|
||||||
serial3 = &uartd;
|
|
||||||
};
|
|
||||||
|
|
||||||
host1x@50000000 {
|
host1x@50000000 {
|
||||||
compatible = "nvidia,tegra114-host1x", "simple-bus";
|
compatible = "nvidia,tegra114-host1x", "simple-bus";
|
||||||
reg = <0x50000000 0x00028000>;
|
reg = <0x50000000 0x00028000>;
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@0,7000d000/pmic@40";
|
rtc0 = "/i2c@0,7000d000/pmic@40";
|
||||||
rtc1 = "/rtc@0,7000e000";
|
rtc1 = "/rtc@0,7000e000";
|
||||||
|
serial0 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@0,7000d000/pmic@40";
|
rtc0 = "/i2c@0,7000d000/pmic@40";
|
||||||
rtc1 = "/rtc@0,7000e000";
|
rtc1 = "/rtc@0,7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@0,7000d000/pmic@40";
|
rtc0 = "/i2c@0,7000d000/pmic@40";
|
||||||
rtc1 = "/rtc@0,7000e000";
|
rtc1 = "/rtc@0,7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -286,7 +286,7 @@ pinmux: pinmux@0,70000868 {
|
|||||||
* the APB DMA based serial driver, the comptible is
|
* the APB DMA based serial driver, the comptible is
|
||||||
* "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart".
|
* "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart".
|
||||||
*/
|
*/
|
||||||
serial@0,70006000 {
|
uarta: serial@0,70006000 {
|
||||||
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
||||||
reg = <0x0 0x70006000 0x0 0x40>;
|
reg = <0x0 0x70006000 0x0 0x40>;
|
||||||
reg-shift = <2>;
|
reg-shift = <2>;
|
||||||
@ -299,7 +299,7 @@ serial@0,70006000 {
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
serial@0,70006040 {
|
uartb: serial@0,70006040 {
|
||||||
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
||||||
reg = <0x0 0x70006040 0x0 0x40>;
|
reg = <0x0 0x70006040 0x0 0x40>;
|
||||||
reg-shift = <2>;
|
reg-shift = <2>;
|
||||||
@ -312,7 +312,7 @@ serial@0,70006040 {
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
serial@0,70006200 {
|
uartc: serial@0,70006200 {
|
||||||
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
||||||
reg = <0x0 0x70006200 0x0 0x40>;
|
reg = <0x0 0x70006200 0x0 0x40>;
|
||||||
reg-shift = <2>;
|
reg-shift = <2>;
|
||||||
@ -325,7 +325,7 @@ serial@0,70006200 {
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
serial@0,70006300 {
|
uartd: serial@0,70006300 {
|
||||||
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
|
||||||
reg = <0x0 0x70006300 0x0 0x40>;
|
reg = <0x0 0x70006300 0x0 0x40>;
|
||||||
reg-shift = <2>;
|
reg-shift = <2>;
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps6586x@34";
|
rtc0 = "/i2c@7000d000/tps6586x@34";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -6,6 +6,11 @@ / {
|
|||||||
model = "Toradex Colibri T20 512MB on Iris";
|
model = "Toradex Colibri T20 512MB on Iris";
|
||||||
compatible = "toradex,iris", "toradex,colibri_t20-512", "nvidia,tegra20";
|
compatible = "toradex,iris", "toradex,colibri_t20-512", "nvidia,tegra20";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &uarta;
|
||||||
|
serial1 = &uartd;
|
||||||
|
};
|
||||||
|
|
||||||
host1x@50000000 {
|
host1x@50000000 {
|
||||||
hdmi@54280000 {
|
hdmi@54280000 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
@ -6,6 +6,10 @@ / {
|
|||||||
model = "Avionic Design Medcom-Wide board";
|
model = "Avionic Design Medcom-Wide board";
|
||||||
compatible = "ad,medcom-wide", "ad,tamonten", "nvidia,tegra20";
|
compatible = "ad,medcom-wide", "ad,tamonten", "nvidia,tegra20";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &uartd;
|
||||||
|
};
|
||||||
|
|
||||||
pwm@7000a000 {
|
pwm@7000a000 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
@ -10,6 +10,8 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps6586x@34";
|
rtc0 = "/i2c@7000d000/tps6586x@34";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
|
serial1 = &uartc;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps6586x@34";
|
rtc0 = "/i2c@7000d000/tps6586x@34";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -7,6 +7,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps6586x@34";
|
rtc0 = "/i2c@7000d000/tps6586x@34";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000c500/rtc@56";
|
rtc0 = "/i2c@7000c500/rtc@56";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps6586x@34";
|
rtc0 = "/i2c@7000d000/tps6586x@34";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/max8907@3c";
|
rtc0 = "/i2c@7000d000/max8907@3c";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -9,14 +9,6 @@ / {
|
|||||||
compatible = "nvidia,tegra20";
|
compatible = "nvidia,tegra20";
|
||||||
interrupt-parent = <&intc>;
|
interrupt-parent = <&intc>;
|
||||||
|
|
||||||
aliases {
|
|
||||||
serial0 = &uarta;
|
|
||||||
serial1 = &uartb;
|
|
||||||
serial2 = &uartc;
|
|
||||||
serial3 = &uartd;
|
|
||||||
serial4 = &uarte;
|
|
||||||
};
|
|
||||||
|
|
||||||
host1x@50000000 {
|
host1x@50000000 {
|
||||||
compatible = "nvidia,tegra20-host1x", "simple-bus";
|
compatible = "nvidia,tegra20-host1x", "simple-bus";
|
||||||
reg = <0x50000000 0x00024000>;
|
reg = <0x50000000 0x00024000>;
|
||||||
|
@ -11,6 +11,10 @@ aliases {
|
|||||||
rtc0 = "/i2c@7000c000/rtc@68";
|
rtc0 = "/i2c@7000c000/rtc@68";
|
||||||
rtc1 = "/i2c@7000d000/tps65911@2d";
|
rtc1 = "/i2c@7000d000/tps65911@2d";
|
||||||
rtc2 = "/rtc@7000e000";
|
rtc2 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
|
serial1 = &uartb;
|
||||||
|
serial2 = &uartc;
|
||||||
|
serial3 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
pcie-controller@00003000 {
|
pcie-controller@00003000 {
|
||||||
|
@ -9,6 +9,7 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps65911@2d";
|
rtc0 = "/i2c@7000d000/tps65911@2d";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -30,6 +30,8 @@ / {
|
|||||||
aliases {
|
aliases {
|
||||||
rtc0 = "/i2c@7000d000/tps65911@2d";
|
rtc0 = "/i2c@7000d000/tps65911@2d";
|
||||||
rtc1 = "/rtc@7000e000";
|
rtc1 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
|
serial1 = &uartc;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
@ -10,6 +10,9 @@ aliases {
|
|||||||
rtc0 = "/i2c@7000c000/rtc@68";
|
rtc0 = "/i2c@7000c000/rtc@68";
|
||||||
rtc1 = "/i2c@7000d000/tps65911@2d";
|
rtc1 = "/i2c@7000d000/tps65911@2d";
|
||||||
rtc2 = "/rtc@7000e000";
|
rtc2 = "/rtc@7000e000";
|
||||||
|
serial0 = &uarta;
|
||||||
|
serial1 = &uartb;
|
||||||
|
serial2 = &uartd;
|
||||||
};
|
};
|
||||||
|
|
||||||
host1x@50000000 {
|
host1x@50000000 {
|
||||||
|
@ -9,14 +9,6 @@ / {
|
|||||||
compatible = "nvidia,tegra30";
|
compatible = "nvidia,tegra30";
|
||||||
interrupt-parent = <&intc>;
|
interrupt-parent = <&intc>;
|
||||||
|
|
||||||
aliases {
|
|
||||||
serial0 = &uarta;
|
|
||||||
serial1 = &uartb;
|
|
||||||
serial2 = &uartc;
|
|
||||||
serial3 = &uartd;
|
|
||||||
serial4 = &uarte;
|
|
||||||
};
|
|
||||||
|
|
||||||
pcie-controller@00003000 {
|
pcie-controller@00003000 {
|
||||||
compatible = "nvidia,tegra30-pcie";
|
compatible = "nvidia,tegra30-pcie";
|
||||||
device_type = "pci";
|
device_type = "pci";
|
||||||
|
@ -33,6 +33,13 @@ enet_ext {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&esdhc1 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_esdhc1>;
|
||||||
|
bus-width = <4>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
&fec1 {
|
&fec1 {
|
||||||
phy-mode = "rmii";
|
phy-mode = "rmii";
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
@ -42,6 +49,18 @@ &fec1 {
|
|||||||
|
|
||||||
&iomuxc {
|
&iomuxc {
|
||||||
vf610-cosmic {
|
vf610-cosmic {
|
||||||
|
pinctrl_esdhc1: esdhc1grp {
|
||||||
|
fsl,pins = <
|
||||||
|
VF610_PAD_PTA24__ESDHC1_CLK 0x31ef
|
||||||
|
VF610_PAD_PTA25__ESDHC1_CMD 0x31ef
|
||||||
|
VF610_PAD_PTA26__ESDHC1_DAT0 0x31ef
|
||||||
|
VF610_PAD_PTA27__ESDHC1_DAT1 0x31ef
|
||||||
|
VF610_PAD_PTA28__ESDHC1_DATA2 0x31ef
|
||||||
|
VF610_PAD_PTA29__ESDHC1_DAT3 0x31ef
|
||||||
|
VF610_PAD_PTB28__GPIO_98 0x219d
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
pinctrl_fec1: fec1grp {
|
pinctrl_fec1: fec1grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
VF610_PAD_PTC9__ENET_RMII1_MDC 0x30d2
|
VF610_PAD_PTC9__ENET_RMII1_MDC 0x30d2
|
||||||
|
@ -34,6 +34,10 @@ chosen {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&clkc {
|
||||||
|
fclk-enable = <0xf>;
|
||||||
|
};
|
||||||
|
|
||||||
&gem0 {
|
&gem0 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
phy-mode = "rgmii-id";
|
phy-mode = "rgmii-id";
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/edma.h>
|
#include <linux/edma.h>
|
||||||
|
#include <linux/dma-mapping.h>
|
||||||
#include <linux/of_address.h>
|
#include <linux/of_address.h>
|
||||||
#include <linux/of_device.h>
|
#include <linux/of_device.h>
|
||||||
#include <linux/of_dma.h>
|
#include <linux/of_dma.h>
|
||||||
@ -1623,6 +1624,11 @@ static int edma_probe(struct platform_device *pdev)
|
|||||||
struct device_node *node = pdev->dev.of_node;
|
struct device_node *node = pdev->dev.of_node;
|
||||||
struct device *dev = &pdev->dev;
|
struct device *dev = &pdev->dev;
|
||||||
int ret;
|
int ret;
|
||||||
|
struct platform_device_info edma_dev_info = {
|
||||||
|
.name = "edma-dma-engine",
|
||||||
|
.dma_mask = DMA_BIT_MASK(32),
|
||||||
|
.parent = &pdev->dev,
|
||||||
|
};
|
||||||
|
|
||||||
if (node) {
|
if (node) {
|
||||||
/* Check if this is a second instance registered */
|
/* Check if this is a second instance registered */
|
||||||
@ -1793,6 +1799,9 @@ static int edma_probe(struct platform_device *pdev)
|
|||||||
edma_write_array(j, EDMA_QRAE, i, 0x0);
|
edma_write_array(j, EDMA_QRAE, i, 0x0);
|
||||||
}
|
}
|
||||||
arch_num_cc++;
|
arch_num_cc++;
|
||||||
|
|
||||||
|
edma_dev_info.id = j;
|
||||||
|
platform_device_register_full(&edma_dev_info);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -97,6 +97,7 @@ CONFIG_SERIAL_IMX_CONSOLE=y
|
|||||||
# CONFIG_HW_RANDOM is not set
|
# CONFIG_HW_RANDOM is not set
|
||||||
CONFIG_I2C_CHARDEV=y
|
CONFIG_I2C_CHARDEV=y
|
||||||
CONFIG_I2C_IMX=y
|
CONFIG_I2C_IMX=y
|
||||||
|
CONFIG_SPI=y
|
||||||
CONFIG_SPI_IMX=y
|
CONFIG_SPI_IMX=y
|
||||||
CONFIG_SPI_SPIDEV=y
|
CONFIG_SPI_SPIDEV=y
|
||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
|
@ -158,6 +158,7 @@ CONFIG_I2C_CHARDEV=y
|
|||||||
CONFIG_I2C_ALGOPCF=m
|
CONFIG_I2C_ALGOPCF=m
|
||||||
CONFIG_I2C_ALGOPCA=m
|
CONFIG_I2C_ALGOPCA=m
|
||||||
CONFIG_I2C_IMX=y
|
CONFIG_I2C_IMX=y
|
||||||
|
CONFIG_SPI=y
|
||||||
CONFIG_SPI_IMX=y
|
CONFIG_SPI_IMX=y
|
||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
CONFIG_GPIO_MC9S08DZ60=y
|
CONFIG_GPIO_MC9S08DZ60=y
|
||||||
|
@ -217,6 +217,7 @@ CONFIG_I2C_CADENCE=y
|
|||||||
CONFIG_I2C_DESIGNWARE_PLATFORM=y
|
CONFIG_I2C_DESIGNWARE_PLATFORM=y
|
||||||
CONFIG_I2C_EXYNOS5=y
|
CONFIG_I2C_EXYNOS5=y
|
||||||
CONFIG_I2C_MV64XXX=y
|
CONFIG_I2C_MV64XXX=y
|
||||||
|
CONFIG_I2C_S3C2410=y
|
||||||
CONFIG_I2C_SIRF=y
|
CONFIG_I2C_SIRF=y
|
||||||
CONFIG_I2C_TEGRA=y
|
CONFIG_I2C_TEGRA=y
|
||||||
CONFIG_I2C_ST=y
|
CONFIG_I2C_ST=y
|
||||||
@ -235,6 +236,7 @@ CONFIG_SPI_TEGRA20_SLINK=y
|
|||||||
CONFIG_SPI_XILINX=y
|
CONFIG_SPI_XILINX=y
|
||||||
CONFIG_PINCTRL_AS3722=y
|
CONFIG_PINCTRL_AS3722=y
|
||||||
CONFIG_PINCTRL_PALMAS=y
|
CONFIG_PINCTRL_PALMAS=y
|
||||||
|
CONFIG_PINCTRL_APQ8084=y
|
||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
CONFIG_GPIO_GENERIC_PLATFORM=y
|
CONFIG_GPIO_GENERIC_PLATFORM=y
|
||||||
CONFIG_GPIO_DWAPB=y
|
CONFIG_GPIO_DWAPB=y
|
||||||
@ -411,6 +413,7 @@ CONFIG_NVEC_POWER=y
|
|||||||
CONFIG_NVEC_PAZ00=y
|
CONFIG_NVEC_PAZ00=y
|
||||||
CONFIG_QCOM_GSBI=y
|
CONFIG_QCOM_GSBI=y
|
||||||
CONFIG_COMMON_CLK_QCOM=y
|
CONFIG_COMMON_CLK_QCOM=y
|
||||||
|
CONFIG_APQ_MMCC_8084=y
|
||||||
CONFIG_MSM_GCC_8660=y
|
CONFIG_MSM_GCC_8660=y
|
||||||
CONFIG_MSM_MMCC_8960=y
|
CONFIG_MSM_MMCC_8960=y
|
||||||
CONFIG_MSM_MMCC_8974=y
|
CONFIG_MSM_MMCC_8974=y
|
||||||
|
@ -86,7 +86,6 @@ CONFIG_IP_PNP_DHCP=y
|
|||||||
CONFIG_IP_PNP_BOOTP=y
|
CONFIG_IP_PNP_BOOTP=y
|
||||||
CONFIG_IP_PNP_RARP=y
|
CONFIG_IP_PNP_RARP=y
|
||||||
# CONFIG_INET_LRO is not set
|
# CONFIG_INET_LRO is not set
|
||||||
CONFIG_IPV6=y
|
|
||||||
CONFIG_NETFILTER=y
|
CONFIG_NETFILTER=y
|
||||||
CONFIG_CAN=m
|
CONFIG_CAN=m
|
||||||
CONFIG_CAN_C_CAN=m
|
CONFIG_CAN_C_CAN=m
|
||||||
@ -112,6 +111,7 @@ CONFIG_MTD_OOPS=y
|
|||||||
CONFIG_MTD_CFI=y
|
CONFIG_MTD_CFI=y
|
||||||
CONFIG_MTD_CFI_INTELEXT=y
|
CONFIG_MTD_CFI_INTELEXT=y
|
||||||
CONFIG_MTD_NAND=y
|
CONFIG_MTD_NAND=y
|
||||||
|
CONFIG_MTD_NAND_ECC_BCH=y
|
||||||
CONFIG_MTD_NAND_OMAP2=y
|
CONFIG_MTD_NAND_OMAP2=y
|
||||||
CONFIG_MTD_ONENAND=y
|
CONFIG_MTD_ONENAND=y
|
||||||
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
|
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
|
||||||
@ -317,7 +317,7 @@ CONFIG_EXT4_FS=y
|
|||||||
CONFIG_FANOTIFY=y
|
CONFIG_FANOTIFY=y
|
||||||
CONFIG_QUOTA=y
|
CONFIG_QUOTA=y
|
||||||
CONFIG_QFMT_V2=y
|
CONFIG_QFMT_V2=y
|
||||||
CONFIG_AUTOFS4_FS=y
|
CONFIG_AUTOFS4_FS=m
|
||||||
CONFIG_MSDOS_FS=y
|
CONFIG_MSDOS_FS=y
|
||||||
CONFIG_VFAT_FS=y
|
CONFIG_VFAT_FS=y
|
||||||
CONFIG_TMPFS=y
|
CONFIG_TMPFS=y
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
CONFIG_EXPERIMENTAL=y
|
|
||||||
CONFIG_SYSVIPC=y
|
CONFIG_SYSVIPC=y
|
||||||
|
CONFIG_FHANDLE=y
|
||||||
|
CONFIG_HIGH_RES_TIMERS=y
|
||||||
CONFIG_IKCONFIG=y
|
CONFIG_IKCONFIG=y
|
||||||
CONFIG_IKCONFIG_PROC=y
|
CONFIG_IKCONFIG_PROC=y
|
||||||
CONFIG_LOG_BUF_SHIFT=14
|
CONFIG_LOG_BUF_SHIFT=14
|
||||||
@ -11,23 +12,17 @@ CONFIG_PROFILING=y
|
|||||||
CONFIG_OPROFILE=y
|
CONFIG_OPROFILE=y
|
||||||
CONFIG_MODULES=y
|
CONFIG_MODULES=y
|
||||||
CONFIG_MODULE_UNLOAD=y
|
CONFIG_MODULE_UNLOAD=y
|
||||||
CONFIG_HOTPLUG=y
|
|
||||||
# CONFIG_LBDAF is not set
|
# CONFIG_LBDAF is not set
|
||||||
# CONFIG_BLK_DEV_BSG is not set
|
# CONFIG_BLK_DEV_BSG is not set
|
||||||
# CONFIG_IOSCHED_DEADLINE is not set
|
# CONFIG_IOSCHED_DEADLINE is not set
|
||||||
# CONFIG_IOSCHED_CFQ is not set
|
# CONFIG_IOSCHED_CFQ is not set
|
||||||
CONFIG_ARCH_SOCFPGA=y
|
CONFIG_ARCH_SOCFPGA=y
|
||||||
CONFIG_MACH_SOCFPGA_CYCLONE5=y
|
|
||||||
CONFIG_ARM_THUMBEE=y
|
CONFIG_ARM_THUMBEE=y
|
||||||
# CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA is not set
|
|
||||||
# CONFIG_CACHE_L2X0 is not set
|
|
||||||
CONFIG_HIGH_RES_TIMERS=y
|
|
||||||
CONFIG_SMP=y
|
CONFIG_SMP=y
|
||||||
CONFIG_NR_CPUS=2
|
CONFIG_NR_CPUS=2
|
||||||
CONFIG_AEABI=y
|
CONFIG_AEABI=y
|
||||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||||
CONFIG_CMDLINE=""
|
|
||||||
CONFIG_VFP=y
|
CONFIG_VFP=y
|
||||||
CONFIG_NEON=y
|
CONFIG_NEON=y
|
||||||
CONFIG_NET=y
|
CONFIG_NET=y
|
||||||
@ -41,38 +36,30 @@ CONFIG_IP_PNP=y
|
|||||||
CONFIG_IP_PNP_DHCP=y
|
CONFIG_IP_PNP_DHCP=y
|
||||||
CONFIG_IP_PNP_BOOTP=y
|
CONFIG_IP_PNP_BOOTP=y
|
||||||
CONFIG_IP_PNP_RARP=y
|
CONFIG_IP_PNP_RARP=y
|
||||||
|
CONFIG_IPV6=y
|
||||||
|
CONFIG_NETWORK_PHY_TIMESTAMPING=y
|
||||||
|
CONFIG_VLAN_8021Q=y
|
||||||
|
CONFIG_VLAN_8021Q_GVRP=y
|
||||||
CONFIG_CAN=y
|
CONFIG_CAN=y
|
||||||
CONFIG_CAN_RAW=y
|
|
||||||
CONFIG_CAN_BCM=y
|
|
||||||
CONFIG_CAN_GW=y
|
|
||||||
CONFIG_CAN_DEV=y
|
|
||||||
CONFIG_CAN_CALC_BITTIMING=y
|
|
||||||
CONFIG_CAN_C_CAN=y
|
CONFIG_CAN_C_CAN=y
|
||||||
CONFIG_CAN_C_CAN_PLATFORM=y
|
CONFIG_CAN_C_CAN_PLATFORM=y
|
||||||
CONFIG_CAN_DEBUG_DEVICES=y
|
CONFIG_CAN_DEBUG_DEVICES=y
|
||||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||||
CONFIG_DEVTMPFS=y
|
CONFIG_DEVTMPFS=y
|
||||||
CONFIG_PROC_DEVICETREE=y
|
CONFIG_DEVTMPFS_MOUNT=y
|
||||||
CONFIG_BLK_DEV_RAM=y
|
CONFIG_BLK_DEV_RAM=y
|
||||||
CONFIG_BLK_DEV_RAM_COUNT=2
|
CONFIG_BLK_DEV_RAM_COUNT=2
|
||||||
CONFIG_BLK_DEV_RAM_SIZE=8192
|
CONFIG_BLK_DEV_RAM_SIZE=8192
|
||||||
|
CONFIG_SRAM=y
|
||||||
CONFIG_SCSI=y
|
CONFIG_SCSI=y
|
||||||
# CONFIG_SCSI_PROC_FS is not set
|
# CONFIG_SCSI_PROC_FS is not set
|
||||||
CONFIG_BLK_DEV_SD=y
|
CONFIG_BLK_DEV_SD=y
|
||||||
# CONFIG_SCSI_LOWLEVEL is not set
|
# CONFIG_SCSI_LOWLEVEL is not set
|
||||||
CONFIG_NETDEVICES=y
|
CONFIG_NETDEVICES=y
|
||||||
CONFIG_STMMAC_ETH=y
|
CONFIG_STMMAC_ETH=y
|
||||||
CONFIG_MICREL_PHY=y
|
|
||||||
# CONFIG_STMMAC_PHY_ID_ZERO_WORKAROUND is not set
|
|
||||||
CONFIG_INPUT_EVDEV=y
|
|
||||||
CONFIG_DWMAC_SOCFPGA=y
|
CONFIG_DWMAC_SOCFPGA=y
|
||||||
CONFIG_PPS=y
|
CONFIG_MICREL_PHY=y
|
||||||
CONFIG_NETWORK_PHY_TIMESTAMPING=y
|
CONFIG_INPUT_EVDEV=y
|
||||||
CONFIG_PTP_1588_CLOCK=y
|
|
||||||
CONFIG_VLAN_8021Q=y
|
|
||||||
CONFIG_VLAN_8021Q_GVRP=y
|
|
||||||
CONFIG_GARP=y
|
|
||||||
CONFIG_IPV6=y
|
|
||||||
# CONFIG_SERIO_SERPORT is not set
|
# CONFIG_SERIO_SERPORT is not set
|
||||||
CONFIG_SERIO_AMBAKMI=y
|
CONFIG_SERIO_AMBAKMI=y
|
||||||
CONFIG_LEGACY_PTY_COUNT=16
|
CONFIG_LEGACY_PTY_COUNT=16
|
||||||
@ -81,45 +68,43 @@ CONFIG_SERIAL_8250_CONSOLE=y
|
|||||||
CONFIG_SERIAL_8250_NR_UARTS=2
|
CONFIG_SERIAL_8250_NR_UARTS=2
|
||||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=2
|
CONFIG_SERIAL_8250_RUNTIME_UARTS=2
|
||||||
CONFIG_SERIAL_8250_DW=y
|
CONFIG_SERIAL_8250_DW=y
|
||||||
|
CONFIG_I2C=y
|
||||||
|
CONFIG_I2C_CHARDEV=y
|
||||||
|
CONFIG_I2C_DESIGNWARE_PLATFORM=y
|
||||||
CONFIG_GPIOLIB=y
|
CONFIG_GPIOLIB=y
|
||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
CONFIG_GPIO_DWAPB=y
|
CONFIG_GPIO_DWAPB=y
|
||||||
# CONFIG_RTC_HCTOSYS is not set
|
CONFIG_PMBUS=y
|
||||||
|
CONFIG_SENSORS_LTC2978=y
|
||||||
|
CONFIG_SENSORS_LTC2978_REGULATOR=y
|
||||||
CONFIG_WATCHDOG=y
|
CONFIG_WATCHDOG=y
|
||||||
CONFIG_DW_WATCHDOG=y
|
CONFIG_DW_WATCHDOG=y
|
||||||
|
CONFIG_REGULATOR=y
|
||||||
|
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||||
|
CONFIG_USB=y
|
||||||
|
CONFIG_USB_DWC2=y
|
||||||
|
CONFIG_USB_DWC2_HOST=y
|
||||||
|
CONFIG_MMC=y
|
||||||
|
CONFIG_MMC_DW=y
|
||||||
CONFIG_EXT2_FS=y
|
CONFIG_EXT2_FS=y
|
||||||
CONFIG_EXT2_FS_XATTR=y
|
CONFIG_EXT2_FS_XATTR=y
|
||||||
CONFIG_EXT2_FS_POSIX_ACL=y
|
CONFIG_EXT2_FS_POSIX_ACL=y
|
||||||
CONFIG_EXT3_FS=y
|
CONFIG_EXT3_FS=y
|
||||||
CONFIG_NFS_FS=y
|
CONFIG_EXT4_FS=y
|
||||||
CONFIG_ROOT_NFS=y
|
|
||||||
# CONFIG_DNOTIFY is not set
|
|
||||||
# CONFIG_INOTIFY_USER is not set
|
|
||||||
CONFIG_FHANDLE=y
|
|
||||||
CONFIG_VFAT_FS=y
|
CONFIG_VFAT_FS=y
|
||||||
CONFIG_NTFS_FS=y
|
CONFIG_NTFS_FS=y
|
||||||
CONFIG_NTFS_RW=y
|
CONFIG_NTFS_RW=y
|
||||||
CONFIG_TMPFS=y
|
CONFIG_TMPFS=y
|
||||||
CONFIG_JFFS2_FS=y
|
CONFIG_CONFIGFS_FS=y
|
||||||
|
CONFIG_NFS_FS=y
|
||||||
|
CONFIG_ROOT_NFS=y
|
||||||
CONFIG_NLS_CODEPAGE_437=y
|
CONFIG_NLS_CODEPAGE_437=y
|
||||||
CONFIG_NLS_ISO8859_1=y
|
CONFIG_NLS_ISO8859_1=y
|
||||||
|
CONFIG_PRINTK_TIME=y
|
||||||
|
CONFIG_DEBUG_INFO=y
|
||||||
CONFIG_MAGIC_SYSRQ=y
|
CONFIG_MAGIC_SYSRQ=y
|
||||||
CONFIG_DETECT_HUNG_TASK=y
|
CONFIG_DETECT_HUNG_TASK=y
|
||||||
# CONFIG_SCHED_DEBUG is not set
|
# CONFIG_SCHED_DEBUG is not set
|
||||||
CONFIG_DEBUG_INFO=y
|
|
||||||
CONFIG_ENABLE_DEFAULT_TRACERS=y
|
CONFIG_ENABLE_DEFAULT_TRACERS=y
|
||||||
CONFIG_DEBUG_USER=y
|
CONFIG_DEBUG_USER=y
|
||||||
CONFIG_XZ_DEC=y
|
CONFIG_XZ_DEC=y
|
||||||
CONFIG_I2C=y
|
|
||||||
CONFIG_I2C_DESIGNWARE_CORE=y
|
|
||||||
CONFIG_I2C_DESIGNWARE_PLATFORM=y
|
|
||||||
CONFIG_I2C_CHARDEV=y
|
|
||||||
CONFIG_MMC=y
|
|
||||||
CONFIG_MMC_DW=y
|
|
||||||
CONFIG_PM=y
|
|
||||||
CONFIG_SUSPEND=y
|
|
||||||
CONFIG_MMC_UNSAFE_RESUME=y
|
|
||||||
CONFIG_USB=y
|
|
||||||
CONFIG_USB_DWC2=y
|
|
||||||
CONFIG_USB_DWC2_HOST=y
|
|
||||||
CONFIG_USB_DWC2_PLATFORM=y
|
|
||||||
|
@ -412,6 +412,7 @@
|
|||||||
#define __NR_seccomp (__NR_SYSCALL_BASE+383)
|
#define __NR_seccomp (__NR_SYSCALL_BASE+383)
|
||||||
#define __NR_getrandom (__NR_SYSCALL_BASE+384)
|
#define __NR_getrandom (__NR_SYSCALL_BASE+384)
|
||||||
#define __NR_memfd_create (__NR_SYSCALL_BASE+385)
|
#define __NR_memfd_create (__NR_SYSCALL_BASE+385)
|
||||||
|
#define __NR_bpf (__NR_SYSCALL_BASE+386)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The following SWIs are ARM private.
|
* The following SWIs are ARM private.
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
* it under the terms of the GNU General Public License version 2 as
|
* it under the terms of the GNU General Public License version 2 as
|
||||||
* published by the Free Software Foundation.
|
* published by the Free Software Foundation.
|
||||||
*/
|
*/
|
||||||
|
#include <linux/compiler.h>
|
||||||
#include <linux/sched.h>
|
#include <linux/sched.h>
|
||||||
#include <linux/mm.h>
|
#include <linux/mm.h>
|
||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
@ -39,10 +40,19 @@
|
|||||||
* GCC 3.2.x: miscompiles NEW_AUX_ENT in fs/binfmt_elf.c
|
* GCC 3.2.x: miscompiles NEW_AUX_ENT in fs/binfmt_elf.c
|
||||||
* (http://gcc.gnu.org/PR8896) and incorrect structure
|
* (http://gcc.gnu.org/PR8896) and incorrect structure
|
||||||
* initialisation in fs/jffs2/erase.c
|
* initialisation in fs/jffs2/erase.c
|
||||||
|
* GCC 4.8.0-4.8.2: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854
|
||||||
|
* miscompiles find_get_entry(), and can result in EXT3 and EXT4
|
||||||
|
* filesystem corruption (possibly other FS too).
|
||||||
*/
|
*/
|
||||||
|
#ifdef __GNUC__
|
||||||
#if (__GNUC__ == 3 && __GNUC_MINOR__ < 3)
|
#if (__GNUC__ == 3 && __GNUC_MINOR__ < 3)
|
||||||
#error Your compiler is too buggy; it is known to miscompile kernels.
|
#error Your compiler is too buggy; it is known to miscompile kernels.
|
||||||
#error Known good compilers: 3.3
|
#error Known good compilers: 3.3, 4.x
|
||||||
|
#endif
|
||||||
|
#if GCC_VERSION >= 40800 && GCC_VERSION < 40803
|
||||||
|
#error Your compiler is too buggy; it is known to miscompile kernels
|
||||||
|
#error and result in filesystem corruption and oopses.
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int main(void)
|
int main(void)
|
||||||
|
@ -395,6 +395,7 @@
|
|||||||
CALL(sys_seccomp)
|
CALL(sys_seccomp)
|
||||||
CALL(sys_getrandom)
|
CALL(sys_getrandom)
|
||||||
/* 385 */ CALL(sys_memfd_create)
|
/* 385 */ CALL(sys_memfd_create)
|
||||||
|
CALL(sys_bpf)
|
||||||
#ifndef syscalls_counted
|
#ifndef syscalls_counted
|
||||||
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
|
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
|
||||||
#define syscalls_counted
|
#define syscalls_counted
|
||||||
|
@ -58,8 +58,14 @@
|
|||||||
#define PFD_PLL1_BASE (anatop_base + 0x2b0)
|
#define PFD_PLL1_BASE (anatop_base + 0x2b0)
|
||||||
#define PFD_PLL2_BASE (anatop_base + 0x100)
|
#define PFD_PLL2_BASE (anatop_base + 0x100)
|
||||||
#define PFD_PLL3_BASE (anatop_base + 0xf0)
|
#define PFD_PLL3_BASE (anatop_base + 0xf0)
|
||||||
|
#define PLL1_CTRL (anatop_base + 0x270)
|
||||||
|
#define PLL2_CTRL (anatop_base + 0x30)
|
||||||
#define PLL3_CTRL (anatop_base + 0x10)
|
#define PLL3_CTRL (anatop_base + 0x10)
|
||||||
|
#define PLL4_CTRL (anatop_base + 0x70)
|
||||||
|
#define PLL5_CTRL (anatop_base + 0xe0)
|
||||||
|
#define PLL6_CTRL (anatop_base + 0xa0)
|
||||||
#define PLL7_CTRL (anatop_base + 0x20)
|
#define PLL7_CTRL (anatop_base + 0x20)
|
||||||
|
#define ANA_MISC1 (anatop_base + 0x160)
|
||||||
|
|
||||||
static void __iomem *anatop_base;
|
static void __iomem *anatop_base;
|
||||||
static void __iomem *ccm_base;
|
static void __iomem *ccm_base;
|
||||||
@ -67,25 +73,34 @@ static void __iomem *ccm_base;
|
|||||||
/* sources for multiplexer clocks, this is used multiple times */
|
/* sources for multiplexer clocks, this is used multiple times */
|
||||||
static const char *fast_sels[] = { "firc", "fxosc", };
|
static const char *fast_sels[] = { "firc", "fxosc", };
|
||||||
static const char *slow_sels[] = { "sirc_32k", "sxosc", };
|
static const char *slow_sels[] = { "sirc_32k", "sxosc", };
|
||||||
static const char *pll1_sels[] = { "pll1_main", "pll1_pfd1", "pll1_pfd2", "pll1_pfd3", "pll1_pfd4", };
|
static const char *pll1_sels[] = { "pll1_sys", "pll1_pfd1", "pll1_pfd2", "pll1_pfd3", "pll1_pfd4", };
|
||||||
static const char *pll2_sels[] = { "pll2_main", "pll2_pfd1", "pll2_pfd2", "pll2_pfd3", "pll2_pfd4", };
|
static const char *pll2_sels[] = { "pll2_bus", "pll2_pfd1", "pll2_pfd2", "pll2_pfd3", "pll2_pfd4", };
|
||||||
static const char *sys_sels[] = { "fast_clk_sel", "slow_clk_sel", "pll2_pfd_sel", "pll2_main", "pll1_pfd_sel", "pll3_main", };
|
static const char *pll_bypass_src_sels[] = { "fast_clk_sel", "lvds1_in", };
|
||||||
|
static const char *pll1_bypass_sels[] = { "pll1", "pll1_bypass_src", };
|
||||||
|
static const char *pll2_bypass_sels[] = { "pll2", "pll2_bypass_src", };
|
||||||
|
static const char *pll3_bypass_sels[] = { "pll3", "pll3_bypass_src", };
|
||||||
|
static const char *pll4_bypass_sels[] = { "pll4", "pll4_bypass_src", };
|
||||||
|
static const char *pll5_bypass_sels[] = { "pll5", "pll5_bypass_src", };
|
||||||
|
static const char *pll6_bypass_sels[] = { "pll6", "pll6_bypass_src", };
|
||||||
|
static const char *pll7_bypass_sels[] = { "pll7", "pll7_bypass_src", };
|
||||||
|
static const char *sys_sels[] = { "fast_clk_sel", "slow_clk_sel", "pll2_pfd_sel", "pll2_bus", "pll1_pfd_sel", "pll3_usb_otg", };
|
||||||
static const char *ddr_sels[] = { "pll2_pfd2", "sys_sel", };
|
static const char *ddr_sels[] = { "pll2_pfd2", "sys_sel", };
|
||||||
static const char *rmii_sels[] = { "enet_ext", "audio_ext", "enet_50m", "enet_25m", };
|
static const char *rmii_sels[] = { "enet_ext", "audio_ext", "enet_50m", "enet_25m", };
|
||||||
static const char *enet_ts_sels[] = { "enet_ext", "fxosc", "audio_ext", "usb", "enet_ts", "enet_25m", "enet_50m", };
|
static const char *enet_ts_sels[] = { "enet_ext", "fxosc", "audio_ext", "usb", "enet_ts", "enet_25m", "enet_50m", };
|
||||||
static const char *esai_sels[] = { "audio_ext", "mlb", "spdif_rx", "pll4_main_div", };
|
static const char *esai_sels[] = { "audio_ext", "mlb", "spdif_rx", "pll4_audio_div", };
|
||||||
static const char *sai_sels[] = { "audio_ext", "mlb", "spdif_rx", "pll4_main_div", };
|
static const char *sai_sels[] = { "audio_ext", "mlb", "spdif_rx", "pll4_audio_div", };
|
||||||
static const char *nfc_sels[] = { "platform_bus", "pll1_pfd1", "pll3_pfd1", "pll3_pfd3", };
|
static const char *nfc_sels[] = { "platform_bus", "pll1_pfd1", "pll3_pfd1", "pll3_pfd3", };
|
||||||
static const char *qspi_sels[] = { "pll3_main", "pll3_pfd4", "pll2_pfd4", "pll1_pfd4", };
|
static const char *qspi_sels[] = { "pll3_usb_otg", "pll3_pfd4", "pll2_pfd4", "pll1_pfd4", };
|
||||||
static const char *esdhc_sels[] = { "pll3_main", "pll3_pfd3", "pll1_pfd3", "platform_bus", };
|
static const char *esdhc_sels[] = { "pll3_usb_otg", "pll3_pfd3", "pll1_pfd3", "platform_bus", };
|
||||||
static const char *dcu_sels[] = { "pll1_pfd2", "pll3_main", };
|
static const char *dcu_sels[] = { "pll1_pfd2", "pll3_usb_otg", };
|
||||||
static const char *gpu_sels[] = { "pll2_pfd2", "pll3_pfd2", };
|
static const char *gpu_sels[] = { "pll2_pfd2", "pll3_pfd2", };
|
||||||
static const char *vadc_sels[] = { "pll6_main_div", "pll3_main_div", "pll3_main", };
|
static const char *vadc_sels[] = { "pll6_video_div", "pll3_usb_otg_div", "pll3_usb_otg", };
|
||||||
/* FTM counter clock source, not module clock */
|
/* FTM counter clock source, not module clock */
|
||||||
static const char *ftm_ext_sels[] = {"sirc_128k", "sxosc", "fxosc_half", "audio_ext", };
|
static const char *ftm_ext_sels[] = {"sirc_128k", "sxosc", "fxosc_half", "audio_ext", };
|
||||||
static const char *ftm_fix_sels[] = { "sxosc", "ipg_bus", };
|
static const char *ftm_fix_sels[] = { "sxosc", "ipg_bus", };
|
||||||
|
|
||||||
static struct clk_div_table pll4_main_div_table[] = {
|
|
||||||
|
static struct clk_div_table pll4_audio_div_table[] = {
|
||||||
{ .val = 0, .div = 1 },
|
{ .val = 0, .div = 1 },
|
||||||
{ .val = 1, .div = 2 },
|
{ .val = 1, .div = 2 },
|
||||||
{ .val = 2, .div = 6 },
|
{ .val = 2, .div = 6 },
|
||||||
@ -120,6 +135,9 @@ static void __init vf610_clocks_init(struct device_node *ccm_node)
|
|||||||
clk[VF610_CLK_AUDIO_EXT] = imx_obtain_fixed_clock("audio_ext", 0);
|
clk[VF610_CLK_AUDIO_EXT] = imx_obtain_fixed_clock("audio_ext", 0);
|
||||||
clk[VF610_CLK_ENET_EXT] = imx_obtain_fixed_clock("enet_ext", 0);
|
clk[VF610_CLK_ENET_EXT] = imx_obtain_fixed_clock("enet_ext", 0);
|
||||||
|
|
||||||
|
/* Clock source from external clock via LVDs PAD */
|
||||||
|
clk[VF610_CLK_ANACLK1] = imx_obtain_fixed_clock("anaclk1", 0);
|
||||||
|
|
||||||
clk[VF610_CLK_FXOSC_HALF] = imx_clk_fixed_factor("fxosc_half", "fxosc", 1, 2);
|
clk[VF610_CLK_FXOSC_HALF] = imx_clk_fixed_factor("fxosc_half", "fxosc", 1, 2);
|
||||||
|
|
||||||
np = of_find_compatible_node(NULL, NULL, "fsl,vf610-anatop");
|
np = of_find_compatible_node(NULL, NULL, "fsl,vf610-anatop");
|
||||||
@ -133,31 +151,63 @@ static void __init vf610_clocks_init(struct device_node *ccm_node)
|
|||||||
clk[VF610_CLK_SLOW_CLK_SEL] = imx_clk_mux("slow_clk_sel", CCM_CCSR, 4, 1, slow_sels, ARRAY_SIZE(slow_sels));
|
clk[VF610_CLK_SLOW_CLK_SEL] = imx_clk_mux("slow_clk_sel", CCM_CCSR, 4, 1, slow_sels, ARRAY_SIZE(slow_sels));
|
||||||
clk[VF610_CLK_FASK_CLK_SEL] = imx_clk_mux("fast_clk_sel", CCM_CCSR, 5, 1, fast_sels, ARRAY_SIZE(fast_sels));
|
clk[VF610_CLK_FASK_CLK_SEL] = imx_clk_mux("fast_clk_sel", CCM_CCSR, 5, 1, fast_sels, ARRAY_SIZE(fast_sels));
|
||||||
|
|
||||||
clk[VF610_CLK_PLL1_MAIN] = imx_clk_fixed_factor("pll1_main", "fast_clk_sel", 22, 1);
|
clk[VF610_CLK_PLL1_BYPASS_SRC] = imx_clk_mux("pll1_bypass_src", PLL1_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
clk[VF610_CLK_PLL1_PFD1] = imx_clk_pfd("pll1_pfd1", "pll1_main", PFD_PLL1_BASE, 0);
|
clk[VF610_CLK_PLL2_BYPASS_SRC] = imx_clk_mux("pll2_bypass_src", PLL2_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
clk[VF610_CLK_PLL1_PFD2] = imx_clk_pfd("pll1_pfd2", "pll1_main", PFD_PLL1_BASE, 1);
|
clk[VF610_CLK_PLL3_BYPASS_SRC] = imx_clk_mux("pll3_bypass_src", PLL3_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
clk[VF610_CLK_PLL1_PFD3] = imx_clk_pfd("pll1_pfd3", "pll1_main", PFD_PLL1_BASE, 2);
|
clk[VF610_CLK_PLL4_BYPASS_SRC] = imx_clk_mux("pll4_bypass_src", PLL4_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
clk[VF610_CLK_PLL1_PFD4] = imx_clk_pfd("pll1_pfd4", "pll1_main", PFD_PLL1_BASE, 3);
|
clk[VF610_CLK_PLL5_BYPASS_SRC] = imx_clk_mux("pll5_bypass_src", PLL5_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
|
clk[VF610_CLK_PLL6_BYPASS_SRC] = imx_clk_mux("pll6_bypass_src", PLL6_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
|
clk[VF610_CLK_PLL7_BYPASS_SRC] = imx_clk_mux("pll7_bypass_src", PLL7_CTRL, 14, 1, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
|
||||||
|
|
||||||
clk[VF610_CLK_PLL2_MAIN] = imx_clk_fixed_factor("pll2_main", "fast_clk_sel", 22, 1);
|
clk[VF610_CLK_PLL1] = imx_clk_pllv3(IMX_PLLV3_GENERIC, "pll1", "pll1_bypass_src", PLL1_CTRL, 0x1);
|
||||||
clk[VF610_CLK_PLL2_PFD1] = imx_clk_pfd("pll2_pfd1", "pll2_main", PFD_PLL2_BASE, 0);
|
clk[VF610_CLK_PLL2] = imx_clk_pllv3(IMX_PLLV3_GENERIC, "pll2", "pll2_bypass_src", PLL2_CTRL, 0x1);
|
||||||
clk[VF610_CLK_PLL2_PFD2] = imx_clk_pfd("pll2_pfd2", "pll2_main", PFD_PLL2_BASE, 1);
|
clk[VF610_CLK_PLL3] = imx_clk_pllv3(IMX_PLLV3_USB, "pll3", "pll3_bypass_src", PLL3_CTRL, 0x1);
|
||||||
clk[VF610_CLK_PLL2_PFD3] = imx_clk_pfd("pll2_pfd3", "pll2_main", PFD_PLL2_BASE, 2);
|
clk[VF610_CLK_PLL4] = imx_clk_pllv3(IMX_PLLV3_AV, "pll4", "pll4_bypass_src", PLL4_CTRL, 0x7f);
|
||||||
clk[VF610_CLK_PLL2_PFD4] = imx_clk_pfd("pll2_pfd4", "pll2_main", PFD_PLL2_BASE, 3);
|
clk[VF610_CLK_PLL5] = imx_clk_pllv3(IMX_PLLV3_ENET, "pll5", "pll5_bypass_src", PLL5_CTRL, 0x3);
|
||||||
|
clk[VF610_CLK_PLL6] = imx_clk_pllv3(IMX_PLLV3_AV, "pll6", "pll6_bypass_src", PLL6_CTRL, 0x7f);
|
||||||
|
clk[VF610_CLK_PLL7] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7", "pll7_bypass_src", PLL7_CTRL, 0x1);
|
||||||
|
|
||||||
clk[VF610_CLK_PLL3_MAIN] = imx_clk_fixed_factor("pll3_main", "fast_clk_sel", 20, 1);
|
clk[VF610_PLL1_BYPASS] = imx_clk_mux_flags("pll1_bypass", PLL1_CTRL, 16, 1, pll1_bypass_sels, ARRAY_SIZE(pll1_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
clk[VF610_CLK_PLL3_PFD1] = imx_clk_pfd("pll3_pfd1", "pll3_main", PFD_PLL3_BASE, 0);
|
clk[VF610_PLL2_BYPASS] = imx_clk_mux_flags("pll2_bypass", PLL2_CTRL, 16, 1, pll2_bypass_sels, ARRAY_SIZE(pll2_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
clk[VF610_CLK_PLL3_PFD2] = imx_clk_pfd("pll3_pfd2", "pll3_main", PFD_PLL3_BASE, 1);
|
clk[VF610_PLL3_BYPASS] = imx_clk_mux_flags("pll3_bypass", PLL3_CTRL, 16, 1, pll3_bypass_sels, ARRAY_SIZE(pll3_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
clk[VF610_CLK_PLL3_PFD3] = imx_clk_pfd("pll3_pfd3", "pll3_main", PFD_PLL3_BASE, 2);
|
clk[VF610_PLL4_BYPASS] = imx_clk_mux_flags("pll4_bypass", PLL4_CTRL, 16, 1, pll4_bypass_sels, ARRAY_SIZE(pll4_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
clk[VF610_CLK_PLL3_PFD4] = imx_clk_pfd("pll3_pfd4", "pll3_main", PFD_PLL3_BASE, 3);
|
clk[VF610_PLL5_BYPASS] = imx_clk_mux_flags("pll5_bypass", PLL5_CTRL, 16, 1, pll5_bypass_sels, ARRAY_SIZE(pll5_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
|
clk[VF610_PLL6_BYPASS] = imx_clk_mux_flags("pll6_bypass", PLL6_CTRL, 16, 1, pll6_bypass_sels, ARRAY_SIZE(pll6_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
|
clk[VF610_PLL7_BYPASS] = imx_clk_mux_flags("pll7_bypass", PLL7_CTRL, 16, 1, pll7_bypass_sels, ARRAY_SIZE(pll7_bypass_sels), CLK_SET_RATE_PARENT);
|
||||||
|
|
||||||
clk[VF610_CLK_PLL4_MAIN] = imx_clk_fixed_factor("pll4_main", "fast_clk_sel", 25, 1);
|
/* Do not bypass PLLs initially */
|
||||||
/* Enet pll: fixed 50Mhz */
|
clk_set_parent(clk[VF610_PLL1_BYPASS], clk[VF610_CLK_PLL1]);
|
||||||
clk[VF610_CLK_PLL5_MAIN] = imx_clk_fixed_factor("pll5_main", "fast_clk_sel", 125, 6);
|
clk_set_parent(clk[VF610_PLL2_BYPASS], clk[VF610_CLK_PLL2]);
|
||||||
/* pll6: default 960Mhz */
|
clk_set_parent(clk[VF610_PLL3_BYPASS], clk[VF610_CLK_PLL3]);
|
||||||
clk[VF610_CLK_PLL6_MAIN] = imx_clk_fixed_factor("pll6_main", "fast_clk_sel", 40, 1);
|
clk_set_parent(clk[VF610_PLL4_BYPASS], clk[VF610_CLK_PLL4]);
|
||||||
/* pll7: USB1 PLL at 480MHz */
|
clk_set_parent(clk[VF610_PLL5_BYPASS], clk[VF610_CLK_PLL5]);
|
||||||
clk[VF610_CLK_PLL7_MAIN] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7_main", "fast_clk_sel", PLL7_CTRL, 0x2);
|
clk_set_parent(clk[VF610_PLL6_BYPASS], clk[VF610_CLK_PLL6]);
|
||||||
|
clk_set_parent(clk[VF610_PLL7_BYPASS], clk[VF610_CLK_PLL7]);
|
||||||
|
|
||||||
|
clk[VF610_CLK_PLL1_SYS] = imx_clk_gate("pll1_sys", "pll1_bypass", PLL1_CTRL, 13);
|
||||||
|
clk[VF610_CLK_PLL2_BUS] = imx_clk_gate("pll2_bus", "pll2_bypass", PLL2_CTRL, 13);
|
||||||
|
clk[VF610_CLK_PLL3_USB_OTG] = imx_clk_gate("pll3_usb_otg", "pll3_bypass", PLL3_CTRL, 13);
|
||||||
|
clk[VF610_CLK_PLL4_AUDIO] = imx_clk_gate("pll4_audio", "pll4_bypass", PLL4_CTRL, 13);
|
||||||
|
clk[VF610_CLK_PLL5_ENET] = imx_clk_gate("pll5_enet", "pll5_bypass", PLL5_CTRL, 13);
|
||||||
|
clk[VF610_CLK_PLL6_VIDEO] = imx_clk_gate("pll6_video", "pll6_bypass", PLL6_CTRL, 13);
|
||||||
|
clk[VF610_CLK_PLL7_USB_HOST] = imx_clk_gate("pll7_usb_host", "pll7_bypass", PLL7_CTRL, 13);
|
||||||
|
|
||||||
|
clk[VF610_CLK_LVDS1_IN] = imx_clk_gate_exclusive("lvds1_in", "anaclk1", ANA_MISC1, 12, BIT(10));
|
||||||
|
|
||||||
|
clk[VF610_CLK_PLL1_PFD1] = imx_clk_pfd("pll1_pfd1", "pll1_sys", PFD_PLL1_BASE, 0);
|
||||||
|
clk[VF610_CLK_PLL1_PFD2] = imx_clk_pfd("pll1_pfd2", "pll1_sys", PFD_PLL1_BASE, 1);
|
||||||
|
clk[VF610_CLK_PLL1_PFD3] = imx_clk_pfd("pll1_pfd3", "pll1_sys", PFD_PLL1_BASE, 2);
|
||||||
|
clk[VF610_CLK_PLL1_PFD4] = imx_clk_pfd("pll1_pfd4", "pll1_sys", PFD_PLL1_BASE, 3);
|
||||||
|
|
||||||
|
clk[VF610_CLK_PLL2_PFD1] = imx_clk_pfd("pll2_pfd1", "pll2_bus", PFD_PLL2_BASE, 0);
|
||||||
|
clk[VF610_CLK_PLL2_PFD2] = imx_clk_pfd("pll2_pfd2", "pll2_bus", PFD_PLL2_BASE, 1);
|
||||||
|
clk[VF610_CLK_PLL2_PFD3] = imx_clk_pfd("pll2_pfd3", "pll2_bus", PFD_PLL2_BASE, 2);
|
||||||
|
clk[VF610_CLK_PLL2_PFD4] = imx_clk_pfd("pll2_pfd4", "pll2_bus", PFD_PLL2_BASE, 3);
|
||||||
|
|
||||||
|
clk[VF610_CLK_PLL3_PFD1] = imx_clk_pfd("pll3_pfd1", "pll3_usb_otg", PFD_PLL3_BASE, 0);
|
||||||
|
clk[VF610_CLK_PLL3_PFD2] = imx_clk_pfd("pll3_pfd2", "pll3_usb_otg", PFD_PLL3_BASE, 1);
|
||||||
|
clk[VF610_CLK_PLL3_PFD3] = imx_clk_pfd("pll3_pfd3", "pll3_usb_otg", PFD_PLL3_BASE, 2);
|
||||||
|
clk[VF610_CLK_PLL3_PFD4] = imx_clk_pfd("pll3_pfd4", "pll3_usb_otg", PFD_PLL3_BASE, 3);
|
||||||
|
|
||||||
clk[VF610_CLK_PLL1_PFD_SEL] = imx_clk_mux("pll1_pfd_sel", CCM_CCSR, 16, 3, pll1_sels, 5);
|
clk[VF610_CLK_PLL1_PFD_SEL] = imx_clk_mux("pll1_pfd_sel", CCM_CCSR, 16, 3, pll1_sels, 5);
|
||||||
clk[VF610_CLK_PLL2_PFD_SEL] = imx_clk_mux("pll2_pfd_sel", CCM_CCSR, 19, 3, pll2_sels, 5);
|
clk[VF610_CLK_PLL2_PFD_SEL] = imx_clk_mux("pll2_pfd_sel", CCM_CCSR, 19, 3, pll2_sels, 5);
|
||||||
@ -167,12 +217,12 @@ static void __init vf610_clocks_init(struct device_node *ccm_node)
|
|||||||
clk[VF610_CLK_PLATFORM_BUS] = imx_clk_divider("platform_bus", "sys_bus", CCM_CACRR, 3, 3);
|
clk[VF610_CLK_PLATFORM_BUS] = imx_clk_divider("platform_bus", "sys_bus", CCM_CACRR, 3, 3);
|
||||||
clk[VF610_CLK_IPG_BUS] = imx_clk_divider("ipg_bus", "platform_bus", CCM_CACRR, 11, 2);
|
clk[VF610_CLK_IPG_BUS] = imx_clk_divider("ipg_bus", "platform_bus", CCM_CACRR, 11, 2);
|
||||||
|
|
||||||
clk[VF610_CLK_PLL3_MAIN_DIV] = imx_clk_divider("pll3_main_div", "pll3_main", CCM_CACRR, 20, 1);
|
clk[VF610_CLK_PLL3_MAIN_DIV] = imx_clk_divider("pll3_usb_otg_div", "pll3_usb_otg", CCM_CACRR, 20, 1);
|
||||||
clk[VF610_CLK_PLL4_MAIN_DIV] = clk_register_divider_table(NULL, "pll4_main_div", "pll4_main", 0, CCM_CACRR, 6, 3, 0, pll4_main_div_table, &imx_ccm_lock);
|
clk[VF610_CLK_PLL4_MAIN_DIV] = clk_register_divider_table(NULL, "pll4_audio_div", "pll4_audio", 0, CCM_CACRR, 6, 3, 0, pll4_audio_div_table, &imx_ccm_lock);
|
||||||
clk[VF610_CLK_PLL6_MAIN_DIV] = imx_clk_divider("pll6_main_div", "pll6_main", CCM_CACRR, 21, 1);
|
clk[VF610_CLK_PLL6_MAIN_DIV] = imx_clk_divider("pll6_video_div", "pll6_video", CCM_CACRR, 21, 1);
|
||||||
|
|
||||||
clk[VF610_CLK_USBPHY0] = imx_clk_gate("usbphy0", "pll3_main", PLL3_CTRL, 6);
|
clk[VF610_CLK_USBPHY0] = imx_clk_gate("usbphy0", "pll3_usb_otg", PLL3_CTRL, 6);
|
||||||
clk[VF610_CLK_USBPHY1] = imx_clk_gate("usbphy1", "pll7_main", PLL7_CTRL, 6);
|
clk[VF610_CLK_USBPHY1] = imx_clk_gate("usbphy1", "pll7_usb_host", PLL7_CTRL, 6);
|
||||||
|
|
||||||
clk[VF610_CLK_USBC0] = imx_clk_gate2("usbc0", "ipg_bus", CCM_CCGR1, CCM_CCGRx_CGn(4));
|
clk[VF610_CLK_USBC0] = imx_clk_gate2("usbc0", "ipg_bus", CCM_CCGR1, CCM_CCGRx_CGn(4));
|
||||||
clk[VF610_CLK_USBC1] = imx_clk_gate2("usbc1", "ipg_bus", CCM_CCGR7, CCM_CCGRx_CGn(4));
|
clk[VF610_CLK_USBC1] = imx_clk_gate2("usbc1", "ipg_bus", CCM_CCGR7, CCM_CCGRx_CGn(4));
|
||||||
@ -191,8 +241,8 @@ static void __init vf610_clocks_init(struct device_node *ccm_node)
|
|||||||
clk[VF610_CLK_QSPI1_X1_DIV] = imx_clk_divider("qspi1_x1", "qspi1_x2", CCM_CSCDR3, 11, 1);
|
clk[VF610_CLK_QSPI1_X1_DIV] = imx_clk_divider("qspi1_x1", "qspi1_x2", CCM_CSCDR3, 11, 1);
|
||||||
clk[VF610_CLK_QSPI1] = imx_clk_gate2("qspi1", "qspi1_x1", CCM_CCGR8, CCM_CCGRx_CGn(4));
|
clk[VF610_CLK_QSPI1] = imx_clk_gate2("qspi1", "qspi1_x1", CCM_CCGR8, CCM_CCGRx_CGn(4));
|
||||||
|
|
||||||
clk[VF610_CLK_ENET_50M] = imx_clk_fixed_factor("enet_50m", "pll5_main", 1, 10);
|
clk[VF610_CLK_ENET_50M] = imx_clk_fixed_factor("enet_50m", "pll5_enet", 1, 10);
|
||||||
clk[VF610_CLK_ENET_25M] = imx_clk_fixed_factor("enet_25m", "pll5_main", 1, 20);
|
clk[VF610_CLK_ENET_25M] = imx_clk_fixed_factor("enet_25m", "pll5_enet", 1, 20);
|
||||||
clk[VF610_CLK_ENET_SEL] = imx_clk_mux("enet_sel", CCM_CSCMR2, 4, 2, rmii_sels, 4);
|
clk[VF610_CLK_ENET_SEL] = imx_clk_mux("enet_sel", CCM_CSCMR2, 4, 2, rmii_sels, 4);
|
||||||
clk[VF610_CLK_ENET_TS_SEL] = imx_clk_mux("enet_ts_sel", CCM_CSCMR2, 0, 3, enet_ts_sels, 7);
|
clk[VF610_CLK_ENET_TS_SEL] = imx_clk_mux("enet_ts_sel", CCM_CSCMR2, 0, 3, enet_ts_sels, 7);
|
||||||
clk[VF610_CLK_ENET] = imx_clk_gate("enet", "enet_sel", CCM_CSCDR1, 24);
|
clk[VF610_CLK_ENET] = imx_clk_gate("enet", "enet_sel", CCM_CSCDR1, 24);
|
||||||
|
@ -76,7 +76,7 @@ static inline void __indirect_writeb(u8 value, volatile void __iomem *p)
|
|||||||
u32 n, byte_enables, data;
|
u32 n, byte_enables, data;
|
||||||
|
|
||||||
if (!is_pci_memory(addr)) {
|
if (!is_pci_memory(addr)) {
|
||||||
__raw_writeb(value, addr);
|
__raw_writeb(value, p);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -141,7 +141,7 @@ static inline unsigned char __indirect_readb(const volatile void __iomem *p)
|
|||||||
u32 n, byte_enables, data;
|
u32 n, byte_enables, data;
|
||||||
|
|
||||||
if (!is_pci_memory(addr))
|
if (!is_pci_memory(addr))
|
||||||
return __raw_readb(addr);
|
return __raw_readb(p);
|
||||||
|
|
||||||
n = addr % 4;
|
n = addr % 4;
|
||||||
byte_enables = (0xf & ~BIT(n)) << IXP4XX_PCI_NP_CBE_BESL;
|
byte_enables = (0xf & ~BIT(n)) << IXP4XX_PCI_NP_CBE_BESL;
|
||||||
|
@ -188,7 +188,7 @@ static void __init thermal_quirk(void)
|
|||||||
|
|
||||||
static void __init mvebu_dt_init(void)
|
static void __init mvebu_dt_init(void)
|
||||||
{
|
{
|
||||||
if (of_machine_is_compatible("plathome,openblocks-ax3-4"))
|
if (of_machine_is_compatible("marvell,armadaxp"))
|
||||||
i2c_quirk();
|
i2c_quirk();
|
||||||
if (of_machine_is_compatible("marvell,a375-db")) {
|
if (of_machine_is_compatible("marvell,a375-db")) {
|
||||||
external_abort_quirk();
|
external_abort_quirk();
|
||||||
|
@ -917,6 +917,10 @@ static int __init omap_device_late_idle(struct device *dev, void *data)
|
|||||||
static int __init omap_device_late_init(void)
|
static int __init omap_device_late_init(void)
|
||||||
{
|
{
|
||||||
bus_for_each_dev(&platform_bus_type, NULL, NULL, omap_device_late_idle);
|
bus_for_each_dev(&platform_bus_type, NULL, NULL, omap_device_late_idle);
|
||||||
|
|
||||||
|
WARN(!of_have_populated_dt(),
|
||||||
|
"legacy booting deprecated, please update to boot with .dts\n");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
omap_late_initcall_sync(omap_device_late_init);
|
omap_late_initcall_sync(omap_device_late_init);
|
||||||
|
@ -252,9 +252,6 @@ static void __init nokia_n900_legacy_init(void)
|
|||||||
platform_device_register(&omap3_rom_rng_device);
|
platform_device_register(&omap3_rom_rng_device);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Only on some development boards */
|
|
||||||
gpio_request_one(164, GPIOF_OUT_INIT_LOW, "smc91x reset");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __init omap3_tao3530_legacy_init(void)
|
static void __init omap3_tao3530_legacy_init(void)
|
||||||
|
@ -38,6 +38,11 @@
|
|||||||
#define DMEMC_VIRT IOMEM(0xf6100000)
|
#define DMEMC_VIRT IOMEM(0xf6100000)
|
||||||
#define DMEMC_SIZE 0x00100000
|
#define DMEMC_SIZE 0x00100000
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Reserved space for low level debug virtual addresses within
|
||||||
|
* 0xf6200000..0xf6201000
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Internal Memory Controller (PXA27x and later)
|
* Internal Memory Controller (PXA27x and later)
|
||||||
*/
|
*/
|
||||||
|
@ -455,7 +455,7 @@ enum {
|
|||||||
MSTP128, MSTP127, MSTP125,
|
MSTP128, MSTP127, MSTP125,
|
||||||
MSTP116, MSTP111, MSTP100, MSTP117,
|
MSTP116, MSTP111, MSTP100, MSTP117,
|
||||||
|
|
||||||
MSTP230,
|
MSTP230, MSTP229,
|
||||||
MSTP222,
|
MSTP222,
|
||||||
MSTP218, MSTP217, MSTP216, MSTP214,
|
MSTP218, MSTP217, MSTP216, MSTP214,
|
||||||
MSTP207, MSTP206, MSTP204, MSTP203, MSTP202, MSTP201, MSTP200,
|
MSTP207, MSTP206, MSTP204, MSTP203, MSTP202, MSTP201, MSTP200,
|
||||||
@ -474,11 +474,12 @@ static struct clk mstp_clks[MSTP_NR] = {
|
|||||||
[MSTP127] = SH_CLK_MSTP32(&div4_clks[DIV4_S], SMSTPCR1, 27, 0), /* CEU20 */
|
[MSTP127] = SH_CLK_MSTP32(&div4_clks[DIV4_S], SMSTPCR1, 27, 0), /* CEU20 */
|
||||||
[MSTP125] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR1, 25, 0), /* TMU0 */
|
[MSTP125] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR1, 25, 0), /* TMU0 */
|
||||||
[MSTP117] = SH_CLK_MSTP32(&div4_clks[DIV4_B], SMSTPCR1, 17, 0), /* LCDC1 */
|
[MSTP117] = SH_CLK_MSTP32(&div4_clks[DIV4_B], SMSTPCR1, 17, 0), /* LCDC1 */
|
||||||
[MSTP116] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR1, 16, 0), /* IIC0 */
|
[MSTP116] = SH_CLK_MSTP32(&div4_clks[DIV4_HPP], SMSTPCR1, 16, 0), /* IIC0 */
|
||||||
[MSTP111] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR1, 11, 0), /* TMU1 */
|
[MSTP111] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR1, 11, 0), /* TMU1 */
|
||||||
[MSTP100] = SH_CLK_MSTP32(&div4_clks[DIV4_B], SMSTPCR1, 0, 0), /* LCDC0 */
|
[MSTP100] = SH_CLK_MSTP32(&div4_clks[DIV4_B], SMSTPCR1, 0, 0), /* LCDC0 */
|
||||||
|
|
||||||
[MSTP230] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR2, 30, 0), /* SCIFA6 */
|
[MSTP230] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR2, 30, 0), /* SCIFA6 */
|
||||||
|
[MSTP229] = SH_CLK_MSTP32(&div4_clks[DIV4_HP], SMSTPCR2, 29, 0), /* INTCA */
|
||||||
[MSTP222] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR2, 22, 0), /* SCIFA7 */
|
[MSTP222] = SH_CLK_MSTP32(&div6_clks[DIV6_SUB], SMSTPCR2, 22, 0), /* SCIFA7 */
|
||||||
[MSTP218] = SH_CLK_MSTP32(&div4_clks[DIV4_HP], SMSTPCR2, 18, 0), /* DMAC1 */
|
[MSTP218] = SH_CLK_MSTP32(&div4_clks[DIV4_HP], SMSTPCR2, 18, 0), /* DMAC1 */
|
||||||
[MSTP217] = SH_CLK_MSTP32(&div4_clks[DIV4_HP], SMSTPCR2, 17, 0), /* DMAC2 */
|
[MSTP217] = SH_CLK_MSTP32(&div4_clks[DIV4_HP], SMSTPCR2, 17, 0), /* DMAC2 */
|
||||||
@ -575,6 +576,10 @@ static struct clk_lookup lookups[] = {
|
|||||||
CLKDEV_DEV_ID("sh-dma-engine.0", &mstp_clks[MSTP218]),
|
CLKDEV_DEV_ID("sh-dma-engine.0", &mstp_clks[MSTP218]),
|
||||||
CLKDEV_DEV_ID("sh-sci.7", &mstp_clks[MSTP222]),
|
CLKDEV_DEV_ID("sh-sci.7", &mstp_clks[MSTP222]),
|
||||||
CLKDEV_DEV_ID("e6cd0000.serial", &mstp_clks[MSTP222]),
|
CLKDEV_DEV_ID("e6cd0000.serial", &mstp_clks[MSTP222]),
|
||||||
|
CLKDEV_DEV_ID("renesas_intc_irqpin.0", &mstp_clks[MSTP229]),
|
||||||
|
CLKDEV_DEV_ID("renesas_intc_irqpin.1", &mstp_clks[MSTP229]),
|
||||||
|
CLKDEV_DEV_ID("renesas_intc_irqpin.2", &mstp_clks[MSTP229]),
|
||||||
|
CLKDEV_DEV_ID("renesas_intc_irqpin.3", &mstp_clks[MSTP229]),
|
||||||
CLKDEV_DEV_ID("sh-sci.6", &mstp_clks[MSTP230]),
|
CLKDEV_DEV_ID("sh-sci.6", &mstp_clks[MSTP230]),
|
||||||
CLKDEV_DEV_ID("e6cc0000.serial", &mstp_clks[MSTP230]),
|
CLKDEV_DEV_ID("e6cc0000.serial", &mstp_clks[MSTP230]),
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@
|
|||||||
|
|
||||||
#define SDCKCR 0xE6150074
|
#define SDCKCR 0xE6150074
|
||||||
#define SD2CKCR 0xE6150078
|
#define SD2CKCR 0xE6150078
|
||||||
#define SD3CKCR 0xE615007C
|
#define SD3CKCR 0xE615026C
|
||||||
#define MMC0CKCR 0xE6150240
|
#define MMC0CKCR 0xE6150240
|
||||||
#define MMC1CKCR 0xE6150244
|
#define MMC1CKCR 0xE6150244
|
||||||
#define SSPCKCR 0xE6150248
|
#define SSPCKCR 0xE6150248
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
#include <linux/of_platform.h>
|
#include <linux/of_platform.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
#include <linux/input.h>
|
#include <linux/input.h>
|
||||||
|
#include <linux/i2c/i2c-sh_mobile.h>
|
||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
#include <linux/serial_sci.h>
|
#include <linux/serial_sci.h>
|
||||||
#include <linux/sh_dma.h>
|
#include <linux/sh_dma.h>
|
||||||
@ -192,11 +193,18 @@ static struct resource i2c4_resources[] = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct i2c_sh_mobile_platform_data i2c_platform_data = {
|
||||||
|
.clks_per_count = 2,
|
||||||
|
};
|
||||||
|
|
||||||
static struct platform_device i2c0_device = {
|
static struct platform_device i2c0_device = {
|
||||||
.name = "i2c-sh_mobile",
|
.name = "i2c-sh_mobile",
|
||||||
.id = 0,
|
.id = 0,
|
||||||
.resource = i2c0_resources,
|
.resource = i2c0_resources,
|
||||||
.num_resources = ARRAY_SIZE(i2c0_resources),
|
.num_resources = ARRAY_SIZE(i2c0_resources),
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &i2c_platform_data,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct platform_device i2c1_device = {
|
static struct platform_device i2c1_device = {
|
||||||
@ -204,6 +212,9 @@ static struct platform_device i2c1_device = {
|
|||||||
.id = 1,
|
.id = 1,
|
||||||
.resource = i2c1_resources,
|
.resource = i2c1_resources,
|
||||||
.num_resources = ARRAY_SIZE(i2c1_resources),
|
.num_resources = ARRAY_SIZE(i2c1_resources),
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &i2c_platform_data,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct platform_device i2c2_device = {
|
static struct platform_device i2c2_device = {
|
||||||
@ -211,6 +222,9 @@ static struct platform_device i2c2_device = {
|
|||||||
.id = 2,
|
.id = 2,
|
||||||
.resource = i2c2_resources,
|
.resource = i2c2_resources,
|
||||||
.num_resources = ARRAY_SIZE(i2c2_resources),
|
.num_resources = ARRAY_SIZE(i2c2_resources),
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &i2c_platform_data,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct platform_device i2c3_device = {
|
static struct platform_device i2c3_device = {
|
||||||
@ -218,6 +232,9 @@ static struct platform_device i2c3_device = {
|
|||||||
.id = 3,
|
.id = 3,
|
||||||
.resource = i2c3_resources,
|
.resource = i2c3_resources,
|
||||||
.num_resources = ARRAY_SIZE(i2c3_resources),
|
.num_resources = ARRAY_SIZE(i2c3_resources),
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &i2c_platform_data,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct platform_device i2c4_device = {
|
static struct platform_device i2c4_device = {
|
||||||
@ -225,6 +242,9 @@ static struct platform_device i2c4_device = {
|
|||||||
.id = 4,
|
.id = 4,
|
||||||
.resource = i2c4_resources,
|
.resource = i2c4_resources,
|
||||||
.num_resources = ARRAY_SIZE(i2c4_resources),
|
.num_resources = ARRAY_SIZE(i2c4_resources),
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &i2c_platform_data,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct sh_dmae_slave_config sh73a0_dmae_slaves[] = {
|
static const struct sh_dmae_slave_config sh73a0_dmae_slaves[] = {
|
||||||
|
@ -798,6 +798,7 @@ config NEED_KUSER_HELPERS
|
|||||||
|
|
||||||
config KUSER_HELPERS
|
config KUSER_HELPERS
|
||||||
bool "Enable kuser helpers in vector page" if !NEED_KUSER_HELPERS
|
bool "Enable kuser helpers in vector page" if !NEED_KUSER_HELPERS
|
||||||
|
depends on MMU
|
||||||
default y
|
default y
|
||||||
help
|
help
|
||||||
Warning: disabling this option may break user programs.
|
Warning: disabling this option may break user programs.
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user