Re: linux1394 patches merged

From: Arne Caspari
Date: Fri Dec 10 2004 - 04:30:27 EST


Dan Dennedy wrote:

Hi folks,
Just a shout out to let you know I have synced our subversion tree
against bitkeeper linux-2.6, and I applied many patches you have
submitted to the linux1394-devel mailing list over the past few months.
Thank you for your patience, and I will help Ben Collins as much as I
can to keep it current. We hope to get these changes into the 2.6.10
release.



Hi,

I know I am a bit late to join this discussion. But I have not had the time to dig into some issues I had and to continue development on my new driver.

There is an issue with the recent hotplug patches ( and not only the recent ones ) which define hotplug matches for devices. The problem is that "raw1394" and "video1394" define matches for devices ( in my case the IIDC-1394 cameras; spec_id = 0xa02d, version = 0x100|0x102|0x103 ) to get loaded by the hotplug scripts. As far as I can see, defining such a match causes the first driver loaded to get the device object for the matched device. Subsequent matches do not get a device object.

Since neither "raw1394" nor "video1394" are drivers specific to the devices they define matches for, no other ( specialized ) driver can ever get a device object. I am developing a v4l2 driver for the IIDC cameras which is based on the "video-2-1394" driver which again is designed around the device object and the callbacks of the ieee1394 bus driver. This driver never gets loaded since "raw1394" is the first match for the device signature and I had to patch "raw1394" and "video1394" not to match on anything.

Both mentioned drivers are generic protocol drivers for the IEEE-1394 bus so in my opinion, if they define a match at all it should be the IEEE-1394 bus ( or an OHCI1394 card ) but never a match for a specific device ( since the drivers do not know anything about the device and therefore never need the device object ).

The only other solution I would see is if the kernel would assign a device object to EVERY module that defines a match for a device. But I think that not matching the generic drivers would be the cleaner solution.

-Arne

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