mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-29 15:14:18 +08:00
leds: Add more product/board names for PC Engines APU2
PC Engines "legacy" coreboot 4.0.8 changed the product/board name
from "APU2" to "apu2".
PC Engines "mainline" coreboot uses, instead, "PC Engines apu2" as
product/board name.
This commit adds the 2 variants ("apu2" and "PC Engines apu2") of
product/board name to be compatible with all the APU2 BIOSes.
Fixes: 3faee9423c
("leds: Add driver for PC Engines APU/APU2 LEDs")
Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
This commit is contained in:
parent
386570d76f
commit
2dd1ea5b8a
@ -110,6 +110,7 @@ static const struct dmi_system_id apu_led_dmi_table[] __initconst = {
|
|||||||
DMI_MATCH(DMI_PRODUCT_NAME, "APU")
|
DMI_MATCH(DMI_PRODUCT_NAME, "APU")
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
/* PC Engines APU2 with "Legacy" bios < 4.0.8 */
|
||||||
{
|
{
|
||||||
.ident = "apu2",
|
.ident = "apu2",
|
||||||
.matches = {
|
.matches = {
|
||||||
@ -117,6 +118,22 @@ static const struct dmi_system_id apu_led_dmi_table[] __initconst = {
|
|||||||
DMI_MATCH(DMI_BOARD_NAME, "APU2")
|
DMI_MATCH(DMI_BOARD_NAME, "APU2")
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
/* PC Engines APU2 with "Legacy" bios >= 4.0.8 */
|
||||||
|
{
|
||||||
|
.ident = "apu2",
|
||||||
|
.matches = {
|
||||||
|
DMI_MATCH(DMI_SYS_VENDOR, "PC Engines"),
|
||||||
|
DMI_MATCH(DMI_BOARD_NAME, "apu2")
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/* PC Engines APU2 with "Mainline" bios */
|
||||||
|
{
|
||||||
|
.ident = "apu2",
|
||||||
|
.matches = {
|
||||||
|
DMI_MATCH(DMI_SYS_VENDOR, "PC Engines"),
|
||||||
|
DMI_MATCH(DMI_BOARD_NAME, "PC Engines apu2")
|
||||||
|
}
|
||||||
|
},
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(dmi, apu_led_dmi_table);
|
MODULE_DEVICE_TABLE(dmi, apu_led_dmi_table);
|
||||||
@ -211,7 +228,9 @@ static int __init apu_led_probe(struct platform_device *pdev)
|
|||||||
apu_led->platform = APU1_LED_PLATFORM;
|
apu_led->platform = APU1_LED_PLATFORM;
|
||||||
apu_led->num_led_instances = ARRAY_SIZE(apu1_led_profile);
|
apu_led->num_led_instances = ARRAY_SIZE(apu1_led_profile);
|
||||||
apu_led->iosize = APU1_IOSIZE;
|
apu_led->iosize = APU1_IOSIZE;
|
||||||
} else if (dmi_match(DMI_BOARD_NAME, "APU2")) {
|
} else if (dmi_match(DMI_BOARD_NAME, "APU2") ||
|
||||||
|
dmi_match(DMI_BOARD_NAME, "apu2") ||
|
||||||
|
dmi_match(DMI_BOARD_NAME, "PC Engines apu2")) {
|
||||||
apu_led->profile = apu2_led_profile;
|
apu_led->profile = apu2_led_profile;
|
||||||
apu_led->platform = APU2_LED_PLATFORM;
|
apu_led->platform = APU2_LED_PLATFORM;
|
||||||
apu_led->num_led_instances = ARRAY_SIZE(apu2_led_profile);
|
apu_led->num_led_instances = ARRAY_SIZE(apu2_led_profile);
|
||||||
@ -237,7 +256,10 @@ static int __init apu_led_init(void)
|
|||||||
pr_err("No PC Engines board detected\n");
|
pr_err("No PC Engines board detected\n");
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
if (!(dmi_match(DMI_PRODUCT_NAME, "APU") || dmi_match(DMI_PRODUCT_NAME, "APU2"))) {
|
if (!(dmi_match(DMI_PRODUCT_NAME, "APU") ||
|
||||||
|
dmi_match(DMI_PRODUCT_NAME, "APU2") ||
|
||||||
|
dmi_match(DMI_PRODUCT_NAME, "apu2") ||
|
||||||
|
dmi_match(DMI_PRODUCT_NAME, "PC Engines apu2"))) {
|
||||||
pr_err("Unknown PC Engines board: %s\n",
|
pr_err("Unknown PC Engines board: %s\n",
|
||||||
dmi_get_system_info(DMI_PRODUCT_NAME));
|
dmi_get_system_info(DMI_PRODUCT_NAME));
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
Loading…
Reference in New Issue
Block a user