Samsung DTS ARM64 changes for v5.11
1. Several cleanups, including aligning node names with dtschema.
2. Add WiFi/PCIe to TM2 boards (Exynos5433).
3. Correct restart and shutdown of Exynos7 boards, as part of Paweł
Chmiel Exynos7420 mainlining effort.
* tag 'samsung-dt64-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
arm64: dts: exynos: Drop incorrect use of io-channel-ranges property
arm64: dts: exynos: use hyphens in Exynos5433 node names
arm64: dts: exynos: Correct psci compatible used on Exynos7
arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7
arm64: dts: exynos: add the WiFi/PCIe support to TM2(e) boards
arm64: dts: exynos: remove redundant status=okay in Exynos5433 TM2
arm64: dts: exynos: adjust node names to DT spec in Exynos7 Espresso
arm64: dts: exynos: adjust node names to DT spec in Exynos5433 TM2
arm64: dts: exynos: Harmonize DWC USB3 DT nodes name
Link: https://lore.kernel.org/r/20201201204404.22675-3-krzk@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Samsung DTS ARM changes for v5.11, part two
1. Add devicetree of Samsung Galaxy Note 10.1 tablets
(GT-N8010/GT-N8013), called P4 Note. These are quite old but
still functional devices, based on Exynos4412.
2. Minor cleanups in Odroid XU3 Ethernet.
3. Minor fixes: ADC io-channel-ranges and P4 Note touchscreen GPIO
polarity.
* tag 'samsung-dt-5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
ARM: dts: exynos: switch Atmel mxt reset GPIO to active low on P4 Note
ARM: dts: s5pv210: Drop unneeded io-channel-ranges property in Aries
ARM: dts: s5pv210: Drop incorrect use of io-channel-ranges property
ARM: dts: exynos: Drop incorrect use of io-channel-ranges
ARM: dts: exynos: add Samsung's Exynos4412-based P4 Note boards
dt-bindings: arm: samsung: document bindings for P4 Note family board
ARM: dts: exynos: Add an alias for the Ethernet interface on Odroid XU3
ARM: dts: exynos: Fix Ethernet interface description on Odroid XU3
Link: https://lore.kernel.org/r/20201201204404.22675-2-krzk@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Qualcomm DT updates for 5.11
This adds support for SD card, WiFi, LED, touchscreeni, touchkey and
fuel gauge to the Samsung Galaxy S5. Nexus 5 also gains fuel gauge
support.
Finally IPQ6016 gains support for the QPIC NAND controller.
* tag 'qcom-dts-for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
arm64: dts: ipq6018: Add the QPIC peripheral nodes
ARM: dts: qcom-pma8084: Drop incorrect use of io-channel-ranges
ARM: dts: qcom: msm8974-lge-nexus5: Add fuel gauge
ARM: dts: qcom: msm8974-klte: Add fuel gauge
ARM: dts: qcom: msm8974-klte: Add support for SD card
ARM: dts: qcom: msm8974-klte: Add support for wifi
ARM: dts: qcom: msm8974-klte: Add gpio expander chip
ARM: dts: qcom: msm8974-klte: Add support for led
ARM: dts: qcom: msm8974-klte: Add support for touchscreen
ARM: dts: qcom: msm8974-klte: Add support for touchkey
ARM: dts: qcom: msm8974-klte: Merge pinctrl nodes
Link: https://lore.kernel.org/r/20201130190148.345302-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Qualcomm ARM64 DT updates for 5.11
For SM8250 the recently introduced support for handling boot-loader
stream mappings in the ARM SMMU allow us to enable this, and thereby USB
controller and PHY, SDHCI controller and FastRPC, as well as support for
the SM8250 HDK board has been added. Additionally PRNG and RTC is
enabled.
Similarly for SM8150, the ARM SMMU could be added which allows the
secondary USB controller and PHYs, as well as WiFi to be added and
support for the SM8150 HDK board to be introduced. Additionally
Coresight and support for the last-level cache controller was added.
MSM8916 finally has VDDCX and VDDMX removed as regulators and are now
handled by the rpmpd driver for the devices controlling them. The
Longsheer L8150 gains touchscreen, sensors, vibrator and LED support.
MSM8992 gains USB and SDHCI support as well as an I2C controller and the
associated RMI4 based touchscreen for the Lumia 950.
MSM8994 also gains USB and SDHCI support, as well as VADC and temp-alarm
support. Then support for the Lumia 950 XL is added.
SDM845 gains interconnect properties for a number of devices and the
GENI wrappers gains iommu stream configuration, which means DMA
operations on e.g. I2C now works. The Lenovo Yoga C630 finally has the
SMMU enabled, a few fixes and the description of the eDP bridge and
panel means that the laptop can now boot mainline with working display,
GPU, WiFi and audio.
SC7180 gains a slew of smaller improvements and fixes.
* tag 'qcom-arm64-for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (93 commits)
arm64: dts: qcom: c630: Define eDP bridge and panel
arm64: dts: qcom: c630: Fix pinctrl pins properties
arm64: dts: qcom: c630: Polish i2c-hid devices
arm64: dts: qcom: sc7180: Add lpass cpu node for I2S driver
arm64: dts: sdm845: Add interconnect properties for QUP
interconnect: qcom: sdm845: Add the missing nodes for QUP
dt-bindings: interconnect: sdm845: Add IDs for the QUP ports
arm64: dts: qcom: c630: Expose LID events
arm64: dts: qcom: c630: Re-enable apps_smmu
dts: qcom: sdm845: Add dt entries to support crypto engine.
arm64: dts: qcom: qrb5165-rb5: Add support for MCP2518FD
arm64: dts: qcom: sdm845: use GIC_SPI for IPA interrupts
arm64: dts: qcom: sc7180: use GIC_SPI for IPA interrupts
arm64: dts: qcom: sc7180: limit IPA iommu streams
arm64: dts: qcom: sm8150: Add Coresight support
arm64: dts: qcom: sc7180-trogdor: Make pp3300_a the default supply for pp3300_hub
arm64: dts: qcom: sc7180: Add DDR/L3 votes for the pro variant
arm64: dts: qcom: sc7180-lite: Tweak DDR/L3 scaling on SC7180-lite
arm64: dts: qcom: sc7180-trogdor: add "pen-insert" label for trogdor
arm64: qcom: sc7180: trogdor: Add ADC nodes and thermal zone for charger thermistor
...
Link: https://lore.kernel.org/r/20201130190131.345187-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
mvebu dt64 for 5.11 (part 1)
- Add support for IEI Puzzle-M801 board (Armada 8040 based)
- Add support ESPRESSObin-Ultra (Armada 3720 based)
- Clean-up and improve espressobin device tree
- Switch to per-port SATA interrupts on CP110 based SoC
- Use compliant node name for USB3 on CP110 based SoC
- Add heartbeat LED on mcbin singleshot
- Disable SMMU by default for Armada 7040 and 8040 to continued
supporting custom bot firmware
- Turris mox:
- add 3W power capability to SFP cage
- update ethernet-phy handle name
* tag 'mvebu-dt64-5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
arm64: dts: armada-3720-turris-mox: add 3W power capability to SFP cage
arm64: dts: marvell: keep SMMU disabled by default for Armada 7040 and 8040
arm64: dts: mcbin-singleshot: add heartbeat LED
arm64: dts: marvell: cp11x: Harmonize xHCI DT nodes name
arm64: dts: marvell: espressobin: Update link to V7 schematic
arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name
arm64: dts: marvell: armada-cp110: Switch to per-port SATA interrupts
arm64: dts: marvell: add DT for ESPRESSObin-Ultra
arm64: dts: marvell: espressobin: Add support for LED2
arm64: dts: marvell: Add a device tree for the IEI Puzzle-M801 board
arm64: dts: marvell: espressobin: De-duplicate eMMC definitions
arm64: dts: marvell: espressobin: Get rid of duplicate serial aliases
arm64: dts: marvell: espressobin: Simplify v7 ethernet port labeling
Link: https://lore.kernel.org/r/87eekaj0i4.fsf@BL-laptop
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This pull request contains Broadcom ARM64-based SoCs Device Tree changes
for 5.11, please pull the following:
- Rafal adds initial support for the Broadcom 4908 which are SoCs used
in home routers and are based on the DSL architecture and using
Broadcom Brahma-B53 CPUs.
* tag 'arm-soc/for-5.11/devicetree-arm64' of https://github.com/Broadcom/stblinux:
arm64: add config for Broadcom BCM4908 SoCs
arm64: dts: broadcom: add BCM4908 and Asus GT-AC5300 early DTS files
dt-bindings: arm: bcm: document BCM4908 bindings
Link: https://lore.kernel.org/r/20201128163410.1691529-4-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This pull request contains Broadcom ARM-based SoCs changes for 5.11,
please pull the following:
- Vivek updates the Linksys EA9500 DTS by adding the two additional
switch port nodes (5 & 7), providing a flash partition layout to
make the device usable with OpenWrt, and finally switches to using
the pin controller rather than using mdio-mux to get the same outcome.
- Serge fixes the USB Device Tree nodes unit name to be conformant to
the recommended name patterns.
- Rafal re-arranges all the nodes that belonged to the CRU block to be
under the CRU node (such as PLLs). He also disables the USB3 PHY node
for devices that lack USB3 and adds USB3 support to the Luxul XWR-3150
DTS.
- Jonathan drops the incorrect 'io-channel-ranges' from the Cygnus SoC
DTSI.
- Maxime disables the Wi-Fi frequencies (around 2.4GHz) for HDMI on the
Raspberry Pi 4 due to some cross-talk between the two blocks.
- Pavel updates the DWC2 USB controller RX FIFO sizes to be more
accurate for all BCM283x (Raspberr Pi) SoCs.
- Florian updates all BCM5301x and NSP Device Tree files to allow
switching the Broadcom B53 Ethernet switch device tree binding to YAML.
* tag 'arm-soc/for-5.11/devicetree' of https://github.com/Broadcom/stblinux: (22 commits)
dt-bindings: net: dsa: b53: Add YAML bindings
ARM: dts: NSP: Provide defaults ports container node
ARM: dts: NSP: Add a SRAB compatible string for each board
ARM: dts: NSP: Fix Ethernet switch SGMII register name
ARM: dts: NSP: Update ethernet switch node name
ARM: dts: BCM5301X: Provide defaults ports container node
ARM: dts: BCM5301X: Add a default compatible for switch node
ARM: dts: BCM5301X: Update Ethernet switch node name
dt-bindings: net: dsa: Document sfp and managed properties
dt-bindings: net: dsa: Extend switch nodes pattern
ARM: dts: bcm283x: increase dwc2's RX FIFO size
ARM: dts: rpi-4: disable wifi frequencies
ARM: dts: Cygnus: Drop incorrect io-channel-ranges property.
ARM: dts: BCM5301X: Enable USB 3 PHY on Luxul XWR-3150
ARM: dts: BCM5301X: Disable USB 3 PHY on devices without USB 3
ARM: dts: BCM5301X: Move CRU devices to the CRU node
ARM: dts: BCM5301X: Linksys EA9500 make use of pinctrl
ARM: dts: BCM5301X: Use corretc pinctrl compatible for 4709x
ARM: dts: BCM5301X: Linksys EA9500 add fixed partitions
ARM: dts: BCM5310X: Harmonize xHCI DT nodes name
...
Link: https://lore.kernel.org/r/20201128163410.1691529-3-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
"virtual" is used for vendor-less "devices". For example for the GPIO
based MDIO bus "virtual,mdio-gpio".
This patch is needed to fix the checkpatch warning for the Protonic WD3 board.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Tweak the node name to make it aliasable, then add aliases for the
on-board RTC chip and meson-vrtc timer so they probe as rtc0 and
rtc1 respectively.
before:
VIM3:~ # dmesg | grep rtc
[ 3.622530] meson-vrtc ff8000a8.rtc: registered as rtc0
[ 3.622574] meson-vrtc ff8000a8.rtc: setting system clock to 1970-01-01T00:00:03 UTC (3)
[ 3.646936] rtc-hym8563 0-0051: no valid clock/calendar values available
[ 3.647125] rtc-hym8563 0-0051: registered as rtc1
[ 3.852382] rtc-hym8563 0-0051: no valid clock/calendar values available
after:
VIM3:~ # dmesg | grep rtc
[ 3.583735] meson-vrtc ff8000a8.rtc: registered as rtc1
[ 3.633888] rtc-hym8563 0-0051: no valid clock/calendar values available
[ 3.634120] rtc-hym8563 0-0051: registered as rtc0
[ 3.635250] rtc-hym8563 0-0051: no valid clock/calendar values available
[ 3.635267] rtc-hym8563 0-0051: hctosys: unable to read the hardware clock
[ 3.852632] rtc-hym8563 0-0051: no valid clock/calendar values available
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Link: https://lore.kernel.org/r/20201124145338.17137-1-christianshewitt@gmail.com
GXM (S912) is a big-little design with CPUs 0-3 clocked at 1.5GHz
and CPUs 4-7 at 1.0GHz. Adding capacity-dmips-mhz attributes allows
the scheduler to factor the different clock speeds into capacity
calculations and prefer the higher-clocked cluster to improve
overall performance.
This was inspired by the similar change for G12B [0] boards. The
diference here is that all cores are A53's so the same dmips-mhz
value is used.
VIM2:~ # cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
1512000
1512000
1512000
1512000
1000000
1000000
1000000
1000000
before:
VIM2:~ # cat /sys/devices/system/cpu/cpu*/cpu_capacity
1024
1024
1024
1024
1024
1024
1024
1024
after:
VIM2:~ # cat /sys/devices/system/cpu/cpu*/cpu_capacity
1024
1024
1024
1024
677
677
677
677
The after value matches my table-napkin calculation:
(1000000 / 1512000 = 0.661) * 1024 = 677
[0] 6eeaf4d245
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Link: https://lore.kernel.org/r/20201124121740.25704-1-christianshewitt@gmail.com
Enable the rtc node on VIM1/VIM2 boards so users can simply attach a power
cell and use the on-board RTC without modifying the device-tree.
Cold boot with no cell attached is gracefully handled:
VIM2:~ # dmesg | grep rtc
[ 7.716150] rtc-hym8563 1-0051: no valid clock/calendar values available
[ 7.716957] rtc-hym8563 1-0051: registered as rtc0
[ 7.729850] rtc-hym8563 1-0051: no valid clock/calendar values available
[ 7.729877] rtc-hym8563 1-0051: hctosys: unable to read the hardware clock
[ 8.126768] rtc-hym8563 1-0051: no valid clock/calendar values available
Warm boot (and any boot with cell attached) recalls stored values resulting
in consistently faster (re)boot times:
VIM2:~ # dmesg | grep rtc
[ 7.441671] rtc-hym8563 1-0051: registered as rtc0
[ 7.442663] rtc-hym8563 1-0051: setting system clock to 2020-11-16T05:49:59 UTC (1605505799)
Suggested-by: Artem Lapkin <art@khadas.com>
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Link: https://lore.kernel.org/r/20201116064147.12062-1-christianshewitt@gmail.com
The numbering of the i2c busses differs from ACPI and a number of typos
was made in the original patch. Further more the irq flags for the
various resources was not correct and i2c3 only has one of the two
client devices active in any one device.
Also label the various devices, for easier comparison with the ACPI
tables.
Tested-by: Steev Klimaszewski <steev@kali.org>
Fixes: 44acee2078 ("arm64: dts: qcom: Add Lenovo Yoga C630")
Link: https://lore.kernel.org/r/20201130165924.319708-1-bjorn.andersson@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
FW has to configure devices' StreamIDs so that SMMU is able to lookup
context and do proper translation later on. For Armada 7040 & 8040 and
publicly available FW, most of the devices are configured properly,
but some like ap_sdhci0, PCIe, NIC still remain unassigned which
results in SMMU faults about unmatched StreamID (assuming
ARM_SMMU_DISABLE_BYPASS_BY_DEFAUL=y).
Since there is dependency on custom FW let SMMU be disabled by default.
People who still willing to use SMMU need to enable manually and
use ARM_SMMU_DISABLE_BYPASS_BY_DEFAUL=n (or via kernel command line)
with extra caution.
Fixes: 83a3545d9c ("arm64: dts: marvell: add SMMU support")
Cc: <stable@vger.kernel.org> # 5.9+
Signed-off-by: Tomasz Nowicki <tn@semihalf.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
With board revision 1.3, SolidRun moved the power LED to the middle of
the board. In old place of power LED a GPIO controllable heartbeat LED
was added. This commit only touches Single Shot variant, since only this
variant is all revision 1.3.
Reported-by: Alexandra Alth <alexandra@alth.de>
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
In accordance with the Generic xHCI bindings the corresponding node
name is suppose to comply with the Generic USB HCD DT schema, which
requires the USB nodes to have the name acceptable by the regexp:
"^usb(@.*)?" . Make sure the "generic-xhci"-compatible nodes are
correctly named.
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
In accordance with the DWC USB3 bindings the corresponding node
name is suppose to comply with the Generic USB HCD DT schema, which
requires the USB nodes to have the name acceptable by the regexp:
"^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly
named.
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>