summaryrefslogtreecommitdiff
path: root/drivers/bluetooth/btintel_pcie_debug.c
AgeCommit message (Collapse)Author
9 daysBluetooth: btintel_pcie: Configure YoYo DBGC buffer allocationsAjaykv
Parse DBGC buffer allocation TLVs for DBGC1 through DBGC3. Validate the allocation ID, DRAM location, fragment count, requested size, and minimum fragment size before storing each allocation. Use configured fragment counts and sizes for DMA buffers, firmware context descriptors, and coredump collection. On MDBGC devices, omit unconfigured buffer IDs when YoYo is enabled; retain legacy allocations when YoYo configuration is absent or invalid. Single-DBGC devices use DBGC1. Signed-off-by: Ajaykv <ajay.k.v@intel.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
9 daysBluetooth: btintel_pcie: Validate the YoYo DEBUG_INFO TLVAjaykv
Require a DEBUG_INFO TLV in the YoYo firmware configuration. Validate its payload length, version, Bluetooth domain, external image type, and Bluetooth core type before accepting the configuration. Reject missing or invalid metadata so the driver keeps legacy DBGC defaults instead of enabling an incompatible configuration. Signed-off-by: Ajaykv <ajay.k.v@intel.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
9 daysBluetooth: btintel_pcie: Add initial YoYo debug supportAjaykv
Add an optional YoYo firmware configuration path to the Intel PCIe Bluetooth driver. Read DBG_PATH and ENABLE_INI from ibt_bt_dbg_cfg.ini, and load intel/ibt_debug_yoyo.bin only when YoYo is enabled and host DRAM routing is selected. Introduce a runtime context and bounded TLV-stream validation helper. Initialize and clean up the context with PCI probe and removal, while falling back to legacy debug behavior if optional YoYo data is missing or invalid. Runtime validation of the complete P1-P3 series produced: [ 3.286504] Bluetooth: Core ver 2.22 [ 3.297359] Bluetooth: HCI device and connection manager initialized [ 3.297373] Bluetooth: HCI socket layer initialized [ 3.297376] Bluetooth: L2CAP socket layer initialized [ 3.297384] Bluetooth: SCO socket layer initialized [ 3.332848] Bluetooth: YoYo: configuration loaded and validated [3.360857-3.361712] Bluetooth: DBGC1-3: each 16 x 256 KiB (4 MiB) [3.361715] Bluetooth: MDBGC DBGC1-3: each 16 x 256 KiB [ 3.397439] Bluetooth: hci0: Device revision is 0 [ 3.397442] Bluetooth: hci0: Secure boot is enabled [ 3.397443] Bluetooth: hci0: OTP lock is disabled [ 3.397444] Bluetooth: hci0: API lock is enabled [ 3.397444] Bluetooth: hci0: Debug lock is disabled Signed-off-by: Ajaykv <ajay.k.v@intel.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>