On Wed, Sep 23, 2015 at 4:59 PM, Rick Mann <[email protected]> wrote:

>
> > On Sep 23, 2015, at 06:22 , Charles Steinkuehler <
> [email protected]> wrote:
> >
> > On 9/23/2015 2:18 AM, Rick Mann wrote:
> >> What are the "universal" DTBs, like cape-universal-00A0.dtbo or
> univ-emmc-00A0.dtbo?
> >
> > The "universal" DTBs are intended to allow user-mode changes to the
> > pin configurations at run-time.  This is very handy on kernels that do
> > not support dynamic changes to the device tree (ie: 3.14), but is also
> > useful for 3.8 and 4.x kernels with cape manager support.
> >
> > The idea is basically that you enable most of the available hardware
> > (UARTs, PWM, GPIO, etc) and use the pinmux helper kernel module to
> > make low-level pin settings available via sysfs.  That way, you can
> > modify the pin functions without having to load a new DT overlay.
> >
> > This allows some combinations that would be "illegal" or hard to
> > implement without writing your own custom device tree (which is
> > non-trivial for most folks).  For example, if you need a UART but only
> > require the Rx line and want to use the Tx line as a GPIO, you'd
> > typically have to craft your own custom device tree.  With the
> > universal overlay, you can just set the Rx line to the UART mode, and
> > the Tx line to GPIO, since both functions are already enabled and the
> > pinmux helper module lets you select the pin mode at run-time.
>
> Thanks, Charles, that's helpful. I may offer a patch to the docs with this
> explanation, would you be okay with that?
>

Documentation?!?  Woohoo!!!!


>
> In my case, I'm developing a custom cape, and intending to support only
> 4.1+, and don't mind writing a DTB. In fact, I may have to, since my cape
> has an audio CODEC on it and I need to enable McASP.
>
> Is that assessment correct, or should I go the route of using a universal
> overlay and configuring everything at app run time?
>

The universal overlay relies on being able to start the driver while the
pin mux is in a different configuration. Not every driver will start this
way. I believe the audio codec driver has an issue with being started up
without the pin mux being configured in the McASP mode. I believe this
means you'll need to create either an overlay (dtbo) or custom boot-time
(dtb) device tree file for the driver you select and pin mode configuration
that matches.


>
> --
> Rick Mann
> [email protected]
>
>
> --
> For more options, visit http://beagleboard.org/discuss
> ---
> You received this message because you are subscribed to the Google Groups
> "BeagleBoard" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to