Merge tag 'soc-dt-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / rockchip / rk3566-anbernic-rg-arc-d.dts
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc-d.dts b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc-d.dts
new file mode 100644 (file)
index 0000000..ab83e8a
--- /dev/null
@@ -0,0 +1,60 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/linux-event-codes.h>
+#include <dt-bindings/pinctrl/rockchip.h>
+#include "rk3566-anbernic-rg-arc.dtsi"
+
+/ {
+       model = "Anbernic RG ARC-D";
+       compatible = "anbernic,rg-arc-d", "rockchip,rk3566";
+
+       aliases {
+               mmc0 = &sdhci;
+               mmc1 = &sdmmc0;
+               mmc2 = &sdmmc1;
+               mmc3 = &sdmmc2;
+       };
+};
+
+&i2c2 {
+       pinctrl-0 = <&i2c2m1_xfer>;
+       pinctrl-names = "default";
+       status = "okay";
+
+       touchscreen@14 {
+               compatible = "goodix,gt927";
+               reg = <0x14>;
+               interrupt-parent = <&gpio4>;
+               interrupts = <RK_PB1 IRQ_TYPE_EDGE_FALLING>;
+               irq-gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
+               pinctrl-0 = <&touch_int>;
+               pinctrl-names = "default";
+               reset-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
+               touchscreen-inverted-y;
+               touchscreen-size-x = <640>;
+               touchscreen-size-y = <480>;
+       };
+};
+
+&pinctrl {
+       touchscreen {
+               touch_int: touch_int {
+                       rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>;
+               };
+       };
+};
+
+&sdhci {
+       bus-width = <8>;
+       mmc-hs200-1_8v;
+       non-removable;
+       pinctrl-0 = <&emmc_bus8>, <&emmc_clk>, <&emmc_cmd>,
+                   <&emmc_datastrobe>, <&emmc_rstnout>;
+       pinctrl-names = "default";
+       vmmc-supply = <&vcc_3v3>;
+       vqmmc-supply = <&vcc_1v8>;
+       status = "okay";
+};