- All the missing pieces (firmware load, chip setup, protocol handling)
TX queue and interrupt handling via sdmmc_task.
Fix locking.
Fix packet parsing.
Add parser for original firmware config files.
- support block length per function
- add functions to read/write regions
Decode (but not use) SDIO tuple in CIS.
Fix locking.
Add more SDIO defines (partially from version 3.0).
- move event handling to workqueue
- check for save/restore capability
Tag work queue as MPsafe and increase length.
Juse use bpf_mtap(), the 802.11 encapsulation is handled by firmware.
- program the buttons sanely ( as left & right mouse buttons, no toggles and
no ridiculous debounce delay either ) - apparently the init values were
cargo culted from cthulhu knows where
- don't fudge buttons anymore, now that they behave sanely
- add comments on what I could figure out the init command actually does
- leave in code to find checksum values for init commands, at least until I
can figure out what exactly the checksum is
Todo: deal with models that have more than 2 buttons, figure out what the rest
of the init command does
filesystem tests. Use the new -J option to pass the raw device into
the cleaner. This avoids the not rump safe getdiskrawname call and
makes sure we use an internal rump device name for cleaning. This
should fix bin/54488.
in the raw device using the new -J option. This avoids the use of
getdiskrawname which is not particularly rump safe in this context and
insures that the rump container device is used for cleaning, not the
outer device.
- this thing speaks EMP, act like it
- adjust the *way* excessive timeout for trying to enable EMP mode on mice -
for some reason this trackball shows up as two devices - the trackball and a
non-functional non-EMP mouse
- map both buttons to button 0 - one is an on/off switch for button 0, the
other shows up as regular button 1