On 10/1/2014 9:25 AM, Nic Cyn wrote:
> Hi All
> 
> I am seeking some clarification and/or insights into the current state and 
> future of BBB GPIO and device support.
> 
> It is my understanding that the Cape Manager will not be ported to kernels 
> greater than 3.8. This, as far as I can tell, does not seem to be an 
> official position rather it seems there is no momentum behind the Cape 
> Manager in its current form and nobody who has the skills to do so is very 
> keen on working on a port to future kernels. Is that a fair assessment?

"Cape Manager" functionality has been added to newer mainline kernels in
the form of device tree change sets.  It is expected this functionality
will be back-ported to the 3.14 kernel likely to become the next
'standard' BeagleBone kernel after 3.8.

> I have seen references to a sort of Generic Device Driver which will make 
> it possible to configure the GPIO and muxed devices from user space kind of 
> like a super sysfs. However, I can no longer find the name or the link. 
> Does such a thing exist and if so, is it the likely way forward?

You're probably thinking of my universal cape:

https://github.com/cdsteinkuehler/beaglebone-universal-io

...which can be controlled with the config-pin utility (or manually via
sysfs).  This allows user-mode run-time configuration of pin
multiplexing and GPIO state, with most "useful" hardware (UARTs, PWMs,
etc) enabled.

> I also have also seen references to a sort of generic .dbs file which 
> contains a number of #includes people can comment and uncomment in order to 
> enable specific cape functionality. Is this anything other than an idea at 
> present and is this likely to be the way device tree support for capes is 
> implemented going forward?

This sounds like the current state of the 3.14 device tree for the
'Bone.  This will likely remain in place (to allow easy user-mode setup
of most common I/O needs), but will be enhanced by the ability to use
device tree changesets once this feature gets back-ported.

> What is currently thought to be the best practice to configure GPIO's and 
> muxed devices for kernels with no cape manager? I am currently editing the 
> Device Tree .dbs file manually. However, since the .dbs file is complicated 
> and usually requires edits in multiple locations, this is not the easiest 
> of configuration steps to communicate to users. I would appreciate any 
> advice.

I would recommend using the cape-universal features RCN has merged into
the 3.14 'Bone kernels and the config-pin utility for everything you
can.  Some things, however, will still require manually editing the
device tree source and installing a new *.dtb file.

-- 
Charles Steinkuehler
[email protected]

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to