]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Bluetooth: btintel_pcie: Add support for exception dump for ScP2
authorKiran K <kiran.k@intel.com>
Sat, 28 Feb 2026 09:12:35 +0000 (14:42 +0530)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Fri, 10 Apr 2026 14:28:25 +0000 (10:28 -0400)
Add device coredump support for Scorpious Peak2 product.

Signed-off-by: Kiran K <kiran.k@intel.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
drivers/bluetooth/btintel.h
drivers/bluetooth/btintel_pcie.c

index f16f852b83b8a1b1c11b5ba4122265012a7cb807..b5c00be8277ad9dc9eaff8fc0ba8f317542d457e 100644 (file)
@@ -54,11 +54,12 @@ struct intel_tlv {
 
 #define BTINTEL_HCI_OP_RESET   0xfc01
 
-#define BTINTEL_CNVI_BLAZARI           0x900
-#define BTINTEL_CNVI_BLAZARIW          0x901
-#define BTINTEL_CNVI_GAP               0x910
-#define BTINTEL_CNVI_BLAZARU           0x930
-#define BTINTEL_CNVI_SCP               0xA00
+#define BTINTEL_CNVI_BLAZARI           0x900   /* BlazarI - Lunar Lake */
+#define BTINTEL_CNVI_BLAZARIW          0x901   /* BlazarIW - Wildcat Lake */
+#define BTINTEL_CNVI_GAP               0x910   /* Gale Peak2 - Meteor Lake */
+#define BTINTEL_CNVI_BLAZARU           0x930   /* BlazarU - Meteor Lake */
+#define BTINTEL_CNVI_SCP               0xA00   /* Scorpius Peak - Panther Lake */
+#define BTINTEL_CNVI_SCP2              0xA10   /* Scorpius Peak2 - Nova Lake */
 
 /* CNVR */
 #define BTINTEL_CNVR_FMP2              0x910
index 0ce47b88db6eef2cc62c09363e59e39d13574850..0febdbd0d86ed3230dbde249c6d5b335d67b7df5 100644 (file)
@@ -74,6 +74,9 @@ struct btintel_pcie_dev_recovery {
 #define BTINTEL_PCIE_SCP_HWEXP_SIZE            4096
 #define BTINTEL_PCIE_SCP_HWEXP_DMP_ADDR                0xB030F800
 
+#define BTINTEL_PCIE_SCP2_HWEXP_SIZE           4096
+#define BTINTEL_PCIE_SCP2_HWEXP_DMP_ADDR       0xB031D000
+
 #define BTINTEL_PCIE_MAGIC_NUM 0xA5A5A5A5
 
 #define BTINTEL_PCIE_TRIGGER_REASON_USER_TRIGGER       0x17A2
@@ -1231,6 +1234,10 @@ static void btintel_pcie_read_hwexp(struct btintel_pcie_data *data)
                len = BTINTEL_PCIE_SCP_HWEXP_SIZE;
                addr = BTINTEL_PCIE_SCP_HWEXP_DMP_ADDR;
        break;
+       case BTINTEL_CNVI_SCP2:
+               len = BTINTEL_PCIE_SCP2_HWEXP_SIZE;
+               addr = BTINTEL_PCIE_SCP2_HWEXP_DMP_ADDR;
+       break;
        default:
                bt_dev_err(data->hdev, "Unsupported cnvi 0x%8.8x", data->dmp_hdr.cnvi_top);
                return;