Index | Thread | Search

From:
Jonathan Gray <jsg@jsg.id.au>
Subject:
add device ids for Intel Meteor Lake U/H
To:
tech@openbsd.org
Date:
Tue, 5 Mar 2024 17:12:58 +1100

Download raw body.

Thread
Meteor Lake U/H device ids from:
Intel Core Ultra Processor
Datasheet, Volume 1 of 2, Doc. No.: 792044, Rev.: 002

and match on azalia, dwiic, ichiic, puc

These machines are slowly starting to become available.
Untested but everything seems to be the same as earlier hardware.
U Type 4 has some different ids to U/H.

The marketing names are a mess, no longer xth generation Core it is
"Intel Core Ultra processors (Series 1)"
https://ark.intel.com/content/www/us/en/ark/products/series/236803/intel-core-ultra-processors-series-1.html
perhaps Core Ultra -> MTL in the strings?

Index: sys/dev/pci/pcidevs
===================================================================
RCS file: /cvs/src/sys/dev/pci/pcidevs,v
diff -u -p -r1.2066 pcidevs
--- sys/dev/pci/pcidevs	4 Mar 2024 05:34:07 -0000	1.2066
+++ sys/dev/pci/pcidevs	5 Mar 2024 06:03:08 -0000
@@ -6374,7 +6374,97 @@ product INTEL 600SERIES_GSPI_2	0x7afb	60
 product INTEL 600SERIES_I2C_4	0x7afc	600 Series I2C
 product INTEL 600SERIES_I2C_5	0x7afd	600 Series I2C
 product INTEL 600SERIES_UART_2	0x7afe	600 Series UART
+product INTEL MTL_U4_HB		0x7d00	Core Ultra Host
+product INTEL MTL_H_HB_2	0x7d01	Core Ultra Host
+product INTEL MTL_U_HB_2	0x7d02	Core Ultra Host
+product INTEL MTL_DTT		0x7d03	Core Ultra DTT
+product INTEL MTL_VMD		0x7d0b	Core Ultra VMD
+product INTEL MTL_PMT		0x7d0d	Core Ultra PMT
+product INTEL MTL_H_HB_1	0x7d14	Core Ultra Host
+product INTEL MTL_U_HB_1	0x7d16	Core Ultra Host
+product INTEL MTL_IPU		0x7d19	Core Ultra IPU
+product INTEL MTL_NPU		0x7d1d	Core Ultra NPU
+product INTEL MTL_U4_GT_1	0x7d40	Graphics
+product INTEL MTL_U_GT_1	0x7d45	Graphics
+product INTEL MTL_H_GT_1	0x7d55	Arc Graphics
+product INTEL MTL_U_GT_2	0x7d60	Graphics
+product INTEL MTL_H_GT_2	0x7dd5	Graphics
+product INTEL MTL_H_ESPI	0x7e02	Core Ultra eSPI
+product INTEL MTL_U_ESPI	0x7e03	Core Ultra eSPI
+product INTEL MTL_U4_ESPI	0x7e07	Core Ultra eSPI
+product INTEL MTL_P2SB_SOC	0x7e20	Core Ultra P2SB
+product INTEL MTL_PMC_SOC	0x7e21	Core Ultra PMC
+product INTEL MTL_SMB		0x7e22	Core Ultra SMBus
+product INTEL MTL_SPI		0x7e23	Core Ultra SPI
+product INTEL MTL_TH		0x7e24	Core Ultra TH
+product INTEL MTL_UART_0	0x7e25	Core Ultra UART
+product INTEL MTL_UART_1	0x7e26	Core Ultra UART
+product INTEL MTL_GSPI_0	0x7e27	Core Ultra GSPI
+product INTEL MTL_HDA		0x7e28	Core Ultra HD Audio
+product INTEL MTL_GSPI_1	0x7e30	Core Ultra GSPI
+product INTEL MTL_PCIE_1	0x7e38	Core Ultra PCIE
+product INTEL MTL_PCIE_2	0x7e39	Core Ultra PCIE
+product INTEL MTL_PCIE_3	0x7e3a	Core Ultra PCIE
+product INTEL MTL_PCIE_4	0x7e3b	Core Ultra PCIE
+product INTEL MTL_PCIE_5	0x7e3c	Core Ultra PCIE
+product INTEL MTL_PCIE_6	0x7e3d	Core Ultra PCIE
+product INTEL MTL_PCIE_7	0x7e3e	Core Ultra PCIE
+product INTEL MTL_PCIE_8	0x7e3f	Core Ultra PCIE
 product INTEL WL_22500_14	0x7e40	Wi-Fi 6 AX210
+product INTEL MTL_ISH		0x7e45	Core Ultra ISH
+product INTEL MTL_GSPI_2	0x7e46	Core Ultra GSPI
+product INTEL MTL_THC_0_1	0x7e48	Core Ultra THC
+product INTEL MTL_THC_0_2	0x7e49	Core Ultra THC
+product INTEL MTL_THC_1_1	0x7e4a	Core Ultra THC
+product INTEL MTL_THC_1_2	0x7e4b	Core Ultra THC
+product INTEL MTL_GNA		0x7e4c	Core Ultra GNA
+product INTEL MTL_PCIE_9	0x7e4d	Core Ultra PCIE
+product INTEL MTL_I2C_4		0x7e50	Core Ultra I2C
+product INTEL MTL_I2C_5		0x7e51	Core Ultra I2C
+product INTEL MTL_UART_2	0x7e52	Core Ultra UART
+product INTEL MTL_HECI_5	0x7e58	Core Ultra HECI
+product INTEL MTL_HECI_6	0x7e59	Core Ultra HECI
+product INTEL MTL_HECI_7	0x7e5a	Core Ultra HECI
+product INTEL MTL_AHCI		0x7e63	Core Ultra AHCI
+product INTEL MTL_RAID_1	0x7e67	Core Ultra RAID
+product INTEL MTL_HECI_1	0x7e70	Core Ultra HECI
+product INTEL MTL_HECI_2	0x7e71	Core Ultra HECI
+product INTEL MTL_IDER		0x7e72	Core Ultra IDE-R
+product INTEL MTL_KT		0x7e73	Core Ultra KT
+product INTEL MTL_HECI_3	0x7e74	Core Ultra HECI
+product INTEL MTL_HECI_4	0x7e75	Core Ultra HECI
+product INTEL MTL_I2C_0		0x7e78	Core Ultra I2C
+product INTEL MTL_I2C_1		0x7e79	Core Ultra I2C
+product INTEL MTL_I2C_2		0x7e7a	Core Ultra I2C
+product INTEL MTL_I2C_3		0x7e7b	Core Ultra I2C
+product INTEL MTL_I3C		0x7e7c	Core Ultra I3C
+product INTEL MTL_XHCI_2	0x7e7d	Core Ultra xHCI
+product INTEL MTL_XDCI_2	0x7e7e	Core Ultra xDCI
+product INTEL MTL_SRAM		0x7e7f	Core Ultra SRAM
+product INTEL MTL_U4_XHCI	0x7eb0	Core Ultra xHCI
+product INTEL MTL_U4_XDCI	0x7eb1	Core Ultra xDCI
+product INTEL MTL_U4_TBT_DMA0	0x7eb2	Core Ultra TBT
+product INTEL MTL_U4_PCIE_16	0x7eb4	Core Ultra PCIE
+product INTEL MTL_U4_PCIE_17	0x7eb5	Core Ultra PCIE
+product INTEL MTL_U4_P2SB_IOE	0x7eb8	Core Ultra P2SB
+product INTEL MTL_U4_IEH_IOE	0x7eb9	Core Ultra IEH
+product INTEL MTL_U4_PMC_IOE	0x7ebe	Core Ultra PMC
+product INTEL MTL_U4_SRAM_IOE	0x7ebf	Core Ultra SRAM
+product INTEL MTL_XHCI_1	0x7ec0	Core Ultra xHCI
+product INTEL MTL_XDCI_1	0x7ec1	Core Ultra xDCI
+product INTEL MTL_TBT_DMA0	0x7ec2	Core Ultra TBT
+product INTEL MTL_TBT_DMA1	0x7ec3	Core Ultra TBT
+product INTEL MTL_PCIE_16	0x7ec4	Core Ultra PCIE
+product INTEL MTL_PCIE_17	0x7ec5	Core Ultra PCIE
+product INTEL MTL_PCIE_18	0x7ec6	Core Ultra PCIE
+product INTEL MTL_PCIE_19	0x7ec7	Core Ultra PCIE
+product INTEL MTL_P2SB_IOE	0x7ec8	Core Ultra P2SB
+product INTEL MTL_IEH_IOE	0x7ec9	Core Ultra IEH
+product INTEL MTL_PCIE_10	0x7eca	Core Ultra PCIE
+product INTEL MTL_PCIE_11	0x7ecb	Core Ultra PCIE
+product INTEL MTL_H_PCIE_12	0x7ecc 	Core Ultra PCIE
+product INTEL MTL_PMC_IOE	0x7ece	Core Ultra PMC
+product INTEL MTL_SRAM_IOE	0x7ecf	Core Ultra SRAM
 product INTEL WL_22500_15	0x7f70	Wi-Fi 6 AX211
 product INTEL US15W_HB		0x8100	US15W Host
 product INTEL US15L_HB		0x8101	US15L/UL11L Host
Index: sys/dev/pci/azalia.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/azalia.c,v
diff -u -p -r1.285 azalia.c
--- sys/dev/pci/azalia.c	23 Nov 2023 14:24:06 -0000	1.285
+++ sys/dev/pci/azalia.c	5 Mar 2024 05:44:12 -0000
@@ -476,6 +476,7 @@ azalia_configure_pci(azalia_t *az)
 	case PCI_PRODUCT_INTEL_JSL_HDA:
 	case PCI_PRODUCT_INTEL_EHL_HDA:
 	case PCI_PRODUCT_INTEL_ADL_N_HDA:
+	case PCI_PRODUCT_INTEL_MTL_HDA:
 		reg = azalia_pci_read(az->pc, az->tag,
 		    INTEL_PCIE_NOSNOOP_REG);
 		reg &= INTEL_PCIE_NOSNOOP_MASK;
@@ -500,6 +501,7 @@ const struct pci_matchid azalia_pci_devi
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_JSL_HDA },
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_EHL_HDA },
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ADL_N_HDA },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_HDA },
 };
 
 int
Index: sys/dev/pci/dwiic_pci.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/dwiic_pci.c,v
diff -u -p -r1.24 dwiic_pci.c
--- sys/dev/pci/dwiic_pci.c	23 Nov 2023 14:24:06 -0000	1.24
+++ sys/dev/pci/dwiic_pci.c	5 Mar 2024 05:41:39 -0000
@@ -172,6 +172,12 @@ const struct pci_matchid dwiic_pci_ids[]
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ADL_N_I2C_3 },
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ADL_N_I2C_4 },
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ADL_N_I2C_5 },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_I2C_0 },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_I2C_1 },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_I2C_2 },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_I2C_3 },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_I2C_4 },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_I2C_5 },
 };
 
 int
Index: sys/dev/pci/ichiic.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/ichiic.c,v
diff -u -p -r1.53 ichiic.c
--- sys/dev/pci/ichiic.c	21 Feb 2024 22:57:11 -0000	1.53
+++ sys/dev/pci/ichiic.c	5 Mar 2024 05:43:17 -0000
@@ -141,6 +141,7 @@ const struct pci_matchid ichiic_ids[] = 
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_JSL_SMB },
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_EHL_SMB },
 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ADL_N_SMB },
+	{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_SMB },
 };
 
 int
Index: sys/dev/pci/pucdata.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/pucdata.c,v
diff -u -p -r1.119 pucdata.c
--- sys/dev/pci/pucdata.c	28 Jan 2024 03:01:39 -0000	1.119
+++ sys/dev/pci/pucdata.c	5 Mar 2024 05:45:07 -0000
@@ -187,6 +187,13 @@ const struct puc_device_description puc_
 		{ PUC_PORT_COM, 0x10, 0x0000 },
 	    },
 	},
+	{	/* MTL KT */
+	    {	PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_MTL_KT, 0x0000, 0x0000 },
+	    {	0xffff, 0xffff,					0x0000, 0x0000 },
+	    {
+		{ PUC_PORT_COM, 0x10, 0x0000 },
+	    },
+	},
 	{	/* 82946GZ KT */
 	    {	PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82946GZ_KT, 0x0000, 0x0000 },
 	    {	0xffff, 0xffff,					0x0000, 0x0000 },