Merge pull request #3997 from jethome-ru/AR-1232-jethome-add-jethub-d1p-support
JetHome: add jethub d1p support
This commit is contained in:
commit
4dffd6eb63
@ -48,11 +48,29 @@ if test -n "${usid}"; then setenv bootargs "${bootargs} usid=${usid}"; fi
|
||||
if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=memory swapaccount=1"; fi
|
||||
echo "Mainline bootargs: ${bootargs}"
|
||||
|
||||
|
||||
echo "Checking board setup"
|
||||
if test "$board" = "jethub-j100"; then
|
||||
if test "$perev" = "02"; then
|
||||
# D1P + RTL8822CS
|
||||
echo "Applying DT kernel file for JetHub D1/P RTL8822CS device"
|
||||
setenv fdtfile "amlogic/meson-axg-jethome-jethub-j110-rev-2.dts"
|
||||
fi;
|
||||
if test "$perev" = "03"; then
|
||||
# D1P + W155S1
|
||||
echo "Applying DT kernel file for JetHub D1/P W155S1 device"
|
||||
setenv fdtfile "amlogic/meson-axg-jethome-jethub-j110-rev-3.dts"
|
||||
fi;
|
||||
fi;
|
||||
|
||||
|
||||
load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
|
||||
load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}Image
|
||||
load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
|
||||
fdt addr ${fdt_addr_r}
|
||||
fdt resize 65536
|
||||
|
||||
|
||||
for overlay_file in ${overlays}; do
|
||||
if load ${devtype} ${devnum} ${scriptaddr} ${prefix}dtb/amlogic/overlay/${overlay_prefix}-${overlay_file}.dtbo; then
|
||||
echo "Applying kernel provided DT overlay ${overlay_prefix}-${overlay_file}.dtbo"
|
||||
|
||||
@ -4,11 +4,13 @@ UBOOT_TARGET_MAP="u-boot-dtb.img;;u-boot.bin.sd.bin:u-boot.bin u-boot.bin:u-boot
|
||||
CPUMIN=250000
|
||||
GOVERNOR="ondemand"
|
||||
BOOTSCRIPT="boot-jethub.cmd:boot.cmd"
|
||||
BOOTBRANCH="tag:v2022.07"
|
||||
|
||||
if [[ "$BOARD" == "jethubj80" ]]; then
|
||||
CPUMAX=1200000
|
||||
elif [[ "$BOARD" == "jethubj80" ]]; then
|
||||
elif [[ "$BOARD" == "jethubj100" ]]; then
|
||||
CPUMAX=1416000
|
||||
OFFSET=126
|
||||
fi
|
||||
|
||||
uboot_custom_postprocess() {
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
From fb96f50a1fb8a8f0e90c9b19c3be619b09433f70 Mon Sep 17 00:00:00 2001
|
||||
From f871a01e6b10f3d16e4082fe345af7c5f56ab14d Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <devel@lexina.in>
|
||||
Date: Sat, 4 Sep 2021 16:49:49 +0300
|
||||
Subject: [PATCH 1/4] dt-bindings: arm: amlogic: add bindings for Jethub D1/H1
|
||||
Subject: [PATCH 01/10] dt-bindings: arm: amlogic: add bindings for Jethub
|
||||
D1/H1
|
||||
|
||||
JetHome is a series of home automation controllers:
|
||||
- Jethub D1 based on Amlogic A113X
|
||||
@ -14,7 +15,7 @@ Acked-by: Rob Herring <robh@kernel.org>
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
|
||||
index 6423377710ee..b223d7829c3d 100644
|
||||
index 131f13015eb0..0bd50f3072d2 100644
|
||||
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
|
||||
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
|
||||
@@ -86,6 +86,7 @@ properties:
|
||||
@ -25,7 +26,7 @@ index 6423377710ee..b223d7829c3d 100644
|
||||
- const: amlogic,s905w
|
||||
- const: amlogic,meson-gxl
|
||||
|
||||
@@ -133,6 +134,7 @@ properties:
|
||||
@@ -130,6 +131,7 @@ properties:
|
||||
items:
|
||||
- enum:
|
||||
- amlogic,s400
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
From c3e0be7ca8a219e4a199d718ed40b5ca658f2cfc Mon Sep 17 00:00:00 2001
|
||||
From 1b3b9cda85d6f98f64d5b992a292086ec47fcb62 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <devel@lexina.in>
|
||||
Date: Sat, 4 Sep 2021 16:53:19 +0300
|
||||
Subject: [PATCH 2/4] dt-bindings: vendor-prefixes: add jethome prefix
|
||||
Subject: [PATCH 02/10] dt-bindings: vendor-prefixes: add jethome prefix
|
||||
|
||||
JetHome is trademark of IP Sokolov P.A., manufacturer of home automation
|
||||
devices.
|
||||
@ -12,10 +12,10 @@ Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
||||
index a867f7102c35..c52f0d3261bb 100644
|
||||
index 2735be1a8470..379a8fd3a8be 100644
|
||||
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
||||
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
||||
@@ -577,6 +577,8 @@ patternProperties:
|
||||
@@ -529,6 +529,8 @@ patternProperties:
|
||||
description: JEDEC Solid State Technology Association
|
||||
"^jesurun,.*":
|
||||
description: Shenzhen Jesurun Electronics Business Dept.
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
From b536321c1836913753db12e2c4b2cd9131deb4ab Mon Sep 17 00:00:00 2001
|
||||
From ba4c8a6c258e33e52ec863654605994d7bd5c05c Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <devel@lexina.in>
|
||||
Date: Sat, 20 Mar 2021 14:13:29 +0300
|
||||
Subject: [PATCH 3/4] arm64: dts: meson-gxl: add support for JetHub H1
|
||||
Subject: [PATCH 03/10] arm64: dts: meson-gxl: add support for JetHub H1
|
||||
|
||||
JetHome Jethub H1 (http://jethome.ru/jethub-h1) is a home automation
|
||||
controller with the following features:
|
||||
@ -30,7 +30,7 @@ Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-jethome-jethub-j80.dts
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
index faa0a79a34f5..2c3ce7c401a5 100644
|
||||
index 6e2a63f49876..2cdc3006216d 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/Makefile
|
||||
+++ b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
@@ -38,6 +38,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
From 219f3a194fcf278ff144e5f333761e0a209af3b8 Mon Sep 17 00:00:00 2001
|
||||
From c917fa101b7c9319bdfd866b2975d930aac839e2 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <devel@lexina.in>
|
||||
Date: Sat, 20 Mar 2021 14:23:36 +0300
|
||||
Subject: [PATCH 4/4] arm64: dts: meson-axg: add support for JetHub D1
|
||||
Subject: [PATCH 04/10] arm64: dts: meson-axg: add support for JetHub D1
|
||||
|
||||
JetHome Jethub D1 (http://jethome.ru/jethub-d1) is a home automation
|
||||
controller with the following features:
|
||||
@ -33,7 +33,7 @@ Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
index 2c3ce7c401a5..3ba6f58b9833 100644
|
||||
index 2cdc3006216d..ac9f51beee66 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/Makefile
|
||||
+++ b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
@@ -1,5 +1,6 @@
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
From 9d557b78ff23a97a84163552b370bff0edf42867 Mon Sep 17 00:00:00 2001
|
||||
From da3c42b90664a707eecb15f40f68ecf1358b6085 Mon Sep 17 00:00:00 2001
|
||||
From: usera <adeep@lexina.in>
|
||||
Date: Mon, 12 Apr 2021 17:16:42 +0300
|
||||
Subject: [PATCH 5/5] Fix:meson64: add gpio irq (patch from
|
||||
Subject: [PATCH 05/10] Fix:meson64: add gpio irq (patch from
|
||||
https://lkml.org/lkml/2020/11/27/8)
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <devel@lexina.in>
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
From 95b7c84a13648ddc160a878f1a0ecef0ab61a34c Mon Sep 17 00:00:00 2001
|
||||
From 02b97bef23a283d9c891be2ccd2ed40bf54ab558 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <devel@lexina.in>
|
||||
Date: Wed, 11 Aug 2021 13:07:46 +0300
|
||||
Subject: [PATCH 6/6] Add bluetooth node for RTL8822CS uart port
|
||||
Subject: [PATCH 06/10] Add bluetooth node for RTL8822CS uart port
|
||||
(https://mjmwired.net/kernel/Documentation/devicetree/bindings/net/realtek-bluetooth.yaml)
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <devel@lexina.in>
|
||||
---
|
||||
.../boot/dts/amlogic/meson-gxl-s905w-jethome-jethub-j80.dts | 5 +++++
|
||||
1 file changed, 6 insertions(+)
|
||||
.../boot/dts/amlogic/meson-gxl-s905w-jethome-jethub-j80.dts | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-jethome-jethub-j80.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-jethome-jethub-j80.dts
|
||||
index 6eafb908695f..a5ee7ed17efa 100644
|
||||
@ -25,3 +25,6 @@ index 6eafb908695f..a5ee7ed17efa 100644
|
||||
};
|
||||
|
||||
&uart_C {
|
||||
--
|
||||
2.30.2
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
From 7ee7560a8d97af8ff6e3526a8c30cd539a7945b6 Mon Sep 17 00:00:00 2001
|
||||
From 971ae00f9b18ef9b919928c966e720501400f6b8 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Thu, 25 Nov 2021 16:02:47 +0300
|
||||
Subject: [PATCH 1/3] arm64: meson: fix dts for JetHub D1
|
||||
Subject: [PATCH 07/10] arm64: meson: fix dts for JetHub D1
|
||||
|
||||
Fix misplace of cpu_cooling_maps for JetHub D1, move it to right place.
|
||||
|
||||
@ -15,7 +15,7 @@ Link: https://lore.kernel.org/r/20211125130246.1086627-1-adeep@lexina.in
|
||||
1 file changed, 15 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
index 52ebe371df26..561eec21b4de 100644
|
||||
index c25b03a91e12..44ce67d3ef34 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
@@ -134,23 +134,23 @@ cpu_critical: cpu-critical {
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
From 350761d9fa30de0a494fc7c65a729afb2cfae1d6 Mon Sep 17 00:00:00 2001
|
||||
From cab3782bebd0a742df228f525a2bf42ea15498f5 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Mon, 13 Dec 2021 10:25:50 +0300
|
||||
Subject: [PATCH 2/3] arm64: meson: dts: update dts for JetHub D1 Change zigbee
|
||||
serial alias to ttyAML2 for backward compatibility.
|
||||
Subject: [PATCH 08/10] arm64: meson: dts: update dts for JetHub D1 Change
|
||||
zigbee serial alias to ttyAML2 for backward compatibility.
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
index 561eec21b4de..9951217ef997 100644
|
||||
index 44ce67d3ef34..ae603095038c 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
@@ -18,7 +18,7 @@ / {
|
||||
@ -1,7 +1,7 @@
|
||||
From 48642ffdc5245f55d95fdd9719617b864c2c9206 Mon Sep 17 00:00:00 2001
|
||||
From a00a076fe1f3dcdd47c8f68cbc82c674dd1a3632 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Sun, 9 Jan 2022 12:32:21 +0300
|
||||
Subject: [PATCH] arm64: meson: fix sdio in dts for JetHub D1
|
||||
Subject: [PATCH 09/10] arm64: meson: fix sdio in dts for JetHub D1
|
||||
|
||||
Fix the dts to match board's reference design:
|
||||
- update vddio_boot regulator to 3.3v (Wi-Fi SDIO module)
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
1 file changed, 12 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
index 561eec21b4de..3d98fa36633c 100644
|
||||
index ae603095038c..d0b8845abb31 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
@@ -81,12 +81,22 @@ vddio_ao18: regulator-vddio_ao18 {
|
||||
@ -44,7 +44,7 @@ index 561eec21b4de..3d98fa36633c 100644
|
||||
usb_pwr: regulator-usb_pwr {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB_PWR";
|
||||
@@ -248,8 +258,7 @@ &sd_emmc_b {
|
||||
@@ -247,8 +257,7 @@ &sd_emmc_b {
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
@ -54,7 +54,7 @@ index 561eec21b4de..3d98fa36633c 100644
|
||||
non-removable;
|
||||
disable-wp;
|
||||
|
||||
@@ -282,7 +291,7 @@ &sd_emmc_c {
|
||||
@@ -281,7 +290,7 @@ &sd_emmc_c {
|
||||
mmc-pwrseq = <&emmc_pwrseq>;
|
||||
|
||||
vmmc-supply = <&vcc_3v3>;
|
||||
|
||||
@ -0,0 +1,845 @@
|
||||
From f4abf03616b36f4ece4f996e67fa562c2a6ff040 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 10 Aug 2022 17:57:39 +0300
|
||||
Subject: [PATCH 10/10] Add JetHub D1p support
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
---
|
||||
arch/arm64/boot/dts/amlogic/Makefile | 2 +
|
||||
.../amlogic/meson-axg-jethome-jethub-j100.dts | 338 +----------------
|
||||
.../meson-axg-jethome-jethub-j110-rev-2.dts | 37 ++
|
||||
.../meson-axg-jethome-jethub-j110-rev-3.dts | 27 ++
|
||||
.../meson-axg-jethome-jethub-j1xx.dtsi | 351 ++++++++++++++++++
|
||||
5 files changed, 421 insertions(+), 334 deletions(-)
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
index ac9f51beee66..97f028f3b8f7 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/Makefile
|
||||
+++ b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
@@ -1,6 +1,8 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-axg-s400.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-axg-jethome-jethub-j100.dtb
|
||||
+dtb-$(CONFIG_ARCH_MESON) += meson-axg-jethome-jethub-j110-rev-2.dtb
|
||||
+dtb-$(CONFIG_ARCH_MESON) += meson-axg-jethome-jethub-j110-rev-3.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12a-radxa-zero.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12a-sei510.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12a-u200.dtb
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
index d0b8845abb31..b2d6ba660914 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
@@ -1,270 +1,29 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
- * Copyright (c) 2021 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
- * Copyright (c) 2020 JetHome
|
||||
- * Author: Aleksandr Kazantsev <ak@tvip.ru>
|
||||
- * Author: Alexey Shevelkin <ash@tvip.ru>
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
* Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
-#include "meson-axg.dtsi"
|
||||
-#include <dt-bindings/input/input.h>
|
||||
-#include <dt-bindings/thermal/thermal.h>
|
||||
+#include "meson-axg-jethome-jethub-j1xx.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "jethome,jethub-j100", "amlogic,a113d", "amlogic,meson-axg";
|
||||
- model = "JetHome JetHub J100";
|
||||
- aliases {
|
||||
- serial0 = &uart_AO; /* Console */
|
||||
- serial2 = &uart_AO_B; /* External UART (Wireless Module) */
|
||||
- ethernet0 = ðmac;
|
||||
- };
|
||||
-
|
||||
- chosen {
|
||||
- stdout-path = "serial0:115200n8";
|
||||
- };
|
||||
+ model = "JetHome JetHub D1 (J100)";
|
||||
|
||||
/* 1024MB RAM */
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x0 0x0 0x40000000>;
|
||||
};
|
||||
-
|
||||
- reserved-memory {
|
||||
- linux,cma {
|
||||
- size = <0x0 0x400000>;
|
||||
- };
|
||||
- };
|
||||
-
|
||||
- emmc_pwrseq: emmc-pwrseq {
|
||||
- compatible = "mmc-pwrseq-emmc";
|
||||
- reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
|
||||
- };
|
||||
-
|
||||
- vcc_3v3: regulator-vcc_3v3 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VCC_3V3";
|
||||
- regulator-min-microvolt = <3300000>;
|
||||
- regulator-max-microvolt = <3300000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vcc_5v: regulator-vcc_5v {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VCC5V";
|
||||
- regulator-min-microvolt = <5000000>;
|
||||
- regulator-max-microvolt = <5000000>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vddao_3v3: regulator-vddao_3v3 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VDDAO_3V3";
|
||||
- regulator-min-microvolt = <3300000>;
|
||||
- regulator-max-microvolt = <3300000>;
|
||||
- vin-supply = <&vcc_5v>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vddio_ao18: regulator-vddio_ao18 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VDDIO_AO18";
|
||||
- regulator-min-microvolt = <1800000>;
|
||||
- regulator-max-microvolt = <1800000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vddio_boot: regulator-vddio_boot {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VDDIO_BOOT";
|
||||
- regulator-min-microvolt = <3300000>;
|
||||
- regulator-max-microvolt = <3300000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vccq_1v8: regulator-vccq_1v8 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VCCQ_1V8";
|
||||
- regulator-min-microvolt = <1800000>;
|
||||
- regulator-max-microvolt = <1800000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
-
|
||||
- usb_pwr: regulator-usb_pwr {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "USB_PWR";
|
||||
- regulator-min-microvolt = <5000000>;
|
||||
- regulator-max-microvolt = <5000000>;
|
||||
- vin-supply = <&vcc_5v>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- sdio_pwrseq: sdio-pwrseq {
|
||||
- compatible = "mmc-pwrseq-simple";
|
||||
- reset-gpios = <&gpio GPIOX_7 GPIO_ACTIVE_LOW>;
|
||||
- clocks = <&wifi32k>;
|
||||
- clock-names = "ext_clock";
|
||||
- };
|
||||
-
|
||||
- wifi32k: wifi32k {
|
||||
- compatible = "pwm-clock";
|
||||
- #clock-cells = <0>;
|
||||
- clock-frequency = <32768>;
|
||||
- pwms = <&pwm_ab 0 30518 0>; /* PWM_A at 32.768KHz */
|
||||
- };
|
||||
-
|
||||
- thermal-zones {
|
||||
- cpu_thermal: cpu-thermal {
|
||||
- polling-delay-passive = <250>;
|
||||
- polling-delay = <1000>;
|
||||
- thermal-sensors = <&scpi_sensors 0>;
|
||||
- trips {
|
||||
- cpu_passive: cpu-passive {
|
||||
- temperature = <70000>; /* millicelsius */
|
||||
- hysteresis = <2000>; /* millicelsius */
|
||||
- type = "passive";
|
||||
- };
|
||||
-
|
||||
- cpu_hot: cpu-hot {
|
||||
- temperature = <80000>; /* millicelsius */
|
||||
- hysteresis = <2000>; /* millicelsius */
|
||||
- type = "hot";
|
||||
- };
|
||||
-
|
||||
- cpu_critical: cpu-critical {
|
||||
- temperature = <100000>; /* millicelsius */
|
||||
- hysteresis = <2000>; /* millicelsius */
|
||||
- type = "critical";
|
||||
- };
|
||||
- };
|
||||
-
|
||||
- cpu_cooling_maps: cooling-maps {
|
||||
- map0 {
|
||||
- trip = <&cpu_passive>;
|
||||
- cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
- };
|
||||
-
|
||||
- map1 {
|
||||
- trip = <&cpu_hot>;
|
||||
- cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
- };
|
||||
- };
|
||||
- };
|
||||
- };
|
||||
- onewire {
|
||||
- compatible = "w1-gpio";
|
||||
- gpios = <&gpio GPIOA_14 GPIO_ACTIVE_HIGH>;
|
||||
- #gpio-cells = <1>;
|
||||
- };
|
||||
-};
|
||||
-
|
||||
-&efuse {
|
||||
- sn: sn@32 {
|
||||
- reg = <0x32 0x20>;
|
||||
- };
|
||||
-
|
||||
- eth_mac: eth_mac@0 {
|
||||
- reg = <0x0 0x6>;
|
||||
- };
|
||||
-
|
||||
- bt_mac: bt_mac@6 {
|
||||
- reg = <0x6 0x6>;
|
||||
- };
|
||||
-
|
||||
- wifi_mac: wifi_mac@c {
|
||||
- reg = <0xc 0x6>;
|
||||
- };
|
||||
-
|
||||
- bid: bid@12 {
|
||||
- reg = <0x12 0x20>;
|
||||
- };
|
||||
-};
|
||||
-
|
||||
-ðmac {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <ð_rmii_x_pins>;
|
||||
- pinctrl-names = "default";
|
||||
- phy-handle = <ð_phy0>;
|
||||
- phy-mode = "rmii";
|
||||
-
|
||||
- mdio {
|
||||
- compatible = "snps,dwmac-mdio";
|
||||
- #address-cells = <1>;
|
||||
- #size-cells = <0>;
|
||||
-
|
||||
- /* ICPlus IP101A/G Ethernet PHY (vendor_id=0x0243, model_id=0x0c54) */
|
||||
- eth_phy0: ethernet-phy@0 {
|
||||
- /* compatible = "ethernet-phy-id0243.0c54";*/
|
||||
- max-speed = <100>;
|
||||
- reg = <0>;
|
||||
-
|
||||
- reset-assert-us = <10000>;
|
||||
- reset-deassert-us = <10000>;
|
||||
- reset-gpios = <&gpio GPIOZ_5 GPIO_ACTIVE_LOW>;
|
||||
- };
|
||||
- };
|
||||
-};
|
||||
-
|
||||
-/* Internal I2C bus (on CPU module) */
|
||||
-&i2c1 {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&i2c1_z_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-
|
||||
- /* RTC */
|
||||
- pcf8563: pcf8563@51 {
|
||||
- compatible = "nxp,pcf8563";
|
||||
- reg = <0x51>;
|
||||
- status = "okay";
|
||||
- };
|
||||
};
|
||||
|
||||
-/* Peripheral I2C bus (on motherboard) */
|
||||
-&i2c_AO {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&i2c_ao_sck_10_pins>, <&i2c_ao_sda_11_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-&pwm_ab {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&pwm_a_x20_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
|
||||
/* wifi module */
|
||||
&sd_emmc_b {
|
||||
- status = "okay";
|
||||
- #address-cells = <1>;
|
||||
- #size-cells = <0>;
|
||||
-
|
||||
- pinctrl-0 = <&sdio_pins>;
|
||||
- pinctrl-1 = <&sdio_clk_gate_pins>;
|
||||
- pinctrl-names = "default", "clk-gate";
|
||||
-
|
||||
- bus-width = <4>;
|
||||
- cap-sd-highspeed;
|
||||
- max-frequency = <50000000>;
|
||||
non-removable;
|
||||
- disable-wp;
|
||||
-
|
||||
- mmc-pwrseq = <&sdio_pwrseq>;
|
||||
-
|
||||
- vmmc-supply = <&vddao_3v3>;
|
||||
- vqmmc-supply = <&vddio_boot>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
@@ -272,99 +31,10 @@ brcmf: wifi@1 {
|
||||
};
|
||||
};
|
||||
|
||||
-/* emmc storage */
|
||||
-&sd_emmc_c {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
|
||||
- pinctrl-1 = <&emmc_clk_gate_pins>;
|
||||
- pinctrl-names = "default", "clk-gate";
|
||||
-
|
||||
- bus-width = <8>;
|
||||
- cap-mmc-highspeed;
|
||||
- max-frequency = <200000000>;
|
||||
- non-removable;
|
||||
- disable-wp;
|
||||
- mmc-ddr-1_8v;
|
||||
- mmc-hs200-1_8v;
|
||||
-
|
||||
- mmc-pwrseq = <&emmc_pwrseq>;
|
||||
-
|
||||
- vmmc-supply = <&vcc_3v3>;
|
||||
- vqmmc-supply = <&vccq_1v8>;
|
||||
-};
|
||||
-
|
||||
/* UART Bluetooth */
|
||||
&uart_B {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&uart_b_z_pins>, <&uart_b_z_cts_rts_pins>;
|
||||
- pinctrl-names = "default";
|
||||
- uart-has-rtscts;
|
||||
-
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
shutdown-gpios = <&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
-
|
||||
-/* UART Console */
|
||||
-&uart_AO {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&uart_ao_a_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-/* UART Wireless module */
|
||||
-&uart_AO_B {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&uart_ao_b_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-&usb {
|
||||
- status = "okay";
|
||||
- phy-supply = <&usb_pwr>;
|
||||
-};
|
||||
-
|
||||
-&spicc1 {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&spi1_x_pins>, <&spi1_ss0_x_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-&gpio {
|
||||
- gpio-line-names =
|
||||
- "", "", "", "", "", // 0 - 4
|
||||
- "", "", "", "", "", // 5 - 9
|
||||
- "UserButton", "", "", "", "", // 10 - 14
|
||||
- "", "", "", "", "", // 15 - 19
|
||||
- "", "", "", "", "", // 20 - 24
|
||||
- "", "LedRed", "LedGreen", "Output3", "Output2", // 25 - 29
|
||||
- "Output1", "", "", "", "", // 30 - 34
|
||||
- "", "ZigBeeBOOT", "", "", "", // 35 - 39
|
||||
- "1Wire", "ZigBeeRESET", "", "Input4", "Input3", // 40 - 44
|
||||
- "Input2", "Input1", "", "", "", // 45 - 49
|
||||
- "", "", "", "", "", // 50 - 54
|
||||
- "", "", "", "", "", // 55 - 59
|
||||
- "", "", "", "", "", // 60 - 64
|
||||
- "", "", "", "", "", // 65 - 69
|
||||
- "", "", "", "", "", // 70 - 74
|
||||
- "", "", "", "", "", // 75 - 79
|
||||
- "", "", "", "", "", // 80 - 84
|
||||
- "", ""; // 85-86
|
||||
-};
|
||||
-
|
||||
-&cpu0 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
-
|
||||
-&cpu1 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
-
|
||||
-&cpu2 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
-
|
||||
-&cpu3 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts
|
||||
new file mode 100644
|
||||
index 000000000000..0062667c4f65
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts
|
||||
@@ -0,0 +1,37 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
+ * Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "meson-axg-jethome-jethub-j1xx.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "jethome,jethub-j110", "amlogic,a113d", "amlogic,meson-axg";
|
||||
+ model = "JetHome JetHub D1p (J110) HW rev.2";
|
||||
+
|
||||
+ /* 2GiB or 4GiB RAM */
|
||||
+ memory@0 {
|
||||
+ device_type = "memory";
|
||||
+ reg = <0x0 0x0 0x0 0x80000000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+
|
||||
+/* wifi module */
|
||||
+&sd_emmc_b {
|
||||
+ broken-cd;/* cd-gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;*/
|
||||
+};
|
||||
+
|
||||
+/* UART Bluetooth */
|
||||
+&uart_B {
|
||||
+ bluetooth {
|
||||
+ compatible = "realtek,rtl8822cs-bt";
|
||||
+ enable-gpios = <&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
|
||||
+ host-wake-gpios = <&gpio GPIOZ_8 GPIO_ACTIVE_HIGH>;
|
||||
+ device-wake-gpios = <&gpio GPIOZ_6 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts
|
||||
new file mode 100644
|
||||
index 000000000000..c2d22b00c1cd
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts
|
||||
@@ -0,0 +1,27 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
+ * Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "meson-axg-jethome-jethub-j1xx.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "jethome,jethub-j110", "amlogic,a113d", "amlogic,meson-axg";
|
||||
+ model = "JetHome JetHub D1p (J110) Hw rev.3";
|
||||
+
|
||||
+ /* 2GiB or 4GiB RAM */
|
||||
+ memory@0 {
|
||||
+ device_type = "memory";
|
||||
+ reg = <0x0 0x0 0x0 0x80000000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+
|
||||
+/* wifi module */
|
||||
+&sd_emmc_b {
|
||||
+ broken-cd;/* cd-gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;*/
|
||||
+};
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi
|
||||
new file mode 100644
|
||||
index 000000000000..5836b0030931
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi
|
||||
@@ -0,0 +1,351 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
+ * Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Author: Aleksandr Kazantsev <ak@tvip.ru>
|
||||
+ * Author: Alexey Shevelkin <ash@tvip.ru>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "meson-axg.dtsi"
|
||||
+#include <dt-bindings/input/input.h>
|
||||
+#include <dt-bindings/thermal/thermal.h>
|
||||
+
|
||||
+/ {
|
||||
+ aliases {
|
||||
+ serial0 = &uart_AO; /* Console */
|
||||
+ serial2 = &uart_AO_B; /* External UART (Wireless Module) */
|
||||
+ ethernet0 = ðmac;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = "serial0:115200n8";
|
||||
+ };
|
||||
+
|
||||
+ reserved-memory {
|
||||
+ linux,cma {
|
||||
+ size = <0x0 0x400000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ emmc_pwrseq: emmc-pwrseq {
|
||||
+ compatible = "mmc-pwrseq-emmc";
|
||||
+ reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ vcc_3v3: regulator-vcc_3v3 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VCC_3V3";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vcc_5v: regulator-vcc_5v {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VCC5V";
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vddao_3v3: regulator-vddao_3v3 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VDDAO_3V3";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&vcc_5v>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vddio_ao18: regulator-vddio_ao18 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VDDIO_AO18";
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vddio_boot: regulator-vddio_boot {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VDDIO_BOOT";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vccq_1v8: regulator-vccq_1v8 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VCCQ_1V8";
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ usb_pwr: regulator-usb_pwr {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "USB_PWR";
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ vin-supply = <&vcc_5v>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ sdio_pwrseq: sdio-pwrseq {
|
||||
+ compatible = "mmc-pwrseq-simple";
|
||||
+ reset-gpios = <&gpio GPIOX_7 GPIO_ACTIVE_LOW>;
|
||||
+ clocks = <&wifi32k>;
|
||||
+ clock-names = "ext_clock";
|
||||
+ };
|
||||
+
|
||||
+ wifi32k: wifi32k {
|
||||
+ compatible = "pwm-clock";
|
||||
+ #clock-cells = <0>;
|
||||
+ clock-frequency = <32768>;
|
||||
+ pwms = <&pwm_ab 0 30518 0>; /* PWM_A at 32.768KHz */
|
||||
+ };
|
||||
+
|
||||
+ thermal-zones {
|
||||
+ cpu_thermal: cpu-thermal {
|
||||
+ polling-delay-passive = <250>;
|
||||
+ polling-delay = <1000>;
|
||||
+ thermal-sensors = <&scpi_sensors 0>;
|
||||
+ trips {
|
||||
+ cpu_passive: cpu-passive {
|
||||
+ temperature = <70000>; /* millicelsius */
|
||||
+ hysteresis = <2000>; /* millicelsius */
|
||||
+ type = "passive";
|
||||
+ };
|
||||
+
|
||||
+ cpu_hot: cpu-hot {
|
||||
+ temperature = <80000>; /* millicelsius */
|
||||
+ hysteresis = <2000>; /* millicelsius */
|
||||
+ type = "hot";
|
||||
+ };
|
||||
+
|
||||
+ cpu_critical: cpu-critical {
|
||||
+ temperature = <100000>; /* millicelsius */
|
||||
+ hysteresis = <2000>; /* millicelsius */
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ cpu_cooling_maps: cooling-maps {
|
||||
+ map0 {
|
||||
+ trip = <&cpu_passive>;
|
||||
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+
|
||||
+ map1 {
|
||||
+ trip = <&cpu_hot>;
|
||||
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ onewire {
|
||||
+ compatible = "w1-gpio";
|
||||
+ gpios = <&gpio GPIOA_14 GPIO_ACTIVE_HIGH>;
|
||||
+ #gpio-cells = <1>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&efuse {
|
||||
+ sn: sn@32 {
|
||||
+ reg = <0x32 0x20>;
|
||||
+ };
|
||||
+
|
||||
+ eth_mac: eth_mac@0 {
|
||||
+ reg = <0x0 0x6>;
|
||||
+ };
|
||||
+
|
||||
+ bt_mac: bt_mac@6 {
|
||||
+ reg = <0x6 0x6>;
|
||||
+ };
|
||||
+
|
||||
+ wifi_mac: wifi_mac@c {
|
||||
+ reg = <0xc 0x6>;
|
||||
+ };
|
||||
+
|
||||
+ bid: bid@12 {
|
||||
+ reg = <0x12 0x20>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+ðmac {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <ð_rmii_x_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ phy-handle = <ð_phy0>;
|
||||
+ phy-mode = "rmii";
|
||||
+
|
||||
+ mdio {
|
||||
+ compatible = "snps,dwmac-mdio";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ /* ICPlus IP101A/G Ethernet PHY (vendor_id=0x0243, model_id=0x0c54) */
|
||||
+ eth_phy0: ethernet-phy@0 {
|
||||
+ /* compatible = "ethernet-phy-id0243.0c54";*/
|
||||
+ max-speed = <100>;
|
||||
+ reg = <0>;
|
||||
+
|
||||
+ reset-assert-us = <10000>;
|
||||
+ reset-deassert-us = <10000>;
|
||||
+ reset-gpios = <&gpio GPIOZ_5 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+/* Internal I2C bus (on CPU module) */
|
||||
+&i2c1 {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&i2c1_z_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+
|
||||
+ /* RTC */
|
||||
+ pcf8563: pcf8563@51 {
|
||||
+ compatible = "nxp,pcf8563";
|
||||
+ reg = <0x51>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+/* Peripheral I2C bus (on motherboard) */
|
||||
+&i2c_AO {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&i2c_ao_sck_10_pins>, <&i2c_ao_sda_11_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+&pwm_ab {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&pwm_a_x20_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+/* wifi module */
|
||||
+&sd_emmc_b {
|
||||
+ status = "okay";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ pinctrl-0 = <&sdio_pins>;
|
||||
+ pinctrl-1 = <&sdio_clk_gate_pins>;
|
||||
+ pinctrl-names = "default", "clk-gate";
|
||||
+
|
||||
+ bus-width = <4>;
|
||||
+ cap-sd-highspeed;
|
||||
+ max-frequency = <50000000>;
|
||||
+ disable-wp;
|
||||
+
|
||||
+ mmc-pwrseq = <&sdio_pwrseq>;
|
||||
+
|
||||
+ vmmc-supply = <&vddao_3v3>;
|
||||
+ vqmmc-supply = <&vddio_boot>;
|
||||
+};
|
||||
+
|
||||
+/* emmc storage */
|
||||
+&sd_emmc_c {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
|
||||
+ pinctrl-1 = <&emmc_clk_gate_pins>;
|
||||
+ pinctrl-names = "default", "clk-gate";
|
||||
+
|
||||
+ bus-width = <8>;
|
||||
+ cap-mmc-highspeed;
|
||||
+ max-frequency = <200000000>;
|
||||
+ non-removable;
|
||||
+ disable-wp;
|
||||
+ mmc-ddr-1_8v;
|
||||
+ mmc-hs200-1_8v;
|
||||
+
|
||||
+ mmc-pwrseq = <&emmc_pwrseq>;
|
||||
+
|
||||
+ vmmc-supply = <&vcc_3v3>;
|
||||
+ vqmmc-supply = <&vccq_1v8>;
|
||||
+};
|
||||
+
|
||||
+/* UART Bluetooth */
|
||||
+&uart_B {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&uart_b_z_pins>, <&uart_b_z_cts_rts_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ uart-has-rtscts;
|
||||
+};
|
||||
+
|
||||
+/* UART Console */
|
||||
+&uart_AO {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&uart_ao_a_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+/* UART Wireless module */
|
||||
+&uart_AO_B {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&uart_ao_b_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+&usb {
|
||||
+ status = "okay";
|
||||
+ phy-supply = <&usb_pwr>;
|
||||
+};
|
||||
+
|
||||
+&spicc1 {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&spi1_x_pins>, <&spi1_ss0_x_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+&gpio {
|
||||
+ gpio-line-names =
|
||||
+ "", "", "", "", "", // 0 - 4
|
||||
+ "", "", "", "", "", // 5 - 9
|
||||
+ "UserButton", "", "", "", "", // 10 - 14
|
||||
+ "", "", "", "", "", // 15 - 19
|
||||
+ "", "", "", "", "", // 20 - 24
|
||||
+ "", "LedRed", "LedGreen", "Output3", "Output2", // 25 - 29
|
||||
+ "Output1", "", "", "", "", // 30 - 34
|
||||
+ "", "ZigBeeBOOT", "", "", "", // 35 - 39
|
||||
+ "1Wire", "ZigBeeRESET", "", "Input4", "Input3", // 40 - 44
|
||||
+ "Input2", "Input1", "", "", "", // 45 - 49
|
||||
+ "", "", "", "", "", // 50 - 54
|
||||
+ "", "", "", "", "", // 55 - 59
|
||||
+ "", "", "", "", "", // 60 - 64
|
||||
+ "", "", "", "", "", // 65 - 69
|
||||
+ "", "", "", "", "", // 70 - 74
|
||||
+ "", "", "", "", "", // 75 - 79
|
||||
+ "", "", "", "", "", // 80 - 84
|
||||
+ "", ""; // 85-86
|
||||
+};
|
||||
+
|
||||
+&cpu0 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
+
|
||||
+&cpu1 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
+
|
||||
+&cpu2 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
+
|
||||
+&cpu3 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -0,0 +1,867 @@
|
||||
From 1307b424375ca85d1f3b021396c55f77dbeaf924 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 10 Aug 2022 13:40:37 +0300
|
||||
Subject: [PATCH 1/2] arm64: dts: meson-axg: add support for JetHub D1p (j110)
|
||||
|
||||
- add support for JetHome JetHub D1p (https://jethome.ru/d1p) is a home
|
||||
automation controller with the following features:
|
||||
- DIN Rail Mounting
|
||||
- Amlogic A113X (ARM Cortex-A53) quad-core up to 1.5GHz
|
||||
- no video out
|
||||
- 1/2/4GB LPDDR4
|
||||
- 8/16/32GB eMMC flash
|
||||
- 1 x USB 2.0
|
||||
- 1 x 10/100Mbps ethernet
|
||||
- WiFi / Bluetooth Realtek 8822CS or similar IEEE 802.11a/b/g/n/ac
|
||||
- TI CC2652P1 Zigbee Wireless Module with up to 20dBm output power
|
||||
and Zigbee 3.0 support.
|
||||
- 2 x gpio LEDS
|
||||
- GPIO user Button
|
||||
- 1 x 1-Wire
|
||||
- 2 x RS-485
|
||||
- 4 x dry contact digital GPIO inputs
|
||||
- 3 x relay GPIO outputs
|
||||
- DC source with a voltage of 9 to 56 V / Active POE
|
||||
|
||||
- unify device tree files for JetHub D1/D1p devices
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
---
|
||||
arch/arm64/boot/dts/amlogic/Makefile | 2 +
|
||||
.../amlogic/meson-axg-jethome-jethub-j100.dts | 338 +----------------
|
||||
.../meson-axg-jethome-jethub-j110-rev-2.dts | 37 ++
|
||||
.../meson-axg-jethome-jethub-j110-rev-3.dts | 27 ++
|
||||
.../meson-axg-jethome-jethub-j1xx.dtsi | 351 ++++++++++++++++++
|
||||
5 files changed, 421 insertions(+), 334 deletions(-)
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
index 8773211df50e..33e9c96af099 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/Makefile
|
||||
+++ b/arch/arm64/boot/dts/amlogic/Makefile
|
||||
@@ -1,6 +1,8 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-a1-ad401.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-axg-jethome-jethub-j100.dtb
|
||||
+dtb-$(CONFIG_ARCH_MESON) += meson-axg-jethome-jethub-j110-rev-2.dtb
|
||||
+dtb-$(CONFIG_ARCH_MESON) += meson-axg-jethome-jethub-j110-rev-3.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-axg-s400.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12a-radxa-zero.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12a-sei510.dtb
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
index 8b0d586aa84e..b2d6ba660914 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
@@ -1,270 +1,29 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
- * Copyright (c) 2021 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
- * Copyright (c) 2020 JetHome
|
||||
- * Author: Aleksandr Kazantsev <ak@tvip.ru>
|
||||
- * Author: Alexey Shevelkin <ash@tvip.ru>
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
* Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
-#include "meson-axg.dtsi"
|
||||
-#include <dt-bindings/input/input.h>
|
||||
-#include <dt-bindings/thermal/thermal.h>
|
||||
+#include "meson-axg-jethome-jethub-j1xx.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "jethome,jethub-j100", "amlogic,a113d", "amlogic,meson-axg";
|
||||
- model = "JetHome JetHub J100";
|
||||
- aliases {
|
||||
- serial0 = &uart_AO; /* Console */
|
||||
- serial2 = &uart_AO_B; /* External UART (Wireless Module) */
|
||||
- ethernet0 = ðmac;
|
||||
- };
|
||||
-
|
||||
- chosen {
|
||||
- stdout-path = "serial0:115200n8";
|
||||
- };
|
||||
+ model = "JetHome JetHub D1 (J100)";
|
||||
|
||||
/* 1024MB RAM */
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x0 0x0 0x40000000>;
|
||||
};
|
||||
-
|
||||
- reserved-memory {
|
||||
- linux,cma {
|
||||
- size = <0x0 0x400000>;
|
||||
- };
|
||||
- };
|
||||
-
|
||||
- emmc_pwrseq: emmc-pwrseq {
|
||||
- compatible = "mmc-pwrseq-emmc";
|
||||
- reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
|
||||
- };
|
||||
-
|
||||
- vcc_3v3: regulator-vcc_3v3 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VCC_3V3";
|
||||
- regulator-min-microvolt = <3300000>;
|
||||
- regulator-max-microvolt = <3300000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vcc_5v: regulator-vcc_5v {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VCC5V";
|
||||
- regulator-min-microvolt = <5000000>;
|
||||
- regulator-max-microvolt = <5000000>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vddao_3v3: regulator-vddao_3v3 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VDDAO_3V3";
|
||||
- regulator-min-microvolt = <3300000>;
|
||||
- regulator-max-microvolt = <3300000>;
|
||||
- vin-supply = <&vcc_5v>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vddio_ao18: regulator-vddio_ao18 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VDDIO_AO18";
|
||||
- regulator-min-microvolt = <1800000>;
|
||||
- regulator-max-microvolt = <1800000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vddio_boot: regulator-vddio_boot {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VDDIO_BOOT";
|
||||
- regulator-min-microvolt = <3300000>;
|
||||
- regulator-max-microvolt = <3300000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- vccq_1v8: regulator-vccq_1v8 {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "VCCQ_1V8";
|
||||
- regulator-min-microvolt = <1800000>;
|
||||
- regulator-max-microvolt = <1800000>;
|
||||
- vin-supply = <&vddao_3v3>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- usb_pwr: regulator-usb_pwr {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "USB_PWR";
|
||||
- regulator-min-microvolt = <5000000>;
|
||||
- regulator-max-microvolt = <5000000>;
|
||||
- vin-supply = <&vcc_5v>;
|
||||
- regulator-always-on;
|
||||
- };
|
||||
-
|
||||
- sdio_pwrseq: sdio-pwrseq {
|
||||
- compatible = "mmc-pwrseq-simple";
|
||||
- reset-gpios = <&gpio GPIOX_7 GPIO_ACTIVE_LOW>;
|
||||
- clocks = <&wifi32k>;
|
||||
- clock-names = "ext_clock";
|
||||
- };
|
||||
-
|
||||
- wifi32k: wifi32k {
|
||||
- compatible = "pwm-clock";
|
||||
- #clock-cells = <0>;
|
||||
- clock-frequency = <32768>;
|
||||
- pwms = <&pwm_ab 0 30518 0>; /* PWM_A at 32.768KHz */
|
||||
- };
|
||||
-
|
||||
- thermal-zones {
|
||||
- cpu_thermal: cpu-thermal {
|
||||
- polling-delay-passive = <250>;
|
||||
- polling-delay = <1000>;
|
||||
- thermal-sensors = <&scpi_sensors 0>;
|
||||
- trips {
|
||||
- cpu_passive: cpu-passive {
|
||||
- temperature = <70000>; /* millicelsius */
|
||||
- hysteresis = <2000>; /* millicelsius */
|
||||
- type = "passive";
|
||||
- };
|
||||
-
|
||||
- cpu_hot: cpu-hot {
|
||||
- temperature = <80000>; /* millicelsius */
|
||||
- hysteresis = <2000>; /* millicelsius */
|
||||
- type = "hot";
|
||||
- };
|
||||
-
|
||||
- cpu_critical: cpu-critical {
|
||||
- temperature = <100000>; /* millicelsius */
|
||||
- hysteresis = <2000>; /* millicelsius */
|
||||
- type = "critical";
|
||||
- };
|
||||
- };
|
||||
-
|
||||
- cpu_cooling_maps: cooling-maps {
|
||||
- map0 {
|
||||
- trip = <&cpu_passive>;
|
||||
- cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
- };
|
||||
-
|
||||
- map1 {
|
||||
- trip = <&cpu_hot>;
|
||||
- cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
- <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
- };
|
||||
- };
|
||||
- };
|
||||
- };
|
||||
-
|
||||
- onewire {
|
||||
- compatible = "w1-gpio";
|
||||
- gpios = <&gpio GPIOA_14 GPIO_ACTIVE_HIGH>;
|
||||
- #gpio-cells = <1>;
|
||||
- };
|
||||
-};
|
||||
-
|
||||
-&efuse {
|
||||
- sn: sn@32 {
|
||||
- reg = <0x32 0x20>;
|
||||
- };
|
||||
-
|
||||
- eth_mac: eth_mac@0 {
|
||||
- reg = <0x0 0x6>;
|
||||
- };
|
||||
-
|
||||
- bt_mac: bt_mac@6 {
|
||||
- reg = <0x6 0x6>;
|
||||
- };
|
||||
-
|
||||
- wifi_mac: wifi_mac@c {
|
||||
- reg = <0xc 0x6>;
|
||||
- };
|
||||
-
|
||||
- bid: bid@12 {
|
||||
- reg = <0x12 0x20>;
|
||||
- };
|
||||
-};
|
||||
-
|
||||
-ðmac {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <ð_rmii_x_pins>;
|
||||
- pinctrl-names = "default";
|
||||
- phy-handle = <ð_phy0>;
|
||||
- phy-mode = "rmii";
|
||||
-
|
||||
- mdio {
|
||||
- compatible = "snps,dwmac-mdio";
|
||||
- #address-cells = <1>;
|
||||
- #size-cells = <0>;
|
||||
-
|
||||
- /* ICPlus IP101A/G Ethernet PHY (vendor_id=0x0243, model_id=0x0c54) */
|
||||
- eth_phy0: ethernet-phy@0 {
|
||||
- /* compatible = "ethernet-phy-id0243.0c54";*/
|
||||
- max-speed = <100>;
|
||||
- reg = <0>;
|
||||
-
|
||||
- reset-assert-us = <10000>;
|
||||
- reset-deassert-us = <10000>;
|
||||
- reset-gpios = <&gpio GPIOZ_5 GPIO_ACTIVE_LOW>;
|
||||
- };
|
||||
- };
|
||||
-};
|
||||
-
|
||||
-/* Internal I2C bus (on CPU module) */
|
||||
-&i2c1 {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&i2c1_z_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-
|
||||
- /* RTC */
|
||||
- pcf8563: pcf8563@51 {
|
||||
- compatible = "nxp,pcf8563";
|
||||
- reg = <0x51>;
|
||||
- status = "okay";
|
||||
- };
|
||||
};
|
||||
|
||||
-/* Peripheral I2C bus (on motherboard) */
|
||||
-&i2c_AO {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&i2c_ao_sck_10_pins>, <&i2c_ao_sda_11_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-&pwm_ab {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&pwm_a_x20_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
|
||||
/* wifi module */
|
||||
&sd_emmc_b {
|
||||
- status = "okay";
|
||||
- #address-cells = <1>;
|
||||
- #size-cells = <0>;
|
||||
-
|
||||
- pinctrl-0 = <&sdio_pins>;
|
||||
- pinctrl-1 = <&sdio_clk_gate_pins>;
|
||||
- pinctrl-names = "default", "clk-gate";
|
||||
-
|
||||
- bus-width = <4>;
|
||||
- cap-sd-highspeed;
|
||||
- max-frequency = <50000000>;
|
||||
non-removable;
|
||||
- disable-wp;
|
||||
-
|
||||
- mmc-pwrseq = <&sdio_pwrseq>;
|
||||
-
|
||||
- vmmc-supply = <&vddao_3v3>;
|
||||
- vqmmc-supply = <&vddio_boot>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
@@ -272,99 +31,10 @@ brcmf: wifi@1 {
|
||||
};
|
||||
};
|
||||
|
||||
-/* emmc storage */
|
||||
-&sd_emmc_c {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
|
||||
- pinctrl-1 = <&emmc_clk_gate_pins>;
|
||||
- pinctrl-names = "default", "clk-gate";
|
||||
-
|
||||
- bus-width = <8>;
|
||||
- cap-mmc-highspeed;
|
||||
- max-frequency = <200000000>;
|
||||
- non-removable;
|
||||
- disable-wp;
|
||||
- mmc-ddr-1_8v;
|
||||
- mmc-hs200-1_8v;
|
||||
-
|
||||
- mmc-pwrseq = <&emmc_pwrseq>;
|
||||
-
|
||||
- vmmc-supply = <&vcc_3v3>;
|
||||
- vqmmc-supply = <&vccq_1v8>;
|
||||
-};
|
||||
-
|
||||
/* UART Bluetooth */
|
||||
&uart_B {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&uart_b_z_pins>, <&uart_b_z_cts_rts_pins>;
|
||||
- pinctrl-names = "default";
|
||||
- uart-has-rtscts;
|
||||
-
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
shutdown-gpios = <&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
-
|
||||
-/* UART Console */
|
||||
-&uart_AO {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&uart_ao_a_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-/* UART Wireless module */
|
||||
-&uart_AO_B {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&uart_ao_b_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-&usb {
|
||||
- status = "okay";
|
||||
- phy-supply = <&usb_pwr>;
|
||||
-};
|
||||
-
|
||||
-&spicc1 {
|
||||
- status = "okay";
|
||||
- pinctrl-0 = <&spi1_x_pins>, <&spi1_ss0_x_pins>;
|
||||
- pinctrl-names = "default";
|
||||
-};
|
||||
-
|
||||
-&gpio {
|
||||
- gpio-line-names =
|
||||
- "", "", "", "", "", // 0 - 4
|
||||
- "", "", "", "", "", // 5 - 9
|
||||
- "UserButton", "", "", "", "", // 10 - 14
|
||||
- "", "", "", "", "", // 15 - 19
|
||||
- "", "", "", "", "", // 20 - 24
|
||||
- "", "LedRed", "LedGreen", "Output3", "Output2", // 25 - 29
|
||||
- "Output1", "", "", "", "", // 30 - 34
|
||||
- "", "ZigBeeBOOT", "", "", "", // 35 - 39
|
||||
- "1Wire", "ZigBeeRESET", "", "Input4", "Input3", // 40 - 44
|
||||
- "Input2", "Input1", "", "", "", // 45 - 49
|
||||
- "", "", "", "", "", // 50 - 54
|
||||
- "", "", "", "", "", // 55 - 59
|
||||
- "", "", "", "", "", // 60 - 64
|
||||
- "", "", "", "", "", // 65 - 69
|
||||
- "", "", "", "", "", // 70 - 74
|
||||
- "", "", "", "", "", // 75 - 79
|
||||
- "", "", "", "", "", // 80 - 84
|
||||
- "", ""; // 85-86
|
||||
-};
|
||||
-
|
||||
-&cpu0 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
-
|
||||
-&cpu1 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
-
|
||||
-&cpu2 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
-
|
||||
-&cpu3 {
|
||||
- #cooling-cells = <2>;
|
||||
-};
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts
|
||||
new file mode 100644
|
||||
index 000000000000..0062667c4f65
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dts
|
||||
@@ -0,0 +1,37 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
+ * Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "meson-axg-jethome-jethub-j1xx.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "jethome,jethub-j110", "amlogic,a113d", "amlogic,meson-axg";
|
||||
+ model = "JetHome JetHub D1p (J110) HW rev.2";
|
||||
+
|
||||
+ /* 2GiB or 4GiB RAM */
|
||||
+ memory@0 {
|
||||
+ device_type = "memory";
|
||||
+ reg = <0x0 0x0 0x0 0x80000000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+
|
||||
+/* wifi module */
|
||||
+&sd_emmc_b {
|
||||
+ broken-cd;/* cd-gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;*/
|
||||
+};
|
||||
+
|
||||
+/* UART Bluetooth */
|
||||
+&uart_B {
|
||||
+ bluetooth {
|
||||
+ compatible = "realtek,rtl8822cs-bt";
|
||||
+ enable-gpios = <&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
|
||||
+ host-wake-gpios = <&gpio GPIOZ_8 GPIO_ACTIVE_HIGH>;
|
||||
+ device-wake-gpios = <&gpio GPIOZ_6 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts
|
||||
new file mode 100644
|
||||
index 000000000000..c2d22b00c1cd
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dts
|
||||
@@ -0,0 +1,27 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
+ * Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "meson-axg-jethome-jethub-j1xx.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "jethome,jethub-j110", "amlogic,a113d", "amlogic,meson-axg";
|
||||
+ model = "JetHome JetHub D1p (J110) Hw rev.3";
|
||||
+
|
||||
+ /* 2GiB or 4GiB RAM */
|
||||
+ memory@0 {
|
||||
+ device_type = "memory";
|
||||
+ reg = <0x0 0x0 0x0 0x80000000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+
|
||||
+/* wifi module */
|
||||
+&sd_emmc_b {
|
||||
+ broken-cd;/* cd-gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;*/
|
||||
+};
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi
|
||||
new file mode 100644
|
||||
index 000000000000..5836b0030931
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j1xx.dtsi
|
||||
@@ -0,0 +1,351 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2022 Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Copyright (c) 2022 JetHome
|
||||
+ * Author: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
+ * Author: Aleksandr Kazantsev <ak@tvip.ru>
|
||||
+ * Author: Alexey Shevelkin <ash@tvip.ru>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "meson-axg.dtsi"
|
||||
+#include <dt-bindings/input/input.h>
|
||||
+#include <dt-bindings/thermal/thermal.h>
|
||||
+
|
||||
+/ {
|
||||
+ aliases {
|
||||
+ serial0 = &uart_AO; /* Console */
|
||||
+ serial2 = &uart_AO_B; /* External UART (Wireless Module) */
|
||||
+ ethernet0 = ðmac;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = "serial0:115200n8";
|
||||
+ };
|
||||
+
|
||||
+ reserved-memory {
|
||||
+ linux,cma {
|
||||
+ size = <0x0 0x400000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ emmc_pwrseq: emmc-pwrseq {
|
||||
+ compatible = "mmc-pwrseq-emmc";
|
||||
+ reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ vcc_3v3: regulator-vcc_3v3 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VCC_3V3";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vcc_5v: regulator-vcc_5v {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VCC5V";
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vddao_3v3: regulator-vddao_3v3 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VDDAO_3V3";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&vcc_5v>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vddio_ao18: regulator-vddio_ao18 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VDDIO_AO18";
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vddio_boot: regulator-vddio_boot {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VDDIO_BOOT";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vccq_1v8: regulator-vccq_1v8 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "VCCQ_1V8";
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ vin-supply = <&vddao_3v3>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ usb_pwr: regulator-usb_pwr {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "USB_PWR";
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ vin-supply = <&vcc_5v>;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ sdio_pwrseq: sdio-pwrseq {
|
||||
+ compatible = "mmc-pwrseq-simple";
|
||||
+ reset-gpios = <&gpio GPIOX_7 GPIO_ACTIVE_LOW>;
|
||||
+ clocks = <&wifi32k>;
|
||||
+ clock-names = "ext_clock";
|
||||
+ };
|
||||
+
|
||||
+ wifi32k: wifi32k {
|
||||
+ compatible = "pwm-clock";
|
||||
+ #clock-cells = <0>;
|
||||
+ clock-frequency = <32768>;
|
||||
+ pwms = <&pwm_ab 0 30518 0>; /* PWM_A at 32.768KHz */
|
||||
+ };
|
||||
+
|
||||
+ thermal-zones {
|
||||
+ cpu_thermal: cpu-thermal {
|
||||
+ polling-delay-passive = <250>;
|
||||
+ polling-delay = <1000>;
|
||||
+ thermal-sensors = <&scpi_sensors 0>;
|
||||
+ trips {
|
||||
+ cpu_passive: cpu-passive {
|
||||
+ temperature = <70000>; /* millicelsius */
|
||||
+ hysteresis = <2000>; /* millicelsius */
|
||||
+ type = "passive";
|
||||
+ };
|
||||
+
|
||||
+ cpu_hot: cpu-hot {
|
||||
+ temperature = <80000>; /* millicelsius */
|
||||
+ hysteresis = <2000>; /* millicelsius */
|
||||
+ type = "hot";
|
||||
+ };
|
||||
+
|
||||
+ cpu_critical: cpu-critical {
|
||||
+ temperature = <100000>; /* millicelsius */
|
||||
+ hysteresis = <2000>; /* millicelsius */
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ cpu_cooling_maps: cooling-maps {
|
||||
+ map0 {
|
||||
+ trip = <&cpu_passive>;
|
||||
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+
|
||||
+ map1 {
|
||||
+ trip = <&cpu_hot>;
|
||||
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ onewire {
|
||||
+ compatible = "w1-gpio";
|
||||
+ gpios = <&gpio GPIOA_14 GPIO_ACTIVE_HIGH>;
|
||||
+ #gpio-cells = <1>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&efuse {
|
||||
+ sn: sn@32 {
|
||||
+ reg = <0x32 0x20>;
|
||||
+ };
|
||||
+
|
||||
+ eth_mac: eth_mac@0 {
|
||||
+ reg = <0x0 0x6>;
|
||||
+ };
|
||||
+
|
||||
+ bt_mac: bt_mac@6 {
|
||||
+ reg = <0x6 0x6>;
|
||||
+ };
|
||||
+
|
||||
+ wifi_mac: wifi_mac@c {
|
||||
+ reg = <0xc 0x6>;
|
||||
+ };
|
||||
+
|
||||
+ bid: bid@12 {
|
||||
+ reg = <0x12 0x20>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+ðmac {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <ð_rmii_x_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ phy-handle = <ð_phy0>;
|
||||
+ phy-mode = "rmii";
|
||||
+
|
||||
+ mdio {
|
||||
+ compatible = "snps,dwmac-mdio";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ /* ICPlus IP101A/G Ethernet PHY (vendor_id=0x0243, model_id=0x0c54) */
|
||||
+ eth_phy0: ethernet-phy@0 {
|
||||
+ /* compatible = "ethernet-phy-id0243.0c54";*/
|
||||
+ max-speed = <100>;
|
||||
+ reg = <0>;
|
||||
+
|
||||
+ reset-assert-us = <10000>;
|
||||
+ reset-deassert-us = <10000>;
|
||||
+ reset-gpios = <&gpio GPIOZ_5 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+/* Internal I2C bus (on CPU module) */
|
||||
+&i2c1 {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&i2c1_z_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+
|
||||
+ /* RTC */
|
||||
+ pcf8563: pcf8563@51 {
|
||||
+ compatible = "nxp,pcf8563";
|
||||
+ reg = <0x51>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+/* Peripheral I2C bus (on motherboard) */
|
||||
+&i2c_AO {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&i2c_ao_sck_10_pins>, <&i2c_ao_sda_11_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+&pwm_ab {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&pwm_a_x20_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+/* wifi module */
|
||||
+&sd_emmc_b {
|
||||
+ status = "okay";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ pinctrl-0 = <&sdio_pins>;
|
||||
+ pinctrl-1 = <&sdio_clk_gate_pins>;
|
||||
+ pinctrl-names = "default", "clk-gate";
|
||||
+
|
||||
+ bus-width = <4>;
|
||||
+ cap-sd-highspeed;
|
||||
+ max-frequency = <50000000>;
|
||||
+ disable-wp;
|
||||
+
|
||||
+ mmc-pwrseq = <&sdio_pwrseq>;
|
||||
+
|
||||
+ vmmc-supply = <&vddao_3v3>;
|
||||
+ vqmmc-supply = <&vddio_boot>;
|
||||
+};
|
||||
+
|
||||
+/* emmc storage */
|
||||
+&sd_emmc_c {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
|
||||
+ pinctrl-1 = <&emmc_clk_gate_pins>;
|
||||
+ pinctrl-names = "default", "clk-gate";
|
||||
+
|
||||
+ bus-width = <8>;
|
||||
+ cap-mmc-highspeed;
|
||||
+ max-frequency = <200000000>;
|
||||
+ non-removable;
|
||||
+ disable-wp;
|
||||
+ mmc-ddr-1_8v;
|
||||
+ mmc-hs200-1_8v;
|
||||
+
|
||||
+ mmc-pwrseq = <&emmc_pwrseq>;
|
||||
+
|
||||
+ vmmc-supply = <&vcc_3v3>;
|
||||
+ vqmmc-supply = <&vccq_1v8>;
|
||||
+};
|
||||
+
|
||||
+/* UART Bluetooth */
|
||||
+&uart_B {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&uart_b_z_pins>, <&uart_b_z_cts_rts_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ uart-has-rtscts;
|
||||
+};
|
||||
+
|
||||
+/* UART Console */
|
||||
+&uart_AO {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&uart_ao_a_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+/* UART Wireless module */
|
||||
+&uart_AO_B {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&uart_ao_b_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+&usb {
|
||||
+ status = "okay";
|
||||
+ phy-supply = <&usb_pwr>;
|
||||
+};
|
||||
+
|
||||
+&spicc1 {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&spi1_x_pins>, <&spi1_ss0_x_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+};
|
||||
+
|
||||
+&gpio {
|
||||
+ gpio-line-names =
|
||||
+ "", "", "", "", "", // 0 - 4
|
||||
+ "", "", "", "", "", // 5 - 9
|
||||
+ "UserButton", "", "", "", "", // 10 - 14
|
||||
+ "", "", "", "", "", // 15 - 19
|
||||
+ "", "", "", "", "", // 20 - 24
|
||||
+ "", "LedRed", "LedGreen", "Output3", "Output2", // 25 - 29
|
||||
+ "Output1", "", "", "", "", // 30 - 34
|
||||
+ "", "ZigBeeBOOT", "", "", "", // 35 - 39
|
||||
+ "1Wire", "ZigBeeRESET", "", "Input4", "Input3", // 40 - 44
|
||||
+ "Input2", "Input1", "", "", "", // 45 - 49
|
||||
+ "", "", "", "", "", // 50 - 54
|
||||
+ "", "", "", "", "", // 55 - 59
|
||||
+ "", "", "", "", "", // 60 - 64
|
||||
+ "", "", "", "", "", // 65 - 69
|
||||
+ "", "", "", "", "", // 70 - 74
|
||||
+ "", "", "", "", "", // 75 - 79
|
||||
+ "", "", "", "", "", // 80 - 84
|
||||
+ "", ""; // 85-86
|
||||
+};
|
||||
+
|
||||
+&cpu0 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
+
|
||||
+&cpu1 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
+
|
||||
+&cpu2 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
+
|
||||
+&cpu3 {
|
||||
+ #cooling-cells = <2>;
|
||||
+};
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -1,47 +0,0 @@
|
||||
From 2428abb8dd4bc3c176a91a6d53d13b8b0cc67e24 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 15 Jun 2022 12:47:23 +0300
|
||||
Subject: [PATCH] arm64: meson: add JetHub D1p device
|
||||
|
||||
Add support for JetHub D1p variation of D1 series home automation controller.
|
||||
---
|
||||
.../dts/amlogic/meson-axg-jethome-jethub-j100.dts | 13 +++++++------
|
||||
1 file changed, 7 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
index 8b0d586aa84e..f46b0ec9ec13 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dts
|
||||
@@ -258,18 +258,14 @@ &sd_emmc_b {
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
max-frequency = <50000000>;
|
||||
- non-removable;
|
||||
disable-wp;
|
||||
+ keep-power-in-suspend;
|
||||
+ broken-cd;/* cd-gpios = <&gpio GPIOAO_3 GPIO_ACTIVE_LOW>;*/
|
||||
|
||||
mmc-pwrseq = <&sdio_pwrseq>;
|
||||
|
||||
vmmc-supply = <&vddao_3v3>;
|
||||
vqmmc-supply = <&vddio_boot>;
|
||||
-
|
||||
- brcmf: wifi@1 {
|
||||
- reg = <1>;
|
||||
- compatible = "brcm,bcm4329-fmac";
|
||||
- };
|
||||
};
|
||||
|
||||
/* emmc storage */
|
||||
@@ -368,3 +364,8 @@ &cpu2 {
|
||||
&cpu3 {
|
||||
#cooling-cells = <2>;
|
||||
};
|
||||
+
|
||||
+&saradc {
|
||||
+ status = "okay";
|
||||
+ vref-supply = <&vddio_ao18>;
|
||||
+};
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -0,0 +1,29 @@
|
||||
From 08b0c478ad097372ab668f03db3890545aaca59d Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 10 Aug 2022 13:51:46 +0300
|
||||
Subject: [PATCH 2/2] dt-bindings: arm: amlogic: add bindings for Jethub D1p
|
||||
(j110)
|
||||
|
||||
JetHome JetHub D1p is a home automation controller, modification
|
||||
of JetHub D1 based on Amlogic A113X
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
---
|
||||
Documentation/devicetree/bindings/arm/amlogic.yaml | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
|
||||
index 61a6cabb375b..9ac73e961146 100644
|
||||
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
|
||||
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
|
||||
@@ -136,6 +136,7 @@ properties:
|
||||
- enum:
|
||||
- amlogic,s400
|
||||
- jethome,jethub-j100
|
||||
+ - jethome,jethub-j110
|
||||
- const: amlogic,a113d
|
||||
- const: amlogic,meson-axg
|
||||
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -1,65 +0,0 @@
|
||||
From b47c9e9c9cba1c03fd8d99cca29989f3bde1c83a Mon Sep 17 00:00:00 2001
|
||||
From: root <root@homeserver.msync.work>
|
||||
Date: Tue, 24 May 2022 16:43:18 +0300
|
||||
Subject: [PATCH] Overlay d1plus
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/amlogic/overlay/Makefile | 3 ++-
|
||||
.../dts/amlogic/overlay/jethub-d1plus.dts | 23 +++++++++++++++++++
|
||||
2 files changed, 25 insertions(+), 1 deletion(-)
|
||||
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/jethub-d1plus.dts
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/overlay/Makefile b/arch/arm64/boot/dts/amlogic/overlay/Makefile
|
||||
index 8630fd1a182..bcc8130119d 100644
|
||||
--- a/arch/arm64/boot/dts/amlogic/overlay/Makefile
|
||||
+++ b/arch/arm64/boot/dts/amlogic/overlay/Makefile
|
||||
@@ -5,7 +5,8 @@ dtbo-$(CONFIG_ARCH_MESON) += \
|
||||
meson-uartA.dtbo \
|
||||
meson-uartC.dtbo \
|
||||
meson-w1-gpio.dtbo \
|
||||
- meson-w1AB-gpio.dtbo
|
||||
+ meson-w1AB-gpio.dtbo \
|
||||
+ jethub-d1plus.dtbo
|
||||
|
||||
scr-$(CONFIG_ARCH_MESON) += \
|
||||
meson-fixup.scr
|
||||
diff --git a/arch/arm64/boot/dts/amlogic/overlay/jethub-d1plus.dts b/arch/arm64/boot/dts/amlogic/overlay/jethub-d1plus.dts
|
||||
new file mode 100644
|
||||
index 00000000000..a5ea7e98622
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/amlogic/overlay/jethub-d1plus.dts
|
||||
@@ -0,0 +1,23 @@
|
||||
+/dts-v1/;
|
||||
+/plugin/;
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "jethome,jethub-j100";
|
||||
+ fragment@0 {
|
||||
+ target-path = "/soc/bus@ffd00000/serial@23000";
|
||||
+ __overlay__ {
|
||||
+ /delete-node/ bluetooth;
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
+ target-path = "/soc/bus@ffd00000/serial@23000";
|
||||
+ __overlay__ {
|
||||
+ bluetooth {
|
||||
+ compatible = "realtek,rtl8822cs-bt";
|
||||
+ enable-gpios = <&gpio 7 0>;
|
||||
+ /* host-wake-gpios = <&gpio 8 0>;*/
|
||||
+ device-wake-gpios = <&gpio 6 0>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
2.30.2
|
||||
|
||||
|
||||
+ bluetooth {
|
||||
+ compatible = "realtek,rtl8822cs-bt";
|
||||
+ enable-gpios = <&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
|
||||
+ /* host-wake-gpios = <&gpio GPIOAO_8 GPIO_ACTIVE_HIGH>;*/
|
||||
+ device-wake-gpios = <&gpio GPIOZ_6 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
};
|
||||
@ -1,123 +0,0 @@
|
||||
From 772a67bd3eaa2f626a19c31b1332b3e4ee377291 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 20 Apr 2022 20:25:10 +0300
|
||||
Subject: [PATCH 1/6] clk: meson: add minimal driver for axg-ao clocks
|
||||
|
||||
Add minimal driver AO clocks on meson AXG family. Only ADC related clocks
|
||||
are supported.
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Reviewed-by: Sean Anderson <seanga2@gmail.com>
|
||||
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
|
||||
---
|
||||
drivers/clk/meson/Makefile | 1 +
|
||||
drivers/clk/meson/axg-ao.c | 86 ++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 87 insertions(+)
|
||||
create mode 100644 drivers/clk/meson/axg-ao.c
|
||||
|
||||
diff --git a/drivers/clk/meson/Makefile b/drivers/clk/meson/Makefile
|
||||
index b9c6bd66cf..a486b13e9c 100644
|
||||
--- a/drivers/clk/meson/Makefile
|
||||
+++ b/drivers/clk/meson/Makefile
|
||||
@@ -5,5 +5,6 @@
|
||||
|
||||
obj-$(CONFIG_CLK_MESON_GX) += gxbb.o
|
||||
obj-$(CONFIG_CLK_MESON_AXG) += axg.o
|
||||
+obj-$(CONFIG_CLK_MESON_AXG) += axg-ao.o
|
||||
obj-$(CONFIG_CLK_MESON_G12A) += g12a.o
|
||||
obj-$(CONFIG_CLK_MESON_G12A) += g12a-ao.o
|
||||
diff --git a/drivers/clk/meson/axg-ao.c b/drivers/clk/meson/axg-ao.c
|
||||
new file mode 100644
|
||||
index 0000000000..311ffc1cca
|
||||
--- /dev/null
|
||||
+++ b/drivers/clk/meson/axg-ao.c
|
||||
@@ -0,0 +1,86 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0+
|
||||
+
|
||||
+#include <common.h>
|
||||
+#include <log.h>
|
||||
+#include <asm/io.h>
|
||||
+#include <clk-uclass.h>
|
||||
+#include <dm.h>
|
||||
+#include <regmap.h>
|
||||
+#include <syscon.h>
|
||||
+#include <dt-bindings/clock/axg-aoclkc.h>
|
||||
+
|
||||
+#include "clk_meson.h"
|
||||
+
|
||||
+struct meson_clk {
|
||||
+ struct regmap *map;
|
||||
+};
|
||||
+
|
||||
+#define AO_CLK_GATE0 0x40
|
||||
+#define AO_SAR_CLK 0x90
|
||||
+
|
||||
+static struct meson_gate gates[] = {
|
||||
+ MESON_GATE(CLKID_AO_SAR_ADC, AO_CLK_GATE0, 7),
|
||||
+ MESON_GATE(CLKID_AO_SAR_ADC_CLK, AO_SAR_CLK, 7),
|
||||
+};
|
||||
+
|
||||
+static int meson_set_gate(struct clk *clk, bool on)
|
||||
+{
|
||||
+ struct meson_clk *priv = dev_get_priv(clk->dev);
|
||||
+ struct meson_gate *gate;
|
||||
+
|
||||
+ gate = &gates[clk->id];
|
||||
+
|
||||
+ regmap_update_bits(priv->map, gate->reg,
|
||||
+ BIT(gate->bit), on ? BIT(gate->bit) : 0);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int meson_clk_enable(struct clk *clk)
|
||||
+{
|
||||
+ return meson_set_gate(clk, true);
|
||||
+}
|
||||
+
|
||||
+static int meson_clk_disable(struct clk *clk)
|
||||
+{
|
||||
+ return meson_set_gate(clk, false);
|
||||
+}
|
||||
+
|
||||
+static int meson_clk_probe(struct udevice *dev)
|
||||
+{
|
||||
+ struct meson_clk *priv = dev_get_priv(dev);
|
||||
+
|
||||
+ priv->map = syscon_node_to_regmap(dev_ofnode(dev_get_parent(dev)));
|
||||
+ if (IS_ERR(priv->map))
|
||||
+ return PTR_ERR(priv->map);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int meson_clk_request(struct clk *clk)
|
||||
+{
|
||||
+ if (clk->id >= ARRAY_SIZE(gates))
|
||||
+ return -ENOENT;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static struct clk_ops meson_clk_ops = {
|
||||
+ .disable = meson_clk_disable,
|
||||
+ .enable = meson_clk_enable,
|
||||
+ .request = meson_clk_request,
|
||||
+};
|
||||
+
|
||||
+static const struct udevice_id meson_clk_ids[] = {
|
||||
+ { .compatible = "amlogic,meson-axg-aoclkc" },
|
||||
+ { }
|
||||
+};
|
||||
+
|
||||
+U_BOOT_DRIVER(meson_clk_axg_ao) = {
|
||||
+ .name = "meson_clk_axg_ao",
|
||||
+ .id = UCLASS_CLK,
|
||||
+ .of_match = meson_clk_ids,
|
||||
+ .priv_auto = sizeof(struct meson_clk),
|
||||
+ .ops = &meson_clk_ops,
|
||||
+ .probe = meson_clk_probe,
|
||||
+};
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -1,29 +0,0 @@
|
||||
From 886996fb4a6aa6b698c06bf846d1078acddedd8a Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 20 Apr 2022 20:26:47 +0300
|
||||
Subject: [PATCH 2/6] clk: meson: fix driver name for g12a-ao clocks
|
||||
|
||||
Update the clk-g12a-ao driver from "axg" to "g12a"
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
|
||||
---
|
||||
drivers/clk/meson/g12a-ao.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/clk/meson/g12a-ao.c b/drivers/clk/meson/g12a-ao.c
|
||||
index 0148529e04..17b11eb52a 100644
|
||||
--- a/drivers/clk/meson/g12a-ao.c
|
||||
+++ b/drivers/clk/meson/g12a-ao.c
|
||||
@@ -73,7 +73,7 @@ static const struct udevice_id meson_clk_ids[] = {
|
||||
{ }
|
||||
};
|
||||
|
||||
-U_BOOT_DRIVER(meson_clk_axg) = {
|
||||
+U_BOOT_DRIVER(meson_clk_g12a_ao) = {
|
||||
.name = "meson_clk_g12a_ao",
|
||||
.id = UCLASS_CLK,
|
||||
.of_match = meson_clk_ids,
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -1,55 +0,0 @@
|
||||
From feb1522d6c82d3bcd322a8a68b5591c115fff1b1 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Fri, 22 Apr 2022 08:22:22 +0300
|
||||
Subject: [PATCH 3/6] clk: meson: update driver for g12a-ao clocks
|
||||
|
||||
Update g12a-ao clk driver:
|
||||
- move clk->id check to .request function
|
||||
- remove unnecessary check (gate->reg == 0)
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
---
|
||||
drivers/clk/meson/g12a-ao.c | 15 +++++++++------
|
||||
1 file changed, 9 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/meson/g12a-ao.c b/drivers/clk/meson/g12a-ao.c
|
||||
index 17b11eb52a..1a855a6896 100644
|
||||
--- a/drivers/clk/meson/g12a-ao.c
|
||||
+++ b/drivers/clk/meson/g12a-ao.c
|
||||
@@ -28,14 +28,8 @@ static int meson_set_gate(struct clk *clk, bool on)
|
||||
struct meson_clk *priv = dev_get_priv(clk->dev);
|
||||
struct meson_gate *gate;
|
||||
|
||||
- if (clk->id >= ARRAY_SIZE(gates))
|
||||
- return -ENOENT;
|
||||
-
|
||||
gate = &gates[clk->id];
|
||||
|
||||
- if (gate->reg == 0)
|
||||
- return 0;
|
||||
-
|
||||
regmap_update_bits(priv->map, gate->reg,
|
||||
BIT(gate->bit), on ? BIT(gate->bit) : 0);
|
||||
|
||||
@@ -63,9 +57,18 @@ static int meson_clk_probe(struct udevice *dev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static int meson_clk_request(struct clk *clk)
|
||||
+{
|
||||
+ if (clk->id >= ARRAY_SIZE(gates))
|
||||
+ return -ENOENT;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static struct clk_ops meson_clk_ops = {
|
||||
.disable = meson_clk_disable,
|
||||
.enable = meson_clk_enable,
|
||||
+ .request = meson_clk_request,
|
||||
};
|
||||
|
||||
static const struct udevice_id meson_clk_ids[] = {
|
||||
--
|
||||
2.30.2
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,29 +0,0 @@
|
||||
From d88c6ad4b878b4a8431a56168bbdfe0eed2b10a5 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Wed, 20 Apr 2022 20:28:45 +0300
|
||||
Subject: [PATCH 4/6] adc: meson-saradc: add AXG variant
|
||||
|
||||
Add support for the SARADC variant found on the AXG SoCs family.
|
||||
|
||||
Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
|
||||
---
|
||||
drivers/adc/meson-saradc.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/adc/meson-saradc.c b/drivers/adc/meson-saradc.c
|
||||
index 1a45a3a265..37023512f0 100644
|
||||
--- a/drivers/adc/meson-saradc.c
|
||||
+++ b/drivers/adc/meson-saradc.c
|
||||
@@ -737,6 +737,8 @@ static const struct udevice_id meson_saradc_ids[] = {
|
||||
.data = (ulong)&gxl_saradc_data },
|
||||
{ .compatible = "amlogic,meson-g12a-saradc",
|
||||
.data = (ulong)&gxl_saradc_data },
|
||||
+ { .compatible = "amlogic,meson-axg-saradc",
|
||||
+ .data = (ulong)&gxl_saradc_data },
|
||||
{ }
|
||||
};
|
||||
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -0,0 +1,60 @@
|
||||
From 07d40cab06c9c1ef4c9c7b9bd159e89acd7656a1 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Sun, 3 Jul 2022 15:24:11 +0300
|
||||
Subject: [PATCH 2/3] cmd: fix do_adc_single()
|
||||
|
||||
The source code contains an error:
|
||||
- argv[2] contains <channel> arg, variable for env_set is in argv[3]
|
||||
- number of args is 4
|
||||
|
||||
Revert 54d24d72601321f4470c4edf31c6b29adae424a7
|
||||
cmd: simplify do_adc_single()
|
||||
|
||||
Fixes 9de612ae4ded53f742f5f99929c06d0839471ced
|
||||
cmd: adc: Add support for storing ADC result in env variable
|
||||
---
|
||||
cmd/adc.c | 9 +++++++--
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/cmd/adc.c b/cmd/adc.c
|
||||
index 195efa8661..1c5d3e10a3 100644
|
||||
--- a/cmd/adc.c
|
||||
+++ b/cmd/adc.c
|
||||
@@ -71,6 +71,7 @@ static int do_adc_info(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
static int do_adc_single(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
char *const argv[])
|
||||
{
|
||||
+ char *varname = NULL;
|
||||
struct udevice *dev;
|
||||
unsigned int data;
|
||||
int ret, uV, val;
|
||||
@@ -78,6 +79,9 @@ static int do_adc_single(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
if (argc < 3)
|
||||
return CMD_RET_USAGE;
|
||||
|
||||
+ if (argc >= 4)
|
||||
+ varname = argv[3];
|
||||
+
|
||||
ret = adc_channel_single_shot(argv[1], simple_strtol(argv[2], NULL, 0),
|
||||
&data);
|
||||
if (ret) {
|
||||
@@ -95,7 +99,8 @@ static int do_adc_single(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
printf("%u\n", data);
|
||||
}
|
||||
|
||||
- env_set_ulong(argv[2], val);
|
||||
+ if (varname)
|
||||
+ env_set_ulong(varname, val);
|
||||
|
||||
return CMD_RET_SUCCESS;
|
||||
}
|
||||
@@ -160,5 +165,5 @@ static char adc_help_text[] =
|
||||
U_BOOT_CMD_WITH_SUBCMDS(adc, "ADC sub-system", adc_help_text,
|
||||
U_BOOT_SUBCMD_MKENT(list, 1, 1, do_adc_list),
|
||||
U_BOOT_SUBCMD_MKENT(info, 2, 1, do_adc_info),
|
||||
- U_BOOT_SUBCMD_MKENT(single, 3, 1, do_adc_single),
|
||||
+ U_BOOT_SUBCMD_MKENT(single, 4, 1, do_adc_single),
|
||||
U_BOOT_SUBCMD_MKENT(scan, 3, 1, do_adc_scan));
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -0,0 +1,102 @@
|
||||
From 50cd712225ccf22a841a7a059fb7a9f1680409a7 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Tue, 5 Jul 2022 19:06:25 +0300
|
||||
Subject: [PATCH 3/3] Add usid/serial/mac read from emmc
|
||||
|
||||
---
|
||||
board/amlogic/jethub-j100/jethub-j100.c | 63 +++++++++++++++++++++++--
|
||||
1 file changed, 60 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/board/amlogic/jethub-j100/jethub-j100.c b/board/amlogic/jethub-j100/jethub-j100.c
|
||||
index 6a2c4ad4c3..41ef5db493 100644
|
||||
--- a/board/amlogic/jethub-j100/jethub-j100.c
|
||||
+++ b/board/amlogic/jethub-j100/jethub-j100.c
|
||||
@@ -5,6 +5,7 @@
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
+#include <command.h>
|
||||
#include <dm.h>
|
||||
#include <init.h>
|
||||
#include <net.h>
|
||||
@@ -20,8 +21,65 @@ int misc_init_r(void)
|
||||
u8 mac_addr[ARP_HLEN];
|
||||
char serial[SM_SERIAL_SIZE];
|
||||
u32 sid;
|
||||
+ int ret;
|
||||
|
||||
- if (!meson_sm_get_serial(serial, SM_SERIAL_SIZE)) {
|
||||
+ char _cmdbuf[96];
|
||||
+ char keyname[32];
|
||||
+ char keydata[256];
|
||||
+ int ver=0;
|
||||
+
|
||||
+ memset (mac_addr,0, sizeof(mac_addr));
|
||||
+ sprintf(_cmdbuf, "store init");
|
||||
+ if(!run_command(_cmdbuf, 0))
|
||||
+ {
|
||||
+ sprintf(_cmdbuf, "keyman init 0x1234");
|
||||
+ if(!run_command(_cmdbuf, 0))
|
||||
+ {
|
||||
+ strcpy(keyname, "usid");
|
||||
+ memset (keydata, 0, sizeof(keydata));
|
||||
+ sprintf(_cmdbuf, "keyman read %s %p str", keyname, keydata);
|
||||
+ ret = run_command(_cmdbuf, 0);
|
||||
+ if (!ret)
|
||||
+ {
|
||||
+ // j100__04012201sw00016142005c
|
||||
+ // 0123456789
|
||||
+ if (keydata[0] == 'j')
|
||||
+ {
|
||||
+ if (keydata[1] == '1')
|
||||
+ {
|
||||
+ sprintf(_cmdbuf, "%c%c",keydata[6],keydata[7]);
|
||||
+ env_set("hwrev", _cmdbuf);
|
||||
+ sprintf(_cmdbuf, "%c%c",keydata[8],keydata[9]);
|
||||
+ env_set("perev", _cmdbuf);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ // get serial
|
||||
+ strcpy(keyname, "serial");
|
||||
+ memset (keydata, 0, sizeof(keydata));
|
||||
+ sprintf(_cmdbuf, "keyman read %s %p str", keyname, keydata);
|
||||
+ ret = run_command(_cmdbuf, 0);
|
||||
+
|
||||
+ // get mac
|
||||
+ strcpy(keyname, "mac");
|
||||
+ memset (keydata, 0, sizeof(keydata));
|
||||
+ sprintf(_cmdbuf, "keyman read %s %#p str", keyname, keydata);
|
||||
+ ret = run_command(_cmdbuf, 0);
|
||||
+ if (keydata[2]==':')
|
||||
+ {
|
||||
+ keydata[17] = (char) 0x00;
|
||||
+ sprintf(_cmdbuf,"env set ethaddr %s", keydata);
|
||||
+ ret = run_command(_cmdbuf, 0);
|
||||
+ mac_addr[0] = (char) 0x01;
|
||||
+ } else
|
||||
+ {
|
||||
+ printf("keyman read mac failed\n");
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (mac_addr[0]==0)
|
||||
+ if (!meson_sm_get_serial(serial, SM_SERIAL_SIZE)) {
|
||||
sid = crc32(0, (unsigned char *)serial, SM_SERIAL_SIZE);
|
||||
/* Ensure the NIC specific bytes of the mac are not all 0 */
|
||||
if ((sid & 0xffff) == 0)
|
||||
@@ -34,9 +92,8 @@ int misc_init_r(void)
|
||||
mac_addr[3] = (sid >> 16) & 0xff;
|
||||
mac_addr[4] = (sid >> 8) & 0xff;
|
||||
mac_addr[5] = (sid >> 0) & 0xff;
|
||||
-
|
||||
eth_env_set_enetaddr("ethaddr", mac_addr);
|
||||
- }
|
||||
+ }
|
||||
|
||||
return 0;
|
||||
}
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@ -0,0 +1,60 @@
|
||||
From 18366b137ed3938df2de71d8ac3b829f0531bdd2 Mon Sep 17 00:00:00 2001
|
||||
From: Vyacheslav Bocharov <adeep@lexina.in>
|
||||
Date: Sun, 3 Jul 2022 15:24:11 +0300
|
||||
Subject: [PATCH] cmd: fix do_adc_single()
|
||||
|
||||
The source code contains an error:
|
||||
- argv[2] contains <channel> arg, variable for env_set is in argv[3]
|
||||
- number of args is 4
|
||||
|
||||
Revert 54d24d72601321f4470c4edf31c6b29adae424a7
|
||||
cmd: simplify do_adc_single()
|
||||
|
||||
Fixes 9de612ae4ded53f742f5f99929c06d0839471ced
|
||||
cmd: adc: Add support for storing ADC result in env variable
|
||||
---
|
||||
cmd/adc.c | 9 +++++++--
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/cmd/adc.c b/cmd/adc.c
|
||||
index 195efa8661..1c5d3e10a3 100644
|
||||
--- a/cmd/adc.c
|
||||
+++ b/cmd/adc.c
|
||||
@@ -71,6 +71,7 @@ static int do_adc_info(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
static int do_adc_single(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
char *const argv[])
|
||||
{
|
||||
+ char *varname = NULL;
|
||||
struct udevice *dev;
|
||||
unsigned int data;
|
||||
int ret, uV, val;
|
||||
@@ -78,6 +79,9 @@ static int do_adc_single(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
if (argc < 3)
|
||||
return CMD_RET_USAGE;
|
||||
|
||||
+ if (argc >= 4)
|
||||
+ varname = argv[3];
|
||||
+
|
||||
ret = adc_channel_single_shot(argv[1], simple_strtol(argv[2], NULL, 0),
|
||||
&data);
|
||||
if (ret) {
|
||||
@@ -95,7 +99,8 @@ static int do_adc_single(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
printf("%u\n", data);
|
||||
}
|
||||
|
||||
- env_set_ulong(argv[2], val);
|
||||
+ if (varname)
|
||||
+ env_set_ulong(varname, val);
|
||||
|
||||
return CMD_RET_SUCCESS;
|
||||
}
|
||||
@@ -160,5 +165,5 @@ static char adc_help_text[] =
|
||||
U_BOOT_CMD_WITH_SUBCMDS(adc, "ADC sub-system", adc_help_text,
|
||||
U_BOOT_SUBCMD_MKENT(list, 1, 1, do_adc_list),
|
||||
U_BOOT_SUBCMD_MKENT(info, 2, 1, do_adc_info),
|
||||
- U_BOOT_SUBCMD_MKENT(single, 3, 1, do_adc_single),
|
||||
+ U_BOOT_SUBCMD_MKENT(single, 4, 1, do_adc_single),
|
||||
U_BOOT_SUBCMD_MKENT(scan, 3, 1, do_adc_scan));
|
||||
--
|
||||
2.30.2
|
||||
|
||||
Loading…
Reference in New Issue
Block a user