1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00

ACPI fixes for 6.14-rc2

- Add an ACPI IRQ override quirk for Eluktronics MECH-17 to make the
    internal keyboard work (Gannon Kolding).
 
  - Make acpi_data_prop_read() reflect the OF counterpart behavior in
    error cases (Andy Shevchenko).
 
  - Remove recently added strict ACPI PRM handler address checks that
    prevented PRM from working on some platforms in the field (Aubrey
    Li).
 -----BEGIN PGP SIGNATURE-----
 
 iQJGBAABCAAwFiEE4fcc61cGeeHD/fCwgsRv/nhiVHEFAmemAFISHHJqd0Byand5
 c29ja2kubmV0AAoJEILEb/54YlRxKnAQAJvLgC5SNqoZOCKn27C6IzVkdX9ghmr6
 vWL0ZzmO8MsT7ts03Mb6+pZPgwTWkVcFztLbrwiZb6AmwkaBXUcXX/O3rjCXDVPj
 VtiHVOxKitIqi/fBwtD8VvGv2l9NUSocDPk0/7nl6UTfSinZff0dFW0Qt7PwNpab
 FYRG/QUe3eLd8mOWKXL40Il4dINnf2lOkAq/Y2Qy7ZSRUhZ1dRuTXK8sTQvmVjte
 O4OrHOO89K06U3/9VooNpP9OFRDW+co9y/G+jiHDk9Leep6VFSxej1O9/MqO836A
 fqs/GuriSeHjREu/6FTSGuK1FG7jP1J1Lonq3TqofQq2ECmzfGqVrqH+8kjwlFmB
 HwYGl3bHbm460wqV/eSR7fEBoPo0F8vImcimeLT5UJbIxVrjKjwqUaZZ57qPHxL4
 nWMraXjXnUoUwuPFG/02SCW1GLsslr8ot2SxGxWA5Er0JndvTY1DGHN9QZs8tkeH
 Pwi1hvsuDqj7EFjFuBnK9n4H7ltIEGrpNKwDI3hBIn8lYE9rWkr7jZdpYVCapH+W
 IpwiuDIsLqTHTbbcOA8gwC8BflQC+otzwSo5CiXMbLv5ijZX04Ipc4sFKCvzfFE+
 NXjtfrGGpOKRmas9FPP1AFLI+oJxOAEbx2rqQJvUSm4YaFT/OOQTIyHr7zo0Wfgi
 cgqEyrdrN8sM
 =wntC
 -----END PGP SIGNATURE-----

Merge tag 'acpi-6.14-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI fixes from Rafael Wysocki:
 "These fix three assorted issues, including one recent regression:

   - Add an ACPI IRQ override quirk for Eluktronics MECH-17 to make the
     internal keyboard work (Gannon Kolding)

   - Make acpi_data_prop_read() reflect the OF counterpart behavior in
     error cases (Andy Shevchenko)

   - Remove recently added strict ACPI PRM handler address checks that
     prevented PRM from working on some platforms in the field (Aubrey
     Li)"

* tag 'acpi-6.14-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  ACPI: PRM: Remove unnecessary strict handler address checks
  ACPI: resource: IRQ override for Eluktronics MECH-17
  ACPI: property: Fix return value for nval == 0 in acpi_data_prop_read()
This commit is contained in:
Linus Torvalds 2025-02-07 10:08:25 -08:00
commit 0aa0282a72
3 changed files with 12 additions and 8 deletions

View file

@ -287,9 +287,7 @@ static acpi_status acpi_platformrt_space_handler(u32 function,
if (!handler || !module)
goto invalid_guid;
if (!handler->handler_addr ||
!handler->static_data_buffer_addr ||
!handler->acpi_param_buffer_addr) {
if (!handler->handler_addr) {
buffer->prm_status = PRM_HANDLER_ERROR;
return AE_OK;
}

View file

@ -1187,8 +1187,6 @@ static int acpi_data_prop_read(const struct acpi_device_data *data,
}
break;
}
if (nval == 0)
return -EINVAL;
if (obj->type == ACPI_TYPE_BUFFER) {
if (proptype != DEV_PROP_U8)
@ -1212,9 +1210,11 @@ static int acpi_data_prop_read(const struct acpi_device_data *data,
ret = acpi_copy_property_array_uint(items, (u64 *)val, nval);
break;
case DEV_PROP_STRING:
ret = acpi_copy_property_array_string(
items, (char **)val,
min_t(u32, nval, obj->package.count));
nval = min_t(u32, nval, obj->package.count);
if (nval == 0)
return -ENODATA;
ret = acpi_copy_property_array_string(items, (char **)val, nval);
break;
default:
ret = -EINVAL;

View file

@ -563,6 +563,12 @@ static const struct dmi_system_id irq1_edge_low_force_override[] = {
DMI_MATCH(DMI_BOARD_NAME, "RP-15"),
},
},
{
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Eluktronics Inc."),
DMI_MATCH(DMI_BOARD_NAME, "MECH-17"),
},
},
{
/* TongFang GM6XGxX/TUXEDO Stellaris 16 Gen5 AMD */
.matches = {