Porting barebox (devicetree) to Variscite iMX6 SOM

Sascha Hauer s.hauer at pengutronix.de
Thu Dec 19 03:09:17 EST 2013

On Wed, Dec 18, 2013 at 04:34:20PM -0500, Michael Burkey wrote:
> I have answered some of my own questions and got more working on the
> Variscite port.
> So, for anyone else trying to do basically the same thing I am:
> 1) The built-in devicetree does get probed and enumerated.
> 2) By the time the _init function in board.c gets called, the probing
> is complete and devices such as i2c are available.
> I also got my uart problem fixed -- which was actually a devicetree
> error on my part.
> However, I am still back to working on part of my problem. When
> configured correctly, the Variscite development board is SUPPOSED to
> gate the 3.3V line to the onboard peripherals using the 3.3V output of
> the PF0100 -- which, unfortunately, means that some of the devices
> that may need to be probed in devicetree probably won't respond until
> after I can use I2C to properly configure the PF0100.
> So...after I have configured the PF0100, can "oftree -p" be used to
> re-probe the current tree?? Or do I have to figure out a way to bring
> I2C up early as well?

For the kernel the correct solution is to add regulators to the device
nodes which need the 3.3V line, so that the drivers for these devices
request and enable the regulators before accessing the devices.
In barebox we are not (yet?) prepared for this. Right now your options

a) make sure the PF0100 is available before the devices using it (that
   may mean to move the i2c-imx driver and the PF0100 driver to an earlier
   initcall level).
b) Use an 'early' i2c driver (For example arch/ppc/mach-mpc85xx/fsl_i2c.c
   has this, the code should even work on i.MX)
c) implement regulator support for barebox

I would first try to get away with a), although from my point of view I
of course recommend c) ;)


Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

More information about the barebox mailing list