Skip to content

Commit e328bb4

Browse files
Merge pull request #42 from FrameworkComputer/mtl
framework_lib: Add Meteorlake definitions
2 parents 705805c + 6e2d617 commit e328bb4

5 files changed

Lines changed: 30 additions & 5 deletions

File tree

framework_lib/src/ccgx/device.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,14 @@ impl PdPort {
6363
(Platform::IntelGen11, _) => 6,
6464
(Platform::IntelGen12 | Platform::IntelGen13, PdPort::Left01) => 6,
6565
(Platform::IntelGen12 | Platform::IntelGen13, PdPort::Right23) => 7,
66-
(Platform::Framework13Amd | Platform::Framework16, PdPort::Left01) => 1,
67-
(Platform::Framework13Amd | Platform::Framework16, PdPort::Right23) => 2,
66+
(
67+
Platform::Framework13Amd | Platform::Framework16 | Platform::IntelCoreUltra1,
68+
PdPort::Left01,
69+
) => 1,
70+
(
71+
Platform::Framework13Amd | Platform::Framework16 | Platform::IntelCoreUltra1,
72+
PdPort::Right23,
73+
) => 2,
6874
// (_, _) => Err(EcError::DeviceError(format!(
6975
// "Unsupported platform: {:?} {:?}",
7076
// platform, self

framework_lib/src/chromium_ec/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ pub fn has_mec() -> bool {
127127

128128
!matches!(
129129
smbios::get_platform().unwrap(),
130-
Platform::Framework13Amd | Platform::Framework16
130+
Platform::Framework13Amd | Platform::Framework16 | Platform::IntelCoreUltra1
131131
)
132132
}
133133

framework_lib/src/esrt/mod.rs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,21 @@ pub fn guid_from_str(string: &str) -> Option<Guid> {
7070
pub const TGL_BIOS_GUID: Guid = guid!("b3bdb2e4-c5cb-5c1b-bdc3-e6fc132462ff");
7171
pub const ADL_BIOS_GUID: Guid = guid!("a30a8cf3-847f-5e59-bd59-f9ec145c1a8c");
7272
pub const RPL_BIOS_GUID: Guid = guid!("13fd4ed2-cba9-50ba-bb91-aece0acb4cc3");
73+
pub const MTL_BIOS_GUID: Guid = guid!("72cecb9b-2b37-5ec2-a9ff-c739aabaadf3");
74+
7375
pub const TGL_RETIMER01_GUID: Guid = guid!("832af090-2ef9-7c47-8f6d-b405c8c7f156");
7476
pub const TGL_RETIMER23_GUID: Guid = guid!("20ef4108-6c64-d049-b6de-11ee35980b8f");
7577
pub const ADL_RETIMER01_GUID: Guid = guid!("a9c91b0c-c0b8-463d-a7da-a5d6ec646333");
7678
pub const ADL_RETIMER23_GUID: Guid = guid!("ba2e4e6e-3b0c-4f25-8a59-4c553fc86ea2");
7779
pub const RPL_RETIMER01_GUID: Guid = guid!("0c42b824-818f-428f-8687-5efcaf059bea");
7880
pub const RPL_RETIMER23_GUID: Guid = guid!("268ccbde-e087-420b-bf82-2212bd3f9bfc");
81+
pub const MTL_RETIMER01_GUID: Guid = guid!("c57fd615-2ac9-4154-bf34-4dc715344408");
82+
pub const MTL_RETIMER23_GUID: Guid = guid!("bdffce36-809c-4fa6-aecc-54536922f0e0");
83+
7984
pub const FL16_BIOS_GUID: Guid = guid!("6ae76af1-c002-5d64-8e18-658d205acf34");
8085
pub const AMD13_BIOS_GUID: Guid = guid!("b5f7dcc1-568c-50f8-a4dd-e39d1f93fda1");
8186
pub const RPL_CSME_GUID: Guid = guid!("865d322c-6ac7-4734-b43e-55db5a557d63");
87+
pub const MTL_CSME_GUID: Guid = guid!("32d8d677-eebc-4947-8f8a-0693a45240e5");
8288

8389
// In EDK2
8490
// Handled by MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.c
@@ -91,13 +97,17 @@ pub enum FrameworkGuidKind {
9197
TglBios,
9298
AdlBios,
9399
RplBios,
100+
MtlBios,
94101
TglRetimer01,
95102
TglRetimer23,
96103
AdlRetimer01,
97104
AdlRetimer23,
98105
RplRetimer01,
99106
RplRetimer23,
107+
MtlRetimer01,
108+
MtlRetimer23,
100109
RplCsme,
110+
MtlCsme,
101111
Fl16Bios,
102112
Amd13Bios,
103113
WinUx,
@@ -109,15 +119,19 @@ pub fn match_guid_kind(guid: &Guid) -> FrameworkGuidKind {
109119
TGL_BIOS_GUID => FrameworkGuidKind::TglBios,
110120
ADL_BIOS_GUID => FrameworkGuidKind::AdlBios,
111121
RPL_BIOS_GUID => FrameworkGuidKind::RplBios,
122+
MTL_BIOS_GUID => FrameworkGuidKind::MtlBios,
123+
FL16_BIOS_GUID => FrameworkGuidKind::Fl16Bios,
124+
AMD13_BIOS_GUID => FrameworkGuidKind::Amd13Bios,
112125
TGL_RETIMER01_GUID => FrameworkGuidKind::TglRetimer01,
113126
TGL_RETIMER23_GUID => FrameworkGuidKind::TglRetimer23,
114127
ADL_RETIMER01_GUID => FrameworkGuidKind::AdlRetimer01,
115128
ADL_RETIMER23_GUID => FrameworkGuidKind::AdlRetimer23,
116129
RPL_RETIMER01_GUID => FrameworkGuidKind::RplRetimer01,
117130
RPL_RETIMER23_GUID => FrameworkGuidKind::RplRetimer23,
131+
MTL_RETIMER01_GUID => FrameworkGuidKind::MtlRetimer01,
132+
MTL_RETIMER23_GUID => FrameworkGuidKind::MtlRetimer23,
118133
RPL_CSME_GUID => FrameworkGuidKind::RplCsme,
119-
FL16_BIOS_GUID => FrameworkGuidKind::Fl16Bios,
120-
AMD13_BIOS_GUID => FrameworkGuidKind::Amd13Bios,
134+
MTL_CSME_GUID => FrameworkGuidKind::MtlCsme,
121135
WINUX_GUID => FrameworkGuidKind::WinUx,
122136
_ => FrameworkGuidKind::Unknown,
123137
}

framework_lib/src/smbios.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,9 @@ pub fn get_platform() -> Option<Platform> {
134134
"Laptop (13th Gen Intel Core)" => return Some(Platform::IntelGen13),
135135
"Laptop 13 (AMD Ryzen 7040Series)" => return Some(Platform::Framework13Amd),
136136
"Laptop 13 (AMD Ryzen 7040 Series)" => return Some(Platform::Framework13Amd),
137+
"Laptop 13 (Intel Core Ultra Series 1)" => {
138+
return Some(Platform::IntelCoreUltra1)
139+
}
137140
"Laptop 16 (AMD Ryzen 7040 Series)" => return Some(Platform::Framework16),
138141
_ => {}
139142
}

framework_lib/src/util.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ pub enum Platform {
2323
IntelGen12,
2424
/// Framework 13 - Intel 13th Gen, Codenamed RaptorLake
2525
IntelGen13,
26+
/// Framework 13 - Intel Core Ultra Series 1, Codenamed MeteorLake
27+
IntelCoreUltra1,
2628
/// Framework 13 - AMD Ryzen
2729
Framework13Amd,
2830
/// Framework 16

0 commit comments

Comments
 (0)