diff --git a/src/uniwill_keyboard.h b/src/uniwill_keyboard.h index fb62732..07ed829 100644 --- a/src/uniwill_keyboard.h +++ b/src/uniwill_keyboard.h @@ -977,14 +977,32 @@ static ssize_t uw_charging_prio_store(struct device *child, } static const u8 uw_romid_PH4PxX[14] = {0x0C, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; +static const u8 uw_romid_PH6PxX[14] = {0x0C, 0x01, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; static const struct dmi_system_id uw_sku_romid_table[] = { + // IBPG8 mk1 + // Logic: If product serial matches 16inch use that, else default to 14inch + { + .matches = { + DMI_MATCH(DMI_PRODUCT_SKU, "IBP1XI08MK1"), + DMI_MATCH(DMI_PRODUCT_SERIAL, "PH6PRX"), + }, + .driver_data = (void *)&uw_romid_PH6PxX + }, { .matches = { DMI_MATCH(DMI_PRODUCT_SKU, "IBP1XI08MK1"), }, .driver_data = (void *)&uw_romid_PH4PxX }, + // IBP16G8 mk2 + { + .matches = { + DMI_MATCH(DMI_PRODUCT_SKU, "IBP1XI08MK2"), + DMI_MATCH(DMI_PRODUCT_SERIAL, "PH6"), + }, + .driver_data = (void *)&uw_romid_PH6PxX + }, {} };