Hello Peter,

On 2024-02-12 14:41, Peter Robinson wrote:
On Fri, 9 Feb 2024 at 09:50, Quentin Schulz <foss+ub...@0leil.net> wrote:

From: Quentin Schulz <quentin.sch...@theobroma-systems.com>

Compared to the original misc_init_r from Rockchip mach code,
setup_iodomain() is added and rockchip_setup_macaddr() is not called.

It is assumed adding rockchip_setup_macaddr() back is fine.
Let's use rockchip_early_misc_init_r instead of reimplementing the whole
misc_init_r from Rockchip (the side effect being that
rockchip_setup_macaddr() is back).

The Pinebook Pro doesn't have onboard ethernet, nor an alias defined,
I wonder if rockchip_setup_macaddr should be gated on GMAC_ROCKCHIP or
something similar. Otherwise:

It's the same with the Pinephone Pro, plus we've got the Pinephone,
the PineTab, and the "OG" Pinebook with no Ethernet interfaces.  I've
already prepares patches that gate out the redundant code, and I'll
send them over after a bit more testing.

Reviewed-by: Peter Robinson <pbrobin...@gmail.com>

Cc: Quentin Schulz <foss+ub...@0leil.net>
Reviewed-by: Kever Yang <kever.y...@rock-chips.com>
Signed-off-by: Quentin Schulz <quentin.sch...@theobroma-systems.com>
---
board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c | 18 ++----------------
 1 file changed, 2 insertions(+), 16 deletions(-)

diff --git a/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c b/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c
index 4ad780767ea..2408a367305 100644
--- a/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c
+++ b/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c
@@ -11,7 +11,6 @@
 #include <asm/arch-rockchip/clock.h>
 #include <asm/arch-rockchip/grf_rk3399.h>
 #include <asm/arch-rockchip/hardware.h>
-#include <asm/arch-rockchip/misc.h>
 #include <linux/printk.h>
 #include <power/regulator.h>

@@ -54,23 +53,10 @@ static void setup_iodomain(void)
        rk_setreg(&pmugrf->soc_con0, 1 << PMUGRF_CON0_VSEL_SHIFT);
 }

-int misc_init_r(void)
+int rockchip_early_misc_init_r(void)
 {
-       const u32 cpuid_offset = 0x7;
-       const u32 cpuid_length = 0x10;
-       u8 cpuid[cpuid_length];
-       int ret;
-
        setup_iodomain();

- ret = rockchip_cpuid_from_efuse(cpuid_offset, cpuid_length, cpuid);
-       if (ret)
-               return ret;
-
-       ret = rockchip_cpuid_set(cpuid, cpuid_length);
-       if (ret)
-               return ret;
-
-       return ret;
+       return 0;
 }
 #endif

--
2.43.0

Reply via email to