backports: don't backport rfkill, only API
authorJohannes Berg <johannes.berg@intel.com>
Tue, 14 May 2013 19:07:43 +0000 (21:07 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 14 May 2013 20:55:37 +0000 (22:55 +0200)
commit0a562da8fe3e543ad09c9c27869c45143e5f7f0b
tree09515e12a30a52cf5a5370131169a945c11bcf51
parentf4e9e73740846a0067bc4364cebc17113ad1d9f7
backports: don't backport rfkill, only API

There's not much point in backporting rfkill, if the base kernel
doesn't have it then providing the it as /dev/rfkill_backport
won't be picked up by any apps, and if the base kernel has it
then it would cause odd behaviour as the base kernel's platform
drivers using the rfkill API would not talk to the backported
modules rfkill.

An unusable backported rfkill isn't much better than not having
it at all, so change the way we backport rfkill and don't carry
the code but simply provide the API as wrappers.

If the base kernel is 3.10 or higher (the current version) then
don't change anything at all.

If the base kernel is 2.6.33 or higher (with the new rfkill API)
then just wrap the API and disable rfkill registrations for any
types that the base kernel doesn't know about.

For all other kernels, provide only static inlines that behave
like the rfkill API when rfkill isn't compiled in.

The downside is that we need to copy the rfkill API. This is,
however, very very stable (it essentially hasn't changed since
2.6.33), so that's not a problem.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
backport/Kconfig
backport/Makefile.kernel
backport/backport-include/linux/rfkill.h
copy-list
patches/collateral-evolutions/network/0008-rfkill.patch [deleted file]
patches/collateral-evolutions/network/66-uapi-changes/INFO [deleted file]
patches/collateral-evolutions/network/66-uapi-changes/include_linux_rfkill_backport.patch [deleted file]