Message ID | ae79e027eb8f5f476e32d0cf30a04b726f6749e4.1345055783.git.joseph.salisbury@canonical.com |
---|---|
State | New |
Headers | show |
On 08/28/2012 12:34 PM, joseph.salisbury@canonical.com wrote: > From: Joseph Salisbury <joseph.salisbury@canonical.com> > > Please revert this commit since it causes a regression reported in bug 1028151 > > BugLink: http://bugs.launchpad.net/bugs/1028151 > > This reverts commit 9a2e71ce177a1602a0502fbcbb3f11e4bae584e4. > --- > drivers/platform/x86/samsung-laptop.c | 235 +++++++++++++++++++++++++++++++-- > 1 file changed, 227 insertions(+), 8 deletions(-) > > diff --git a/drivers/platform/x86/samsung-laptop.c b/drivers/platform/x86/samsung-laptop.c > index af1e296..8c021cf 100644 > --- a/drivers/platform/x86/samsung-laptop.c > +++ b/drivers/platform/x86/samsung-laptop.c > @@ -540,34 +540,255 @@ static DEVICE_ATTR(performance_level, S_IWUSR | S_IRUGO, > get_performance_level, set_performance_level); > > > +static int __init dmi_check_cb(const struct dmi_system_id *id) > +{ > + pr_info("found laptop model '%s'\n", > + id->ident); > + return 1; > +} > + > static struct dmi_system_id __initdata samsung_dmi_table[] = { > { > + .ident = "N128", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N128"), > + DMI_MATCH(DMI_BOARD_NAME, "N128"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N130", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N130"), > + DMI_MATCH(DMI_BOARD_NAME, "N130"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N510", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N510"), > + DMI_MATCH(DMI_BOARD_NAME, "N510"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N150P", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N150P"), > + DMI_MATCH(DMI_BOARD_NAME, "N150P"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "X125", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "X125"), > + DMI_MATCH(DMI_BOARD_NAME, "X125"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "X120/X170", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "X120/X170"), > + DMI_MATCH(DMI_BOARD_NAME, "X120/X170"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "NC10", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "NC10"), > + DMI_MATCH(DMI_BOARD_NAME, "NC10"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "NP-Q45", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "SQ45S70S"), > + DMI_MATCH(DMI_BOARD_NAME, "SQ45S70S"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "X360", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "X360"), > + DMI_MATCH(DMI_BOARD_NAME, "X360"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "R410 Plus", > .matches = { > DMI_MATCH(DMI_SYS_VENDOR, > "SAMSUNG ELECTRONICS CO., LTD."), > - DMI_MATCH(DMI_CHASSIS_TYPE, "8"), /* Portable */ > + DMI_MATCH(DMI_PRODUCT_NAME, "R410P"), > + DMI_MATCH(DMI_BOARD_NAME, "R460"), > }, > + .callback = dmi_check_cb, > }, > { > + .ident = "R518", > .matches = { > DMI_MATCH(DMI_SYS_VENDOR, > "SAMSUNG ELECTRONICS CO., LTD."), > - DMI_MATCH(DMI_CHASSIS_TYPE, "9"), /* Laptop */ > + DMI_MATCH(DMI_PRODUCT_NAME, "R518"), > + DMI_MATCH(DMI_BOARD_NAME, "R518"), > }, > + .callback = dmi_check_cb, > }, > { > + .ident = "R519/R719", > .matches = { > DMI_MATCH(DMI_SYS_VENDOR, > "SAMSUNG ELECTRONICS CO., LTD."), > - DMI_MATCH(DMI_CHASSIS_TYPE, "10"), /* Notebook */ > + DMI_MATCH(DMI_PRODUCT_NAME, "R519/R719"), > + DMI_MATCH(DMI_BOARD_NAME, "R519/R719"), > }, > + .callback = dmi_check_cb, > }, > { > + .ident = "N150/N210/N220", > .matches = { > DMI_MATCH(DMI_SYS_VENDOR, > "SAMSUNG ELECTRONICS CO., LTD."), > - DMI_MATCH(DMI_CHASSIS_TYPE, "14"), /* Sub-Notebook */ > + DMI_MATCH(DMI_PRODUCT_NAME, "N150/N210/N220"), > + DMI_MATCH(DMI_BOARD_NAME, "N150/N210/N220"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N220", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N220"), > + DMI_MATCH(DMI_BOARD_NAME, "N220"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N150/N210/N220/N230", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N150/N210/N220/N230"), > + DMI_MATCH(DMI_BOARD_NAME, "N150/N210/N220/N230"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N150P/N210P/N220P", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N150P/N210P/N220P"), > + DMI_MATCH(DMI_BOARD_NAME, "N150P/N210P/N220P"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "R700", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "SR700"), > + DMI_MATCH(DMI_BOARD_NAME, "SR700"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "R530/R730", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "R530/R730"), > + DMI_MATCH(DMI_BOARD_NAME, "R530/R730"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "NF110/NF210/NF310", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "NF110/NF210/NF310"), > + DMI_MATCH(DMI_BOARD_NAME, "NF110/NF210/NF310"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "N145P/N250P/N260P", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "N145P/N250P/N260P"), > + DMI_MATCH(DMI_BOARD_NAME, "N145P/N250P/N260P"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "R70/R71", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, > + "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "R70/R71"), > + DMI_MATCH(DMI_BOARD_NAME, "R70/R71"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "P460", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "P460"), > + DMI_MATCH(DMI_BOARD_NAME, "P460"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "R528/R728", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "R528/R728"), > + DMI_MATCH(DMI_BOARD_NAME, "R528/R728"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "NC210/NC110", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "NC210/NC110"), > + DMI_MATCH(DMI_BOARD_NAME, "NC210/NC110"), > + }, > + .callback = dmi_check_cb, > + }, > + { > + .ident = "X520", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), > + DMI_MATCH(DMI_PRODUCT_NAME, "X520"), > + DMI_MATCH(DMI_BOARD_NAME, "X520"), > }, > + .callback = dmi_check_cb, > }, > { }, > }; > @@ -608,8 +829,7 @@ static int __init samsung_init(void) > > f0000_segment = ioremap_nocache(0xf0000, 0xffff); > if (!f0000_segment) { > - if (debug || force) > - pr_err("Can't map the segment at 0xf0000\n"); > + pr_err("Can't map the segment at 0xf0000\n"); > return -EINVAL; > } > > @@ -622,8 +842,7 @@ static int __init samsung_init(void) > } > > if (loca == 0xffff) { > - if (debug || force) > - pr_err("This computer does not support SABI\n"); > + pr_err("This computer does not support SABI\n"); > goto error_no_signature; > } > >
Given that this issue appears to be solved upstream in a different way...
diff --git a/drivers/platform/x86/samsung-laptop.c b/drivers/platform/x86/samsung-laptop.c index af1e296..8c021cf 100644 --- a/drivers/platform/x86/samsung-laptop.c +++ b/drivers/platform/x86/samsung-laptop.c @@ -540,34 +540,255 @@ static DEVICE_ATTR(performance_level, S_IWUSR | S_IRUGO, get_performance_level, set_performance_level); +static int __init dmi_check_cb(const struct dmi_system_id *id) +{ + pr_info("found laptop model '%s'\n", + id->ident); + return 1; +} + static struct dmi_system_id __initdata samsung_dmi_table[] = { { + .ident = "N128", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N128"), + DMI_MATCH(DMI_BOARD_NAME, "N128"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N130", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N130"), + DMI_MATCH(DMI_BOARD_NAME, "N130"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N510", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N510"), + DMI_MATCH(DMI_BOARD_NAME, "N510"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N150P", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N150P"), + DMI_MATCH(DMI_BOARD_NAME, "N150P"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "X125", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "X125"), + DMI_MATCH(DMI_BOARD_NAME, "X125"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "X120/X170", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "X120/X170"), + DMI_MATCH(DMI_BOARD_NAME, "X120/X170"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "NC10", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "NC10"), + DMI_MATCH(DMI_BOARD_NAME, "NC10"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "NP-Q45", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "SQ45S70S"), + DMI_MATCH(DMI_BOARD_NAME, "SQ45S70S"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "X360", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "X360"), + DMI_MATCH(DMI_BOARD_NAME, "X360"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "R410 Plus", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), - DMI_MATCH(DMI_CHASSIS_TYPE, "8"), /* Portable */ + DMI_MATCH(DMI_PRODUCT_NAME, "R410P"), + DMI_MATCH(DMI_BOARD_NAME, "R460"), }, + .callback = dmi_check_cb, }, { + .ident = "R518", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), - DMI_MATCH(DMI_CHASSIS_TYPE, "9"), /* Laptop */ + DMI_MATCH(DMI_PRODUCT_NAME, "R518"), + DMI_MATCH(DMI_BOARD_NAME, "R518"), }, + .callback = dmi_check_cb, }, { + .ident = "R519/R719", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), - DMI_MATCH(DMI_CHASSIS_TYPE, "10"), /* Notebook */ + DMI_MATCH(DMI_PRODUCT_NAME, "R519/R719"), + DMI_MATCH(DMI_BOARD_NAME, "R519/R719"), }, + .callback = dmi_check_cb, }, { + .ident = "N150/N210/N220", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), - DMI_MATCH(DMI_CHASSIS_TYPE, "14"), /* Sub-Notebook */ + DMI_MATCH(DMI_PRODUCT_NAME, "N150/N210/N220"), + DMI_MATCH(DMI_BOARD_NAME, "N150/N210/N220"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N220", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N220"), + DMI_MATCH(DMI_BOARD_NAME, "N220"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N150/N210/N220/N230", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N150/N210/N220/N230"), + DMI_MATCH(DMI_BOARD_NAME, "N150/N210/N220/N230"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N150P/N210P/N220P", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N150P/N210P/N220P"), + DMI_MATCH(DMI_BOARD_NAME, "N150P/N210P/N220P"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "R700", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "SR700"), + DMI_MATCH(DMI_BOARD_NAME, "SR700"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "R530/R730", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "R530/R730"), + DMI_MATCH(DMI_BOARD_NAME, "R530/R730"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "NF110/NF210/NF310", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "NF110/NF210/NF310"), + DMI_MATCH(DMI_BOARD_NAME, "NF110/NF210/NF310"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "N145P/N250P/N260P", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "N145P/N250P/N260P"), + DMI_MATCH(DMI_BOARD_NAME, "N145P/N250P/N260P"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "R70/R71", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "R70/R71"), + DMI_MATCH(DMI_BOARD_NAME, "R70/R71"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "P460", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "P460"), + DMI_MATCH(DMI_BOARD_NAME, "P460"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "R528/R728", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "R528/R728"), + DMI_MATCH(DMI_BOARD_NAME, "R528/R728"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "NC210/NC110", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "NC210/NC110"), + DMI_MATCH(DMI_BOARD_NAME, "NC210/NC110"), + }, + .callback = dmi_check_cb, + }, + { + .ident = "X520", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), + DMI_MATCH(DMI_PRODUCT_NAME, "X520"), + DMI_MATCH(DMI_BOARD_NAME, "X520"), }, + .callback = dmi_check_cb, }, { }, }; @@ -608,8 +829,7 @@ static int __init samsung_init(void) f0000_segment = ioremap_nocache(0xf0000, 0xffff); if (!f0000_segment) { - if (debug || force) - pr_err("Can't map the segment at 0xf0000\n"); + pr_err("Can't map the segment at 0xf0000\n"); return -EINVAL; } @@ -622,8 +842,7 @@ static int __init samsung_init(void) } if (loca == 0xffff) { - if (debug || force) - pr_err("This computer does not support SABI\n"); + pr_err("This computer does not support SABI\n"); goto error_no_signature; }
From: Joseph Salisbury <joseph.salisbury@canonical.com> Please revert this commit since it causes a regression reported in bug 1028151 BugLink: http://bugs.launchpad.net/bugs/1028151 This reverts commit 9a2e71ce177a1602a0502fbcbb3f11e4bae584e4. --- drivers/platform/x86/samsung-laptop.c | 235 +++++++++++++++++++++++++++++++-- 1 file changed, 227 insertions(+), 8 deletions(-)