1
0
Fork 0

This is the 5.4.24 stable release

-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl5hHjgACgkQONu9yGCS
 aT6CSBAA0c16mnDb59jgmW/sBj/p/MrlD/WJzLriqiKN5BUsPt9++I5mNj8mG+d2
 Glm4086e8L826zv8oKiZm23xk93on+78ExhVFVZvZNaEUpiRNYCGSuDq2NrHW0z+
 kpagkAFLfCUZFoKtmWo+bpl0YtF4dd/fg7+EjyL6qT1DBs8NVMwZx7i/v0xXv7Wc
 0vsGCLYoBLzcW1FB2d9cfAUPCBuGEzL/7TdifNOXRgI9owGsZndFJgXgIzoBUt/P
 tqB8RLjIupCiMEPtsEAZ/rgEQLPFkb3yrBvgjd1wDI8bHUIQU0clqThKVNvmNSmv
 UTBSNgPAhkP8nZG7X9xCkyfEsUefejBJy66da9n4XTGGrXf9ga0BL0nNrOGwOesr
 m+tNnBSFsbFCMqFopQnt4zZSnaf67AOk2mzxbEu4E+sStyW943aDO9MoRRFgaYGH
 pfie3qOKtKta2MuNTJA+q6F0W9H+V5MtMpwbyuy1/dp2eVln2wewBBMvXYdL1YOy
 E/Z87nsQgalsDynz9m/niv32J4JAxHptyOyROkktDLBSzL5RawNn+Op8X5EtmZOe
 sPkiYicqp9CLmMj13qWXJhtuyNdD4wk6FyyAy6cX9mF44+EZGOBkyNP+n8g789Kn
 sqFJ7sfTfOnwLBFciMA5PaMTGNWROyWXNkvvUzO+9t0CyFAnT2U=
 =abGA
 -----END PGP SIGNATURE-----

Merge tag 'v5.4.24' into imx_5.4.y

Merge Linux stable release v5.4.24 into imx_5.4.y

* tag 'v5.4.24': (3306 commits)
  Linux 5.4.24
  blktrace: Protect q->blk_trace with RCU
  kvm: nVMX: VMWRITE checks unsupported field before read-only field
  ...

Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>

 Conflicts:
	arch/arm/boot/dts/imx6sll-evk.dts
	arch/arm/boot/dts/imx7ulp.dtsi
	arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
	drivers/clk/imx/clk-composite-8m.c
	drivers/gpio/gpio-mxc.c
	drivers/irqchip/Kconfig
	drivers/mmc/host/sdhci-of-esdhc.c
	drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
	drivers/net/can/flexcan.c
	drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
	drivers/net/ethernet/mscc/ocelot.c
	drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
	drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
	drivers/net/phy/realtek.c
	drivers/pci/controller/mobiveil/pcie-mobiveil-host.c
	drivers/perf/fsl_imx8_ddr_perf.c
	drivers/tee/optee/shm_pool.c
	drivers/usb/cdns3/gadget.c
	kernel/sched/cpufreq.c
	net/core/xdp.c
	sound/soc/fsl/fsl_esai.c
	sound/soc/fsl/fsl_sai.c
	sound/soc/sof/core.c
	sound/soc/sof/imx/Kconfig
	sound/soc/sof/loader.c
5.4-rM2-2.2.x-imx-squashed
Jason Liu 2020-03-08 18:57:18 +08:00
commit 335d2828a9
2845 changed files with 30763 additions and 17740 deletions

View File

@ -29,13 +29,13 @@ Description: This file shows the system fans direction:
The files are read only. The files are read only.
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/jtag_enable What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/cpld3_version
Date: November 2018 Date: November 2018
KernelVersion: 5.0 KernelVersion: 5.0
Contact: Vadim Pasternak <vadimpmellanox.com> Contact: Vadim Pasternak <vadimpmellanox.com>
Description: These files show with which CPLD versions have been burned Description: These files show with which CPLD versions have been burned
on LED board. on LED or Gearbox board.
The files are read only. The files are read only.
@ -121,6 +121,15 @@ Description: These files show the system reset cause, as following: ComEx
The files are read only. The files are read only.
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/cpld4_version
Date: November 2018
KernelVersion: 5.0
Contact: Vadim Pasternak <vadimpmellanox.com>
Description: These files show with which CPLD versions have been burned
on LED board.
The files are read only.
Date: June 2019 Date: June 2019
KernelVersion: 5.3 KernelVersion: 5.3
Contact: Vadim Pasternak <vadimpmellanox.com> Contact: Vadim Pasternak <vadimpmellanox.com>

View File

@ -4,7 +4,7 @@ KernelVersion: 3.10
Contact: Samuel Ortiz <sameo@linux.intel.com> Contact: Samuel Ortiz <sameo@linux.intel.com>
linux-mei@linux.intel.com linux-mei@linux.intel.com
Description: Stores the same MODALIAS value emitted by uevent Description: Stores the same MODALIAS value emitted by uevent
Format: mei:<mei device name>:<device uuid>: Format: mei:<mei device name>:<device uuid>:<protocol version>
What: /sys/bus/mei/devices/.../name What: /sys/bus/mei/devices/.../name
Date: May 2015 Date: May 2015

View File

@ -7,6 +7,13 @@ Description:
The name of devfreq object denoted as ... is same as the The name of devfreq object denoted as ... is same as the
name of device using devfreq. name of device using devfreq.
What: /sys/class/devfreq/.../name
Date: November 2019
Contact: Chanwoo Choi <cw00.choi@samsung.com>
Description:
The /sys/class/devfreq/.../name shows the name of device
of the corresponding devfreq object.
What: /sys/class/devfreq/.../governor What: /sys/class/devfreq/.../governor
Date: September 2011 Date: September 2011
Contact: MyungJoo Ham <myungjoo.ham@samsung.com> Contact: MyungJoo Ham <myungjoo.ham@samsung.com>

View File

@ -8,6 +8,7 @@ Device Mapper
cache-policies cache-policies
cache cache
delay delay
dm-clone
dm-crypt dm-crypt
dm-flakey dm-flakey
dm-init dm-init

View File

@ -113,7 +113,7 @@
the GPE dispatcher. the GPE dispatcher.
This facility can be used to prevent such uncontrolled This facility can be used to prevent such uncontrolled
GPE floodings. GPE floodings.
Format: <int> Format: <byte>
acpi_no_auto_serialize [HW,ACPI] acpi_no_auto_serialize [HW,ACPI]
Disable auto-serialization of AML methods Disable auto-serialization of AML methods
@ -5101,13 +5101,13 @@
Flags is a set of characters, each corresponding Flags is a set of characters, each corresponding
to a common usb-storage quirk flag as follows: to a common usb-storage quirk flag as follows:
a = SANE_SENSE (collect more than 18 bytes a = SANE_SENSE (collect more than 18 bytes
of sense data); of sense data, not on uas);
b = BAD_SENSE (don't collect more than 18 b = BAD_SENSE (don't collect more than 18
bytes of sense data); bytes of sense data, not on uas);
c = FIX_CAPACITY (decrease the reported c = FIX_CAPACITY (decrease the reported
device capacity by one sector); device capacity by one sector);
d = NO_READ_DISC_INFO (don't use d = NO_READ_DISC_INFO (don't use
READ_DISC_INFO command); READ_DISC_INFO command, not on uas);
e = NO_READ_CAPACITY_16 (don't use e = NO_READ_CAPACITY_16 (don't use
READ_CAPACITY_16 command); READ_CAPACITY_16 command);
f = NO_REPORT_OPCODES (don't use report opcodes f = NO_REPORT_OPCODES (don't use report opcodes
@ -5122,17 +5122,18 @@
j = NO_REPORT_LUNS (don't use report luns j = NO_REPORT_LUNS (don't use report luns
command, uas only); command, uas only);
l = NOT_LOCKABLE (don't try to lock and l = NOT_LOCKABLE (don't try to lock and
unlock ejectable media); unlock ejectable media, not on uas);
m = MAX_SECTORS_64 (don't transfer more m = MAX_SECTORS_64 (don't transfer more
than 64 sectors = 32 KB at a time); than 64 sectors = 32 KB at a time,
not on uas);
n = INITIAL_READ10 (force a retry of the n = INITIAL_READ10 (force a retry of the
initial READ(10) command); initial READ(10) command, not on uas);
o = CAPACITY_OK (accept the capacity o = CAPACITY_OK (accept the capacity
reported by the device); reported by the device, not on uas);
p = WRITE_CACHE (the device cache is ON p = WRITE_CACHE (the device cache is ON
by default); by default, not on uas);
r = IGNORE_RESIDUE (the device reports r = IGNORE_RESIDUE (the device reports
bogus residue values); bogus residue values, not on uas);
s = SINGLE_LUN (the device has only one s = SINGLE_LUN (the device has only one
Logical Unit); Logical Unit);
t = NO_ATA_1X (don't allow ATA(12) and ATA(16) t = NO_ATA_1X (don't allow ATA(12) and ATA(16)
@ -5141,7 +5142,8 @@
w = NO_WP_DETECT (don't test whether the w = NO_WP_DETECT (don't test whether the
medium is write-protected). medium is write-protected).
y = ALWAYS_SYNC (issue a SYNCHRONIZE_CACHE y = ALWAYS_SYNC (issue a SYNCHRONIZE_CACHE
even if the device claims no cache) even if the device claims no cache,
not on uas)
Example: quirks=0419:aaf5:rl,0421:0433:rc Example: quirks=0419:aaf5:rl,0421:0433:rc
user_debug= [KNL,ARM] user_debug= [KNL,ARM]

View File

@ -44,8 +44,15 @@ The AArch64 Tagged Address ABI has two stages of relaxation depending
how the user addresses are used by the kernel: how the user addresses are used by the kernel:
1. User addresses not accessed by the kernel but used for address space 1. User addresses not accessed by the kernel but used for address space
management (e.g. ``mmap()``, ``mprotect()``, ``madvise()``). The use management (e.g. ``mprotect()``, ``madvise()``). The use of valid
of valid tagged pointers in this context is always allowed. tagged pointers in this context is allowed with the exception of
``brk()``, ``mmap()`` and the ``new_address`` argument to
``mremap()`` as these have the potential to alias with existing
user addresses.
NOTE: This behaviour changed in v5.6 and so some earlier kernels may
incorrectly accept valid tagged pointers for the ``brk()``,
``mmap()`` and ``mremap()`` system calls.
2. User addresses accessed by the kernel (e.g. ``write()``). This ABI 2. User addresses accessed by the kernel (e.g. ``write()``). This ABI
relaxation is disabled by default and the application thread needs to relaxation is disabled by default and the application thread needs to

View File

@ -12,7 +12,6 @@ $(obj)/%.example.dts: $(src)/%.yaml FORCE
$(call if_changed,chk_binding) $(call if_changed,chk_binding)
DT_TMP_SCHEMA := processed-schema.yaml DT_TMP_SCHEMA := processed-schema.yaml
extra-y += $(DT_TMP_SCHEMA)
quiet_cmd_mk_schema = SCHEMA $@ quiet_cmd_mk_schema = SCHEMA $@
cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ $(real-prereqs) cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ $(real-prereqs)
@ -26,8 +25,12 @@ DT_DOCS = $(shell \
DT_SCHEMA_FILES ?= $(addprefix $(src)/,$(DT_DOCS)) DT_SCHEMA_FILES ?= $(addprefix $(src)/,$(DT_DOCS))
ifeq ($(CHECK_DTBS),)
extra-y += $(patsubst $(src)/%.yaml,%.example.dts, $(DT_SCHEMA_FILES)) extra-y += $(patsubst $(src)/%.yaml,%.example.dts, $(DT_SCHEMA_FILES))
extra-y += $(patsubst $(src)/%.yaml,%.example.dt.yaml, $(DT_SCHEMA_FILES)) extra-y += $(patsubst $(src)/%.yaml,%.example.dt.yaml, $(DT_SCHEMA_FILES))
endif
$(obj)/$(DT_TMP_SCHEMA): $(DT_SCHEMA_FILES) FORCE $(obj)/$(DT_TMP_SCHEMA): $(DT_SCHEMA_FILES) FORCE
$(call if_changed,mk_schema) $(call if_changed,mk_schema)
extra-y += $(DT_TMP_SCHEMA)

View File

@ -46,7 +46,7 @@ Required properties:
Example (R-Car H3): Example (R-Car H3):
usb2_clksel: clock-controller@e6590630 { usb2_clksel: clock-controller@e6590630 {
compatible = "renesas,r8a77950-rcar-usb2-clock-sel", compatible = "renesas,r8a7795-rcar-usb2-clock-sel",
"renesas,rcar-gen3-usb2-clock-sel"; "renesas,rcar-gen3-usb2-clock-sel";
reg = <0 0xe6590630 0 0x02>; reg = <0 0xe6590630 0 0x02>;
clocks = <&cpg CPG_MOD 703>, <&usb_extal>, <&usb_xtal>; clocks = <&cpg CPG_MOD 703>, <&usb_extal>, <&usb_xtal>;

View File

@ -85,7 +85,7 @@ properties:
Must be the device tree identifier of the over-sampling Must be the device tree identifier of the over-sampling
mode pins. As the line is active high, it should be marked mode pins. As the line is active high, it should be marked
GPIO_ACTIVE_HIGH. GPIO_ACTIVE_HIGH.
maxItems: 1 maxItems: 3
adi,sw-mode: adi,sw-mode:
description: description:
@ -128,9 +128,9 @@ examples:
adi,conversion-start-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; adi,conversion-start-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>; reset-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;
adi,first-data-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; adi,first-data-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
adi,oversampling-ratio-gpios = <&gpio 18 GPIO_ACTIVE_HIGH adi,oversampling-ratio-gpios = <&gpio 18 GPIO_ACTIVE_HIGH>,
&gpio 23 GPIO_ACTIVE_HIGH <&gpio 23 GPIO_ACTIVE_HIGH>,
&gpio 26 GPIO_ACTIVE_HIGH>; <&gpio 26 GPIO_ACTIVE_HIGH>;
standby-gpios = <&gpio 24 GPIO_ACTIVE_LOW>; standby-gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
adi,sw-mode; adi,sw-mode;
}; };

View File

@ -347,6 +347,7 @@ allOf:
- st,spear600-gmac - st,spear600-gmac
then: then:
properties:
snps,tso: snps,tso:
$ref: /schemas/types.yaml#definitions/flag $ref: /schemas/types.yaml#definitions/flag
description: description:

View File

@ -22,6 +22,6 @@ Example:
}; };
&ethernet_switch { &ethernet_switch {
resets = <&reset>; resets = <&reset 26>;
reset-names = "switch"; reset-names = "switch";
}; };

View File

@ -0,0 +1,27 @@
OMAP ROM RNG driver binding
Secure SoCs may provide RNG via secure ROM calls like Nokia N900 does. The
implementation can depend on the SoC secure ROM used.
- compatible:
Usage: required
Value type: <string>
Definition: must be "nokia,n900-rom-rng"
- clocks:
Usage: required
Value type: <prop-encoded-array>
Definition: reference to the the RNG interface clock
- clock-names:
Usage: required
Value type: <stringlist>
Definition: must be "ick"
Example:
rom_rng: rng {
compatible = "nokia,n900-rom-rng";
clocks = <&rng_ick>;
clock-names = "ick";
};

View File

@ -2,9 +2,11 @@ MT8183 with MT6358, TS3A227 and MAX98357 CODECS
Required properties: Required properties:
- compatible : "mediatek,mt8183_mt6358_ts3a227_max98357" - compatible : "mediatek,mt8183_mt6358_ts3a227_max98357"
- mediatek,headset-codec: the phandles of ts3a227 codecs
- mediatek,platform: the phandle of MT8183 ASoC platform - mediatek,platform: the phandle of MT8183 ASoC platform
Optional properties:
- mediatek,headset-codec: the phandles of ts3a227 codecs
Example: Example:
sound { sound {

View File

@ -130,11 +130,13 @@ binding schema. All of the DT binding documents can be validated using the
make dt_binding_check make dt_binding_check
In order to perform validation of DT source files, use the `dtbs_check` target:: In order to perform validation of DT source files, use the ``dtbs_check`` target::
make dtbs_check make dtbs_check
This will first run the `dt_binding_check` which generates the processed schema. Note that ``dtbs_check`` will skip any binding schema files with errors. It is
necessary to use ``dt_binding_check`` to get all the validation errors in the
binding schema files.
It is also possible to run checks with a single schema file by setting the It is also possible to run checks with a single schema file by setting the
``DT_SCHEMA_FILES`` variable to a specific schema file. ``DT_SCHEMA_FILES`` variable to a specific schema file.

View File

@ -127,7 +127,7 @@ C. Boot options
is typically located on the same video card. Thus, the consoles that is typically located on the same video card. Thus, the consoles that
are controlled by the VGA console will be garbled. are controlled by the VGA console will be garbled.
4. fbcon=rotate:<n> 5. fbcon=rotate:<n>
This option changes the orientation angle of the console display. The This option changes the orientation angle of the console display. The
value 'n' accepts the following: value 'n' accepts the following:
@ -152,21 +152,21 @@ C. Boot options
Actually, the underlying fb driver is totally ignorant of console Actually, the underlying fb driver is totally ignorant of console
rotation. rotation.
5. fbcon=margin:<color> 6. fbcon=margin:<color>
This option specifies the color of the margins. The margins are the This option specifies the color of the margins. The margins are the
leftover area at the right and the bottom of the screen that are not leftover area at the right and the bottom of the screen that are not
used by text. By default, this area will be black. The 'color' value used by text. By default, this area will be black. The 'color' value
is an integer number that depends on the framebuffer driver being used. is an integer number that depends on the framebuffer driver being used.
6. fbcon=nodefer 7. fbcon=nodefer
If the kernel is compiled with deferred fbcon takeover support, normally If the kernel is compiled with deferred fbcon takeover support, normally
the framebuffer contents, left in place by the firmware/bootloader, will the framebuffer contents, left in place by the firmware/bootloader, will
be preserved until there actually is some text is output to the console. be preserved until there actually is some text is output to the console.
This option causes fbcon to bind immediately to the fbdev device. This option causes fbcon to bind immediately to the fbdev device.
7. fbcon=logo-pos:<location> 8. fbcon=logo-pos:<location>
The only possible 'location' is 'center' (without quotes), and when The only possible 'location' is 'center' (without quotes), and when
given, the bootup logo is moved from the default top-left corner given, the bootup logo is moved from the default top-left corner

View File

@ -1115,23 +1115,6 @@ When kbuild executes, the following steps are followed (roughly):
In this example, extra-y is used to list object files that In this example, extra-y is used to list object files that
shall be built, but shall not be linked as part of built-in.a. shall be built, but shall not be linked as part of built-in.a.
header-test-y
header-test-y specifies headers (`*.h`) in the current directory that
should be compile tested to ensure they are self-contained,
i.e. compilable as standalone units. If CONFIG_HEADER_TEST is enabled,
this builds them as part of extra-y.
header-test-pattern-y
This works as a weaker version of header-test-y, and accepts wildcard
patterns. The typical usage is::
header-test-pattern-y += *.h
This specifies all the files that matches to `*.h` in the current
directory, but the files in 'header-test-' are excluded.
6.7 Commands useful for building a boot image 6.7 Commands useful for building a boot image
--------------------------------------------- ---------------------------------------------

View File

@ -339,7 +339,7 @@ To claim an address following code example can be used:
.pgn = J1939_PGN_ADDRESS_CLAIMED, .pgn = J1939_PGN_ADDRESS_CLAIMED,
.pgn_mask = J1939_PGN_PDU1_MAX, .pgn_mask = J1939_PGN_PDU1_MAX,
}, { }, {
.pgn = J1939_PGN_ADDRESS_REQUEST, .pgn = J1939_PGN_REQUEST,
.pgn_mask = J1939_PGN_PDU1_MAX, .pgn_mask = J1939_PGN_PDU1_MAX,
}, { }, {
.pgn = J1939_PGN_ADDRESS_COMMANDED, .pgn = J1939_PGN_ADDRESS_COMMANDED,

View File

@ -76,7 +76,7 @@ flowtable and add one rule to your forward chain.
table inet x { table inet x {
flowtable f { flowtable f {
hook ingress priority 0 devices = { eth0, eth1 }; hook ingress priority 0; devices = { eth0, eth1 };
} }
chain y { chain y {
type filter hook forward priority 0; policy accept; type filter hook forward priority 0; policy accept;

View File

@ -29,7 +29,7 @@ smartpqi specific entries in /sys
smartpqi host attributes: smartpqi host attributes:
------------------------- -------------------------
/sys/class/scsi_host/host*/rescan /sys/class/scsi_host/host*/rescan
/sys/class/scsi_host/host*/version /sys/class/scsi_host/host*/driver_version
The host rescan attribute is a write only attribute. Writing to this The host rescan attribute is a write only attribute. Writing to this
attribute will trigger the driver to scan for new, changed, or removed attribute will trigger the driver to scan for new, changed, or removed

View File

@ -6987,6 +6987,7 @@ L: linux-acpi@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/firmware-guide/acpi/gpio-properties.rst F: Documentation/firmware-guide/acpi/gpio-properties.rst
F: drivers/gpio/gpiolib-acpi.c F: drivers/gpio/gpiolib-acpi.c
F: drivers/gpio/gpiolib-acpi.h
GPIO IR Transmitter GPIO IR Transmitter
M: Sean Young <sean@mess.org> M: Sean Young <sean@mess.org>
@ -8214,7 +8215,7 @@ M: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
M: Rodrigo Vivi <rodrigo.vivi@intel.com> M: Rodrigo Vivi <rodrigo.vivi@intel.com>
L: intel-gfx@lists.freedesktop.org L: intel-gfx@lists.freedesktop.org
W: https://01.org/linuxgraphics/ W: https://01.org/linuxgraphics/
B: https://01.org/linuxgraphics/documentation/how-report-bugs B: https://gitlab.freedesktop.org/drm/intel/-/wikis/How-to-file-i915-bugs
C: irc://chat.freenode.net/intel-gfx C: irc://chat.freenode.net/intel-gfx
Q: http://patchwork.freedesktop.org/project/intel-gfx/ Q: http://patchwork.freedesktop.org/project/intel-gfx/
T: git git://anongit.freedesktop.org/drm-intel T: git git://anongit.freedesktop.org/drm-intel
@ -8717,8 +8718,10 @@ L: isdn4linux@listserv.isdn4linux.de (subscribers-only)
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
W: http://www.isdn4linux.de W: http://www.isdn4linux.de
S: Maintained S: Maintained
F: drivers/isdn/mISDN F: drivers/isdn/mISDN/
F: drivers/isdn/hardware F: drivers/isdn/hardware/
F: drivers/isdn/Kconfig
F: drivers/isdn/Makefile
ISDN/CAPI SUBSYSTEM ISDN/CAPI SUBSYSTEM
M: Karsten Keil <isdn@linux-pingi.de> M: Karsten Keil <isdn@linux-pingi.de>

106
Makefile
View File

@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
VERSION = 5 VERSION = 5
PATCHLEVEL = 4 PATCHLEVEL = 4
SUBLEVEL = 3 SUBLEVEL = 24
EXTRAVERSION = EXTRAVERSION =
NAME = Kleptomaniac Octopus NAME = Kleptomaniac Octopus
@ -618,7 +618,6 @@ ifeq ($(KBUILD_EXTMOD),)
init-y := init/ init-y := init/
drivers-y := drivers/ sound/ drivers-y := drivers/ sound/
drivers-$(CONFIG_SAMPLES) += samples/ drivers-$(CONFIG_SAMPLES) += samples/
drivers-$(CONFIG_KERNEL_HEADER_TEST) += include/
net-y := net/ net-y := net/
libs-y := lib/ libs-y := lib/
core-y := usr/ core-y := usr/
@ -1196,19 +1195,15 @@ headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts
$(Q)$(MAKE) $(hdr-inst)=include/uapi $(Q)$(MAKE) $(hdr-inst)=include/uapi
$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi $(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi
# Deprecated. It is no-op now.
PHONY += headers_check PHONY += headers_check
headers_check: headers headers_check:
$(Q)$(MAKE) $(hdr-inst)=include/uapi HDRCHECK=1 @:
$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi HDRCHECK=1
ifdef CONFIG_HEADERS_INSTALL ifdef CONFIG_HEADERS_INSTALL
prepare: headers prepare: headers
endif endif
ifdef CONFIG_HEADERS_CHECK
all: headers_check
endif
PHONY += scripts_unifdef PHONY += scripts_unifdef
scripts_unifdef: scripts_basic scripts_unifdef: scripts_basic
$(Q)$(MAKE) $(build)=scripts scripts/unifdef $(Q)$(MAKE) $(build)=scripts scripts/unifdef
@ -1476,7 +1471,6 @@ help:
@echo ' versioncheck - Sanity check on version.h usage' @echo ' versioncheck - Sanity check on version.h usage'
@echo ' includecheck - Check for duplicate included header files' @echo ' includecheck - Check for duplicate included header files'
@echo ' export_report - List the usages of all exported symbols' @echo ' export_report - List the usages of all exported symbols'
@echo ' headers_check - Sanity check on exported headers'
@echo ' headerdep - Detect inclusion cycles in headers' @echo ' headerdep - Detect inclusion cycles in headers'
@echo ' coccicheck - Check with Coccinelle' @echo ' coccicheck - Check with Coccinelle'
@echo '' @echo ''
@ -1641,6 +1635,50 @@ help:
PHONY += prepare PHONY += prepare
endif # KBUILD_EXTMOD endif # KBUILD_EXTMOD
# Single targets
# ---------------------------------------------------------------------------
# To build individual files in subdirectories, you can do like this:
#
# make foo/bar/baz.s
#
# The supported suffixes for single-target are listed in 'single-targets'
#
# To build only under specific subdirectories, you can do like this:
#
# make foo/bar/baz/
ifdef single-build
# .ko is special because modpost is needed
single-ko := $(sort $(filter %.ko, $(MAKECMDGOALS)))
single-no-ko := $(sort $(patsubst %.ko,%.mod, $(MAKECMDGOALS)))
$(single-ko): single_modpost
@:
$(single-no-ko): descend
@:
ifeq ($(KBUILD_EXTMOD),)
# For the single build of in-tree modules, use a temporary file to avoid
# the situation of modules_install installing an invalid modules.order.
MODORDER := .modules.tmp
endif
PHONY += single_modpost
single_modpost: $(single-no-ko)
$(Q){ $(foreach m, $(single-ko), echo $(extmod-prefix)$m;) } > $(MODORDER)
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
KBUILD_MODULES := 1
export KBUILD_SINGLE_TARGETS := $(addprefix $(extmod-prefix), $(single-no-ko))
# trim unrelated directories
build-dirs := $(foreach d, $(build-dirs), \
$(if $(filter $(d)/%, $(KBUILD_SINGLE_TARGETS)), $(d)))
endif
# Handle descending into subdirectories listed in $(build-dirs) # Handle descending into subdirectories listed in $(build-dirs)
# Preset locale variables to speed up the build process. Limit locale # Preset locale variables to speed up the build process. Limit locale
# tweaks to this spot to avoid wrong language settings when running # tweaks to this spot to avoid wrong language settings when running
@ -1649,7 +1687,9 @@ endif # KBUILD_EXTMOD
PHONY += descend $(build-dirs) PHONY += descend $(build-dirs)
descend: $(build-dirs) descend: $(build-dirs)
$(build-dirs): prepare $(build-dirs): prepare
$(Q)$(MAKE) $(build)=$@ single-build=$(single-build) need-builtin=1 need-modorder=1 $(Q)$(MAKE) $(build)=$@ \
single-build=$(if $(filter-out $@/, $(single-no-ko)),1) \
need-builtin=1 need-modorder=1
clean-dirs := $(addprefix _clean_, $(clean-dirs)) clean-dirs := $(addprefix _clean_, $(clean-dirs))
PHONY += $(clean-dirs) clean PHONY += $(clean-dirs) clean
@ -1753,50 +1793,6 @@ tools/%: FORCE
$(Q)mkdir -p $(objtree)/tools $(Q)mkdir -p $(objtree)/tools
$(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abspath $(objtree)) subdir=tools -C $(srctree)/tools/ $* $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abspath $(objtree)) subdir=tools -C $(srctree)/tools/ $*
# Single targets
# ---------------------------------------------------------------------------
# To build individual files in subdirectories, you can do like this:
#
# make foo/bar/baz.s
#
# The supported suffixes for single-target are listed in 'single-targets'
#
# To build only under specific subdirectories, you can do like this:
#
# make foo/bar/baz/
ifdef single-build
single-all := $(filter $(single-targets), $(MAKECMDGOALS))
# .ko is special because modpost is needed
single-ko := $(sort $(filter %.ko, $(single-all)))
single-no-ko := $(sort $(patsubst %.ko,%.mod, $(single-all)))
$(single-ko): single_modpost
@:
$(single-no-ko): descend
@:
ifeq ($(KBUILD_EXTMOD),)
# For the single build of in-tree modules, use a temporary file to avoid
# the situation of modules_install installing an invalid modules.order.
MODORDER := .modules.tmp
endif
PHONY += single_modpost
single_modpost: $(single-no-ko)
$(Q){ $(foreach m, $(single-ko), echo $(extmod-prefix)$m;) } > $(MODORDER)
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
KBUILD_MODULES := 1
export KBUILD_SINGLE_TARGETS := $(addprefix $(extmod-prefix), $(single-no-ko))
single-build = $(if $(filter-out $@/, $(single-no-ko)),1)
endif
# FIXME Should go into a make.lib or something # FIXME Should go into a make.lib or something
# =========================================================================== # ===========================================================================

View File

@ -396,10 +396,10 @@ config HAVE_ARCH_JUMP_LABEL_RELATIVE
config HAVE_RCU_TABLE_FREE config HAVE_RCU_TABLE_FREE
bool bool
config HAVE_RCU_TABLE_NO_INVALIDATE config HAVE_MMU_GATHER_PAGE_SIZE
bool bool
config HAVE_MMU_GATHER_PAGE_SIZE config MMU_GATHER_NO_RANGE
bool bool
config HAVE_MMU_GATHER_NO_GATHER config HAVE_MMU_GATHER_NO_GATHER

View File

@ -77,6 +77,7 @@
interrupt-names = "macirq"; interrupt-names = "macirq";
phy-mode = "rgmii"; phy-mode = "rgmii";
snps,pbl = < 32 >; snps,pbl = < 32 >;
snps,multicast-filter-bins = <256>;
clocks = <&apbclk>; clocks = <&apbclk>;
clock-names = "stmmaceth"; clock-names = "stmmaceth";
max-speed = <100>; max-speed = <100>;

View File

@ -7,7 +7,7 @@
menuconfig ARC_PLAT_EZNPS menuconfig ARC_PLAT_EZNPS
bool "\"EZchip\" ARC dev platform" bool "\"EZchip\" ARC dev platform"
select CPU_BIG_ENDIAN select CPU_BIG_ENDIAN
select CLKSRC_NPS select CLKSRC_NPS if !PHYS_ADDR_T_64BIT
select EZNPS_GIC select EZNPS_GIC
select EZCHIP_NPS_MANAGEMENT_ENET if ETHERNET select EZCHIP_NPS_MANAGEMENT_ENET if ETHERNET
help help

View File

@ -73,8 +73,9 @@ config ARM
select HAVE_ARM_SMCCC if CPU_V7 select HAVE_ARM_SMCCC if CPU_V7
select HAVE_EBPF_JIT if !CPU_ENDIAN_BE32 select HAVE_EBPF_JIT if !CPU_ENDIAN_BE32
select HAVE_CONTEXT_TRACKING select HAVE_CONTEXT_TRACKING
select HAVE_COPY_THREAD_TLS
select HAVE_C_RECORDMCOUNT select HAVE_C_RECORDMCOUNT
select HAVE_DEBUG_KMEMLEAK select HAVE_DEBUG_KMEMLEAK if !XIP_KERNEL
select HAVE_DMA_CONTIGUOUS if MMU select HAVE_DMA_CONTIGUOUS if MMU
select HAVE_DYNAMIC_FTRACE if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU select HAVE_DYNAMIC_FTRACE if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU
select HAVE_DYNAMIC_FTRACE_WITH_REGS if HAVE_DYNAMIC_FTRACE select HAVE_DYNAMIC_FTRACE_WITH_REGS if HAVE_DYNAMIC_FTRACE
@ -1906,7 +1907,7 @@ config XIP_DEFLATED_DATA
config KEXEC config KEXEC
bool "Kexec system call (EXPERIMENTAL)" bool "Kexec system call (EXPERIMENTAL)"
depends on (!SMP || PM_SLEEP_SMP) depends on (!SMP || PM_SLEEP_SMP)
depends on !CPU_V7M depends on MMU
select KEXEC_CORE select KEXEC_CORE
help help
kexec is a system call that implements the ability to shutdown your kexec is a system call that implements the ability to shutdown your

View File

@ -2,11 +2,13 @@
#ifndef _ARM_LIBFDT_ENV_H #ifndef _ARM_LIBFDT_ENV_H
#define _ARM_LIBFDT_ENV_H #define _ARM_LIBFDT_ENV_H
#include <linux/limits.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/string.h> #include <linux/string.h>
#include <asm/byteorder.h> #include <asm/byteorder.h>
#define INT_MAX ((int)(~0U>>1)) #define INT32_MAX S32_MAX
#define UINT32_MAX U32_MAX
typedef __be16 fdt16_t; typedef __be16 fdt16_t;
typedef __be32 fdt32_t; typedef __be32 fdt32_t;

View File

@ -131,6 +131,11 @@
}; };
/ { / {
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0x20000000>; /* 512 MB */
};
clk_mcasp0_fixed: clk_mcasp0_fixed { clk_mcasp0_fixed: clk_mcasp0_fixed {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "fixed-clock"; compatible = "fixed-clock";

View File

@ -108,7 +108,7 @@
&cpsw_emac0 { &cpsw_emac0 {
phy-handle = <&ethphy0>; phy-handle = <&ethphy0>;
phy-mode = "rgmii-txid"; phy-mode = "rgmii-id";
}; };
&i2c0 { &i2c0 {

View File

@ -86,7 +86,7 @@
}; };
lcd0: display { lcd0: display {
compatible = "osddisplays,osd057T0559-34ts", "panel-dpi"; compatible = "osddisplays,osd070t1718-19ts", "panel-dpi";
label = "lcd"; label = "lcd";
backlight = <&lcd_bl>; backlight = <&lcd_bl>;

View File

@ -42,7 +42,7 @@
}; };
lcd0: display { lcd0: display {
compatible = "osddisplays,osd057T0559-34ts", "panel-dpi"; compatible = "osddisplays,osd070t1718-19ts", "panel-dpi";
label = "lcd"; label = "lcd";
backlight = <&lcd_bl>; backlight = <&lcd_bl>;
@ -848,6 +848,7 @@
pinctrl-names = "default", "sleep"; pinctrl-names = "default", "sleep";
pinctrl-0 = <&spi0_pins_default>; pinctrl-0 = <&spi0_pins_default>;
pinctrl-1 = <&spi0_pins_sleep>; pinctrl-1 = <&spi0_pins_sleep>;
ti,pindir-d0-out-d1-in = <1>;
}; };
&spi1 { &spi1 {
@ -855,6 +856,7 @@
pinctrl-names = "default", "sleep"; pinctrl-names = "default", "sleep";
pinctrl-0 = <&spi1_pins_default>; pinctrl-0 = <&spi1_pins_default>;
pinctrl-1 = <&spi1_pins_sleep>; pinctrl-1 = <&spi1_pins_sleep>;
ti,pindir-d0-out-d1-in = <1>;
}; };
&usb2_phy1 { &usb2_phy1 {

View File

@ -704,6 +704,60 @@
ti,bit-shift = <8>; ti,bit-shift = <8>;
reg = <0x2a48>; reg = <0x2a48>;
}; };
clkout1_osc_div_ck: clkout1-osc-div-ck {
#clock-cells = <0>;
compatible = "ti,divider-clock";
clocks = <&sys_clkin_ck>;
ti,bit-shift = <20>;
ti,max-div = <4>;
reg = <0x4100>;
};
clkout1_src2_mux_ck: clkout1-src2-mux-ck {
#clock-cells = <0>;
compatible = "ti,mux-clock";
clocks = <&clk_rc32k_ck>, <&sysclk_div>, <&dpll_ddr_m2_ck>,
<&dpll_per_m2_ck>, <&dpll_disp_m2_ck>,
<&dpll_mpu_m2_ck>;
reg = <0x4100>;
};
clkout1_src2_pre_div_ck: clkout1-src2-pre-div-ck {
#clock-cells = <0>;
compatible = "ti,divider-clock";
clocks = <&clkout1_src2_mux_ck>;
ti,bit-shift = <4>;
ti,max-div = <8>;
reg = <0x4100>;
};
clkout1_src2_post_div_ck: clkout1-src2-post-div-ck {
#clock-cells = <0>;
compatible = "ti,divider-clock";
clocks = <&clkout1_src2_pre_div_ck>;
ti,bit-shift = <8>;
ti,max-div = <32>;
ti,index-power-of-two;
reg = <0x4100>;
};
clkout1_mux_ck: clkout1-mux-ck {
#clock-cells = <0>;
compatible = "ti,mux-clock";
clocks = <&clkout1_osc_div_ck>, <&clk_rc32k_ck>,
<&clkout1_src2_post_div_ck>, <&dpll_extdev_m2_ck>;
ti,bit-shift = <16>;
reg = <0x4100>;
};
clkout1_ck: clkout1-ck {
#clock-cells = <0>;
compatible = "ti,gate-clock";
clocks = <&clkout1_mux_ck>;
ti,bit-shift = <23>;
reg = <0x4100>;
};
}; };
&prcm { &prcm {

View File

@ -167,11 +167,7 @@
&pcie1_rc { &pcie1_rc {
status = "okay"; status = "okay";
gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>; gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
};
&pcie1_ep {
gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
}; };
&mmc1 { &mmc1 {

View File

@ -147,10 +147,6 @@
gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>; gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
}; };
&pcie1_ep {
gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
};
&mailbox5 { &mailbox5 {
status = "okay"; status = "okay";
mbox_ipu1_ipc3x: mbox_ipu1_ipc3x { mbox_ipu1_ipc3x: mbox_ipu1_ipc3x {

View File

@ -29,6 +29,27 @@
reg = <0x0 0x80000000 0x0 0x80000000>; reg = <0x0 0x80000000 0x0 0x80000000>;
}; };
main_12v0: fixedregulator-main_12v0 {
/* main supply */
compatible = "regulator-fixed";
regulator-name = "main_12v0";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
regulator-always-on;
regulator-boot-on;
};
evm_5v0: fixedregulator-evm_5v0 {
/* Output of TPS54531D */
compatible = "regulator-fixed";
regulator-name = "evm_5v0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
vin-supply = <&main_12v0>;
regulator-always-on;
regulator-boot-on;
};
vdd_3v3: fixedregulator-vdd_3v3 { vdd_3v3: fixedregulator-vdd_3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "vdd_3v3"; regulator-name = "vdd_3v3";
@ -547,10 +568,6 @@
gpios = <&gpio2 8 GPIO_ACTIVE_LOW>; gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
}; };
&pcie1_ep {
gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
};
&mcasp3 { &mcasp3 {
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>; assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>;

View File

@ -187,7 +187,7 @@
usart0 { usart0 {
pinctrl_usart0: usart0-0 { pinctrl_usart0: usart0-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -221,7 +221,7 @@
usart1 { usart1 {
pinctrl_usart1: usart1-0 { pinctrl_usart1: usart1-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -239,7 +239,7 @@
usart2 { usart2 {
pinctrl_usart2: usart2-0 { pinctrl_usart2: usart2-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -257,7 +257,7 @@
usart3 { usart3 {
pinctrl_usart3: usart3-0 { pinctrl_usart3: usart3-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -275,7 +275,7 @@
uart0 { uart0 {
pinctrl_uart0: uart0-0 { pinctrl_uart0: uart0-0 {
atmel,pins = atmel,pins =
<AT91_PIOA 31 AT91_PERIPH_B AT91_PINCTRL_NONE <AT91_PIOA 31 AT91_PERIPH_B AT91_PINCTRL_PULL_UP
AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
}; };
}; };
@ -283,7 +283,7 @@
uart1 { uart1 {
pinctrl_uart1: uart1-0 { pinctrl_uart1: uart1-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
}; };

View File

@ -329,7 +329,7 @@
usart0 { usart0 {
pinctrl_usart0: usart0-0 { pinctrl_usart0: usart0-0 {
atmel,pins = atmel,pins =
<AT91_PIOC 8 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOC 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOC 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOC 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -347,7 +347,7 @@
usart1 { usart1 {
pinctrl_usart1: usart1-0 { pinctrl_usart1: usart1-0 {
atmel,pins = atmel,pins =
<AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -365,7 +365,7 @@
usart2 { usart2 {
pinctrl_usart2: usart2-0 { pinctrl_usart2: usart2-0 {
atmel,pins = atmel,pins =
<AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOC 15 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOC 15 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };

View File

@ -183,7 +183,7 @@
usart0 { usart0 {
pinctrl_usart0: usart0-0 { pinctrl_usart0: usart0-0 {
atmel,pins = atmel,pins =
<AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -201,7 +201,7 @@
usart1 { usart1 {
pinctrl_usart1: usart1-0 { pinctrl_usart1: usart1-0 {
atmel,pins = atmel,pins =
<AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -219,7 +219,7 @@
usart2 { usart2 {
pinctrl_usart2: usart2-0 { pinctrl_usart2: usart2-0 {
atmel,pins = atmel,pins =
<AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };

View File

@ -556,7 +556,7 @@
usart0 { usart0 {
pinctrl_usart0: usart0-0 { pinctrl_usart0: usart0-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -574,7 +574,7 @@
usart1 { usart1 {
pinctrl_usart1: usart1-0 { pinctrl_usart1: usart1-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -592,7 +592,7 @@
usart2 { usart2 {
pinctrl_usart2: usart2-0 { pinctrl_usart2: usart2-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -610,7 +610,7 @@
usart3 { usart3 {
pinctrl_usart3: usart3-0 { pinctrl_usart3: usart3-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_NONE <AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };

View File

@ -682,7 +682,7 @@
usart0 { usart0 {
pinctrl_usart0: usart0-0 { pinctrl_usart0: usart0-0 {
atmel,pins = atmel,pins =
<AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -721,7 +721,7 @@
usart1 { usart1 {
pinctrl_usart1: usart1-0 { pinctrl_usart1: usart1-0 {
atmel,pins = atmel,pins =
<AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -744,7 +744,7 @@
usart2 { usart2 {
pinctrl_usart2: usart2-0 { pinctrl_usart2: usart2-0 {
atmel,pins = atmel,pins =
<AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };
@ -767,7 +767,7 @@
usart3 { usart3 {
pinctrl_usart3: usart3-0 { pinctrl_usart3: usart3-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; <AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
}; };

View File

@ -174,8 +174,8 @@
mdio: mdio@18002000 { mdio: mdio@18002000 {
compatible = "brcm,iproc-mdio"; compatible = "brcm,iproc-mdio";
reg = <0x18002000 0x8>; reg = <0x18002000 0x8>;
#size-cells = <1>; #size-cells = <0>;
#address-cells = <0>; #address-cells = <1>;
status = "disabled"; status = "disabled";
gphy0: ethernet-phy@0 { gphy0: ethernet-phy@0 {

View File

@ -40,7 +40,7 @@
trips { trips {
cpu-crit { cpu-crit {
temperature = <80000>; temperature = <90000>;
hysteresis = <0>; hysteresis = <0>;
type = "critical"; type = "critical";
}; };

View File

@ -353,8 +353,8 @@
mdio: mdio@18003000 { mdio: mdio@18003000 {
compatible = "brcm,iproc-mdio"; compatible = "brcm,iproc-mdio";
reg = <0x18003000 0x8>; reg = <0x18003000 0x8>;
#size-cells = <1>; #size-cells = <0>;
#address-cells = <0>; #address-cells = <1>;
}; };
mdio-bus-mux@18003000 { mdio-bus-mux@18003000 {

View File

@ -3059,7 +3059,7 @@
davinci_mdio: mdio@1000 { davinci_mdio: mdio@1000 {
compatible = "ti,cpsw-mdio","ti,davinci_mdio"; compatible = "ti,cpsw-mdio","ti,davinci_mdio";
clocks = <&gmac_clkctrl DRA7_GMAC_GMAC_CLKCTRL 0>; clocks = <&gmac_main_clk>;
clock-names = "fck"; clock-names = "fck";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;

View File

@ -8,7 +8,7 @@
/dts-v1/; /dts-v1/;
#include "imx6dl.dtsi" #include "imx6dl.dtsi"
#include "imx6qdl-icore.dtsi" #include "imx6qdl-icore-1.5.dtsi"
/ { / {
model = "Engicam i.CoreM6 DualLite/Solo MIPI Starter Kit"; model = "Engicam i.CoreM6 DualLite/Solo MIPI Starter Kit";

View File

@ -55,7 +55,7 @@
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
clocks = <&clk_ext_audio_codec>; clocks = <&clk_ext_audio_codec>;
VDDA-supply = <&reg_3p3v>; VDDA-supply = <&reg_3p3v>;
VDDIO-supply = <&reg_3p3v>; VDDIO-supply = <&sw2_reg>;
}; };
}; };

View File

@ -206,7 +206,7 @@
}; };
rtc@56 { rtc@56 {
compatible = "rv3029c2"; compatible = "microcrystal,rv3029";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_rtc_hw300>; pinctrl-0 = <&pinctrl_rtc_hw300>;
reg = <0x56>; reg = <0x56>;

View File

@ -627,7 +627,7 @@
pinctrl-0 = <&pinctrl_usdhc2>; pinctrl-0 = <&pinctrl_usdhc2>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>; disable-wp;
vmmc-supply = <&reg_3p3v_sd>; vmmc-supply = <&reg_3p3v_sd>;
vqmmc-supply = <&reg_3p3v>; vqmmc-supply = <&reg_3p3v>;
no-1-8-v; no-1-8-v;
@ -640,7 +640,7 @@
pinctrl-0 = <&pinctrl_usdhc3>; pinctrl-0 = <&pinctrl_usdhc3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>; disable-wp;
vmmc-supply = <&reg_3p3v_sd>; vmmc-supply = <&reg_3p3v_sd>;
vqmmc-supply = <&reg_3p3v>; vqmmc-supply = <&reg_3p3v>;
no-1-8-v; no-1-8-v;
@ -774,6 +774,7 @@
&usbh1 { &usbh1 {
vbus-supply = <&reg_5p0v_main>; vbus-supply = <&reg_5p0v_main>;
disable-over-current; disable-over-current;
maximum-speed = "full-speed";
status = "okay"; status = "okay";
}; };
@ -1055,7 +1056,6 @@
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x40010040
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x40010040 MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x40010040
>; >;
}; };
@ -1068,7 +1068,6 @@
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x40010040
MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x40010040 MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x40010040
>; >;

View File

@ -157,10 +157,6 @@
status = "okay"; status = "okay";
}; };
&snvs_poweroff {
status = "okay";
};
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;

View File

@ -49,3 +49,7 @@
reg = <0x80000000 0x10000000>; reg = <0x80000000 0x10000000>;
}; };
}; };
&gpmi {
status = "okay";
};

View File

@ -37,10 +37,10 @@
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
cpu0: cpu@0 { cpu0: cpu@f00 {
compatible = "arm,cortex-a7"; compatible = "arm,cortex-a7";
device_type = "cpu"; device_type = "cpu";
reg = <0>; reg = <0xf00>;
operating-points = < operating-points = <
/* KHz uV */ /* KHz uV */
720000 1125000 720000 1125000

View File

@ -11,22 +11,6 @@
#include "logicpd-torpedo-37xx-devkit.dts" #include "logicpd-torpedo-37xx-devkit.dts"
&lcd0 { &lcd0 {
/* To make it work, set CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK=4 */
label = "28"; compatible = "logicpd,type28";
panel-timing {
clock-frequency = <9000000>;
hactive = <480>;
vactive = <272>;
hfront-porch = <3>;
hback-porch = <2>;
hsync-len = <42>;
vback-porch = <3>;
vfront-porch = <2>;
vsync-len = <11>;
hsync-active = <1>;
vsync-active = <1>;
de-active = <1>;
pixelclk-active = <0>;
};
}; };

View File

@ -129,8 +129,8 @@
gpu_opp_table: gpu-opp-table { gpu_opp_table: gpu-opp-table {
compatible = "operating-points-v2"; compatible = "operating-points-v2";
opp-182150000 { opp-182142857 {
opp-hz = /bits/ 64 <182150000>; opp-hz = /bits/ 64 <182142857>;
opp-microvolt = <1150000>; opp-microvolt = <1150000>;
}; };
opp-318750000 { opp-318750000 {
@ -253,7 +253,7 @@
&aobus { &aobus {
pmu: pmu@e0 { pmu: pmu@e0 {
compatible = "amlogic,meson8-pmu", "syscon"; compatible = "amlogic,meson8-pmu", "syscon";
reg = <0xe0 0x8>; reg = <0xe0 0x18>;
}; };
pinctrl_aobus: pinctrl@84 { pinctrl_aobus: pinctrl@84 {

View File

@ -125,8 +125,8 @@
opp-hz = /bits/ 64 <255000000>; opp-hz = /bits/ 64 <255000000>;
opp-microvolt = <1100000>; opp-microvolt = <1100000>;
}; };
opp-364300000 { opp-364285714 {
opp-hz = /bits/ 64 <364300000>; opp-hz = /bits/ 64 <364285714>;
opp-microvolt = <1100000>; opp-microvolt = <1100000>;
}; };
opp-425000000 { opp-425000000 {

View File

@ -160,12 +160,12 @@
regulator-enable-ramp-delay = <1000>; regulator-enable-ramp-delay = <1000>;
}; };
/* Used by DSS */ /* Used by DSS and is the "zerov_regulator" trigger for SoC off mode */
vcsi: VCSI { vcsi: VCSI {
regulator-min-microvolt = <1800000>; regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
regulator-enable-ramp-delay = <1000>; regulator-enable-ramp-delay = <1000>;
regulator-boot-on; regulator-always-on;
}; };
vdac: VDAC { vdac: VDAC {

View File

@ -155,6 +155,12 @@
pwms = <&pwm9 0 26316 0>; /* 38000 Hz */ pwms = <&pwm9 0 26316 0>; /* 38000 Hz */
}; };
rom_rng: rng {
compatible = "nokia,n900-rom-rng";
clocks = <&rng_ick>;
clock-names = "ick";
};
/* controlled (enabled/disabled) directly by bcm2048 and wl1251 */ /* controlled (enabled/disabled) directly by bcm2048 and wl1251 */
vctcxo: vctcxo { vctcxo: vctcxo {
compatible = "fixed-clock"; compatible = "fixed-clock";

View File

@ -226,6 +226,17 @@
gpio = <&gpio6 4 GPIO_ACTIVE_HIGH>; /* GPIO_164 */ gpio = <&gpio6 4 GPIO_ACTIVE_HIGH>; /* GPIO_164 */
}; };
/* wl1251 wifi+bt module */
wlan_en: fixed-regulator-wg7210_en {
compatible = "regulator-fixed";
regulator-name = "vwlan";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
startup-delay-us = <50000>;
enable-active-high;
gpio = <&gpio1 23 GPIO_ACTIVE_HIGH>;
};
/* wg7210 (wifi+bt module) 32k clock buffer */ /* wg7210 (wifi+bt module) 32k clock buffer */
wg7210_32k: fixed-regulator-wg7210_32k { wg7210_32k: fixed-regulator-wg7210_32k {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
@ -522,9 +533,30 @@
/*wp-gpios = <&gpio4 31 GPIO_ACTIVE_HIGH>;*/ /* GPIO_127 */ /*wp-gpios = <&gpio4 31 GPIO_ACTIVE_HIGH>;*/ /* GPIO_127 */
}; };
/* mmc3 is probed using pdata-quirks to pass wl1251 card data */
&mmc3 { &mmc3 {
status = "disabled"; vmmc-supply = <&wlan_en>;
bus-width = <4>;
non-removable;
ti,non-removable;
cap-power-off-card;
pinctrl-names = "default";
pinctrl-0 = <&mmc3_pins>;
#address-cells = <1>;
#size-cells = <0>;
wlan: wifi@1 {
compatible = "ti,wl1251";
reg = <1>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* GPIO_21 */
ti,wl1251-has-eeprom;
};
}; };
/* bluetooth*/ /* bluetooth*/

View File

@ -222,7 +222,7 @@
pinctrl-0 = <&mmc1_pins>; pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&vmmc1>; vmmc-supply = <&vmmc1>;
vqmmc-supply = <&vsim>; vqmmc-supply = <&vsim>;
cd-gpios = <&twl_gpio 0 GPIO_ACTIVE_HIGH>; cd-gpios = <&twl_gpio 0 GPIO_ACTIVE_LOW>;
bus-width = <8>; bus-width = <8>;
}; };

View File

@ -330,8 +330,8 @@
target-module@56000000 { target-module@56000000 {
compatible = "ti,sysc-omap4", "ti,sysc"; compatible = "ti,sysc-omap4", "ti,sysc";
reg = <0x5601fc00 0x4>, reg = <0x5600fe00 0x4>,
<0x5601fc10 0x4>; <0x5600fe10 0x4>;
reg-names = "rev", "sysc"; reg-names = "rev", "sysc";
ti,sysc-midle = <SYSC_IDLE_FORCE>, ti,sysc-midle = <SYSC_IDLE_FORCE>,
<SYSC_IDLE_NO>, <SYSC_IDLE_NO>,

View File

@ -68,6 +68,14 @@
<0xf0000100 0x100>; <0xf0000100 0x100>;
}; };
timer@f0000200 {
compatible = "arm,cortex-a9-global-timer";
reg = <0xf0000200 0x100>;
interrupts = <GIC_PPI 11
(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>;
clocks = <&cpg_clocks R8A7779_CLK_ZS>;
};
timer@f0000600 { timer@f0000600 {
compatible = "arm,cortex-a9-twd-timer"; compatible = "arm,cortex-a9-twd-timer";
reg = <0xf0000600 0x20>; reg = <0xf0000600 0x20>;

View File

@ -466,9 +466,12 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sd1_clk>, <&sd1_cmd>, <&sd1_bus4>; pinctrl-0 = <&sd1_clk>, <&sd1_cmd>, <&sd1_bus4>;
vmmcq-supply = <&vccio_wl>; vmmcq-supply = <&vccio_wl>;
#address-cells = <1>;
#size-cells = <0>;
status = "okay"; status = "okay";
brcmf: wifi@1 { brcmf: wifi@1 {
reg = <1>;
compatible = "brcm,bcm4329-fmac"; compatible = "brcm,bcm4329-fmac";
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <RK_PD2 GPIO_ACTIVE_HIGH>; interrupts = <RK_PD2 GPIO_ACTIVE_HIGH>;

View File

@ -165,6 +165,10 @@
}; };
}; };
&clocks {
clocks = <&fin_pll>;
};
&sdhci0 { &sdhci0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;

View File

@ -69,6 +69,10 @@
}; };
}; };
&clocks {
clocks = <&fin_pll>;
};
&sdhci0 { &sdhci0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;

View File

@ -1188,49 +1188,49 @@
usart0_clk: usart0_clk { usart0_clk: usart0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <12>; reg = <12>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
usart1_clk: usart1_clk { usart1_clk: usart1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <13>; reg = <13>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
usart2_clk: usart2_clk { usart2_clk: usart2_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <14>; reg = <14>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
usart3_clk: usart3_clk { usart3_clk: usart3_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <15>; reg = <15>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
uart0_clk: uart0_clk { uart0_clk: uart0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <16>; reg = <16>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
twi0_clk: twi0_clk { twi0_clk: twi0_clk {
reg = <18>; reg = <18>;
#clock-cells = <0>; #clock-cells = <0>;
atmel,clk-output-range = <0 16625000>; atmel,clk-output-range = <0 41500000>;
}; };
twi1_clk: twi1_clk { twi1_clk: twi1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <19>; reg = <19>;
atmel,clk-output-range = <0 16625000>; atmel,clk-output-range = <0 41500000>;
}; };
twi2_clk: twi2_clk { twi2_clk: twi2_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <20>; reg = <20>;
atmel,clk-output-range = <0 16625000>; atmel,clk-output-range = <0 41500000>;
}; };
mci0_clk: mci0_clk { mci0_clk: mci0_clk {
@ -1246,19 +1246,19 @@
spi0_clk: spi0_clk { spi0_clk: spi0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <24>; reg = <24>;
atmel,clk-output-range = <0 133000000>; atmel,clk-output-range = <0 166000000>;
}; };
spi1_clk: spi1_clk { spi1_clk: spi1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <25>; reg = <25>;
atmel,clk-output-range = <0 133000000>; atmel,clk-output-range = <0 166000000>;
}; };
tcb0_clk: tcb0_clk { tcb0_clk: tcb0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <26>; reg = <26>;
atmel,clk-output-range = <0 133000000>; atmel,clk-output-range = <0 166000000>;
}; };
pwm_clk: pwm_clk { pwm_clk: pwm_clk {
@ -1269,7 +1269,7 @@
adc_clk: adc_clk { adc_clk: adc_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <29>; reg = <29>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
dma0_clk: dma0_clk { dma0_clk: dma0_clk {
@ -1300,13 +1300,13 @@
ssc0_clk: ssc0_clk { ssc0_clk: ssc0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <38>; reg = <38>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
ssc1_clk: ssc1_clk { ssc1_clk: ssc1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <39>; reg = <39>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
sha_clk: sha_clk { sha_clk: sha_clk {

View File

@ -36,13 +36,13 @@
can0_clk: can0_clk { can0_clk: can0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <40>; reg = <40>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
can1_clk: can1_clk { can1_clk: can1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <41>; reg = <41>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
}; };
}; };

View File

@ -22,6 +22,7 @@
tcb1_clk: tcb1_clk { tcb1_clk: tcb1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <27>; reg = <27>;
atmel,clk-output-range = <0 166000000>;
}; };
}; };
}; };

View File

@ -41,13 +41,13 @@
uart0_clk: uart0_clk { uart0_clk: uart0_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <16>; reg = <16>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
uart1_clk: uart1_clk { uart1_clk: uart1_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <17>; reg = <17>;
atmel,clk-output-range = <0 66000000>; atmel,clk-output-range = <0 83000000>;
}; };
}; };
}; };

View File

@ -46,7 +46,7 @@
/* DAC */ /* DAC */
format = "i2s"; format = "i2s";
mclk-fs = <256>; mclk-fs = <256>;
frame-inversion = <1>; frame-inversion;
cpu { cpu {
sound-dai = <&sti_uni_player2>; sound-dai = <&sti_uni_player2>;
}; };

View File

@ -76,6 +76,13 @@
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
}; };
vdd_dsi: vdd-dsi {
compatible = "regulator-fixed";
regulator-name = "vdd_dsi";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
soc { soc {
dma-ranges = <0xc0000000 0x0 0x10000000>; dma-ranges = <0xc0000000 0x0 0x10000000>;
}; };
@ -155,6 +162,7 @@
compatible = "orisetech,otm8009a"; compatible = "orisetech,otm8009a";
reg = <0>; /* dsi virtual channel (0..3) */ reg = <0>; /* dsi virtual channel (0..3) */
reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>; reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>;
power-supply = <&vdd_dsi>;
status = "okay"; status = "okay";
port { port {

View File

@ -101,7 +101,7 @@
initial-mode = <1>; /* initialize in HUB mode */ initial-mode = <1>; /* initialize in HUB mode */
disabled-ports = <1>; disabled-ports = <1>;
intn-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */ intn-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
reset-gpios = <&pio 4 16 GPIO_ACTIVE_HIGH>; /* PE16 */ reset-gpios = <&pio 4 16 GPIO_ACTIVE_LOW>; /* PE16 */
connect-gpios = <&pio 4 17 GPIO_ACTIVE_HIGH>; /* PE17 */ connect-gpios = <&pio 4 17 GPIO_ACTIVE_HIGH>; /* PE17 */
refclk-frequency = <19200000>; refclk-frequency = <19200000>;
}; };

View File

@ -80,7 +80,7 @@
#cooling-cells = <2>; #cooling-cells = <2>;
}; };
cpu@1 { cpu1: cpu@1 {
compatible = "arm,cortex-a7"; compatible = "arm,cortex-a7";
device_type = "cpu"; device_type = "cpu";
reg = <1>; reg = <1>;
@ -90,7 +90,7 @@
#cooling-cells = <2>; #cooling-cells = <2>;
}; };
cpu@2 { cpu2: cpu@2 {
compatible = "arm,cortex-a7"; compatible = "arm,cortex-a7";
device_type = "cpu"; device_type = "cpu";
reg = <2>; reg = <2>;
@ -100,7 +100,7 @@
#cooling-cells = <2>; #cooling-cells = <2>;
}; };
cpu@3 { cpu3: cpu@3 {
compatible = "arm,cortex-a7"; compatible = "arm,cortex-a7";
device_type = "cpu"; device_type = "cpu";
reg = <3>; reg = <3>;
@ -111,6 +111,15 @@
}; };
}; };
pmu {
compatible = "arm,cortex-a7-pmu";
interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
};
timer { timer {
compatible = "arm,armv7-timer"; compatible = "arm,armv7-timer";
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,

View File

@ -139,6 +139,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=6
CONFIG_SERIAL_8250_EXTENDED=y CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_ASPEED_VUART=y CONFIG_SERIAL_8250_ASPEED_VUART=y
CONFIG_SERIAL_8250_SHARE_IRQ=y CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DW=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_ASPEED_KCS_IPMI_BMC=y CONFIG_ASPEED_KCS_IPMI_BMC=y
CONFIG_ASPEED_BT_IPMI_BMC=y CONFIG_ASPEED_BT_IPMI_BMC=y

View File

@ -38,6 +38,7 @@ CONFIG_CRYPTO_SHA256_ARM=m
CONFIG_CRYPTO_SHA512_ARM=m CONFIG_CRYPTO_SHA512_ARM=m
CONFIG_CRYPTO_AES_ARM_BS=m CONFIG_CRYPTO_AES_ARM_BS=m
CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20_NEON=m
CONFIG_KALLSYMS_ALL=y
CONFIG_MODULES=y CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_UNLOAD=y
CONFIG_PARTITION_ADVANCED=y CONFIG_PARTITION_ADVANCED=y
@ -92,6 +93,7 @@ CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_CRYPTOLOOP=y CONFIG_BLK_DEV_CRYPTOLOOP=y
CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=8192 CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_SCSI=y
CONFIG_BLK_DEV_SD=y CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_SG=y CONFIG_CHR_DEV_SG=y
CONFIG_ATA=y CONFIG_ATA=y
@ -290,6 +292,7 @@ CONFIG_CROS_EC_SPI=y
CONFIG_COMMON_CLK_MAX77686=y CONFIG_COMMON_CLK_MAX77686=y
CONFIG_COMMON_CLK_S2MPS11=y CONFIG_COMMON_CLK_S2MPS11=y
CONFIG_EXYNOS_IOMMU=y CONFIG_EXYNOS_IOMMU=y
CONFIG_PM_DEVFREQ=y
CONFIG_DEVFREQ_GOV_PERFORMANCE=y CONFIG_DEVFREQ_GOV_PERFORMANCE=y
CONFIG_DEVFREQ_GOV_POWERSAVE=y CONFIG_DEVFREQ_GOV_POWERSAVE=y
CONFIG_DEVFREQ_GOV_USERSPACE=y CONFIG_DEVFREQ_GOV_USERSPACE=y
@ -348,9 +351,13 @@ CONFIG_PRINTK_TIME=y
CONFIG_DYNAMIC_DEBUG=y CONFIG_DYNAMIC_DEBUG=y
CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO=y
CONFIG_MAGIC_SYSRQ=y CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_KERNEL=y
CONFIG_SOFTLOCKUP_DETECTOR=y CONFIG_SOFTLOCKUP_DETECTOR=y
# CONFIG_DETECT_HUNG_TASK is not set # CONFIG_DETECT_HUNG_TASK is not set
CONFIG_PROVE_LOCKING=y CONFIG_PROVE_LOCKING=y
CONFIG_DEBUG_ATOMIC_SLEEP=y CONFIG_DEBUG_ATOMIC_SLEEP=y
CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_USER=y CONFIG_DEBUG_USER=y

View File

@ -554,6 +554,7 @@ CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y CONFIG_FONT_8x16=y
CONFIG_PRINTK_TIME=y CONFIG_PRINTK_TIME=y
CONFIG_MAGIC_SYSRQ=y CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
# CONFIG_SCHED_DEBUG is not set # CONFIG_SCHED_DEBUG is not set
CONFIG_PROVE_LOCKING=y CONFIG_PROVE_LOCKING=y
# CONFIG_DEBUG_BUGVERBOSE is not set # CONFIG_DEBUG_BUGVERBOSE is not set

View File

@ -552,5 +552,6 @@ CONFIG_DEBUG_INFO=y
CONFIG_DEBUG_INFO_SPLIT=y CONFIG_DEBUG_INFO_SPLIT=y
CONFIG_DEBUG_INFO_DWARF4=y CONFIG_DEBUG_INFO_DWARF4=y
CONFIG_MAGIC_SYSRQ=y CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
CONFIG_SCHEDSTATS=y CONFIG_SCHEDSTATS=y
# CONFIG_DEBUG_BUGVERBOSE is not set # CONFIG_DEBUG_BUGVERBOSE is not set

View File

@ -14,13 +14,25 @@
#include <asm/cputype.h> #include <asm/cputype.h>
/* arm64 compatibility macros */ /* arm64 compatibility macros */
#define PSR_AA32_MODE_FIQ FIQ_MODE
#define PSR_AA32_MODE_SVC SVC_MODE
#define PSR_AA32_MODE_ABT ABT_MODE #define PSR_AA32_MODE_ABT ABT_MODE
#define PSR_AA32_MODE_UND UND_MODE #define PSR_AA32_MODE_UND UND_MODE
#define PSR_AA32_T_BIT PSR_T_BIT #define PSR_AA32_T_BIT PSR_T_BIT
#define PSR_AA32_F_BIT PSR_F_BIT
#define PSR_AA32_I_BIT PSR_I_BIT #define PSR_AA32_I_BIT PSR_I_BIT
#define PSR_AA32_A_BIT PSR_A_BIT #define PSR_AA32_A_BIT PSR_A_BIT
#define PSR_AA32_E_BIT PSR_E_BIT #define PSR_AA32_E_BIT PSR_E_BIT
#define PSR_AA32_IT_MASK PSR_IT_MASK #define PSR_AA32_IT_MASK PSR_IT_MASK
#define PSR_AA32_GE_MASK 0x000f0000
#define PSR_AA32_DIT_BIT 0x00200000
#define PSR_AA32_PAN_BIT 0x00400000
#define PSR_AA32_SSBS_BIT 0x00800000
#define PSR_AA32_Q_BIT PSR_Q_BIT
#define PSR_AA32_V_BIT PSR_V_BIT
#define PSR_AA32_C_BIT PSR_C_BIT
#define PSR_AA32_Z_BIT PSR_Z_BIT
#define PSR_AA32_N_BIT PSR_N_BIT
unsigned long *vcpu_reg(struct kvm_vcpu *vcpu, u8 reg_num); unsigned long *vcpu_reg(struct kvm_vcpu *vcpu, u8 reg_num);
@ -41,6 +53,11 @@ static inline void vcpu_write_spsr(struct kvm_vcpu *vcpu, unsigned long v)
*__vcpu_spsr(vcpu) = v; *__vcpu_spsr(vcpu) = v;
} }
static inline unsigned long host_spsr_to_spsr32(unsigned long spsr)
{
return spsr;
}
static inline unsigned long vcpu_get_reg(struct kvm_vcpu *vcpu, static inline unsigned long vcpu_get_reg(struct kvm_vcpu *vcpu,
u8 reg_num) u8 reg_num)
{ {
@ -177,6 +194,11 @@ static inline bool kvm_vcpu_dabt_issext(struct kvm_vcpu *vcpu)
return kvm_vcpu_get_hsr(vcpu) & HSR_SSE; return kvm_vcpu_get_hsr(vcpu) & HSR_SSE;
} }
static inline bool kvm_vcpu_dabt_issf(const struct kvm_vcpu *vcpu)
{
return false;
}
static inline int kvm_vcpu_dabt_get_rd(struct kvm_vcpu *vcpu) static inline int kvm_vcpu_dabt_get_rd(struct kvm_vcpu *vcpu)
{ {
return (kvm_vcpu_get_hsr(vcpu) & HSR_SRT_MASK) >> HSR_SRT_SHIFT; return (kvm_vcpu_get_hsr(vcpu) & HSR_SRT_MASK) >> HSR_SRT_SHIFT;

View File

@ -14,6 +14,8 @@
struct kvm_decode { struct kvm_decode {
unsigned long rt; unsigned long rt;
bool sign_extend; bool sign_extend;
/* Not used on 32-bit arm */
bool sixty_four;
}; };
void kvm_mmio_write_buf(void *buf, unsigned int len, unsigned long data); void kvm_mmio_write_buf(void *buf, unsigned int len, unsigned long data);

View File

@ -146,10 +146,9 @@ ARM_BE8(orr r7, r7, #(1 << 25)) @ HSCTLR.EE
#if !defined(ZIMAGE) && defined(CONFIG_ARM_ARCH_TIMER) #if !defined(ZIMAGE) && defined(CONFIG_ARM_ARCH_TIMER)
@ make CNTP_* and CNTPCT accessible from PL1 @ make CNTP_* and CNTPCT accessible from PL1
mrc p15, 0, r7, c0, c1, 1 @ ID_PFR1 mrc p15, 0, r7, c0, c1, 1 @ ID_PFR1
lsr r7, #16 ubfx r7, r7, #16, #4
and r7, #0xf teq r7, #0
cmp r7, #1 beq 1f
bne 1f
mrc p15, 4, r7, c14, c1, 0 @ CNTHCTL mrc p15, 4, r7, c14, c1, 0 @ CNTHCTL
orr r7, r7, #3 @ PL1PCEN | PL1PCTEN orr r7, r7, #3 @ PL1PCEN | PL1PCTEN
mcr p15, 4, r7, c14, c1, 0 @ CNTHCTL mcr p15, 4, r7, c14, c1, 0 @ CNTHCTL

View File

@ -224,8 +224,8 @@ void release_thread(struct task_struct *dead_task)
asmlinkage void ret_from_fork(void) __asm__("ret_from_fork"); asmlinkage void ret_from_fork(void) __asm__("ret_from_fork");
int int
copy_thread(unsigned long clone_flags, unsigned long stack_start, copy_thread_tls(unsigned long clone_flags, unsigned long stack_start,
unsigned long stk_sz, struct task_struct *p) unsigned long stk_sz, struct task_struct *p, unsigned long tls)
{ {
struct thread_info *thread = task_thread_info(p); struct thread_info *thread = task_thread_info(p);
struct pt_regs *childregs = task_pt_regs(p); struct pt_regs *childregs = task_pt_regs(p);
@ -259,7 +259,7 @@ copy_thread(unsigned long clone_flags, unsigned long stack_start,
clear_ptrace_hw_breakpoint(p); clear_ptrace_hw_breakpoint(p);
if (clone_flags & CLONE_SETTLS) if (clone_flags & CLONE_SETTLS)
thread->tp_value[0] = childregs->ARM_r3; thread->tp_value[0] = tls;
thread->tp_value[1] = get_tpuser(); thread->tp_value[1] = get_tpuser();
thread_notify(THREAD_NOTIFY_COPY, thread); thread_notify(THREAD_NOTIFY_COPY, thread);

View File

@ -240,6 +240,10 @@ int __cpu_disable(void)
if (ret) if (ret)
return ret; return ret;
#ifdef CONFIG_GENERIC_ARCH_TOPOLOGY
remove_cpu_topology(cpu);
#endif
/* /*
* Take this CPU offline. Once we clear this, we can't return, * Take this CPU offline. Once we clear this, we can't return,
* and we must not schedule until we're ready to give up the cpu. * and we must not schedule until we're ready to give up the cpu.

View File

@ -196,9 +196,8 @@ void store_cpu_topology(unsigned int cpuid)
struct cpu_topology *cpuid_topo = &cpu_topology[cpuid]; struct cpu_topology *cpuid_topo = &cpu_topology[cpuid];
unsigned int mpidr; unsigned int mpidr;
/* If the cpu topology has been already set, just return */ if (cpuid_topo->package_id != -1)
if (cpuid_topo->core_id != -1) goto topology_populated;
return;
mpidr = read_cpuid_mpidr(); mpidr = read_cpuid_mpidr();
@ -231,14 +230,15 @@ void store_cpu_topology(unsigned int cpuid)
cpuid_topo->package_id = -1; cpuid_topo->package_id = -1;
} }
update_siblings_masks(cpuid);
update_cpu_capacity(cpuid); update_cpu_capacity(cpuid);
pr_info("CPU%u: thread %d, cpu %d, socket %d, mpidr %x\n", pr_info("CPU%u: thread %d, cpu %d, socket %d, mpidr %x\n",
cpuid, cpu_topology[cpuid].thread_id, cpuid, cpu_topology[cpuid].thread_id,
cpu_topology[cpuid].core_id, cpu_topology[cpuid].core_id,
cpu_topology[cpuid].package_id, mpidr); cpu_topology[cpuid].package_id, mpidr);
topology_populated:
update_siblings_masks(cpuid);
} }
static inline int cpu_corepower_flags(void) static inline int cpu_corepower_flags(void)

View File

@ -691,6 +691,12 @@ static void __init at91_pm_use_default_mode(int pm_mode)
soc_pm.data.suspend_mode = AT91_PM_ULP0; soc_pm.data.suspend_mode = AT91_PM_ULP0;
} }
static const struct of_device_id atmel_shdwc_ids[] = {
{ .compatible = "atmel,sama5d2-shdwc" },
{ .compatible = "microchip,sam9x60-shdwc" },
{ /* sentinel. */ }
};
static void __init at91_pm_modes_init(void) static void __init at91_pm_modes_init(void)
{ {
struct device_node *np; struct device_node *np;
@ -700,7 +706,7 @@ static void __init at91_pm_modes_init(void)
!at91_is_pm_mode_active(AT91_PM_ULP1)) !at91_is_pm_mode_active(AT91_PM_ULP1))
return; return;
np = of_find_compatible_node(NULL, NULL, "atmel,sama5d2-shdwc"); np = of_find_matching_node(NULL, atmel_shdwc_ids);
if (!np) { if (!np) {
pr_warn("%s: failed to find shdwc!\n", __func__); pr_warn("%s: failed to find shdwc!\n", __func__);
goto ulp1_default; goto ulp1_default;
@ -751,6 +757,7 @@ static const struct of_device_id atmel_pmc_ids[] __initconst = {
{ .compatible = "atmel,sama5d3-pmc", .data = &pmc_infos[1] }, { .compatible = "atmel,sama5d3-pmc", .data = &pmc_infos[1] },
{ .compatible = "atmel,sama5d4-pmc", .data = &pmc_infos[1] }, { .compatible = "atmel,sama5d4-pmc", .data = &pmc_infos[1] },
{ .compatible = "atmel,sama5d2-pmc", .data = &pmc_infos[1] }, { .compatible = "atmel,sama5d2-pmc", .data = &pmc_infos[1] },
{ .compatible = "microchip,sam9x60-pmc", .data = &pmc_infos[1] },
{ /* sentinel */ }, { /* sentinel */ },
}; };

View File

@ -9,6 +9,7 @@ menuconfig ARCH_DAVINCI
select PM_GENERIC_DOMAINS if PM select PM_GENERIC_DOMAINS if PM
select PM_GENERIC_DOMAINS_OF if PM && OF select PM_GENERIC_DOMAINS_OF if PM && OF
select REGMAP_MMIO select REGMAP_MMIO
select RESET_CONTROLLER
select HAVE_IDE select HAVE_IDE
select PINCTRL_SINGLE select PINCTRL_SINGLE

View File

@ -11,7 +11,7 @@ config ARCH_NPCM7XX
depends on ARCH_MULTI_V7 depends on ARCH_MULTI_V7
select PINCTRL_NPCM7XX select PINCTRL_NPCM7XX
select NPCM7XX_TIMER select NPCM7XX_TIMER
select ARCH_REQUIRE_GPIOLIB select GPIOLIB
select CACHE_L2X0 select CACHE_L2X0
select ARM_GIC select ARM_GIC
select HAVE_ARM_TWD if SMP select HAVE_ARM_TWD if SMP

View File

@ -265,6 +265,7 @@ static int __init omapdss_init_of(void)
r = of_platform_populate(node, NULL, NULL, &pdev->dev); r = of_platform_populate(node, NULL, NULL, &pdev->dev);
if (r) { if (r) {
pr_err("Unable to populate DSS submodule devices\n"); pr_err("Unable to populate DSS submodule devices\n");
put_device(&pdev->dev);
return r; return r;
} }

View File

@ -7,7 +7,6 @@
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/davinci_emac.h> #include <linux/davinci_emac.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/gpio/machine.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/of_platform.h> #include <linux/of_platform.h>
@ -269,14 +268,6 @@ static void __init am3517_evm_legacy_init(void)
am35xx_emac_reset(); am35xx_emac_reset();
} }
static struct platform_device omap3_rom_rng_device = {
.name = "omap3-rom-rng",
.id = -1,
.dev = {
.platform_data = rx51_secure_rng_call,
},
};
static void __init nokia_n900_legacy_init(void) static void __init nokia_n900_legacy_init(void)
{ {
hsmmc2_internal_input_clk(); hsmmc2_internal_input_clk();
@ -292,9 +283,6 @@ static void __init nokia_n900_legacy_init(void)
pr_warn("RX-51: Not enabling ARM errata 430973 workaround\n"); pr_warn("RX-51: Not enabling ARM errata 430973 workaround\n");
pr_warn("Thumb binaries may crash randomly without this workaround\n"); pr_warn("Thumb binaries may crash randomly without this workaround\n");
} }
pr_info("RX-51: Registering OMAP3 HWRNG device\n");
platform_device_register(&omap3_rom_rng_device);
} }
} }
@ -311,118 +299,15 @@ static void __init omap3_logicpd_torpedo_init(void)
} }
/* omap3pandora legacy devices */ /* omap3pandora legacy devices */
#define PANDORA_WIFI_IRQ_GPIO 21
#define PANDORA_WIFI_NRESET_GPIO 23
static struct platform_device pandora_backlight = { static struct platform_device pandora_backlight = {
.name = "pandora-backlight", .name = "pandora-backlight",
.id = -1, .id = -1,
}; };
static struct regulator_consumer_supply pandora_vmmc3_supply[] = {
REGULATOR_SUPPLY("vmmc", "omap_hsmmc.2"),
};
static struct regulator_init_data pandora_vmmc3 = {
.constraints = {
.valid_ops_mask = REGULATOR_CHANGE_STATUS,
},
.num_consumer_supplies = ARRAY_SIZE(pandora_vmmc3_supply),
.consumer_supplies = pandora_vmmc3_supply,
};
static struct fixed_voltage_config pandora_vwlan = {
.supply_name = "vwlan",
.microvolts = 1800000, /* 1.8V */
.startup_delay = 50000, /* 50ms */
.init_data = &pandora_vmmc3,
};
static struct platform_device pandora_vwlan_device = {
.name = "reg-fixed-voltage",
.id = 1,
.dev = {
.platform_data = &pandora_vwlan,
},
};
static struct gpiod_lookup_table pandora_vwlan_gpiod_table = {
.dev_id = "reg-fixed-voltage.1",
.table = {
/*
* As this is a low GPIO number it should be at the first
* GPIO bank.
*/
GPIO_LOOKUP("gpio-0-31", PANDORA_WIFI_NRESET_GPIO,
NULL, GPIO_ACTIVE_HIGH),
{ },
},
};
static void pandora_wl1251_init_card(struct mmc_card *card)
{
/*
* We have TI wl1251 attached to MMC3. Pass this information to
* SDIO core because it can't be probed by normal methods.
*/
if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
card->quirks |= MMC_QUIRK_NONSTD_SDIO;
card->cccr.wide_bus = 1;
card->cis.vendor = 0x104c;
card->cis.device = 0x9066;
card->cis.blksize = 512;
card->cis.max_dtr = 24000000;
card->ocr = 0x80;
}
}
static struct omap2_hsmmc_info pandora_mmc3[] = {
{
.mmc = 3,
.caps = MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD,
.init_card = pandora_wl1251_init_card,
},
{} /* Terminator */
};
static void __init pandora_wl1251_init(void)
{
struct wl1251_platform_data pandora_wl1251_pdata;
int ret;
memset(&pandora_wl1251_pdata, 0, sizeof(pandora_wl1251_pdata));
pandora_wl1251_pdata.power_gpio = -1;
ret = gpio_request_one(PANDORA_WIFI_IRQ_GPIO, GPIOF_IN, "wl1251 irq");
if (ret < 0)
goto fail;
pandora_wl1251_pdata.irq = gpio_to_irq(PANDORA_WIFI_IRQ_GPIO);
if (pandora_wl1251_pdata.irq < 0)
goto fail_irq;
pandora_wl1251_pdata.use_eeprom = true;
ret = wl1251_set_platform_data(&pandora_wl1251_pdata);
if (ret < 0)
goto fail_irq;
return;
fail_irq:
gpio_free(PANDORA_WIFI_IRQ_GPIO);
fail:
pr_err("wl1251 board initialisation failed\n");
}
static void __init omap3_pandora_legacy_init(void) static void __init omap3_pandora_legacy_init(void)
{ {
platform_device_register(&pandora_backlight); platform_device_register(&pandora_backlight);
gpiod_add_lookup_table(&pandora_vwlan_gpiod_table);
platform_device_register(&pandora_vwlan_device);
omap_hsmmc_init(pandora_mmc3);
omap_hsmmc_late_init(pandora_mmc3);
pandora_wl1251_init();
} }
#endif /* CONFIG_ARCH_OMAP3 */ #endif /* CONFIG_ARCH_OMAP3 */
@ -472,10 +357,14 @@ static void __init dra7x_evm_mmc_quirk(void)
static struct clockdomain *ti_sysc_find_one_clockdomain(struct clk *clk) static struct clockdomain *ti_sysc_find_one_clockdomain(struct clk *clk)
{ {
struct clk_hw *hw = __clk_get_hw(clk);
struct clockdomain *clkdm = NULL; struct clockdomain *clkdm = NULL;
struct clk_hw_omap *hwclk; struct clk_hw_omap *hwclk;
hwclk = to_clk_hw_omap(__clk_get_hw(clk)); hwclk = to_clk_hw_omap(hw);
if (!omap2_clk_is_hw_omap(hw))
return NULL;
if (hwclk && hwclk->clkdm_name) if (hwclk && hwclk->clkdm_name)
clkdm = clkdm_lookup(hwclk->clkdm_name); clkdm = clkdm_lookup(hwclk->clkdm_name);
@ -638,6 +527,7 @@ static struct of_dev_auxdata omap_auxdata_lookup[] = {
OF_DEV_AUXDATA("ti,davinci_mdio", 0x5c030000, "davinci_mdio.0", NULL), OF_DEV_AUXDATA("ti,davinci_mdio", 0x5c030000, "davinci_mdio.0", NULL),
OF_DEV_AUXDATA("ti,am3517-emac", 0x5c000000, "davinci_emac.0", OF_DEV_AUXDATA("ti,am3517-emac", 0x5c000000, "davinci_emac.0",
&am35xx_emac_pdata), &am35xx_emac_pdata),
OF_DEV_AUXDATA("nokia,n900-rom-rng", 0, NULL, rx51_secure_rng_call),
/* McBSP modules with sidetone core */ /* McBSP modules with sidetone core */
#if IS_ENABLED(CONFIG_SND_SOC_OMAP_MCBSP) #if IS_ENABLED(CONFIG_SND_SOC_OMAP_MCBSP)
OF_DEV_AUXDATA("ti,omap3-mcbsp", 0x49022000, "49022000.mcbsp", &mcbsp_pdata), OF_DEV_AUXDATA("ti,omap3-mcbsp", 0x49022000, "49022000.mcbsp", &mcbsp_pdata),

View File

@ -44,16 +44,16 @@ ENTRY(tegra_resume)
cmp r6, #TEGRA20 cmp r6, #TEGRA20
beq 1f @ Yes beq 1f @ Yes
/* Clear the flow controller flags for this CPU. */ /* Clear the flow controller flags for this CPU. */
cpu_to_csr_reg r1, r0 cpu_to_csr_reg r3, r0
mov32 r2, TEGRA_FLOW_CTRL_BASE mov32 r2, TEGRA_FLOW_CTRL_BASE
ldr r1, [r2, r1] ldr r1, [r2, r3]
/* Clear event & intr flag */ /* Clear event & intr flag */
orr r1, r1, \ orr r1, r1, \
#FLOW_CTRL_CSR_INTR_FLAG | FLOW_CTRL_CSR_EVENT_FLAG #FLOW_CTRL_CSR_INTR_FLAG | FLOW_CTRL_CSR_EVENT_FLAG
movw r0, #0x3FFD @ enable, cluster_switch, immed, bitmaps movw r0, #0x3FFD @ enable, cluster_switch, immed, bitmaps
@ & ext flags for CPU power mgnt @ & ext flags for CPU power mgnt
bic r1, r1, r0 bic r1, r1, r0
str r1, [r2] str r1, [r2, r3]
1: 1:
mov32 r9, 0xc09 mov32 r9, 0xc09

View File

@ -370,6 +370,14 @@ _pll_m_c_x_done:
pll_locked r1, r0, CLK_RESET_PLLC_BASE pll_locked r1, r0, CLK_RESET_PLLC_BASE
pll_locked r1, r0, CLK_RESET_PLLX_BASE pll_locked r1, r0, CLK_RESET_PLLX_BASE
tegra_get_soc_id TEGRA_APB_MISC_BASE, r1
cmp r1, #TEGRA30
beq 1f
ldr r1, [r0, #CLK_RESET_PLLP_BASE]
bic r1, r1, #(1<<31) @ disable PllP bypass
str r1, [r0, #CLK_RESET_PLLP_BASE]
1:
mov32 r7, TEGRA_TMRUS_BASE mov32 r7, TEGRA_TMRUS_BASE
ldr r1, [r7] ldr r1, [r7]
add r1, r1, #LOCK_DELAY add r1, r1, #LOCK_DELAY
@ -630,7 +638,10 @@ tegra30_switch_cpu_to_clk32k:
str r0, [r4, #PMC_PLLP_WB0_OVERRIDE] str r0, [r4, #PMC_PLLP_WB0_OVERRIDE]
/* disable PLLP, PLLA, PLLC and PLLX */ /* disable PLLP, PLLA, PLLC and PLLX */
tegra_get_soc_id TEGRA_APB_MISC_BASE, r1
cmp r1, #TEGRA30
ldr r0, [r5, #CLK_RESET_PLLP_BASE] ldr r0, [r5, #CLK_RESET_PLLP_BASE]
orrne r0, r0, #(1 << 31) @ enable PllP bypass on fast cluster
bic r0, r0, #(1 << 30) bic r0, r0, #(1 << 30)
str r0, [r5, #CLK_RESET_PLLP_BASE] str r0, [r5, #CLK_RESET_PLLP_BASE]
ldr r0, [r5, #CLK_RESET_PLLA_BASE] ldr r0, [r5, #CLK_RESET_PLLA_BASE]

View File

@ -551,8 +551,9 @@ static struct clk *ve_spc_clk_register(struct device *cpu_dev)
static int __init ve_spc_clk_init(void) static int __init ve_spc_clk_init(void)
{ {
int cpu; int cpu, cluster;
struct clk *clk; struct clk *clk;
bool init_opp_table[MAX_CLUSTERS] = { false };
if (!info) if (!info)
return 0; /* Continue only if SPC is initialised */ return 0; /* Continue only if SPC is initialised */
@ -578,8 +579,17 @@ static int __init ve_spc_clk_init(void)
continue; continue;
} }
cluster = topology_physical_package_id(cpu_dev->id);
if (init_opp_table[cluster])
continue;
if (ve_init_opp_table(cpu_dev)) if (ve_init_opp_table(cpu_dev))
pr_warn("failed to initialise cpu%d opp table\n", cpu); pr_warn("failed to initialise cpu%d opp table\n", cpu);
else if (dev_pm_opp_set_sharing_cpus(cpu_dev,
topology_core_cpumask(cpu_dev->id)))
pr_warn("failed to mark OPPs shared for cpu%d\n", cpu);
else
init_opp_table[cluster] = true;
} }
platform_device_register_simple("vexpress-spc-cpufreq", -1, NULL, 0); platform_device_register_simple("vexpress-spc-cpufreq", -1, NULL, 0);

View File

@ -35,7 +35,7 @@ static void *arm_nommu_dma_alloc(struct device *dev, size_t size,
unsigned long attrs) unsigned long attrs)
{ {
void *ret = dma_alloc_from_global_coherent(size, dma_handle); void *ret = dma_alloc_from_global_coherent(dev, size, dma_handle);
/* /*
* dma_alloc_from_global_coherent() may fail because: * dma_alloc_from_global_coherent() may fail because:

View File

@ -221,7 +221,7 @@ EXPORT_SYMBOL(arm_coherent_dma_ops);
static int __dma_supported(struct device *dev, u64 mask, bool warn) static int __dma_supported(struct device *dev, u64 mask, bool warn)
{ {
unsigned long max_dma_pfn = min(max_pfn, arm_dma_pfn_limit); unsigned long max_dma_pfn = min(max_pfn - 1, arm_dma_pfn_limit);
/* /*
* Translate the device's DMA mask to a PFN limit. This * Translate the device's DMA mask to a PFN limit. This

View File

@ -323,7 +323,7 @@ static inline void poison_init_mem(void *s, size_t count)
*p++ = 0xe7fddef0; *p++ = 0xe7fddef0;
} }
static inline void static inline void __init
free_memmap(unsigned long start_pfn, unsigned long end_pfn) free_memmap(unsigned long start_pfn, unsigned long end_pfn)
{ {
struct page *start_pg, *end_pg; struct page *start_pg, *end_pg;

View File

@ -65,6 +65,9 @@ static void cpu_v7_spectre_init(void)
break; break;
#ifdef CONFIG_ARM_PSCI #ifdef CONFIG_ARM_PSCI
case ARM_CPU_PART_BRAHMA_B53:
/* Requires no workaround */
break;
default: default:
/* Other ARM CPUs require no workaround */ /* Other ARM CPUs require no workaround */
if (read_cpuid_implementor() == ARM_CPU_IMP_ARM) if (read_cpuid_implementor() == ARM_CPU_IMP_ARM)

View File

@ -139,6 +139,7 @@ config ARM64
select HAVE_CMPXCHG_DOUBLE select HAVE_CMPXCHG_DOUBLE
select HAVE_CMPXCHG_LOCAL select HAVE_CMPXCHG_LOCAL
select HAVE_CONTEXT_TRACKING select HAVE_CONTEXT_TRACKING
select HAVE_COPY_THREAD_TLS
select HAVE_DEBUG_BUGVERBOSE select HAVE_DEBUG_BUGVERBOSE
select HAVE_DEBUG_KMEMLEAK select HAVE_DEBUG_KMEMLEAK
select HAVE_DMA_CONTIGUOUS select HAVE_DMA_CONTIGUOUS

View File

@ -16,7 +16,7 @@
OBJCOPYFLAGS_Image :=-O binary -R .note -R .note.gnu.build-id -R .comment -S OBJCOPYFLAGS_Image :=-O binary -R .note -R .note.gnu.build-id -R .comment -S
targets := Image Image.gz targets := Image Image.bz2 Image.gz Image.lz4 Image.lzma Image.lzo
$(obj)/Image: vmlinux FORCE $(obj)/Image: vmlinux FORCE
$(call if_changed,objcopy) $(call if_changed,objcopy)

View File

@ -15,7 +15,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc2_pins>; pinctrl-0 = <&mmc2_pins>;
vmmc-supply = <&reg_dcdc1>; vmmc-supply = <&reg_dcdc1>;
vqmmc-supply = <&reg_dcdc1>; vqmmc-supply = <&reg_eldo1>;
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
cap-mmc-hw-reset; cap-mmc-hw-reset;

View File

@ -140,7 +140,7 @@
&mmc1 { &mmc1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>; pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&reg_aldo2>; vmmc-supply = <&reg_dcdc1>;
vqmmc-supply = <&reg_dldo4>; vqmmc-supply = <&reg_dldo4>;
mmc-pwrseq = <&wifi_pwrseq>; mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>; bus-width = <4>;

View File

@ -142,6 +142,15 @@
clock-output-names = "ext-osc32k"; clock-output-names = "ext-osc32k";
}; };
pmu {
compatible = "arm,cortex-a53-pmu";
interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
};
psci { psci {
compatible = "arm,psci-0.2"; compatible = "arm,psci-0.2";
method = "smc"; method = "smc";

View File

@ -54,21 +54,21 @@
enable-method = "psci"; enable-method = "psci";
}; };
cpu@1 { cpu1: cpu@1 {
compatible = "arm,cortex-a53"; compatible = "arm,cortex-a53";
device_type = "cpu"; device_type = "cpu";
reg = <1>; reg = <1>;
enable-method = "psci"; enable-method = "psci";
}; };
cpu@2 { cpu2: cpu@2 {
compatible = "arm,cortex-a53"; compatible = "arm,cortex-a53";
device_type = "cpu"; device_type = "cpu";
reg = <2>; reg = <2>;
enable-method = "psci"; enable-method = "psci";
}; };
cpu@3 { cpu3: cpu@3 {
compatible = "arm,cortex-a53"; compatible = "arm,cortex-a53";
device_type = "cpu"; device_type = "cpu";
reg = <3>; reg = <3>;
@ -76,6 +76,16 @@
}; };
}; };
pmu {
compatible = "arm,cortex-a53-pmu",
"arm,armv8-pmuv3";
interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
};
psci { psci {
compatible = "arm,psci-0.2"; compatible = "arm,psci-0.2";
method = "smc"; method = "smc";

View File

@ -70,6 +70,16 @@
clock-output-names = "ext_osc32k"; clock-output-names = "ext_osc32k";
}; };
pmu {
compatible = "arm,cortex-a53-pmu",
"arm,armv8-pmuv3";
interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
};
psci { psci {
compatible = "arm,psci-0.2"; compatible = "arm,psci-0.2";
method = "smc"; method = "smc";

View File

@ -61,10 +61,10 @@
pmu { pmu {
compatible = "arm,armv8-pmuv3"; compatible = "arm,armv8-pmuv3";
interrupts = <0 120 8>, interrupts = <0 170 4>,
<0 121 8>, <0 171 4>,
<0 122 8>, <0 172 4>,
<0 123 8>; <0 173 4>;
interrupt-affinity = <&cpu0>, interrupt-affinity = <&cpu0>,
<&cpu1>, <&cpu1>,
<&cpu2>, <&cpu2>,

Some files were not shown because too many files have changed in this diff Show More