GPIO request failures for Renesas rcar-gen3
Adam Ford
aford173 at gmail.com
Thu Jun 18 23:29:54 CEST 2020
On Thu, Jun 18, 2020 at 4:20 PM Adam Ford <aford173 at gmail.com> wrote:
>
> On Thu, Jun 18, 2020 at 4:00 PM Marek Vasut <marek.vasut at 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-aford173@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 at e6050000
> gpio 1 [ ] rcar-gpio | |-- gpio at e6051000
> gpio 2 [ + ] rcar-gpio | |-- gpio at e6052000
> gpio 3 [ ] rcar-gpio | |-- gpio at e6053000
> gpio 4 [ ] rcar-gpio | |-- gpio at e6054000
> gpio 5 [ ] rcar-gpio | |-- gpio at e6055000
> gpio 6 [ + ] rcar-gpio | |-- gpio at e6055400
> gpio 7 [ ] rcar-gpio | |-- gpio at e6055800
> clk 8 [ + ] clk_r8a774a1 | |--
> clock-controller at e6150000
> i2c 0 [ ] i2c_rcar | |-- i2c at e6500000
> i2c 1 [ ] i2c_rcar | |-- i2c at e6510000
> i2c 2 [ ] i2c_rcar | |-- i2c at e66d8000
> i2c 3 [ ] i2c_rcar | |-- i2c at e66e0000
> eth 0 [ ] ravb | |-- ethernet at e6800000
> serial 0 [ ] serial_sh | |-- serial at e6e60000
> serial 1 [ + ] serial_sh | |-- serial at e6e88000
> serial 2 [ ] serial_sh | |-- serial at e6f30000
> usb 0 [ ] ehci_generic | |-- usb at ee080100
> usb 1 [ ] ehci_generic | |-- usb at ee0a0100
> phy 0 [ ] rcar-gen3-phy | |-- usb-phy at ee080200
> phy 1 [ ] rcar-gen3-phy | |-- usb-phy at ee0a0200
> mmc 0 [ + ] renesas-sdhi | |-- sd at ee100000
> blk 0 [ ] mmc_blk | | `-- sd at ee100000.blk
> mmc 1 [ + ] renesas-sdhi | |-- sd at ee160000
> blk 1 [ + ] mmc_blk | | `-- sd at ee160000.blk
> pci 0 [ ] rcar_gen3_pcie | |-- pcie at fe000000
> pci 1 [ ] rcar_gen3_pcie | `-- pcie at 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
> =>
More information about the U-Boot
mailing list