samples: hci_usb: enable new experimental USB device support
Enable Bluetooth HCI USB tranport layer from new experimental USB device support. Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
This commit is contained in:
parent
5c077d72b5
commit
cad8ae7597
3 changed files with 89 additions and 0 deletions
|
@ -7,3 +7,9 @@ tests:
|
|||
tags: usb bluetooth
|
||||
# FIXME: exclude due to build error
|
||||
platform_exclude: 96b_carbon
|
||||
sample.bluetooth.hci_usb.device_next:
|
||||
harness: bluetooth
|
||||
depends_on: usb_device ble
|
||||
tags: usb bluetooth
|
||||
extra_args: CONF_FILE="usbd_next_prj.conf"
|
||||
platform_allow: nrf52840dk_nrf52840
|
||||
|
|
|
@ -7,12 +7,80 @@
|
|||
#include <zephyr/kernel.h>
|
||||
#include <zephyr/sys/printk.h>
|
||||
#include <zephyr/usb/usb_device.h>
|
||||
#include <zephyr/usb/usbd.h>
|
||||
|
||||
#if defined(CONFIG_USB_DEVICE_STACK_NEXT)
|
||||
USBD_CONFIGURATION_DEFINE(config_1,
|
||||
USB_SCD_SELF_POWERED,
|
||||
200);
|
||||
|
||||
USBD_DESC_LANG_DEFINE(sample_lang);
|
||||
USBD_DESC_STRING_DEFINE(sample_mfr, "ZEPHYR", 1);
|
||||
USBD_DESC_STRING_DEFINE(sample_product, "Zephyr USBD BT HCI", 2);
|
||||
USBD_DESC_STRING_DEFINE(sample_sn, "0123456789ABCDEF", 3);
|
||||
|
||||
USBD_DEVICE_DEFINE(sample_usbd,
|
||||
DEVICE_DT_GET(DT_NODELABEL(zephyr_udc0)),
|
||||
0x2fe3, 0x000b);
|
||||
|
||||
static int enable_usb_device_next(void)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = usbd_add_descriptor(&sample_usbd, &sample_lang);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_add_descriptor(&sample_usbd, &sample_mfr);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_add_descriptor(&sample_usbd, &sample_product);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_add_descriptor(&sample_usbd, &sample_sn);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_add_configuration(&sample_usbd, &config_1);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_register_class(&sample_usbd, "bt_hci_0", 1);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_init(&sample_usbd);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
err = usbd_enable(&sample_usbd);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif /* CONFIG_USB_DEVICE_STACK_NEXT */
|
||||
|
||||
void main(void)
|
||||
{
|
||||
int ret;
|
||||
|
||||
#if defined(CONFIG_USB_DEVICE_STACK_NEXT)
|
||||
ret = enable_usb_device_next();
|
||||
#else
|
||||
ret = usb_enable(NULL);
|
||||
#endif
|
||||
|
||||
if (ret != 0) {
|
||||
printk("Failed to enable USB");
|
||||
return;
|
||||
|
|
15
samples/bluetooth/hci_usb/usbd_next_prj.conf
Normal file
15
samples/bluetooth/hci_usb/usbd_next_prj.conf
Normal file
|
@ -0,0 +1,15 @@
|
|||
CONFIG_STDOUT_CONSOLE=y
|
||||
CONFIG_GPIO=y
|
||||
CONFIG_SERIAL=y
|
||||
CONFIG_UART_INTERRUPT_DRIVEN=y
|
||||
CONFIG_USB_DEVICE_INITIALIZE_AT_BOOT=n
|
||||
|
||||
CONFIG_BT=y
|
||||
CONFIG_BT_HCI_RAW=y
|
||||
|
||||
CONFIG_USB_DEVICE_STACK_NEXT=y
|
||||
CONFIG_USBD_BT_HCI=y
|
||||
|
||||
CONFIG_LOG=y
|
||||
CONFIG_USBD_LOG_LEVEL_WRN=y
|
||||
CONFIG_UDC_DRIVER_LOG_LEVEL_WRN=y
|
Loading…
Add table
Add a link
Reference in a new issue