summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts
AgeCommit message (Collapse)AuthorFilesLines
2024-07-30arm64: dts: rockchip: Move RK3399 OPPs to dtsi files for SoC variantsDragan Simic1-1/+0
Rename the Rockchip RK3399 SoC dtsi files and, consequently, adjust their contents and the contents of the affected board dts(i) files appropriately, to "encapsulate" the different CPU and GPU OPPs for each of the supported RK3399 SoC variants into the respective SoC variant dtsi files. Moving the OPPs to the SoC variant dtsi files, instead of requiring the board dts(i) files to include both the SoC variant dtsi file and the right OPP variant dtsi file, reduces the possibility for mismatched inclusion and improves the overall hierarchical representation of data. These changes follow the approach used for the Rockchip RK3588 SoC variants, which was introduced and described further in commit def88eb4d836 ("arm64: dts: rockchip: Prepare RK3588 SoC dtsi files for per-variant OPPs"). Please see that commit for a more detailed explanation. No functional changes are introduced, which was validated by decompiling and comparing all affected dtb files before and after these changes. In more detail, all decompiled dtb files remain exactly the same, except the files list below, which results from all of them stemming from the same base board dtsi file (rk3399-rock-pi-4.dtsi), while all of them include one of the three different RK3399 SoC variant dtsi files by themselves: - rk3399-rock-4se.dtb - rk3399-rock-pi-4a.dtb - rk3399-rock-pi-4a-plus.dtb - rk3399-rock-pi-4b.dtb - rk3399-rock-pi-4b-plus.dtb - rk3399-rock-pi-4c.dtb When compared with the decompiled original dtb files, these dtb files have some of their blocks shuffled around a bit and some of their phandles have different values, as a result of the changes to the order in which the building blocks from the parent dtsi files are included into them, but they still effectively remain the same as the originals. The only exception to the "include only a SoC variant dtsi" is found in rk3399-evb.dts, which includes rk3399-base.dtsi instead of rk3399.dtsi. This is intentional, because this board dts file doesn't enable the TSADC, so including rk3399.dtsi would enable the SoC to go into higher OPPs with no thermal throttling in place. Let's hope that people interested in this board will fix this in the future. As a side note, due to the nature of introduced changes, this commit is best viewed using the --break-rewrites option for git-log(1). Related-to: def88eb4d836 ("arm64: dts: rockchip: Prepare RK3588 SoC dtsi files for per-variant OPPs") Signed-off-by: Dragan Simic <dsimic@manjaro.org> Link: https://lore.kernel.org/r/9417b5c5b64f9aceea64530a85a536169a3e7466.1721532747.git.dsimic@manjaro.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2023-12-12arm64: dts: rockchip: Remove ethernet0 alias from the SoC dtsi for RK3399Dragan Simic1-0/+1
Not all supported boards actually use the RK3399's built-in GMAC, while the SoC TRM and the datasheet don't define some standard numbering in this case. Thus, remove the ethernet0 alias from the RK3399 SoC dtsi file, and add the same alias back to the appropriate board dts(i) files. This is quite similar to the already performed migration of the mmcX aliases from the Rockchip SoC dtsi files to the board dts(i) files. Signed-off-by: Dragan Simic <dsimic@manjaro.org> Link: https://lore.kernel.org/r/20879826c01fb9ead71c339866846ea794669802.1702366958.git.dsimic@manjaro.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-06-22arm64: dts: rockchip: align gpio-key node names with dtschemaKrzysztof Kozlowski1-1/+1
The node names should be generic and DT schema expects certain pattern (e.g. with key/button/switch). Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20220616005333.18491-26-krzysztof.kozlowski@linaro.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-04-10arm64: dts: rockchip: correct interrupt flags on rk3399 boardsKrzysztof Kozlowski1-1/+2
GPIO_ACTIVE_x flags are not correct in the context of interrupt flags. These are simple defines so they could be used in DTS but they will not have the same meaning: 1. GPIO_ACTIVE_HIGH = 0 = IRQ_TYPE_NONE 2. GPIO_ACTIVE_LOW = 1 = IRQ_TYPE_EDGE_RISING Correct the interrupt flags, assuming the author of the code wanted same logical behavior behind the name "ACTIVE_xxx", this is: ACTIVE_HIGH => IRQ_TYPE_LEVEL_HIGH Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Link: https://lore.kernel.org/r/20200917185211.5483-2-krzk@kernel.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-03-05arm64: dts: rockchip: Fix SDIO regulator supply properties on rk3399-fireflyRob Herring1-2/+2
A label reference without brackets is a path string, not a phandle as intended. Add the missing brackets. Fixes: a5002c41c383 ("arm64: dts: rockchip: add WiFi module support for Firefly-RK3399") Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220304202559.317749-1-robh@kernel.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-02-19arm64: dts: rockchip: fix supplies for pwm regulatorsHeiko Stuebner1-1/+1
The supply-name for pwm-regualators is "pwm", so the property needs to be pwm-supply, not vin-supply as in a number of boards. In all cases changed here, the supplying regulator is always an always-on fixed-regulator, so there will be no functional change and only a change in the regulator hirarchy, as can be seen for example in the regulator-summary. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Link: https://lore.kernel.org/r/20211227234529.1970281-2-heiko@sntech.de
2022-02-08arm64: dts: rockchip: enable the mali GPU on rk3399-fireflyMichael Saunders1-0/+5
The Firefly RK3399 device tree had the GPU status set to disabled as per the default from the rk3399.dtsi. This patch sets the status in the firefly dts to enable it for use. Tested successfully on a 2GB Firefly RK3399 board. Signed-off-by: Michael Saunders <mick.saunders@gmail.com> Link: https://lore.kernel.org/r/20220207073617.7386-1-mick.saunders@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2021-06-19arm64: dts: rockchip: Add USB-C port details for rk3399 FireflyPeter Robinson1-0/+85
Add the initial details for the USB-C port. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Link: https://lore.kernel.org/r/20210613215237.830160-4-pbrobinson@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2021-06-19arm64: dts: rockchip: Sort rk3399 firefly pinmux entriesPeter Robinson1-19/+17
Sort the rk3399 firefly pinmux entries in alphabetical order and de-dupe the pmic entries. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Link: https://lore.kernel.org/r/20210613215237.830160-3-pbrobinson@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2021-06-19arm64: dts: rockchip: add infrared receiver node to RK3399 FireflyPeter Robinson1-0/+13
This adds the RK3399 Firefly’s infrared receiver to its dts. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Link: https://lore.kernel.org/r/20210613215237.830160-2-pbrobinson@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2021-06-19arm64: dts: rockchip: add SPDIF node for rk3399-fireflyPeter Robinson1-0/+28
This patch adds the SPDIF sound node and related settings for rk3399-firefly. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Link: https://lore.kernel.org/r/20210613215237.830160-1-pbrobinson@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2021-04-11arm64: dts: rockchip: move mmc aliases to board dts on rk3399Heiko Stuebner1-0/+6
As suggested by Arnd Bergmann, the newly added mmc aliases should be board specific, so move them from the general dtsi to the individual boards. Suggested-by: Arnd Bergmann <arnd@kernel.org> Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Link: https://lore.kernel.org/r/20210324122235.1059292-7-heiko@sntech.de
2020-06-17arm64: dts: rockchip: rename label and nodename pinctrl subnodes that end ↵Johan Jonker1-2/+2
with gpio A test with the command below gives for example this error: arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dt.yaml: tsadc: tsadc-otp-gpio: {'phandle': [[90]], 'rockchip,pins': [[0, 6, 0, 123]]} is not of type 'array' 'gpio' is a sort of reserved nodename and should not be used for pinctrl in combination with 'rockchip,pins', so change nodes that end with 'gpio' to end with 'pin' or 'pins'. make ARCH=arm64 dtbs_check DT_SCHEMA_FILES=~/.local/lib/python3.5/site-packages/ dtschema/schemas/gpio/gpio.yaml Signed-off-by: Johan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/20200524160636.16547-2-jbx6244@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2020-05-19arm64: dts: rockchip: rename and label gpio-led subnodesJohan Jonker1-5/+5
Current dts files with 'gpio-led' nodes were manually verified. In order to automate this process leds-gpio.txt has been converted to yaml. With this conversion a check for pattern properties was added. A test with the command below gives a screen full of warnings like: arch/arm64/boot/dts/rockchip/rk3368-r88.dt.yaml: gpio-leds: 'work' does not match any of the regexes: '(^led-[0-9a-f]$|led)', 'pinctrl-[0-9]+' Fix these errors with help of the following rules: 1: Add nodename in the preferred form. 2: Always add a label that ends with '_led' to prevent conflicts with other labels such as 'power' and 'mmc' 3: If leds need pinctrl add a label that ends with '_led_pin' also to prevent conflicts with other labels. patternProperties: # The first form is preferred, but fall back to just 'led' # anywhere in the node name to at least catch some child nodes. "(^led-[0-9a-f]$|led)": make ARCH=arm64 dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/leds/ leds-gpio.yaml Signed-off-by: Johan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/20200428144933.10953-2-jbx6244@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2020-01-13arm64: dts: rockchip: add reg property to brcmf sub-nodesJohan Jonker1-0/+3
An experimental test with the command below gives this error: rk3399-firefly.dt.yaml: dwmmc@fe310000: wifi@1: 'reg' is a required property rk3399-orangepi.dt.yaml: dwmmc@fe310000: wifi@1: 'reg' is a required property rk3399-khadas-edge.dt.yaml: dwmmc@fe310000: wifi@1: 'reg' is a required property rk3399-khadas-edge-captain.dt.yaml: dwmmc@fe310000: wifi@1: 'reg' is a required property rk3399-khadas-edge-v.dt.yaml: dwmmc@fe310000: wifi@1: 'reg' is a required property So fix this by adding a reg property to the brcmf sub node. Also add #address-cells and #size-cells to prevent more warnings. make ARCH=arm64 dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.yaml Signed-off-by: Johan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/20200110142128.13522-1-jbx6244@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2020-01-08arm64: dts: rockchip: rk3399-firefly: remove num-slots from &sdio0 nodeJohan Jonker1-1/+0
The option "num-slots" was deprecated long time ago, so remove it. Signed-off-by: Johan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/20191231191154.5587-1-jbx6244@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2019-12-09arm64: dts: rockchip: Fix min voltage for rk3399-firefly vdd_logKever Yang1-1/+1
The min/max value of vdd_log is decide by pwm IO voltage and its resistors, the rk3399-firefly board's pwm regulator circuit is designed for IO voltage at 1.8V, while the board actually use 3.0V for IO, which at last lead to the min-microvolt to '430mV' instead of '800mV'. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Link: https://lore.kernel.org/r/20191111005158.25070-1-kever.yang@rock-chips.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2018-09-10arm64: dts: rockchip: add WiFi module support for Firefly-RK3399Shohei Maruyama1-0/+36
This commit adds WiFi module support for the Firefly-RK3399. Signed-off-by: Shohei Maruyama <cheat.sc.linux@outlook.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2018-07-25arm64: dts: rockchip: add led support for Firefly-RK3399Shohei Maruyama1-0/+28
This commit adds led support for the Firefly-RK3399. The board has two leds, this commit enables them. Signed-off-by: Shohei Maruyama <cheat.sc.linux@outlook.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2018-07-25arm64: dts: rockchip: add power button support for Firefly-RK3399Shohei Maruyama1-0/+16
This commit adds power button support for the Firefly-RK3399. Signed-off-by: Shohei Maruyama <cheat.sc.linux@outlook.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2018-06-20arm64: dts: rockchip: generalize rk3399 #sound-dai-cellsHeiko Stuebner1-3/+0
The soc spdif and i2s controllers always only have one compontent, so always require #sound-dai-cells to be 0. Therefore there is no need to duplicate this property in individual boards. So move them to rk3399.dtsi. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2018-06-17arm64: dts: rockchip: use SPDX-License-IdentifierKlaus Goger1-38/+1
Update all 64bit rockchip devicetree files to use SPDX-License-Identifiers. All devicetrees claim to be either GPL or X11 while the actual license text is MIT. Therefore we use MIT for the SPDX tag as X11 is clearly wrong. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com> Acked-by: Brian Norris <briannorris@chromium.org> Acked-by: Matthias Brugger <mbrugger@suse.com> Acked-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2018-04-16arm64: dts: rockchip: enable typec-phy for rk3399-fireflyEnric Balletbo i Serra1-0/+8
Commit c301b327aea898af ("arm64: dts: rockchip: add usb3-phy otg-port support for rk3399") caused a regression regarding the USB3. During boot, the following message appears a few times: dwc3: failed to initialize core The driver is deferred waiting for the typec-phy, but this never happens beause is disabled. So, enable it. The offending commit was reverted in 4.16-rc but can be re-applied after enabling the typec phys. Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-11-17Merge tag 'armsoc-dt' of ↵Linus Torvalds1-0/+27
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc Pull ARM device-tree updates from Arnd Bergmann: "We add device tree files for a couple of additional SoCs in various areas: Allwinner R40/V40 for entertainment, Broadcom Hurricane 2 for networking, Amlogic A113D for audio, and Renesas R-Car V3M for automotive. As usual, lots of new boards get added based on those and other SoCs: - Actions S500 based CubieBoard6 single-board computer - Amlogic Meson-AXG A113D based development board - Amlogic S912 based Khadas VIM2 single-board computer - Amlogic S912 based Tronsmart Vega S96 set-top-box - Allwinner H5 based NanoPi NEO Plus2 single-board computer - Allwinner R40 based Banana Pi M2 Ultra and Berry single-board computers - Allwinner A83T based TBS A711 Tablet - Broadcom Hurricane 2 based Ubiquiti UniFi Switch 8 - Broadcom bcm47xx based Luxul XAP-1440/XAP-810/ABR-4500/XBR-4500 wireless access points and routers - NXP i.MX51 based Zodiac Inflight Innovations RDU1 board - NXP i.MX53 based GE Healthcare PPD biometric monitor - NXP i.MX6 based Pistachio single-board computer - NXP i.MX6 based Vining-2000 automotive diagnostic interface - NXP i.MX6 based Ka-Ro TX6 Computer-on-Module in additional variants - Qualcomm MSM8974 (Snapdragon 800) based Fairphone 2 phone - Qualcomm MSM8974pro (Snapdragon 801) based Sony Xperia Z2 Tablet - Realtek RTD1295 based set-top-boxes MeLE V9 and PROBOX2 AVA - Renesas R-Car V3M (R8A77970) SoC and "Eagle" reference board - Renesas H3ULCB and M3ULCB "Kingfisher" extension infotainment boards - Renasas r8a7745 based iWave G22D-SODIMM SoM - Rockchip rk3288 based Amarula Vyasa single-board computer - Samsung Exynos5800 based Odroid HC1 single-board computer For existing SoC support, there was a lot of ongoing work, as usual most of that concentrated on the Renesas, Rockchip, OMAP, i.MX, Amlogic and Allwinner platforms, but others were also active. Rob Herring and many others worked on reducing the number of issues that the latest version of 'dtc' now warns about. Unfortunately there is still a lot left to do. A rework of the ARM foundation model introduced several new files for common variations of the model" * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (599 commits) arm64: dts: uniphier: route on-board device IRQ to GPIO controller for PXs3 dt-bindings: bus: Add documentation for the Technologic Systems NBUS arm64: dts: actions: s900-bubblegum-96: Add fake uart5 clock ARM: dts: owl-s500: Add CubieBoard6 dt-bindings: arm: actions: Add CubieBoard6 ARM: dts: owl-s500-guitar-bb-rev-b: Add fake uart3 clock ARM: dts: owl-s500: Set power domains for CPU2 and CPU3 arm: dts: mt7623: remove unused compatible string for pio node arm: dts: mt7623: update usb related nodes arm: dts: mt7623: update crypto node ARM: dts: sun8i: a711: Enable USB OTG ARM: dts: sun8i: a711: Add regulator support ARM: dts: sun8i: a83t: bananapi-m3: Enable AP6212 WiFi on mmc1 ARM: dts: sun8i: a83t: cubietruck-plus: Enable AP6330 WiFi on mmc1 ARM: dts: sun8i: a83t: Move mmc1 pinctrl setting to dtsi file ARM: dts: sun8i: a83t: allwinner-h8homlet-v2: Add AXP818 regulator nodes ARM: dts: sun8i: a83t: bananapi-m3: Add AXP813 regulator nodes ARM: dts: sun8i: a83t: cubietruck-plus: Add AXP818 regulator nodes ARM: dts: sunxi: Add dtsi for AXP81x PMIC arm64: dts: allwinner: H5: Restore EMAC changes ...
2017-10-17arm64: dts: rockchip: correct vqmmc voltage for rk3399 platformsShawn Lin1-2/+2
The vcc_sd or vcc_sdio used for IO voltage for sdmmc and sdio interface on rk3399 platform have a limitation that it can't be larger than 3.0v, otherwise it has a potential risk for the chip. Correct all of them. Fixes: 171582e00db1 ("arm64: dts: rockchip: add support for firefly-rk3399 board") Fixes: 2c66fc34e945 ("arm64: dts: rockchip: add RK3399-Q7 (Puma) SoM") Fixes: 8164a84cca12 ("arm64: dts: rockchip: Add support for rk3399 sapphire SOM") Cc: stable@vger.kernel.org Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-10-15arm64: dts: rockchip: enable cec pin for rk3399 fireflyPierre-Hugues Husson1-0/+2
Add a pinctrl setting to configure the cec pin to the correct function. Signed-off-by: Pierre-Hugues Husson <phh@phh.me> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-10-14arm64: dts: rockchip: default serial for Firefly-RK3399Heinrich Schuchardt1-0/+4
The Firefly-RK3399 uses serial2 with 1,500,000 baud by default for communication in U-Boot and in the vendor provided distros. So let us set the same default in the Linux kernel. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-09-17arm64: dts: rockchip: enable display subsystem on rk3399-fireflyHeiko Stuebner1-0/+21
Enable the graphics-related nodes on the rk3399-firefly which makes it possible to see output on the on-board hdmi output. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-08-06arm64: dts: rockchip: include opp dtsi for rk3399 fireflyJianqun Xu1-0/+1
Add opp tables for cpu cluster0 and cluster1 by including rk3399-opp.dtsi. Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-07-25arm64: dts: rockchip: enable sdmmc controller on rk3399-fireflyShawn Lin1-0/+12
This allows basic support for SD highspeed cards but no UHS-I mode got ready due to the propagated defer-probe error from RK805. Cc: Kever Yang <kever.yang@rock-chips.com> Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-07-23arm64: dts: rockchip: change clkreq mode for rk3399-fireflyShawn Lin1-1/+1
pcie_clkreqn actually doesn't work at all, so replace it with pcie_clkreqn_cpm. Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-07-22arm64: dts: rockchip: remove abused keep-power-in-suspendShawn Lin1-1/+0
keep-power-in-suspend was invented for SDIO only, so it should not be used for eMMC node. Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-05-30arm64: dts: rockchip: enable usb3 controllers on rk3399-fireflyHeiko Stuebner1-0/+18
This allows basic usage of usb3 devices but no typec specific things yet. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-05-30arm64: dts: rockchip: bring rk3399-firefly power-tree in lineHeiko Stuebner1-43/+53
The power-tree on the rk3399-firefly did not completely match the documentation and vendor devicetree. It was also missing some supply-hirarchy information and some regulator-gpio names did not match the schematics. Fix this for the existing regulators before introducing new things. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2017-05-14arm64: dts: rockchip: add support for firefly-rk3399 boardKever Yang1-0/+690
Firefly-rk3399 is a bord from T-Firefly, you can find detail about it here: http://en.t-firefly.com/en/firenow/Firefly_RK3399/ This patch add basic node for the board and make it able to bring up. Peripheral works: - usb hub which connect to ehci controller; - UART2 debug - eMMC - PCIe Not work: - USB 3.0 HOST, type-C port - sdio, sd-card Not test for other peripheral: - HDMI - Ethernet - OPTICAL - WiFi/BT - MIPI CSI/DSI - IR - EDP/DP Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>