[libhid-discuss] libhid broken in 2.6.26 kernel works in 2.6.25.15

amruth amruth_pv at yahoo.com
Tue Aug 19 23:23:19 UTC 2008


Hi
I am trying to use libhid for my device. I found out that libhid is not compatible to latest libusb-1.0.
I tried to compile and build using the latest libusb library, but I seeing lot of errors during building.
libs/libhid.so unreferenced find_usb_busses
libs/libhid.so unreferenced usb_strerror
....
Can anybody please let me know about the new libusb used with libhid.
I have also observed some of my applications is broken in 2.6.26 kernel.
I know that until 2.6.25.15 evrything works but broken afterwards.
I get broken pipe error when I tried to get descriptors.
hid_force_open failed
TRACE: hid_prepare_hid_descriptor(): retrieving HID descriptor for USB 
device 001/002[0]...
USB error: error sending control message: Broken pipe
I see the same exact thing working in 2.6.25.15.
Can anybody please let me know what has changed in 2.6.26 kernel.

Thanks
Amruth p.v


--- On Thu, 8/7/08, Charles Lepple <clepple at ghz.cc> wrote:

> From: Charles Lepple <clepple at ghz.cc>
> Subject: Re: [libhid-discuss] Opening Microchip Mouse In a Circle Demo in ubuntu
> To: "Kim Chuan Lim" <lim.kim.chuan at gmail.com>
> Cc: "libhid-discuss List" <libhid-discuss at lists.alioth.debian.org>
> Date: Thursday, August 7, 2008, 8:19 AM
> On Aug 7, 2008, at 9:07 AM, Kim Chuan Lim wrote:
> 
> > Please find the codes below..
> >
> > int const PATH_OUT[2] = {0xffff0001,0x81};
> 
> Try changing that to {0xffff0001, 0xffff0000} and see if it
> works.
> 
> >   int i=0;
> >       char packet[64];
> >       packet[0] =0x0;
> >       ret = hid_get_input_report(hid, PATH_OUT, 2,
> packet, 64);
> >       if (ret != HID_RET_SUCCESS) {
> >         fprintf(stderr, "hid_get_input_report
> failed with return code
> > %d\n", ret);
> >         break;
> >       }else{
> >
> >         fprintf(stderr, " data is availabled
> \n");
> >       }
> >
> >
> > On Thu, Aug 7, 2008 at 1:22 PM, Charles Lepple
> <clepple at ghz.cc> wrote:
> >> On Aug 7, 2008, at 4:37 AM, Kim Chuan Lim wrote:
> >>
> >>> parse tree of HIDInterface 004/006[0]:
> >>>  path: 0xffff0001.0x00000000; type: 0x80
> >>>  path: 0xffff0001.0x00000000; type: 0x80
> >>>  path: 0xffff0001.0x00000000; type: 0x80
> >>>  path: 0xffff0001.0x00000000; type: 0x80
> >>
> >> [...]
> >>
> >>> TRACE: hid_reset_parser(): resetting the HID
> parser for USB device
> >>> 004/006[0]...
> >>>  TRACE: hid_get_input_report(): looking up
> report ID...
> >>>  TRACE: hid_prepare_parse_path(): preparing
> search path of depth 2
> >>> for parse tree of USB device 004/006[0]...
> >>>  TRACE: hid_prepare_parse_path(): search path
> prepared for parse  
> >>> tree
> >>> of USB device 004/006[0].
> >>>  NOTICE: hid_find_object(): found requested
> item.
> >>>  TRACE: hid_get_input_report(): retrieving
> report ID 0x00 (length:
> >>> 64) from USB device 004/006[0]...
> >>> WARNING: hid_get_input_report(): failed to
> retrieve report from USB
> >>> device 004/006[0]:error sending control
> message: Broken pipe.
> >>
> >> Can you send the code you are using for this
> portion? The "Broken  
> >> pipe"
> >> error probably means that the device was not
> expecting a request  
> >> for that
> >> many bytes.
> >>
> >>>           Item(Local ): Usage Minimum, data= [
> 0x01 ] 1
> >>>                           (null)
> >>>           Item(Local ): Usage Maximum, data= [
> 0x40 ] 64
> >>>                           (null)
> >>
> >>
> >> The hid_dump_tree() function does not properly
> print the trace for  
> >> a range
> >> of Usage IDs. So your "Usage Path" in
> libhid would probably look  
> >> something
> >> like { 0xffff0001, 0xffff0001 } through {
> 0xffff0001, 0xffff0040 }.
> >>
> >> --
> >> Charles Lepple
> >>
> >>
> >>
> >
> > _______________________________________________
> > libhid-discuss mailing list
> > libhid-discuss at lists.alioth.debian.org
> >
> http://lists.alioth.debian.org/mailman/listinfo/libhid-discuss
> 
> 
> -- 
> Charles Lepple
> clepple at ghz.cc
> 
> 
> 
> _______________________________________________
> libhid-discuss mailing list
> libhid-discuss at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/libhid-discuss


      




More information about the libhid-discuss mailing list