Skip to content

device_next/usbd_ch9.c depends on CONFIG_HWINFO=y, but CONFIG_HWINFO is only implied by CONFIG_USB_DEVICE_STACK_NEXT #93266

@fkokosinski

Description

@fkokosinski

Describe the bug

As in the title - the user can n-select CONFIG_HWINFO, because it is only implied by CONFIG_USB_DEVICE_STACK_NEXT. The change from select to imply happened in: 9b87964.

Regression

  • This is a regression.

Steps to reproduce

To reproduce, use the following commands:

  1. west build -p -b stm32f429i_disc1/stm32f429xx samples/subsys/usb/shell -- -DCONFIG_HWINFO=n
  2. See output

Relevant log output

/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: error: 'CONFIG_USBD_HWINFO_DEVID_LENGT
' undeclared here (not in a function)
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: note: in definition of macro 'USBD_SN_ASCII7_LENGTH'
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c: In function 'get_sn_from_hwid':
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: error: 'CONFIG_USBD_HWINFO_DEVID_LENGT
' undeclared (first use in this function)
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: note: in definition of macro 'USBD_SN_ASCII7_LENGTH'
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: note: each undeclared identifier is reported only once for each function it appears in
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: note: in definition of macro 'USBD_SN_ASCII7_LENGTH'
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:542:17: warning: unused variable 'hwid' [-Wunused-variable]
  542 |         uint8_t hwid[USBD_SN_ASCII7_LENGTH / 2U];
      |                 ^~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c: In function 'string_ascii7_to_utf16le':
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: error: 'CONFIG_USBD_HWINFO_DEVID_LENGT
' undeclared (first use in this function)
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:536:32: note: in definition of macro 'USBD_SN_ASCII7_LENGTH'
  536 | #define USBD_SN_ASCII7_LENGTH (CONFIG_USBD_HWINFO_DEVID_LENGTH * 2)
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:579:62: error: type of formal parameter 1 is incomplete
  579 |                 ssize_t sn_ascii7_str_len = get_sn_from_hwid(sn_ascii7_str);
      |                                                              ^~~~~~~~~~~~~
/home/filip/Work/zephyr-maintenance/zephyr/subsys/usb/device_next/usbd_ch9.c:569:17: warning: unused variable 'sn_ascii7_st
' [-Wunused-variable]
  569 |         uint8_t sn_ascii7_str[USBD_SN_ASCII7_LENGTH];
      |                 ^~~~~~~~~~~~~
[183/201] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sched.c.obj
ninja: build stopped: subcommand failed.

Impact

Showstopper – Prevents release or major functionality; system unusable.

Environment

  • OS: Linux
  • Toolchain: Zephyr SDK
  • Commit SHA: 31ef45e

Additional Context

No response

Metadata

Metadata

Assignees

Labels

area: USBUniversal Serial BusbugThe issue is a bug, or the PR is fixing a bugpriority: lowLow impact/importance bug

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions