[linux-dvb] ioctl to read/modify GPIOs ?

Mark Schultz n9xmj at yahoo.com
Fri Oct 20 10:43:06 CEST 2006

One project I have considered taking on after looking over the v4l-dvb
source is an addition to the ioctl interface that would allow one (from
[su]ser space) to read and modify the GPIO registers on
cards/controllers that have them (such as the bt8xx and saa713x
devices).  If such an interface were available, I would think that it
would make testing and debugging of new cards a bit easier.  Many cards
that use the aforementioned devices use the GPIOs to assist in
switching A/V input sources and/or select "radio" vs. "tv" mode or
report (IR) remote activity.  When trying to figure out the way a
new/unsupported card works, it would be a lot easier to use some simple
userland utility to directly set/read these signals.  By way of
example, I found the userland utilities "i2cget" and "i2cset" (that
work through the i2c_dev kernel module) to be useful when I was doing
low-level testing of the MSI TV at nywhere Plus IR remote receiver (which,
on this card, is a i2c device).

I'm not sure if I'm up to the task (I'm something of a noob when it
comes to linux development) but before I go ahead and try to implement
what I'm suggesting here I wanted to solicit the opinions of some of
the other developers for this project.  I realize that changing the
GPIOs in a uncontrolled manner can be potentially dangerous, but this
danger could be mitigated by putting some access restrictions on the
relevant ioctl's and/or userland utilities that utilize them.

What do you think?

More information about the linux-dvb mailing list