|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86/DMI: adjustments to comply with Misra C:2012 Rule 9.3
commit 59df2851318357763be3ad8a5f300d6a9e7c6e38
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Wed Dec 6 10:25:21 2023 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Wed Dec 6 10:25:21 2023 +0100
x86/DMI: adjustments to comply with Misra C:2012 Rule 9.3
The rule demands that all array elements be initialized (or dedicated
initializers be used). Introduce a small set of macros to allow doing so
without unduly affecting use sites (in particular in terms of how many
elements .matches[] actually has; right now there's no use of
DMI_MATCH4(), so we could even consider reducing the array size to 3).
Note that DMI_MATCH() needs adjustment because of the comma included in
its expansion, which - due to being unparenthesized - would otherwise
cause macro arguments in the "further replacement" step to be wrong.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
---
xen/arch/x86/genapic/bigsmp.c | 11 ++-
xen/arch/x86/hvm/quirks.c | 25 ++---
xen/arch/x86/ioport_emulate.c | 40 +++-----
xen/arch/x86/shutdown.c | 190 +++++++++++++++---------------------
xen/arch/x86/x86_64/mmconf-fam10h.c | 5 +-
xen/include/xen/dmi.h | 7 +-
6 files changed, 117 insertions(+), 161 deletions(-)
diff --git a/xen/arch/x86/genapic/bigsmp.c b/xen/arch/x86/genapic/bigsmp.c
index 2000383ab0..9ed46cea91 100644
--- a/xen/arch/x86/genapic/bigsmp.c
+++ b/xen/arch/x86/genapic/bigsmp.c
@@ -19,11 +19,14 @@ static int __init cf_check force_bigsmp(const struct
dmi_system_id *d)
static const struct dmi_system_id __initconstrel bigsmp_dmi_table[] = {
- { force_bigsmp, "UNISYS ES7000-ONE", {
- DMI_MATCH(DMI_PRODUCT_NAME, "ES7000-ONE")
- }},
+ {
+ .ident = "UNISYS ES7000-ONE",
+ .callback = force_bigsmp,
+ DMI_MATCH1(
+ DMI_MATCH(DMI_PRODUCT_NAME, "ES7000-ONE")),
+ },
- { }
+ { }
};
diff --git a/xen/arch/x86/hvm/quirks.c b/xen/arch/x86/hvm/quirks.c
index bd30b0f881..09face0c51 100644
--- a/xen/arch/x86/hvm/quirks.c
+++ b/xen/arch/x86/hvm/quirks.c
@@ -36,42 +36,37 @@ static int __init cf_check check_port80(void)
{
.callback = dmi_hvm_deny_port80,
.ident = "Compaq Presario V6000",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
- DMI_MATCH(DMI_BOARD_NAME, "30B7")
- }
+ DMI_MATCH(DMI_BOARD_NAME, "30B7")),
},
{
.callback = dmi_hvm_deny_port80,
.ident = "HP Pavilion dv9000z",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
- DMI_MATCH(DMI_BOARD_NAME, "30B9")
- }
+ DMI_MATCH(DMI_BOARD_NAME, "30B9")),
},
{
.callback = dmi_hvm_deny_port80,
.ident = "HP Pavilion dv6000",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
- DMI_MATCH(DMI_BOARD_NAME, "30B8")
- }
+ DMI_MATCH(DMI_BOARD_NAME, "30B8")),
},
{
.callback = dmi_hvm_deny_port80,
.ident = "HP Pavilion tx1000",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
- DMI_MATCH(DMI_BOARD_NAME, "30BF")
- }
+ DMI_MATCH(DMI_BOARD_NAME, "30BF")),
},
{
.callback = dmi_hvm_deny_port80,
.ident = "Presario F700",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
- DMI_MATCH(DMI_BOARD_NAME, "30D3")
- }
+ DMI_MATCH(DMI_BOARD_NAME, "30D3")),
},
{ }
};
diff --git a/xen/arch/x86/ioport_emulate.c b/xen/arch/x86/ioport_emulate.c
index 6caeb3d470..57fbe9d09a 100644
--- a/xen/arch/x86/ioport_emulate.c
+++ b/xen/arch/x86/ioport_emulate.c
@@ -43,59 +43,51 @@ static const struct dmi_system_id __initconstrel
ioport_quirks_tbl[] = {
*/
{
.ident = "HP ProLiant DL3xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3")),
},
{
.ident = "HP ProLiant DL5xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5")),
},
{
.ident = "HP ProLiant DL7xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7")),
},
{
.ident = "HP ProLiant ML3xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3")),
},
{
.ident = "HP ProLiant ML5xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5")),
},
{
.ident = "HP ProLiant BL2xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2")),
},
{
.ident = "HP ProLiant BL4xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4")),
},
{
.ident = "HP ProLiant BL6xx",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
- DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6")),
},
{ }
};
diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 7619544d14..acceec2a38 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -187,348 +187,310 @@ static const struct dmi_system_id __initconstrel
reboot_dmi_table[] = {
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell E520",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Dell DM061"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Dell DM061")),
},
{ /* Handle problems with rebooting on Dell 1300's */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell PowerEdge 1300",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
- DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 1300/"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 1300/")),
},
{ /* Handle problems with rebooting on Dell 300's */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell PowerEdge 300",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
- DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 300/"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 300/")),
},
{ /* Handle problems with rebooting on Dell Optiplex 745's SFF */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell OptiPlex 745",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745")),
},
{ /* Handle problems with rebooting on Dell Optiplex 745's DFF */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell OptiPlex 745",
- .matches = {
+ DMI_MATCH3(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
- DMI_MATCH(DMI_BOARD_NAME, "0MM599"),
- },
+ DMI_MATCH(DMI_BOARD_NAME, "0MM599")),
},
{ /* Handle problems with rebooting on Dell Optiplex 745 with 0KW626 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell OptiPlex 745",
- .matches = {
+ DMI_MATCH3(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
- DMI_MATCH(DMI_BOARD_NAME, "0KW626"),
- },
+ DMI_MATCH(DMI_BOARD_NAME, "0KW626")),
},
{ /* Handle problems with rebooting on Dell Optiplex 330 with 0KP561 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell OptiPlex 330",
- .matches = {
+ DMI_MATCH3(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
- DMI_MATCH(DMI_BOARD_NAME, "0KP561"),
- },
+ DMI_MATCH(DMI_BOARD_NAME, "0KP561")),
},
{ /* Handle problems with rebooting on Dell Optiplex 360 with 0T656F */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell OptiPlex 360",
- .matches = {
+ DMI_MATCH3(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
- DMI_MATCH(DMI_BOARD_NAME, "0T656F"),
- },
+ DMI_MATCH(DMI_BOARD_NAME, "0T656F")),
},
{ /* Handle problems with rebooting on Dell OptiPlex 760 with 0G919G */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell OptiPlex 760",
- .matches = {
+ DMI_MATCH3(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
- DMI_MATCH(DMI_BOARD_NAME, "0G919G"),
- },
+ DMI_MATCH(DMI_BOARD_NAME, "0G919G")),
},
{ /* Handle problems with rebooting on Dell 2400's */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell PowerEdge 2400",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
- DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400")),
},
{ /* Handle problems with rebooting on Dell T5400's */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell Precision T5400",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T5400"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T5400")),
},
{ /* Handle problems with rebooting on Dell T7400's */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell Precision T7400",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T7400"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T7400")),
},
{ /* Handle problems with rebooting on HP laptops */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "HP Compaq Laptop",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
- DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq")),
},
{ /* Handle problems with rebooting on Dell XPS710 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell XPS710",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Dell XPS710"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Dell XPS710")),
},
{ /* Handle problems with rebooting on Dell DXP061 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Dell DXP061",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Dell DXP061"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Dell DXP061")),
},
{ /* Handle problems with rebooting on Sony VGN-Z540N */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Sony VGN-Z540N",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
- DMI_MATCH(DMI_PRODUCT_NAME, "VGN-Z540N"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "VGN-Z540N")),
},
{ /* Handle problems with rebooting on ASUS P4S800 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "ASUS P4S800",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
- DMI_MATCH(DMI_BOARD_NAME, "P4S800"),
- },
+ DMI_MATCH(DMI_BOARD_NAME, "P4S800")),
},
{ /* Handle reboot issue on Acer Aspire one */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_KBD,
.ident = "Acer Aspire One A110",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
- DMI_MATCH(DMI_PRODUCT_NAME, "AOA110"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "AOA110")),
},
{ /* Handle problems with rebooting on Apple MacBook5 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Apple MacBook5",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "MacBook5"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "MacBook5")),
},
{ /* Handle problems with rebooting on Apple MacBookPro5 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Apple MacBookPro5",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "MacBookPro5"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "MacBookPro5")),
},
{ /* Handle problems with rebooting on Apple Macmini3,1 */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Apple Macmini3,1",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Macmini3,1"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Macmini3,1")),
},
{ /* Handle problems with rebooting on the iMac9,1. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Apple iMac9,1",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "iMac9,1"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "iMac9,1")),
},
{ /* Handle problems with rebooting on the Latitude E6320. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6320",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320")),
},
{ /* Handle problems with rebooting on the Latitude E5420. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E5420",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E5420"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E5420")),
},
{ /* Handle problems with rebooting on the Latitude E6220. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6220",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6220"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6220")),
},
{ /* Handle problems with rebooting on the Latitude E6420. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6420",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420")),
},
{ /* Handle problems with rebooting on the OptiPlex 990. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell OptiPlex 990",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990")),
},
{ /* Handle problems with rebooting on the Precision M6600. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell OptiPlex 990",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Precision M6600"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Precision M6600")),
},
{ /* Handle problems with rebooting on the Latitude E6520. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6520",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520")),
},
{ /* Handle problems with rebooting on the OptiPlex 790. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell OptiPlex 790",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790")),
},
{ /* Handle problems with rebooting on the OptiPlex 990. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell OptiPlex 990",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990")),
},
{ /* Handle problems with rebooting on the OptiPlex 390. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell OptiPlex 390",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390")),
},
{ /* Handle problems with rebooting on Dell OptiPlex 9020. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_ACPI,
.ident = "Dell OptiPlex 9020",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020")),
},
{ /* Handle problems with rebooting on the Latitude E6320. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6320",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320")),
},
{ /* Handle problems with rebooting on the Latitude E6420. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6420",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420")),
},
{ /* Handle problems with rebooting on the Latitude E6520. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_CF9,
.ident = "Dell Latitude E6520",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520")),
},
{ /* Handle problems with rebooting on Dell PowerEdge R540. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_ACPI,
.ident = "Dell PowerEdge R540",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R540"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R540")),
},
{ /* Handle problems with rebooting on Dell PowerEdge R740. */
.callback = override_reboot,
.driver_data = (void *)(long)BOOT_ACPI,
.ident = "Dell PowerEdge R740",
- .matches = {
+ DMI_MATCH2(
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R740"),
- },
+ DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R740")),
},
{ }
};
diff --git a/xen/arch/x86/x86_64/mmconf-fam10h.c
b/xen/arch/x86/x86_64/mmconf-fam10h.c
index 270dd97b6a..fd745baa56 100644
--- a/xen/arch/x86/x86_64/mmconf-fam10h.c
+++ b/xen/arch/x86/x86_64/mmconf-fam10h.c
@@ -188,9 +188,8 @@ void fam10h_check_enable_mmcfg(void)
static const struct dmi_system_id __initconstrel mmconf_dmi_table[] = {
{
.ident = "Sun Microsystems Machine",
- .matches = {
- DMI_MATCH(DMI_SYS_VENDOR, "Sun Microsystems"),
- },
+ DMI_MATCH1(
+ DMI_MATCH(DMI_SYS_VENDOR, "Sun Microsystems")),
},
{}
};
diff --git a/xen/include/xen/dmi.h b/xen/include/xen/dmi.h
index 0fef41842e..552b258cf6 100644
--- a/xen/include/xen/dmi.h
+++ b/xen/include/xen/dmi.h
@@ -30,7 +30,12 @@ struct dmi_system_id {
void *driver_data;
};
-#define DMI_MATCH(a,b) { a, b }
+#define DMI_MATCH(a,b) ((struct dmi_strmatch){ a, b })
+
+#define DMI_MATCH4(m1, m2, m3, m4) .matches = { m1, m2, m3, m4 }
+#define DMI_MATCH3(m1, m2, m3) DMI_MATCH4(m1, m2, m3, DMI_MATCH(0, NULL))
+#define DMI_MATCH2(m1, m2) DMI_MATCH3(m1, m2, DMI_MATCH(0, NULL))
+#define DMI_MATCH1(m1) DMI_MATCH2(m1, DMI_MATCH(0, NULL))
extern int dmi_check_system(const struct dmi_system_id *list);
extern void dmi_scan_machine(void);
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |