STRUCT BCM_DEVICE_DATA(9)
π struct bcm_device_data(9) β the kernel API manual, but make it cute π
okay so bestie, this is the manual page for struct bcm_device_data(9) β yes, the man page itself is literally called struct bcm_device_data, and it's all about device specific data. that's the whole vibe. it's a little struct that holds the per-device quirks for the Bluetooth HCI BCM driver, and honestly? she's small but she's doing a LOT. π
β¨ NAME β¨
struct bcm_device_data β device specific data π¦
like, literally just the device-specific bits. no cap. π«Ά
πΈ SYNOPSIS πΈ
here's the whole struct, copied exactly because we do not mess with code in this house:
struct bcm_device_data {
bool no_early_set_baudrate;
bool drive_rts_on_open;
bool no_uart_clock_set;
u32 max_autobaud_speed;
u32 max_speed;
};
look at her. five members. iconic. π
β Members β
okay so let's meet the cast, one member at a time π
no_early_set_baudrateβ this one means disallow set baudrate before driver setup. so like, no touching the baudrate early, bestie, the driver isn't ready yet. πdrive_rts_on_openβ drive RTS signal on->openwhen platform requires it. so on open, the RTS signal gets driven, but only when the platform requires it. platform said jump, we jump. πno_uart_clock_setβ the UART clock set command for >3Mbps mode is unavailable. that command just isn't there for that mode, and this flag is how you know. πmax_autobaud_speedβ the max baudrate supported by device in autobaud mode. the ceiling for autobaud. βmax_speedβ literally just the max baudrate supported. the max. the limit. periodt. π₯
π¦ SEE ALSO π¦
- Kernel file
./drivers/bluetooth/hci_bcm.cβ go read the source, iykyk π struct bcm_device(9)β her sibling struct, also slaying π
ngl, if you're poking at these flags without reading hci_bcm.c first, that's giving chaos main character energy. π read the source first, bestie. π§
and that's the page!! πΈ this little gem lives in ./drivers/bluetooth and it's dated October 2026 β so mark your calendar, she's from the future β¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms