From: Alan Ott on 8 Jun 2010 09:50 On 06/08/2010 02:32 AM, Antonio Ospite wrote: > On Mon, 7 Jun 2010 23:51:48 -0400 > Alan Ott<alan(a)signal11.us> wrote: > > >> Per the HID Specification, Feature reports must be sent and received on >> the Configuration endpoint (EP 0) through the Set_Report/Get_Report >> interfaces. This patch adds two ioctls to hidraw to set and get feature >> reports to and from the device. Modifications were made to hidraw and >> usbhid. >> >> New hidraw ioctls: >> HIDIOCSFEATURE - Perform a Set_Report transfer of a Feature report. >> HIDIOCGFEATURE - Perform a Get_Report transfer of a Feature report. >> >> Signed-off-by: Alan Ott<alan(a)signal11.us> >> --- >> > Thanks Alan, I am going to test this quite soon. > > TBH, when I was thinking about how to extend hidraw I thought we could > have added a new report_type field to struct hidraw_report_descriptor, > in order to re-use the HIDIOCGRDESC ioctl handler itself, adding then a > HIDIOCSRDESC for setting the report. This looked cleaner to my eyes, > Thanks for the feedback, Antonio. The HIDIOCGRDESC ioctl copies the existing descriptor from the hid_device structure. Since it does not initiate a Get_Report transfer, I'm not sure how much re-use there could have been using that method. In my estimation, a Set_Report/Get_Report was more similar to the call to write(). > but I didn't actually implement this, so I don't know if it was > feasible, for instance one problem I didn't investigate further was > about the default value of the aforementioned report_type field in > order to keep the current behavior of HIDIOCGRDESC. > I'm not sure what you mean here, as the report_type field is not part of hidraw_report_descriptor. Thanks for testing my patch. Please let me know if you have problems with it. Alan. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Pages: 1 Prev: [PATCH] Cleanup mmzone.h Next: NMI & register clash handling infrastructure |