>> hold on the SIO port range. This would thus interfere with the operation
>> of the f71882fg driver. I.e. it would prevent the device probing stage
>> from working, thus preventing it from loading *after* my in-development
>> watchdog driver.
>
> There are two ways to deal with that really
>
> 1. Add a multi-function driver - it finds the chip and claims the port
> regions and then provides methods for locked access to them as well as
> creating other device instances that the drivers map to (probably platform
> devices ?) which in turn trigger the loading/binding of the relevant low
> level devices.
>
> 2. Fix the kernel request_resource stuff to support a sleeping non
> exclusive resource so request/free of regions can be used as a resource
> semaphore by co-operative devices.
>
> #2 is actually not hard but when I did the patch originally it then
> wasn't needed by the driver I had in mind for other reasons.
>
> See
http://groups.google.com/group/linux.kernel/msg/1425fc2aad32e6ea
>
> Maybe its worth resurrecting ?
>