IIO: move out of staging plan.
A message that is not in the archive (sent off-list or not yet received): [email protected]
A message that is not in the archive (sent off-list or not yet received): [email protected]
Jonathan Cameron
maintainerQuoted 99 lines · Greg Kroah-Hartman
Quoted 41 lines · Jonathan Cameron
Hi All,
A recent discussion led to Greg saying he was happy to move IIO out of staging. I observed that there were some pieces where this would make sense, but a number of drivers have substantial userspace interface issues so a wholesale move was not going to be a good idea. There are even a few bits of out of date documentation.
I finished by saying I'd start another thread to discuss what to move.
Now there are quite a few patches under review at the moment, but if we wait for everything to be quiet the move will never happen! So sorry if your patch requires some adjustment as it crossed with Greg moving things. I have a few of my own in this state so I share your pain!
Anyhow, breaking things up into bite sized parts.
1) Move the core headers
2) Move the core code.
3) Move core and abi documentation.
4) Move some drivers.5) Long term move rest of drivers.
1. Is simple enough. There are probably cleaner ways of doing it but the following script does the job...
headers='iio.h
types.hbuffer.hevents.hsysfs.htrigger.htrigger_consumer.hmachine.hdriver.hconsumer.hkfifo_buf.h'for str in $headers
do
echo updating references to $str
finddrivers/staging/iio-type f -exec sed -i
's#"'$str'"#<linux/iio/'$str'>#' {} \;
echo updating references to ../$str
finddrivers/staging/iio-type f -exec sed -i
's#"../'$str'"#<linux/iio/'$str'>#' {} \;
doneQuoted 6 lines
mkdir
include/linux/iio
for str in $headers
do
echo moving $str
git mvdrivers/staging/iio/$strinclude/linux/iio/
doneDo you want me to do this? Or do you want to send me a patch that does it?
Quoted 15 lines
2) Is just a case of moving some of the contents of the base staging/iio/ directory and pulling the relevant bits from the
Kconfig. (I'm happy to do a patch for this if it helps...)I'd propose moving...
iio_core.hiio_core_trigger.hindustrialio-buffer.cindustrialio-core.cindustrialio-event.cindustrialio-trigger.cinkern.ckfifo_buf.cQuoted 2 lines
Which gives us the whole core + the simplest (and least controversial) buffer implementation.
Sounds good, send me a patch :)
Quoted 3 lines
3) move sysfs-bus-iio to experimental abi directory. The other abi docs at least need a close read through before the move. They typically cover individual drivers or the more esoteric driver classes.
Also looks sane.
Quoted 9 lines
4) Drivers. This mainly comes down to working out what to move. Quite a few will need minor changes to headers to pull out the bits (usually highlighted by documenation) that are platform data related and hence need to go into
include/linux/iiorather than being local to the driver directory. The other nasty is that a lot of drivers depend onsw_ring. So the question is whether we move them wholesale over tokfifo_bufor pullsw_ringout of staging with the view that we'll replace it with something better at a later date? My dislike for this ring implemenation is well documented!I'll leave that decision to you, but I would suggest just picking one ring implementation if at all possible. kfifo would be the recommended one, why would you not use it?
Quoted 3 lines
5) There lots of hideous drivers that will need work. Hopefully the sheer embarasement of being left in staging and hence labeled bad will motivate people to clean them up ;)
That should happen over time, otherwise I can always threaten to delete them, which should cause people to wake up :)
Quoted 7 lines
Quoted 4 lines
To my mind, the priority is moving the headers, core and main documentation.
What do people think? Mostly how we do this comes down to what process works well for Greg.
Sending me a patch for the first 3, or if you don't want to, I can do it as well, which ever is easier for you is fine with me.
Turns out I'd missed one element. Quite a few drivers select elements that we are moving out of staging. Thus I'll have to add a prior series to convert all those to depends (which I would prefer anyway).
Quoted 8 lines
thanks,
greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html