summaryrefslogtreecommitdiff
path: root/hw/usb/hid-logitech-dj.c
AgeCommit message (Collapse)AuthorFilesLines
2014-03-20unifying: start implementing HID++ 2.0 for devicesPeter Wu1-1/+43
New Hidpp20Msg type helps reading the HID++ 2.0 function format. Implemented error responses (undocumented), and IRoot.GetProtocol(). Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-20unifying: version reg F1 for receiver and HID++ 1.0 devsPeter Wu1-0/+40
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: start implementing device report processingPeter Wu1-2/+41
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: reject long DJ writes unconditionallyPeter Wu1-11/+5
Reports 0x21 always fails (-EPIPE) for Set_Report. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: implemented pairing info info for receiverPeter Wu1-0/+18
Undocumented, so it's guesswork based on https://git.lekensteyn.nl/ltunify/tree/registers.txt Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: fix long reg read, implement reg b5 readPeter Wu1-2/+43
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: implement 0x41 notification, trigger on reg 02Peter Wu1-0/+37
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: fix mixup of reporting flags, HidppMsg tweaksPeter Wu1-5/+5
The "address" and "value" split for short and long HID++ messages only make sense for HID++ 1.0 register accesses. For others, use "params". Also fix a mixup of reporting flags. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: implement activity counters and rcvr reg B3Peter Wu1-0/+16
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: handle receiver regs 0 and 2Peter Wu1-1/+46
2014-03-19unifying: pass pointer to msg, handle kbd LED requestPeter Wu1-15/+18
It is not dangerous to modify the original data buffer, so just pass a pointer for the message instead. Also implement DJ report type 0x0E (LEDS). Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: process receiver reports earlierPeter Wu1-5/+28
The idea of the input queue is probably that wireless devices cannot immediately be queried, but the receiver is able to respond immediately. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: fill in more device and receiver infoPeter Wu1-0/+18
These serial numbers are obviously fake, the product and device names, however, are real. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: fix device indices, fix error formatPeter Wu1-8/+12
Also enable processing of input reports. Now at least keyboard events work and the enumeration order is slightly more sane, yay! Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: ensure that report lengths are validPeter Wu1-0/+7
The length should match our expectations, but let's check that to be sure. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: move mode to LHIdDevice, init/reset functionalityPeter Wu1-0/+157
WIP (partially untested). Handle input reports, respond with HID events if there are no queued output reports. Implemented input report processing for receiver: 0x80 (Switch and Keep-Alive), 0x81 (Get Paired Devices). Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-03-19unifying: rename input queue, fix error queuePeter Wu1-12/+33
Fix error queue name, rename input queue for clarity. Split input and output queue for further work and NAK when there is no interrupt data available.
2014-03-18unifying: WIP for HID++ supportPeter Wu1-0/+145
Error queue is implemented, possible receiver and device properties are filled in (in the header). Signed-off-by: Peter Wu <peter@lekensteyn.nl>