[BUG]odroid-c2 does not hotplug usb-devices

Neil Armstrong narmstrong at baylibre.com
Mon Dec 7 13:29:25 CET 2020


Hi,

(Please CC u-boot-amlogic at groups.io when U-Boot is concerned)

On 07/12/2020 13:19, Otto Meier wrote:
> Hi Martin,
> 
> 
> I did a lot of googling this weekend and found some interesting problems with
> odroid-c2.
> 
> 1. booting from emmc stop after u-boot 2020.04 (this hits me also)

Indeed, this already has been reported, but the root cause is unknown

> 2. usb did not work with newer kernels.
> 
> This gaves me the idea that something in the configuration of the s905 soc
> is not ok.
> 
> here: https://forum.libreelec.tv/thread/12330-balbes150-le-images-with-kodi-19-for-s9xxx/?postID=147212#post147212
> and here: https://lists.denx.de/pipermail/u-boot/2020-November/thread.html
> 
> in https://groups.io/g/u-boot-amlogic/topic/77816805#661 some problems in pinctrl related to booting from emmc is discussed.
> 
> i found that commit dd5f2351e99aad8fcbedbc1305b8b51b09952336 of u-boot
> rendered the situation for odroid-c2 bad.
> 
> i gave the following patch on Top of commit ee1e04558ff8c8ed812b986939447f129bb0b0bb of u-boot
> a try ad it fixes the odroid-c2 boot issue.
> 
> --- u-boot.git/arch/arm/dts/meson-gxbb.dtsi.orig        2020-11-27 17:20:04.624193561 +0100
> +++ u-boot.git/arch/arm/dts/meson-gxbb.dtsi     2020-11-27 17:23:18.472088934 +0100
> @@ -403,36 +403,33 @@
>                         gpio-ranges = <&pinctrl_periphs 0 0 119>;
>                 };
>  
> -               emmc_pins: emmc {
> -                       mux-0 {
> -                               groups = "emmc_nand_d07",
> -                                      "emmc_cmd";
> -                               function = "emmc";
> -                               bias-pull-up;
> -                       };
>  
> -                       mux-1 {
> -                               groups = "emmc_clk";
> -                               function = "emmc";
> -                               bias-disable;
> -                       };
> -               };
> +                emmc_pins: emmc {
> +                        mux {
> +                                groups = "emmc_nand_d07",
> +                                       "emmc_cmd",
> +                                       "emmc_clk";
> +                                function = "emmc";
> +                        };
> +                };
>  
> -               emmc_ds_pins: emmc-ds {
> -                       mux {
> -                               groups = "emmc_ds";
> -                               function = "emmc";
> -                               bias-pull-down;
> -                       };
> -               };
> +                emmc_ds_pins: emmc-ds {
> +                        mux {
> +                                groups = "emmc_ds";
> +                                function = "emmc";
> +                        };
> +                };
>  
> -               emmc_clk_gate_pins: emmc_clk_gate {
> -                       mux {
> -                               groups = "BOOT_8";
> -                               function = "gpio_periphs";
> -                               bias-pull-down;
> -                       };
> -               };
> +                emmc_clk_gate_pins: emmc_clk_gate {
> +                        mux {
> +                                groups = "BOOT_8";
> +                                function = "gpio_periphs";
> +                        };
> +                        cfg-pull-down {
> +                                pins = "BOOT_8";
> +                                bias-pull-down;
> +                        };
> +                };
>  
>                 nor_pins: nor {
>                         mux {
> 
> 
> 
> So with the latest u-boot and the kernel from https://github.com/chewitt/linux/tree/amlogic-5.10.y
> commit 725fc8df7898102f9031ba2075f763884ffa3ee8 everything is working again.
> USB does hotplugging as expected.

So, this fixes USB under Linux ?? It's not clear

Neil

> 
> For me this make it work again. But i`m sorry, I don´t know what would be a real fix.
> 
> 
> 
> 
> 
> 
> Am 05.12.20 um 20:55 schrieb Martin Blumenstingl:
>> Hi Otto,
>>
>> On Sat, Dec 5, 2020 at 6:40 PM Otto Meier <gf435 at gmx.net> wrote:
>>>
>>> Hi Martin,
>>>
>>> i have tried your second notice. but it does'nt solve the issue.
>>> if at leased on device is pluged in new devices are detected. if
>>> all devices have been removed, no new device will be detected anymore.
>> thanks for trying this out and for reporting back.
>> can you please also test if running "lsusb -vvv" (as root) makes the
>> devices show up?
>>
>> background info: the Amlogic Meson GXBB SoC on your Odroid-C2 board
>> uses a "dwc2" USB 2.0 controller.
>> I don't have any GXBB based board, but my Odroid-C1+ uses the same
>> controller and overall setup. There I can reproduce the problem you
>> are seeing.
>>
>> I am not sure which part of the "infrastructure" (on-board 4-port USB
>> hub, dwc2 controller, ...) is causing this issue.
>> My suggestion is to involve the linux-usb mailing list and dwc2 driver
>> maintainer:
>> - Minas Harutyunyan <hminas at synopsys.com> (dwc2 driver maintainer)
>> - linux-usb at vger.kernel.org (usb mailing list)
>>
>> In the past they provided information and helped to debug issues.
>> Please also keep me Cc'ed so I can help with any Amlogic specific
>> questions, drivers, etc.
>>
>>
>> Best regards,
>> Martin
>>



More information about the U-Boot mailing list