Thanks for the assist. I am sure I am doing something in my driver or
kernel configuration that causes this.
I am new to pulling kernel code via git, we use the tarballs, so a
little guidance is needed. First, I went to find the git repository
and have git.kernel.org in my browser with the list of project paths.
Is the one I need 'linux/kernel/git/torvalds/linux-2.6.git'?
The reasons these drivers aren't in kernel.org has been that I don't
believe it is of any use to the community. These are devices only
found in our products. Furthermore, I write the firmware for at least
10 USB devices, all of that code is proprietary. I would have to find
a way to not expose those interfaces. I also write the drivers in
Windows and Linux, as well as application libraries that interface
with the driver API. If I were to add publishing these drivers I
couldn't get it done. I couldn't maintain these drivers at the pace
the kernel changes. I couldn't test and verify they work and nobody
could do it for me without being here with hardware to test. Sounds
like work for no benefit.
I will run bisect when I get the kernel pulled correctly.
Thanks,
Donald
On Jun 20, 2012, at 5:47 PM, Greg KH wrote:
On Wed, Jun 20, 2012 at 05:38:44PM -0500, Donald Kayser wrote:
Hello,
I develop linux drivers for an embedded system with USB devices. The
USB drivers in question have been stable for a while, at least since
linux 2.6.26.n.
Nice. Any reason why they aren't in the main kernel.org tree?
We have to move the system to the newest 2.6 kernel
(2.6.39.4) that has support for video hardware. When I built the
embedded system's USB drivers for the 2.6.39.4 kernel, I keep
getting the error message "Resource Temporarily Unavailable" when
attempting to 'cat' the device file. No error message appear in the
syslog. My USB driver uses the same kind of calls as usb-skeleton.c
to create the device file via usb_register() in the init function
and usb_register_dev() in the probe callback. The device is create
with a dynamic minor number in its name in /dev as expected. But
every use of this file comes back with the error. My debug printk
indicate my open function is not ever being called.
Can you run 'git bisect' to track down the offending patch? 2.6.39
was
years ago, I can't remember what happened in the kernel tree one month
ago...
I checked the difference between usb-skeleton.c files and there has
only been an addition of adding a llseek entry in the file
operations structure. I modified my driver and it didn't make a
difference - long shot.
I wouldn't trust the usb-skeleton.c to have been kept up to date.
I tested kernels 2.6.39.4, 2.6.38.8, 2.6.37.7, 2.6.37.1, 2.6.36.4.
It works in kernels before and including 2.6.36.4. It stops working
for all kernels tested beyond and including 2.6.37.1.
That gives you a good start to run 'git bisect' on.
thanks,
greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html