Re: IIO: move out of staging plan.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/20/2012 03:22 AM, Greg Kroah-Hartman wrote:
> On Thu, Apr 19, 2012 at 02:50:29PM +0100, Jonathan Cameron wrote:
>> 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.h buffer.h events.h sysfs.h trigger.h
>> trigger_consumer.h machine.h driver.h consumer.h kfifo_buf.h'
>>
>> for str in $headers
>> do
>>     echo updating references to $str
>>     find drivers/staging/iio -type f -exec sed -i
>> 's#"'$str'"#<linux/iio/'$str'>#' {} \;
>>     echo updating references to ../$str
>>     find drivers/staging/iio -type f -exec sed -i
>> 's#"../'$str'"#<linux/iio/'$str'>#' {} \;
>> done
>>
>> mkdir  include/linux/iio
>> for str in $headers
>> do
>>     echo moving $str
>>     git mv drivers/staging/iio/$str include/linux/iio/
>> done
> 
> Do you want me to do this?  Or do you want to send me a patch that does
> it?
> 
>> 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.h
>> iio_core_trigger.h
>> industrialio-buffer.c
>> industrialio-core.c
>> industrialio-event.c
>> industrialio-trigger.c
>> inkern.c
>> kfifo_buf.c
>>
>> Which gives us the whole core + the simplest (and least controversial)
>> buffer implementation.
> 
> Sounds good, send me a patch :)
> 
>> 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.
> 
>> 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/iio rather than being local to the driver
>> directory.  The other nasty is that a lot of drivers depend on sw_ring.
>> So the question is whether we move them wholesale over to kfifo_buf or
>> pull sw_ring out 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?
> 
>> 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 :)
> 
>> 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).
> 
> thanks,
> 
> greg k-h
> --
> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux