Hi Anand, On Sat, Feb 9, 2019 at 6:55 PM Anand Moon <linux.amoon@xxxxxxxxx> wrote: [...] > > > But this dose not work setting the usb1_phy to use vbus-supply. > > > > > > &usb1_phy { > > > status = "okay"; > > > + vbus-supply = <&usb_vbus>; > > > }; > > > > > > I am attaching a small patch for testing. > > > [0] usbvbus.patch > > indeed, this is not working for me either. > > I checked my old notes at [0] -> it works for me when setting > > "vbus-supply" at the usb controller (not the PHY). > > > > with the following snippet: > > &usb1 { > > status = "okay"; > > vbus-supply = <&usb_vbus>; > > }; > > I get: > > # cat /sys/kernel/debug/regulator/regulator_summary | grep -i usb > > c90c0000.usb 1 0mA > > 0mV 0mV > > c90c0000.usb 1 0mA > > 0mV 0mV > > USB_VBUS 1 1 0 unknown 5000mV 0mA > > 5000mV 5000mV > > c90c0000.usb 1 0mA > > 0mV 0mV > > > > can you please try this on your board as well? > > > > > Here is the summary of the above patch. > > > > > > 1. hot-plugins of usb device is not working. > > > 2. only cold/warm boot let the device come up. > > > 3. not power is supplied to the usb ports. > > > 4. no power module is registered with the regulator summary. > > with "vbus-supply" moved to the usb1 node I get the following result: > > 1. same: hot-plugins of usb device is not working > > 2. different: a reboot doesn't make devices come up > > 3. same: no power is supplied to the USB ports (in my case this causes > > #2, but it's not clear why there's no power...) > > 4. different: the regulator is registered with the USB controller in debugfs > > > Here the the logs after I applied the above changes > > [1] https://pastebin.com/rVa8gxNG can you please provide the .dts patch for this log? I can see the following message in your log: [ 1.977367] USB_VBUS: disabling I have tried it with the attached patch, then I get: # dmesg | grep VBUS # # cat /sys/kernel/debug/regulator/regulator_summary regulator use open bypass opmode voltage current min max --------------------------------------------------------------------------------------- regulator-dummy 4 3 0 unknown 0mV 0mA 0mV 0mV c90c0000.usb 1 0mA 0mV 0mV c90c0000.usb 1 0mA 0mV 0mV VCCK 1 1 0 unknown 860mV 0mA 860mV 1140mV cpu0 0 0mA 860mV 860mV P5V0 3 4 0 unknown 5000mV 0mA 5000mV 5000mV VCC1V8 2 2 0 unknown 1800mV 0mA 1800mV 1800mV c1108680.adc 1 0mA 0mV 0mV c1108e00.mmc 1 0mA 1800mV 1950mV VCC3V3 2 3 0 unknown 3300mV 0mA 3300mV 3300mV c1108e00.mmc 1 0mA 3300mV 3400mV VDD_RTC 0 0 0 unknown 900mV 0mA 900mV 900mV TFLASH_VDD 1 1 0 unknown 3300mV 0mA 3300mV 3300mV c1108c20.mmc:slot@1 1 0mA 3300mV 3400mV DDR_VDDC 0 0 0 unknown 1500mV 0mA 1500mV 1500mV USB_VBUS 1 1 0 unknown 5000mV 0mA 5000mV 5000mV c90c0000.usb 1 0mA 0mV 0mV TF_IO 0 1 0 unknown 3300mV 0mA 1800mV 3300mV c1108c20.mmc:slot@1 0 0mA 0mV 0mV (my kernel build includes two more changes on top of Kevin's v5.1/dt branch which add two new regulators: it enables the RTC and the SDHC MMC controller, but these are not related to USB at all) USB ist still not working for me, but I believe my problem is different to yours. Regards Martin
diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts index 0f0a46ddf3ff..44b9e6cbe2ed 100644 --- a/arch/arm/boot/dts/meson8b-odroidc1.dts +++ b/arch/arm/boot/dts/meson8b-odroidc1.dts @@ -118,6 +118,22 @@ 1800000 1>; }; + usb_vbus: regulator-usb-vbus { + compatible = "regulator-fixed"; + + regulator-name = "USB_VBUS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + + vin-supply = <&p5v0>; + + /* + * signal name from schematics: PWREN + */ + gpio = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + vcc_1v8: regulator-vcc-1v8 { /* * RICHTEK RT9179 configured for a fixed output voltage of @@ -299,4 +315,5 @@ &usb1 { status = "okay"; + vbus-supply = <&usb_vbus>; };