93 lines
2.9 KiB
C
93 lines
2.9 KiB
C
/*
|
|
* Copyright 2012-2022 Great Scott Gadgets <info@greatscottgadgets.com>
|
|
* Copyright 2012 Jared Boone
|
|
* Copyright 2013 Benjamin Vernoux
|
|
*
|
|
* This file is part of HackRF.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2, or (at your option)
|
|
* any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; see the file COPYING. If not, write to
|
|
* the Free Software Foundation, Inc., 51 Franklin Street,
|
|
* Boston, MA 02110-1301, USA.
|
|
*/
|
|
|
|
#include "usb_device.h"
|
|
|
|
#include <usb_type.h>
|
|
|
|
#include "usb_descriptor.h"
|
|
|
|
usb_configuration_t usb_configuration_high_speed = {
|
|
.number = 1,
|
|
.speed = USB_SPEED_HIGH,
|
|
.descriptor = usb_descriptor_configuration_high_speed,
|
|
};
|
|
|
|
usb_configuration_t usb_configuration_full_speed = {
|
|
.number = 1,
|
|
.speed = USB_SPEED_FULL,
|
|
.descriptor = usb_descriptor_configuration_full_speed,
|
|
};
|
|
|
|
usb_configuration_t* usb_configurations[] = {
|
|
&usb_configuration_high_speed,
|
|
&usb_configuration_full_speed,
|
|
0,
|
|
};
|
|
|
|
usb_device_t usb_device;
|
|
|
|
#ifdef IS_HACKRF_ONE
|
|
const usb_device_t usb_device_hackrf_one = {
|
|
.descriptor = usb_descriptor_device_hackrf,
|
|
.descriptor_strings = usb_descriptor_strings_hackrf_one,
|
|
.qualifier_descriptor = usb_descriptor_device_qualifier,
|
|
.configurations = &usb_configurations,
|
|
.configuration = 0,
|
|
.wcid_string_descriptor = wcid_string_descriptor,
|
|
.wcid_feature_descriptor = wcid_feature_descriptor,
|
|
};
|
|
#endif
|
|
#ifdef IS_PRALINE
|
|
const usb_device_t usb_device_praline = {
|
|
.descriptor = usb_descriptor_device_hackrf,
|
|
.descriptor_strings = usb_descriptor_strings_praline,
|
|
.qualifier_descriptor = usb_descriptor_device_qualifier,
|
|
.configurations = &usb_configurations,
|
|
.configuration = 0,
|
|
.wcid_string_descriptor = wcid_string_descriptor,
|
|
.wcid_feature_descriptor = wcid_feature_descriptor,
|
|
};
|
|
#endif
|
|
#ifdef IS_JAWBREAKER
|
|
const usb_device_t usb_device_jawbreaker = {
|
|
.descriptor = usb_descriptor_device_jawbreaker,
|
|
.descriptor_strings = usb_descriptor_strings_jawbreaker,
|
|
.qualifier_descriptor = usb_descriptor_device_qualifier,
|
|
.configurations = &usb_configurations,
|
|
.configuration = 0,
|
|
.wcid_string_descriptor = wcid_string_descriptor,
|
|
.wcid_feature_descriptor = wcid_feature_descriptor,
|
|
};
|
|
#endif
|
|
#ifdef IS_RAD1O
|
|
const usb_device_t usb_device_rad1o = {
|
|
.descriptor = usb_descriptor_device_rad1o,
|
|
.descriptor_strings = usb_descriptor_strings_rad1o,
|
|
.qualifier_descriptor = usb_descriptor_device_qualifier,
|
|
.configurations = &usb_configurations,
|
|
.configuration = 0,
|
|
.wcid_string_descriptor = wcid_string_descriptor,
|
|
.wcid_feature_descriptor = wcid_feature_descriptor,
|
|
};
|
|
#endif
|