Skip to content

Commit 76c1d10

Browse files
committed
Add Framework13AmdAi300
Signed-off-by: Daniel Schaefer <dhs@frame.work>
1 parent 65efc9b commit 76c1d10

5 files changed

Lines changed: 38 additions & 15 deletions

File tree

framework_lib/src/ccgx/device.rs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,18 @@ impl PdPort {
4444
(Platform::GenericFramework((left, _), _, _), PdPort::Left01) => *left,
4545
(Platform::GenericFramework((_, right), _, _), PdPort::Right23) => *right,
4646
// Framework AMD Platforms (CCG8)
47-
(Platform::Framework13Amd | Platform::Framework16, PdPort::Left01) => 0x42,
48-
(Platform::Framework13Amd | Platform::Framework16, PdPort::Right23) => 0x40,
47+
(
48+
Platform::Framework13Amd7080
49+
| Platform::Framework13AmdAi300
50+
| Platform::Framework16Amd7080,
51+
PdPort::Left01,
52+
) => 0x42,
53+
(
54+
Platform::Framework13Amd7080
55+
| Platform::Framework13AmdAi300
56+
| Platform::Framework16Amd7080,
57+
PdPort::Right23,
58+
) => 0x40,
4959
// Framework Intel Platforms (CCG5 and CCG6)
5060
(_, PdPort::Left01) => 0x08,
5161
(_, PdPort::Right23) => 0x40,
@@ -64,11 +74,17 @@ impl PdPort {
6474
(Platform::IntelGen12 | Platform::IntelGen13, PdPort::Left01) => 6,
6575
(Platform::IntelGen12 | Platform::IntelGen13, PdPort::Right23) => 7,
6676
(
67-
Platform::Framework13Amd | Platform::Framework16 | Platform::IntelCoreUltra1,
77+
Platform::Framework13Amd7080
78+
| Platform::Framework16Amd7080
79+
| Platform::IntelCoreUltra1
80+
| Platform::Framework13AmdAi300
6881
PdPort::Left01,
6982
) => 1,
7083
(
71-
Platform::Framework13Amd | Platform::Framework16 | Platform::IntelCoreUltra1,
84+
Platform::Framework13Amd7080
85+
| Platform::Framework16Amd7080
86+
| Platform::IntelCoreUltra1
87+
| Platform::Framework13AmdAi300
7288
PdPort::Right23,
7389
) => 2,
7490
// (_, _) => Err(EcError::DeviceError(format!(

framework_lib/src/chromium_ec/mod.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,9 +125,13 @@ pub fn has_mec() -> bool {
125125
return has_mec;
126126
}
127127

128+
// TODO: Should turn this around
128129
!matches!(
129130
smbios::get_platform().unwrap(),
130-
Platform::Framework13Amd | Platform::Framework16 | Platform::IntelCoreUltra1
131+
Platform::Framework13Amd7080
132+
| Platform::Framework16Amd7080
133+
| Platform::IntelCoreUltra1
134+
| Platform::Framework13AmdAi300
131135
)
132136
}
133137

framework_lib/src/power.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -216,12 +216,12 @@ pub fn print_thermal(ec: &CrosEc) {
216216
println!(" PECI: {:>4}", TempSensor::from(temps[4]));
217217
println!(" F57397_VCCGT: {:>4}", TempSensor::from(temps[5]));
218218
}
219-
Some(Platform::Framework13Amd | Platform::Framework16) => {
219+
Some(Platform::Framework13Amd7080 | Platform::Framework16Amd7080) => {
220220
println!(" F75303_Local: {:>4}", TempSensor::from(temps[0]));
221221
println!(" F75303_CPU: {:>4}", TempSensor::from(temps[1]));
222222
println!(" F75303_DDR: {:>4}", TempSensor::from(temps[2]));
223223
println!(" APU: {:>4}", TempSensor::from(temps[3]));
224-
if matches!(platform, Some(Platform::Framework16)) {
224+
if matches!(platform, Some(Platform::Framework16Amd7080)) {
225225
println!(" dGPU VR: {:>4}", TempSensor::from(temps[4]));
226226
println!(" dGPU VRAM: {:>4}", TempSensor::from(temps[5]));
227227
println!(" dGPU AMB: {:>4}", TempSensor::from(temps[6]));
@@ -495,7 +495,7 @@ pub fn get_pd_info(ec: &CrosEc, ports: u8) -> Vec<EcResult<UsbPdPowerInfo>> {
495495
}
496496

497497
pub fn get_and_print_pd_info(ec: &CrosEc) {
498-
let fl16 = Some(crate::util::Platform::Framework16) == get_platform();
498+
let fl16 = Some(crate::util::Platform::Framework16Amd7080) == get_platform();
499499
let ports = 4; // All our platforms have 4 PD ports so far
500500
let infos = get_pd_info(ec, ports);
501501
for (port, info) in infos.iter().enumerate().take(ports.into()) {

framework_lib/src/smbios.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -262,10 +262,11 @@ pub fn get_platform() -> Option<Platform> {
262262
"Laptop" => Some(Platform::IntelGen11),
263263
"Laptop (12th Gen Intel Core)" => Some(Platform::IntelGen12),
264264
"Laptop (13th Gen Intel Core)" => Some(Platform::IntelGen13),
265-
"Laptop 13 (AMD Ryzen 7040Series)" => Some(Platform::Framework13Amd),
266-
"Laptop 13 (AMD Ryzen 7040 Series)" => Some(Platform::Framework13Amd),
265+
"Laptop 13 (AMD Ryzen 7040Series)" => Some(Platform::Framework13Amd7080),
266+
"Laptop 13 (AMD Ryzen 7040 Series)" => Some(Platform::Framework13Amd7080),
267+
"Laptop 13 (AMD Ryzen AI 300 Series)" => Some(Platform::Framework13AmdAi300),
267268
"Laptop 13 (Intel Core Ultra Series 1)" => Some(Platform::IntelCoreUltra1),
268-
"Laptop 16 (AMD Ryzen 7040 Series)" => Some(Platform::Framework16),
269+
"Laptop 16 (AMD Ryzen 7040 Series)" => Some(Platform::Framework16Amd7080),
269270
_ => None,
270271
};
271272

framework_lib/src/util.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,12 @@ pub enum Platform {
2525
IntelGen13,
2626
/// Framework 13 - Intel Core Ultra Series 1, Codenamed MeteorLake
2727
IntelCoreUltra1,
28-
/// Framework 13 - AMD Ryzen
29-
Framework13Amd,
30-
/// Framework 16
31-
Framework16,
28+
/// Framework 13 - AMD Ryzen 7080 Series
29+
Framework13Amd7080,
30+
/// Framework 13 - AMD Ryzen AI 300 Series
31+
Framework13AmdAi300,
32+
/// Framework 16 - AMD Ryzen 7080 Series
33+
Framework16Amd7080,
3234
/// Generic Framework device
3335
/// pd_addrs, pd_ports, has_mec
3436
GenericFramework((u16, u16), (u8, u8), bool),

0 commit comments

Comments
 (0)