On Thu, Jun 18, 2020 at 4:20 PM Adam Ford <aford...@gmail.com> wrote: > > On Thu, Jun 18, 2020 at 4:00 PM Marek Vasut <marek.va...@gmail.com> wrote: > > > > On 6/18/20 10:33 PM, Adam Ford wrote: > > > I am trying to port U-Boot to a new product based on a Renesas RZ/G2M > > > (rcar-gen3). We're have this working with Renesas' version from > > > 2018.09, but I am trying to integrate it with U-Boot 2020.07-rc4 > > > > > > What's happening is that it seems like all GPIO are failing to be > > > requested, so things like regulator-gpio fail, reset-gpios, etc. all > > > return errors. > > > > > > The dm tree and gpio status commands all appear to show gpio banks are > > > enumerating, but since nothing can use the GPIO's it seems like the > > > common thread is the gpio driver for the rcar3. > > > > > > I was hoping someone might have some thoughts of things I could try or > > > investigate. In order to properly set the voltage for the MMC card, I > > > need "regulator-gpio" to operate correctly. > > > > Note that RZ/G2M is not supported by mainline U-Boot. > > > > Also note that the GPIO driver and PFC drivers are working together, > > grep for sh_pfc_config_mux_for_gpio(), so unless both work and probed, > > the GPIO driver will likely not work. > > I just sent a series [1] for review for porting the PFC, clock drivers > and MMC over. > > [1] - > https://patchwork.ozlabs.org/project/uboot/patch/20200618211444.391556-2-aford...@gmail.com/ >
I already submitted the board device tree stuff to the Linux community and I am waiting for feedback to finalize it before attempting to post here. If it's helpful, I can post the rest of my series with the board device tree and board files instead of waiting. > It looks to me like the gpio driver looks for "rcar-gen3-gpio" which > is included in the SoC's DTSI file. I looked in Renesas' upstream > repo, but I didn't find anything unique in the gpio driver, but maybe > there is something in the gpio driver I missed. > > > > > Can you provide 'dm tree' output ? > > => dm tree > Class Index Probed Driver Name > ----------------------------------------------------------- > root 0 [ + ] root_driver root_driver > clk 0 [ ] fixed_rate_clock |-- audio_clk_a > clk 1 [ ] fixed_rate_clock |-- audio_clk_b > clk 2 [ ] fixed_rate_clock |-- audio_clk_c > clk 3 [ ] fixed_rate_clock |-- can > clk 4 [ + ] fixed_rate_clock |-- extal > clk 5 [ + ] fixed_rate_clock |-- extalr > clk 6 [ ] fixed_rate_clock |-- pcie_bus > firmware 0 [ ] psci |-- psci > clk 7 [ ] fixed_rate_clock |-- scif > simple_bus 0 [ + ] generic_simple_bus |-- soc > gpio 0 [ ] rcar-gpio | |-- gpio@e6050000 > gpio 1 [ ] rcar-gpio | |-- gpio@e6051000 > gpio 2 [ + ] rcar-gpio | |-- gpio@e6052000 > gpio 3 [ ] rcar-gpio | |-- gpio@e6053000 > gpio 4 [ ] rcar-gpio | |-- gpio@e6054000 > gpio 5 [ ] rcar-gpio | |-- gpio@e6055000 > gpio 6 [ + ] rcar-gpio | |-- gpio@e6055400 > gpio 7 [ ] rcar-gpio | |-- gpio@e6055800 > clk 8 [ + ] clk_r8a774a1 | |-- > clock-controller@e6150000 > i2c 0 [ ] i2c_rcar | |-- i2c@e6500000 > i2c 1 [ ] i2c_rcar | |-- i2c@e6510000 > i2c 2 [ ] i2c_rcar | |-- i2c@e66d8000 > i2c 3 [ ] i2c_rcar | |-- i2c@e66e0000 > eth 0 [ ] ravb | |-- ethernet@e6800000 > serial 0 [ ] serial_sh | |-- serial@e6e60000 > serial 1 [ + ] serial_sh | |-- serial@e6e88000 > serial 2 [ ] serial_sh | |-- serial@e6f30000 > usb 0 [ ] ehci_generic | |-- usb@ee080100 > usb 1 [ ] ehci_generic | |-- usb@ee0a0100 > phy 0 [ ] rcar-gen3-phy | |-- usb-phy@ee080200 > phy 1 [ ] rcar-gen3-phy | |-- usb-phy@ee0a0200 > mmc 0 [ + ] renesas-sdhi | |-- sd@ee100000 > blk 0 [ ] mmc_blk | | `-- s...@ee100000.blk > mmc 1 [ + ] renesas-sdhi | |-- sd@ee160000 > blk 1 [ + ] mmc_blk | | `-- s...@ee160000.blk > pci 0 [ ] rcar_gen3_pcie | |-- pcie@fe000000 > pci 1 [ ] rcar_gen3_pcie | `-- pcie@ee800000 > clk 9 [ ] fixed_rate_clock |-- usb3s0 > clk 10 [ ] fixed_rate_clock |-- usb_extal > clk 11 [ ] fixed_rate_clock |-- osc_32k > regulator 0 [ + ] fixed regulator |-- regulator0 > regulator 1 [ + ] fixed regulator |-- regulator1 > regulator 2 [ ] fixed regulator |-- regulator_audio > regulator 3 [ ] fixed regulator |-- regulator-lcd > regulator 4 [ ] fixed regulator |-- regulator-lcd-reset > regulator 5 [ ] fixed regulator |-- regulator_camera > regulator 6 [ + ] gpio regulator |-- regulator-vccq-sdhi0 > clk 12 [ ] fixed_rate_clock |-- x302-clock > clk 13 [ ] fixed_rate_clock `-- x304-clock > =>