device: fixed Ledger Nano S device selection
This commit is contained in:
parent
586e9189a6
commit
7e669f2d43
|
@ -72,7 +72,7 @@ namespace hw {
|
|||
this->connect(p->vid, p->pid, p->interface_number, p->usage_page, p->interface_OR_page);
|
||||
}
|
||||
|
||||
void device_io_hid::connect(unsigned int vid, unsigned int pid, unsigned int interface_number, unsigned int usage_page, bool interface_OR_page ) {
|
||||
void device_io_hid::connect(unsigned int vid, unsigned int pid, int interface_number, unsigned short usage_page, bool interface_OR_page ) {
|
||||
hid_device_info *hwdev_info, *hwdev_info_list;
|
||||
hid_device *hwdev;
|
||||
|
||||
|
@ -83,8 +83,8 @@ namespace hw {
|
|||
hwdev = NULL;
|
||||
hwdev_info = hwdev_info_list;
|
||||
while (hwdev_info) {
|
||||
if ((interface_OR_page && ((usage_page == 0xffa0) || (interface_number == 0))) ||
|
||||
((usage_page == 0xffa0) && (interface_number == 0)) ) {
|
||||
if ((interface_OR_page && ((hwdev_info->usage_page == usage_page) || (hwdev_info->interface_number == interface_number))) ||
|
||||
((hwdev_info->usage_page == usage_page) && (hwdev_info->interface_number == interface_number))) {
|
||||
MDEBUG("HID Device found: " << safe_hid_path(hwdev_info));
|
||||
hwdev = hid_open_path(hwdev_info->path);
|
||||
break;
|
||||
|
|
|
@ -52,8 +52,8 @@ namespace hw {
|
|||
struct hid_conn_params {
|
||||
unsigned int vid;
|
||||
unsigned int pid;
|
||||
unsigned int interface_number;
|
||||
unsigned int usage_page;
|
||||
int interface_number;
|
||||
unsigned short usage_page;
|
||||
bool interface_OR_page ;
|
||||
};
|
||||
|
||||
|
@ -100,7 +100,7 @@ namespace hw {
|
|||
|
||||
void init();
|
||||
void connect(void *params);
|
||||
void connect(unsigned int vid, unsigned int pid, unsigned int interface_number, unsigned int usage_page, bool interface_OR_page );
|
||||
void connect(unsigned int vid, unsigned int pid, int interface_number, unsigned short usage_page, bool interface_OR_page );
|
||||
bool connected() const;
|
||||
int exchange(unsigned char *command, unsigned int cmd_len, unsigned char *response, unsigned int max_resp_len);
|
||||
void disconnect();
|
||||
|
|
Loading…
Reference in New Issue