Hi,

at least for the RTL931x, removing the rtl931x_setup() is not a good idea as 
the WDT reset does not work for that architecture.
The only way to get a working reset is via registering a reset handler:

static void __init rtl931x_setup(void)
{
        pr_info("Registering _machine_restart\n");
        _machine_restart = rtl931x_restart;
        _machine_halt = rtl931x_halt;

        // Enable system LED, no flashing
        sw_w32_mask(0, 3 << 12, RTL931X_LED_GLB_CTRL);
}

Cheers,
  Birger



On 07.06.22 09:50, Sander Vanheule wrote:
> Disabling the sys-led peripheral should be done via a pin controller,
> for which pinctrl-single nodes are present in the platform DTSI files.
> Drop the hardcoded per-platform sys-led configurations, and require
> things to be set up in the devicetree.
> 
> Co-developed-by: INAGAKI Hiroshi <[email protected]>
> Signed-off-by: INAGAKI Hiroshi <[email protected]>
> Signed-off-by: Sander Vanheule <[email protected]>
> Tested-by: Bjørn Mork <[email protected]>
> ---
>  .../files-5.10/arch/mips/rtl838x/setup.c      | 40 -------------------
>  1 file changed, 40 deletions(-)
> 
> diff --git a/target/linux/realtek/files-5.10/arch/mips/rtl838x/setup.c 
> b/target/linux/realtek/files-5.10/arch/mips/rtl838x/setup.c
> index 55419c7b0b7a..df29b76bbf0f 100644
> --- a/target/linux/realtek/files-5.10/arch/mips/rtl838x/setup.c
> +++ b/target/linux/realtek/files-5.10/arch/mips/rtl838x/setup.c
> @@ -28,31 +28,6 @@
>  
>  extern struct rtl83xx_soc_info soc_info;
>  
> -static void __init rtl838x_setup(void)
> -{
> -     /* Setup System LED. Bit 15 then allows to toggle it */
> -     sw_w32_mask(0, 3 << 16, RTL838X_LED_GLB_CTRL);
> -}
> -
> -static void __init rtl839x_setup(void)
> -{
> -     /* Setup System LED. Bit 14 of RTL839X_LED_GLB_CTRL then allows to 
> toggle it */
> -     sw_w32_mask(0, 3 << 15, RTL839X_LED_GLB_CTRL);
> -}
> -
> -static void __init rtl930x_setup(void)
> -{
> -     if (soc_info.id == 0x9302)
> -             sw_w32_mask(0, 3 << 13, RTL9302_LED_GLB_CTRL);
> -     else
> -             sw_w32_mask(0, 3 << 13, RTL930X_LED_GLB_CTRL);
> -}
> -
> -static void __init rtl931x_setup(void)
> -{
> -     sw_w32_mask(0, 3 << 12, RTL931X_LED_GLB_CTRL);
> -}
> -
>  void __init plat_mem_setup(void)
>  {
>       void *dtb;
> @@ -71,21 +46,6 @@ void __init plat_mem_setup(void)
>        * parsed resulting in our memory appearing
>        */
>       __dt_setup_arch(dtb);
> -
> -     switch (soc_info.family) {
> -     case RTL8380_FAMILY_ID:
> -             rtl838x_setup();
> -             break;
> -     case RTL8390_FAMILY_ID:
> -             rtl839x_setup();
> -             break;
> -     case RTL9300_FAMILY_ID:
> -             rtl930x_setup();
> -             break;
> -     case RTL9310_FAMILY_ID:
> -             rtl931x_setup();
> -             break;
> -     }
>  }
>  
>  void __init plat_time_init(void)

_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to