Commit Graph

1312 Commits

Author SHA1 Message Date
Arnd Bergmann
b74638bbda Merge tag 'v6.9-rockchip-dts64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt
Initial support for the rk3568 Qnap TS433 NAS, the rk3588-based Tiger SoM
from Theobroma-Systems and the rk3588-based Toybrick TB-RK3588X.
Some fixes to conform to dt-bindings for i2s (rk3588, rk356x) and
rk356x video-decoder (missing interrupt-names).

Correcting the vendor in the compatible for OrangePi RK3399 and BananaPi
R2 Pro (discussed with DT-maintainers beforehand of course).

The VO1-GRF syscon needs its clock to work, and that clock also needed to
be actually exported forst, so we're sharing a branch with the Rockchip
clock-tree (that already got merged into the main clock-tree for 6.9) for
this small shared code.

And as another step on the long road to graphics output on rk3588, 6.9 will
get the hdmi-phy via the phy-tree, so here the dts node is added.

* tag 'v6.9-rockchip-dts64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: Fix name for UART pin header on qnap-ts433
  arm64: dts: rockchip: Add basic support for QNAP TS-433
  dt-bindings: arm: rockchip: Add QNAP TS-433
  arm64: dts: rockchip: add Haikou baseboard with RK3588-Q7 SoM
  arm64: dts: rockchip: add RK3588-Q7 (Tiger) SoM
  dt-bindings: arm: rockchip: Add Theobroma-Systems RK3588 Q7 with baseboard
  arm64: dts: rockchip: drop rockchip,trcm-sync-tx-only from rk3588 i2s
  arm64: dts: rockchip: fix reset-names for rk356x i2s2 controller
  arm64: dts: rockchip: add missing interrupt-names for rk356x vdpu
  arm64: dts: rockchip: add clock to vo1-grf syscon on rk3588
  dt-bindings: arm: rockchip: Add Toybrick TB-RK3588X
  arm64: dts: rockchip: Add devicetree support for TB-RK3588X board
  arm64: dts: rockchip: adjust vendor on orangepi rk3399 board
  arm64: dts: rockchip: adjust vendor on Banana Pi R2 Pro board
  dt-bindings: arm: rockchip: Correct vendor for Banana Pi R2 Pro
  dt-bindings: arm: rockchip: Correct vendor for Orange Pi RK3399 board
  arm64: dts: rockchip: Add HDMI0 PHY to rk3588
  dt-bindings: clock: rk3588: add missing PCLK_VO1GRF
  dt-bindings: clock: rk3588: drop CLK_NR_CLKS
  clk: rockchip: rk3588: fix CLK_NR_CLKS usage

Link: https://lore.kernel.org/r/3695004.ElGaqSPkdT@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:32:45 +01:00
Uwe Kleine-König
c5a48ffb52 arm64: dts: rockchip: Fix name for UART pin header on qnap-ts433
I typoed the pin header name when copying it from my notes on paper.

Fixes: 9da1c0327d ("arm64: dts: rockchip: Add basic support for QNAP TS-433")
Signed-off-by: Uwe Kleine-König <ukleinek@debian.org>
Link: https://lore.kernel.org/r/20240301163201.559787-2-ukleinek@debian.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-03-02 12:09:00 +01:00
Arnd Bergmann
34eb16dedb Merge tag 'v6.9-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt
New boards: Powkiddy RGB10MAX3, Pine64 PineTab2, NanoPi R6C+R6S, Anbernic
RG-ARC S and RG-ARC D.
New peripherals: rs485 on Theobroma Systems boards, usb3 on Indidroid Nova,
Edgeble NCM6A (usb2, m.2, ethernet, wifi, cpu-regulator), Rock-5b rfkill
for wifi, cache information for rk3399.
Snmaller DT fixes (hdmi nodes, aliases, redundant card-detect gpios, max-
frequency for spi-flashes on rock-pi 4 boards, missing pmu-io-domains on
Ringneck)

* tag 'v6.9-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (38 commits)
  arm64: dts: rockchip: Add USB3.0 to Indiedroid Nova
  arm64: dts: rockchip: adjust phy-handle name on rock-pi-e
  arm64: dts: rockchip: fix rk3399 hdmi ports node
  arm64: dts: rockchip: fix rk3328 hdmi ports node
  arm64: dts: rockchip: remove redundant cd-gpios from rk3588 sdmmc nodes
  arm64: dts: rockchip: add rs485 support on uart5 of px30-ringneck-haikou
  arm64: dts: rockchip: add rs485 support on uart2 of rk3399-puma-haikou
  arm64: dts: rockchip: Add Powkiddy RGB10MAX3
  dt-bindings: arm: rockchip: Add Powkiddy RGB10MAX3
  arm64: dts: rockchip: Update powkiddy rk2023 dtsi for RGB10MAX3
  arm64: dts: rockchip: Add devicetree for Pine64 PineTab2
  dt-bindings: arm64: rockchip: Add Pine64 PineTab2
  arm64: dts: rockchip: Add Touch to Anbernic RG-ARC D
  arm64: dts: rockchip: fix nanopc-t6 sdmmc regulator
  arm64: dts: rockchip: remove duplicate SPI aliases for helios64
  arm64: dts: rockchip: add spi controller aliases on rk3399
  arm64: dts: rockchip: Add support for NanoPi R6C
  arm64: dts: rockchip: Add support for NanoPi R6S
  dt-bindings: arm: rockchip: Add NanoPi R6 series boards
  arm64: dts: rockchip: Increase maximum frequency of SPI flash for ROCK Pi 4A/B/C
  ...

Link: https://lore.kernel.org/r/3622360.hdfAi7Kttb@diego
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-02-29 16:22:29 +01:00
Uwe Kleine-König
9da1c0327d arm64: dts: rockchip: Add basic support for QNAP TS-433
This is enough to make eMMC, networking, UART (console), RTC and a hard
disk accessible. Still missing are (at least): USB, LEDs, regulators,
fan.

Signed-off-by: Uwe Kleine-König <ukleinek@debian.org>
Link: https://lore.kernel.org/r/0d9fa5d730ac1cb91261b25b6809fcef3a12f03a.1709034476.git.ukleinek@debian.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-28 13:15:41 +01:00
Heiko Stuebner
f95d0903d0 arm64: dts: rockchip: add Haikou baseboard with RK3588-Q7 SoM
Haikou is a Qseven and μQseven baseboard featuring PCIe, USB3 and a
video connector for a MIPI-DSI/CSI adapter.

This dts is for usage with the RK3588-Q7 SoM Tiger.

Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Reviewed-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240227164659.705271-5-heiko@sntech.de
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-28 13:12:26 +01:00
Heiko Stuebner
6173ef24b3 arm64: dts: rockchip: add RK3588-Q7 (Tiger) SoM
The RK3588-Q7 SoM is a Qseven-compatible (70mm x 70mm, MXM-230
connector) system-on-module from Theobroma Systems, featuring the
Rockchip RK3588.

It provides the following feature set:
 * up to 16GB LPDDR4x
 * on-module eMMC
 * SD card (on a baseboard) via edge connector
 * Gigabit Ethernet with on-module GbE PHY
 * HDMI/eDP
 * MIPI-DSI
 * 4x MIPI-CSI (3x on FPC connectors, 1x over Q7)
 * HDMI input over FPC connector
 * CAN
 * USB
   - 1x USB 3.0 dual-role (direct connection)
   - 2x USB 3.0 host + 1x USB 2.0 host
 * PCIe
   - 1x PCIe 2.1 Gen3, 4 lanes
   - 2xSATA / 2x PCIe 2.1 Gen1, 2 lanes
 * on-module ATtiny816 companion controller, implementing:
   - low-power RTC functionality (ISL1208 emulation)
   - fan controller (AMC6821 emulation)
 * on-module Secure Element with Global Platform 2.2.1 compliant
   JavaCard environment

Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Reviewed-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240227164659.705271-4-heiko@sntech.de
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-28 13:12:26 +01:00
Heiko Stuebner
a8037ceb89 arm64: dts: rockchip: drop rockchip,trcm-sync-tx-only from rk3588 i2s
The rockchip,trcm-sync-tx-only property is at this time only documented
for the tdm variant of Rockchip i2s controllers.

While there was a series [0] adding code and binding for the property,
it doesn't seem to have gone forward back in 2021.

So for now fix the devicetree check by removing the property from rk3588
i2s controllers until support for it gets merged.

[0] https://patchwork.kernel.org/project/linux-rockchip/patch/1629796734-4243-5-git-send-email-sugar.zhang@rock-chips.com/

Fixes: 8ae112a555 ("arm64: dts: rockchip: Add rk3588s I2S nodes")
Cc: Sugar Zhang <sugar.zhang@rock-chips.com>
Cc: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Reviewed-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240227164659.705271-2-heiko@sntech.de
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-28 13:12:26 +01:00
Heiko Stuebner
0fc19ab75a arm64: dts: rockchip: fix reset-names for rk356x i2s2 controller
The dtbscheck reports a warning for a wrong reset-names property for
the i2s2 controller on rk356x socs.

The other controllers on the soc provide tx and rx directions and hence
two resets and separate clocks for each direction, while i2s2 only
provides one reset. This was so far named just "m" which isn't part of
the binding.

The clock-names the controller uses all end in "tx", so use the matching
"tx-m" reset-name for the i2s controller.

Fixes: 755f37010f ("arm64: dts: rockchip: RK356x: Add I2S2 device node")
Acked-by: Uwe Kleine-König <ukleinek@debian.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20240227173526.710056-2-heiko@sntech.de
2024-02-28 10:00:31 +01:00
Heiko Stuebner
d1c44d9afa arm64: dts: rockchip: add missing interrupt-names for rk356x vdpu
The video-codec@fdea0400 was missing the interrupt-names property that is
part of the binding. Add it.

Fixes: 944be6fba4 ("arm64: dts: rockchip: Add VPU support for RK3568/RK3566")
Cc: Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Acked-by: Uwe Kleine-König <ukleinek@debian.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20240227173526.710056-1-heiko@sntech.de
2024-02-28 10:00:31 +01:00
Heiko Stuebner
2047366b9e arm64: dts: rockchip: add clock to vo1-grf syscon on rk3588
The VO*-general-register-files need a clock, so add the correct one.

Cc: Sebastian Reichel <sebastian.reichel@collabora.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20240227210521.724754-1-heiko@sntech.de
2024-02-28 10:00:19 +01:00
Elon Zhang
8ffe365f8d arm64: dts: rockchip: Add devicetree support for TB-RK3588X board
Add board file for Rockchip Toybrick TB-RK3588X board.

Specification:
	Rockchip Rk3588 SoC
	4x ARM Cortex-A76, 4x ARM Cortex-A55
	8/16GB Memory LPDDR4x
	Mali G610MC4 GPU
	2× MIPI-CSI0 Connector
	1x 2Lanes PCIe3.0 Connector
	1x SATA3.0 Connector
	32GB eMMC Module
	2x USB 2.0, 2x USB 3.0
	1x HDMI Output, 1x HDMI Input
	2x Ethernet Port

Functions work normally:
	[1] USB2.0 Host
	[2] Ethernet0 with PHY RTL8211F

More information can be obtained from the following websites:
	[1] https://t.rock-chips.com/en/wiki/EN/tb-rk3588x_en/index.html
	[2] http://t.rock-chips.com/

Reviewed-by: Weizhao Ouyang <weizhao.ouyang@arm.com>
Signed-off-by: Elon Zhang <zhangzj@rock-chips.com>
Link: https://lore.kernel.org/r/20240221022902.751528-1-zhangzj@rock-chips.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-28 00:11:43 +01:00
Tim Lunn
7ec958ed6a arm64: dts: rockchip: adjust vendor on orangepi rk3399 board
Adjust compatible string to match the board vendor of Xunlong

Signed-off-by: Tim Lunn <tim@feathertop.org>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240214040731.3069111-5-tim@feathertop.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-27 23:58:13 +01:00
Tim Lunn
4376447532 arm64: dts: rockchip: adjust vendor on Banana Pi R2 Pro board
Adjust compatible string to match the board vendor of Sinovoip

Signed-off-by: Tim Lunn <tim@feathertop.org>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240214040731.3069111-4-tim@feathertop.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-27 23:58:13 +01:00
Cristian Ciocaltea
11d28971aa arm64: dts: rockchip: Add HDMI0 PHY to rk3588
Add DT nodes for HDMI0 PHY and related syscon found on RK3588 SoC.

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Link: https://lore.kernel.org/r/20240219204626.284399-1-cristian.ciocaltea@collabora.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-27 23:34:26 +01:00
Arnd Bergmann
0cf54e404d Merge tag 'v6.8-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/fixes
Some fixes to make devicetrees conform to bindings better (pwm irqs), dt
styling fixes (unneeded jaguar status, whitespaces, Cool Pi regulator
naming) and functionality fixes (px30 spi chipselect number, allowing
rk3588-evb1 to turn off, pcie lane numbers on CoolPi, wrong gpio-names
on Indidroid Nova and some CoolPi sdmmc aliases to match what uboot uses).

* tag 'v6.8-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: Correct Indiedroid Nova GPIO Names
  arm64: dts: rockchip: Drop interrupts property from rk3328 pwm-rockchip node
  arm64: dts: rockchip: set num-cs property for spi on px30
  arm64: dts: rockchip: minor rk3588 whitespace cleanup
  arm64: dts: rockchip: drop unneeded status from rk3588-jaguar gpio-leds
  ARM: dts: rockchip: Drop interrupts property from pwm-rockchip nodes
  arm64: dts: rockchip: Fix the num-lanes of pcie3x4 on Cool Pi CM5 EVB
  arm64: dts: rockchip: rename vcc5v0_usb30_host regulator for Cool Pi CM5 EVB
  arm64: dts: rockchip: aliase sdmmc as mmc1 for Cool Pi CM5 EVB
  arm64: dts: rockchip: aliase sdmmc as mmc1 for Cool Pi 4B
  arm64: dts: rockchip: mark system power controller on rk3588-evb1

Link: https://lore.kernel.org/r/2450634.jE0xQCEvom@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-02-20 21:32:55 +01:00
Chris Morgan
c22d03a95b arm64: dts: rockchip: Correct Indiedroid Nova GPIO Names
Correct the names given to a few of the GPIO pins. The original names
were unknowingly based on the header from a pre-production board. The
production board has a slightly different pin assignment for the 40-pin
GPIO header.

Fixes: 3900160e16 ("arm64: dts: rockchip: Add Indiedroid Nova board")
Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Link: https://lore.kernel.org/r/20240125201943.90476-2-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:28:19 +01:00
Chris Morgan
4622485f00 arm64: dts: rockchip: Add USB3.0 to Indiedroid Nova
Add the proper nodes to activate the USB 3.0 ports on the Indiedroid
Nova.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Link: https://lore.kernel.org/r/20240125201943.90476-3-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:28:08 +01:00
Trevor Woerner
abe3426c81 arm64: dts: rockchip: adjust phy-handle name on rock-pi-e
The rock-pi-e currently comes in 4 board spins, the latest one (v1.21)
swaps out the Realtek 8211e PHY for an 8211f PHY. Therefore modify the
phy-handle name to be more generic.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Link: https://lore.kernel.org/r/20240116204103.29318-1-twoerner@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:25:26 +01:00
Johan Jonker
f051b6ace7 arm64: dts: rockchip: fix rk3399 hdmi ports node
Fix rk3399 hdmi ports node so that it matches the
rockchip,dw-hdmi.yaml binding.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Link: https://lore.kernel.org/r/a6ab6f75-3b80-40b1-bd30-3113e14becdd@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:22:46 +01:00
Johan Jonker
1d00ba4700 arm64: dts: rockchip: fix rk3328 hdmi ports node
Fix rk3328 hdmi ports node so that it matches the
rockchip,dw-hdmi.yaml binding.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Link: https://lore.kernel.org/r/e5dea3b7-bf84-4474-9530-cc2da3c41104@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:22:46 +01:00
Kever Yang
d859ad305e arm64: dts: rockchip: remove redundant cd-gpios from rk3588 sdmmc nodes
The sdmmc node already have a "&sdmmc_det" for pinctrl which switch the
GPIO0A4 to sdmmc detect function, no need to define a separate "cd-gpios".

RK3588 has force_jtage feature which is enable JTAG function via sdmmc
pins automatically when there is no SD card insert, this feature will
need the GPIO0A4 works in sdmmc_det function like other mmc signal instead
of GPIO function, or else the force_jtag can not auto be disabled when
SD card insert.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Link: https://lore.kernel.org/r/20240201034621.1970279-1-kever.yang@rock-chips.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:11:42 +01:00
Johan Jonker
1bbd894e2a arm64: dts: rockchip: Drop interrupts property from rk3328 pwm-rockchip node
The binding doesn't define interrupts and adding such a definition was
refused because it's unclear how they should ever be used and the
relevant registers are outside the PWM range. So drop them fixing
several dtbs_check warnings.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Link: https://lore.kernel.org/r/5551846d-62cd-4b72-94f4-07541e726c37@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:09:37 +01:00
Heiko Stuebner
334bf0710c arm64: dts: rockchip: set num-cs property for spi on px30
The px30 has two spi controllers with two chip-selects each.
The num-cs property is specified as the total number of chip
selects a controllers has and is used since 2020 to find uses
of chipselects outside that range in the Rockchip spi driver.

Without the property set, the default is 1, so spi devices
using the second chipselect will not be created.

Fixes: eb1262e3cc ("spi: spi-rockchip: use num-cs property and ctlr->enable_gpiods")
Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Reviewed-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240119101656.965744-1-heiko@sntech.de
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:07:57 +01:00
Krzysztof Kozlowski
00890f5d15 arm64: dts: rockchip: minor rk3588 whitespace cleanup
The DTS code coding style expects exactly one space before '{'
character.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240208105129.128561-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:06:44 +01:00
Farouk Bouabid
5963d97aa7 arm64: dts: rockchip: add rs485 support on uart5 of px30-ringneck-haikou
A hardware switch can set the rs485 transceiver into half or full duplex
mode.

Switching to the half-duplex mode requires the user to enable em485 on
uart5 using ioctl, DE/RE are both connected to GPIO0_B5 which is the
RTS signal for uart0. Implement GPIO0_B5 as rts-gpios with RTS_ON_SEND
option enabled (default) so that driver mode gets enabled while sending
(RTS high) and receiver mode gets enabled while not sending (RTS low).

In full-duplex mode (em485 is disabled), DE is connected to GPIO0_B5 and
RE is grounded (enabled). Since GPIO0_B5 is implemented as rts-gpios, the
driver mode gets enabled whenever we want to send something and RE is not
affected (always enabled) in this case by the state of RTS.

Signed-off-by: Farouk Bouabid <farouk.bouabid@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240208-dev-rx-enable-v6-2-39e68e17a339@theobroma-systems.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:05:47 +01:00
Farouk Bouabid
54448f711a arm64: dts: rockchip: add rs485 support on uart2 of rk3399-puma-haikou
A hardware switch can set the rs485 transceiver into half or full duplex
mode.

Switching to the half-duplex mode requires the user to enable em485 on
uart5 using ioctl, DE/RE are both connected to GPIO2_C3 which is the
RTS signal for uart0. Implement GPIO2_C3 as rts-gpios with RTS_ON_SEND
option enabled (default) so that driver mode gets enabled while sending
(RTS high) and receiver mode gets enabled while not sending (RTS low).

In full-duplex mode (em485 is disabled), DE is connected to GPIO2_C3 and
RE is grounded (enabled). Since GPIO2_C3 is implemented as rts-gpios, the
driver mode gets enabled whenever we want to send something and RE is not
affected (always enabled) in this case by the state of RTS.

Signed-off-by: Farouk Bouabid <farouk.bouabid@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240208-dev-rx-enable-v6-1-39e68e17a339@theobroma-systems.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 20:05:47 +01:00
Chris Morgan
4b325c0d4f arm64: dts: rockchip: Add Powkiddy RGB10MAX3
Add support for the Powkiddy RGB10MAX3. The Powkiddy RGB10MAX3 is a
handheld gaming device with a 720p 5.0 inch screen powered by the
Rockchip RK3566 SoC. It includes a Realtek 8723ds WiFi/BT module, 2 ADC
joysticks powered by a 4-way muxed ADC channel, and several GPIO
face buttons. There are 2 SDMMC slots (sdmmc1 and sdmmc3), 3 pwm
controlled LEDs, and the device includes 1GB of RAM.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Link: https://lore.kernel.org/r/20240212184950.52210-8-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 19:59:31 +01:00
Chris Morgan
039a03c377 arm64: dts: rockchip: Update powkiddy rk2023 dtsi for RGB10MAX3
Move the vdd_cpu regulator to the device specific dts. This is in
preparation of adding the Powkiddy RGB10MAX3 device, which uses
a different vendor for the CPU regulator at a different i2c address.

Also add a phandle to the bluetooth device so that we can change the
compatible string for the RGB10MAX3. This device uses the same pinouts
but a different bluetooth device.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Link: https://lore.kernel.org/r/20240212184950.52210-6-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-13 19:59:30 +01:00
Heiko Stuebner
bab7ec1d80 arm64: dts: rockchip: drop unneeded status from rk3588-jaguar gpio-leds
The default status is okay, so it is definitly not necessary to set
it on a newly added node.

Fixes: d1b8b36a2c ("arm64: dts: rockchip: add Theobroma Jaguar SBC")
Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Reviewed-by: Quentin Schulz <quentin.schulz@theobrona-systems.com>
Link: https://lore.kernel.org/r/20240129114851.2019861-1-heiko@sntech.de
2024-02-04 12:09:56 +01:00
Manuel Traut
1b7e19448f arm64: dts: rockchip: Add devicetree for Pine64 PineTab2
This includes support for both the v0.1 units that were sent to developers and
the v2.0 units from production.

v1.0 is not included as no units are known to exist.

Working/Tested:
- SDMMC
- UART
- Buttons
- Charging/Battery/PMIC
- Audio
- USB
- Display
- SPI NOR Flash

Signed-off-by: Alexander Warnecke <awarnecke002@hotmail.com>
Signed-off-by: Manuel Traut <manut@mecka.net>
Tested-By: Diederik de Haas <didi.debian@cknow.org>
Reviewed-by: Ondrej Jirman <megi@xff.cz>
Tested-by: Ondrej Jirman <megi@xff.cz>
Link: https://lore.kernel.org/r/20240127-pinetab2-v4-4-37aab1c39194@mecka.net
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-04 11:53:56 +01:00
Andy Yan
5556a8c3af arm64: dts: rockchip: Fix the num-lanes of pcie3x4 on Cool Pi CM5 EVB
The 4 lane pcie30 phy is shared by pcie3x4 and pcie3x2, so
the num-lanes of pcie3x4 should be 2.

Fixes: 791c154c39 ("arm64: dts: rockchip: Add support for rk3588 based board Cool Pi CM5 EVB")
Signed-off-by: Andy Yan <andyshrk@163.com>
Link: https://lore.kernel.org/r/20240201121106.1471301-4-andyshrk@163.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-04 11:09:32 +01:00
Andy Yan
c7e8dbb3bc arm64: dts: rockchip: rename vcc5v0_usb30_host regulator for Cool Pi CM5 EVB
According to the schematic, USB20 HOST0 and HOST1 each have their own
independent power supply, but these two regulators controlled by a
same GPIO, so give it a more appropriate name.

Fixes: 791c154c39 ("arm64: dts: rockchip: Add support for rk3588 based board Cool Pi CM5 EVB")
Signed-off-by: Andy Yan <andyshrk@163.com>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/20240201121106.1471301-3-andyshrk@163.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-04 11:09:32 +01:00
Andy Yan
cebda3dd36 arm64: dts: rockchip: aliase sdmmc as mmc1 for Cool Pi CM5 EVB
Follow others rk3588 based boards, and u-boot only use mmc0/1
as mmc boot targets, so aliase sdmmc as mmc1.

Fixes: 791c154c39 ("arm64: dts: rockchip: Add support for rk3588 based board Cool Pi CM5 EVB")
Signed-off-by: Andy Yan <andyshrk@163.com>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/20240201121106.1471301-2-andyshrk@163.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-04 11:09:32 +01:00
Andy Yan
a41f91b4da arm64: dts: rockchip: aliase sdmmc as mmc1 for Cool Pi 4B
Follow others rk3588 based boards, and u-boot only use mmc0/1
as mmc boot targets, so aliase sdmmc as mmc1.

Fixes: 3f5d336d64 ("arm64: dts: rockchip: Add support for rk3588s based board Cool Pi 4B")
Signed-off-by: Andy Yan <andyshrk@163.com>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/20240201121106.1471301-1-andyshrk@163.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-04 11:09:32 +01:00
Chris Morgan
2ec7d42918 arm64: dts: rockchip: Add Touch to Anbernic RG-ARC D
Add the Goodix GT927 touchscreen to the Anbernic RG-ARC D.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Tested-by: Trooper_Max <troopermax@gmail.com>
Link: https://lore.kernel.org/r/20240201150620.886786-1-macroalpha82@gmail.com
[renamed node to generic touchscreen@14]
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-02-04 11:00:30 +01:00
John Clark
6cb02674a0 arm64: dts: rockchip: fix nanopc-t6 sdmmc regulator
sdmmc on the nanopc-t6 is powered by vcc3v3_sd_s0, not vcc_3v3_s3
add the vcc3v3_sd_s0 regulator, and control it with gpio4_a5

Signed-off-by: John Clark <inindev@gmail.com>
Link: https://lore.kernel.org/r/20240102024054.1030313-1-inindev@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 22:07:50 +01:00
Quentin Schulz
dc1f5b67de arm64: dts: rockchip: remove duplicate SPI aliases for helios64
An earlier commit defined an alias for all SPI controllers found on the
RK3399, so there's no need to duplicate the aliases in helios64's device
tree.

Cc: Quentin Schulz <foss+kernel@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240109-rk3399-spi-aliases-v1-2-2009e44e734a@theobroma-systems.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 22:01:53 +01:00
Quentin Schulz
f118d99ec3 arm64: dts: rockchip: add spi controller aliases on rk3399
There are 6 SPI controllers on RK3399 and they are all numbered in the
TRM, so let's add the appropriate aliases to the main DTSI so that any
RK3399-based board doesn't need to define the aliases themselves to
benefit from stable SPI indices in userspace.

Cc: Quentin Schulz <foss+kernel@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20240109-rk3399-spi-aliases-v1-1-2009e44e734a@theobroma-systems.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 22:01:53 +01:00
Muhammed Efe Cetin
d5f1d74374 arm64: dts: rockchip: Add support for NanoPi R6C
NanoPi R6C is mostly same as R6S variant. It has M2 port instead of a
NIC port and different led labeling.

Signed-off-by: Muhammed Efe Cetin <efectn@protonmail.com>
Link: https://lore.kernel.org/r/0f9ee0baa6c9de4d54dd6d13957ca15a63ec934f.1703934548.git.efectn@protonmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:53:19 +01:00
Muhammed Efe Cetin
f1b11f43b3 arm64: dts: rockchip: Add support for NanoPi R6S
Add basic NanoPi R6S support that comes with USB2, PCIe, SD card, eMMC
support.

Signed-off-by: Muhammed Efe Cetin <efectn@protonmail.com>
Link: https://lore.kernel.org/r/6db3b653efc6f0a2dca8e96fdd0503906db72fb6.1703934548.git.efectn@protonmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:53:19 +01:00
Stefan Nagy
fa16d7a820 arm64: dts: rockchip: Increase maximum frequency of SPI flash for ROCK Pi 4A/B/C
The ROCK Pi 4A/B/C boards come with a 32 Mbit SPI NOR flash chip (XTX
Technology Limited XT25F32) with a maximum clock frequency of 108 MHz.
Use this value for the device node's spi-max-frequency property.

This patch has been tested on ROCK Pi 4A.

Signed-off-by: Stefan Nagy <stefan.nagy@ixypsilon.net>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/20231217113208.64056-1-stefan.nagy@ixypsilon.net
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:47:03 +01:00
John Clark
d8bb6c2311 arm64: dts: rockchip: add sdmmc card detect to the nanopc-t6
The nanopc-t6 has an sdmmc card detect connected to gpio0_a4 which is
active low.

Signed-off-by: John Clark <inindev@gmail.com>
Link: https://lore.kernel.org/r/20231230165053.3781-1-inindev@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:44:09 +01:00
Dragan Simic
b72633ba5c arm64: dts: rockchip: Add cache information to the SoC dtsi for RK3399
Add missing cache information to the Rockchip RK3399 SoC dtsi.  The specified
values were derived by hand from the cache size specifications available from
the RK3399 datasheet;  for future reference, here's a brief summary:

  - Each Cortex-A72 core has 48 KB of L1 instruction cache and
    32 KB of L1 data cache available, four-way set associative
  - Each Cortex-A53 core core has 32 KB of instruction cache and
    32 KB of L1 data cache available, four-way set associative
  - The big (A72) cluster has 1 MB of unified L2 cache available
  - The little (A53) cluster has 512 KB of unified L2 cache available

This patch allows /proc/cpuinfo and lscpu(1) to display proper RK3399 cache
information, and it eliminates the following error in the kernel log:

  cacheinfo: Unable to detect cache hierarchy for CPU 0

While there, add a couple of somewhat useful comments, which may help a bit
anyone going through the RK3399 SoC dtsi.

Co-developed-by: Kyle Copperfield <kmcopper@danwin1210.me>
Signed-off-by: Kyle Copperfield <kmcopper@danwin1210.me>
Signed-off-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/be3cbcae5c40fa72a52845d30dcc66c847a98cfa.1702616304.git.dsimic@manjaro.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:41:36 +01:00
Alexey Charkov
82d40b141a arm64: dts: rockchip: add rfkill node for M.2 Key E WiFi on rock-5b
By default the GPIO pin that connects to the WiFi enable signal
inside the M.2 Key E slot is driven low, resulting in impossibility
to connect to any network. Add a DT node to expose it as an RFKILL
device, which lets the WiFi driver or userspace toggle it as
required.

Signed-off-by: Alexey Charkov <alchark@gmail.com>
Link: https://lore.kernel.org/r/20240106202650.22310-1-alchark@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:35:32 +01:00
Hugh Cole-Baker
d235e65adf arm64: dts: rockchip: enable NanoPC-T6 MiniPCIe power
The NanoPC-T6 has a Mini PCIe slot intended to be used for a 4G or LTE
modem. This slot has no PCIe functionality, only USB 2.0 pins are wired
to the SoC, and USIM pins are wired to a SIM card slot on the board.
Define the 3.3v supply for the slot so it can be used.

Signed-off-by: Hugh Cole-Baker <sigmaris@gmail.com>
Link: https://lore.kernel.org/r/20240109202729.54292-1-sigmaris@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:34:11 +01:00
Sebastian Reichel
fc4657971b arm64: dts: rockchip: mark system power controller on rk3588-evb1
Mark the primary PMIC as system-power-controller, so that the
system properly shuts down on poweroff.

Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Link: https://lore.kernel.org/r/20240117191555.86138-1-sebastian.reichel@collabora.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:30:35 +01:00
Jagan Teki
9b606d2d11 arm64: dts: rockchip: Add LED_GREEN for edgeble-neu6a
Edgeble NCM6A, NCM6B SoM has Green LED on the module.

Enable them with heartbeat function.

Signed-off-by: Jagan Teki <jagan@edgeble.ai>
Link: https://lore.kernel.org/r/20231125190522.87607-11-jagan@edgeble.ai
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:28:48 +01:00
Jagan Teki
762751c183 arm64: dts: rockchip: Add Edgeble NCM6A-IO USB2
Edgeble NCM6A-IO board has 2 port USB2.0 Host and USB2.0 on E-Key.

Add support for it.

Signed-off-by: Jagan Teki <jagan@edgeble.ai>
Link: https://lore.kernel.org/r/20231125190522.87607-10-jagan@edgeble.ai
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:28:47 +01:00
Jagan Teki
92eaee21ab arm64: dts: rockchip: Add Edgeble NCM6A-IO M.2 B-Key, E-Key
Edgeble NCM6A-IO board has M.2 B-Key, E-Key via PCI3x2.

Add support for it.

Signed-off-by: Jagan Teki <jagan@edgeble.ai>
Link: https://lore.kernel.org/r/20231125190522.87607-9-jagan@edgeble.ai
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:28:47 +01:00
Jagan Teki
5d85d4c7e0 arm64: dts: rockchip: Add Edgeble NCM6A-IO M.2 M-Key
Edgeble NCM6A-IO board has M.2 M-Key via PCI3x4.

Add support for it.

Signed-off-by: Jagan Teki <jagan@edgeble.ai>
Link: https://lore.kernel.org/r/20231125190522.87607-8-jagan@edgeble.ai
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2024-01-25 21:28:47 +01:00