• Alex Villacís Lasso's avatar
    [IrDA]: Kingsun KS-959 IrDA USB driver · 4b6aa599
    Alex Villacís Lasso authored
    This dongle does not follow the usb-irda specification, so it needs its own
    special driver. First, it uses control URBs for data transfer, instead of
    bulk or interrupt transfers; the only interrupt endpoint exposed seems to
    be a dummy to prevent the interface from being rejected. Second, it uses
    obfuscation and padding at the USB traffic level, for no apparent reason
    other than to make reverse engineering harder (full details on obfuscation
    in comments at beginning of source). Although it is advertised as a "4 Mbps
    FIR dongle", it apparently loses packets at speeds greater than 57600 bps.
    
    On plugin, this dongle reports vendor and device IDs: 0x07d0:0x4959 .
    
    The Windows driver that is used normally to control this dongle has a
    filename of KS-959.SYS .
    Signed-off-by: default avatarAlex Villacís Lasso <a_villacis@palosanto.com>
    Signed-off-by: default avatarSamuel Ortiz <samuel@sortiz.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4b6aa599
ks959-sir.c 28.2 KB