Message ID | 51AF72B4.8070105@canonical.com |
---|---|
State | New |
Headers | show |
Hi Shuduo, Shuduo Sang <shuduo.sang@canonical.com> writes: > This patch was submitted to upstream in Aug 2012 by Monoj Iyer and > merged into v3.6-rc3. Pls backport to Quantal 3.5 kernel. This patch > fixes the issue thinkpad-acpi module not be loaded on some Lenovo > laptops for example Zhaoyang series. Thank you for resubmitting this patch. Since you also submitted it to the stable mailing list, I believe there's no need to add it to the Quantal kernel as an SRU. This patch will hit Quantal when stable 3.5 is released with this patch (I'm queuing it for the next release). This sort of patches (that fulfill the upstream stable requirements) are probably easier for us to handle through stable updates. So, personally, I would rather send a request to stable mailing list for this sort of patches. The benefits are obvious: more people will look at it and more people will benefit from it (other stable kernels may decide to pick this patch -- Greg has already queued your patch for the 3.0 and 3.4 kernels). Anyway, thank you for your patch -- although I'm NAKing it, it will hit Quantal soon from stable updates. Cheers,
On Thu, Jun 6, 2013 at 5:50 PM, Luis Henriques <luis.henriques@canonical.com> wrote: > > Hi Shuduo, > > Shuduo Sang <shuduo.sang@canonical.com> writes: > > > This patch was submitted to upstream in Aug 2012 by Monoj Iyer and > > merged into v3.6-rc3. Pls backport to Quantal 3.5 kernel. This patch > > fixes the issue thinkpad-acpi module not be loaded on some Lenovo > > laptops for example Zhaoyang series. > > Thank you for resubmitting this patch. > > Since you also submitted it to the stable mailing list, I believe > there's no need to add it to the Quantal kernel as an SRU. This patch > will hit Quantal when stable 3.5 is released with this patch (I'm > queuing it for the next release). > > This sort of patches (that fulfill the upstream stable requirements) > are probably easier for us to handle through stable updates. So, > personally, I would rather send a request to stable mailing list for > this sort of patches. The benefits are obvious: more people will > look at it and more people will benefit from it (other stable kernels > may decide to pick this patch -- Greg has already queued your patch > for the 3.0 and 3.4 kernels). > > Anyway, thank you for your patch -- although I'm NAKing it, it will > hit Quantal soon from stable updates. That's fine. Thank you. > > Cheers, > -- > Luis > > > > > Thanks, > > Shuduo > > > > From a4f46bb9fa84642e356898ee44b670989622f8bb Mon Sep 17 00:00:00 2001 > > From: Manoj Iyer <manoj.iyer@canonical.com> > > Date: Mon, 6 Aug 2012 18:15:37 -0500 > > Subject: [PATCH] thinkpad-acpi: recognize latest V-Series using > > DMI_BIOS_VENDOR > > > > In the latest V-series bios DMI_PRODUCT_VERSION does not contain > > the string Lenovo or Thinkpad, but is set to the model number, this > > causes the thinkpad_acpi module to fail to load. Recognize laptop > > as Lenovo using DMI_BIOS_VENDOR instead, which is set to Lenovo. > > > > Test on V490u > > ============= > > == After the patch == > > > > [ 1350.295757] thinkpad_acpi: ThinkPad ACPI Extras v0.24 > > [ 1350.295760] thinkpad_acpi: http://ibm-acpi.sf.net/ > > [ 1350.295761] thinkpad_acpi: ThinkPad BIOS H7ET21WW (1.00 ), EC unknown > > [ 1350.295763] thinkpad_acpi: Lenovo LENOVO, model LV5DXXX > > [ 1350.296086] thinkpad_acpi: detected a 8-level brightness capable ThinkPad > > [ 1350.296694] thinkpad_acpi: radio switch found; radios are enabled > > [ 1350.296703] thinkpad_acpi: possible tablet mode switch found; > > ThinkPad in laptop mode > > [ 1350.306466] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio > > is unblocked > > [ 1350.307082] Registered led device: tpacpi::thinklight > > [ 1350.307215] Registered led device: tpacpi::power > > [ 1350.307255] Registered led device: tpacpi::standby > > [ 1350.307294] Registered led device: tpacpi::thinkvantage > > [ 1350.308160] thinkpad_acpi: Standard ACPI backlight interface > > available, not loading native one > > [ 1350.308333] thinkpad_acpi: Console audio control enabled, mode: > > monitor (read only) > > [ 1350.312287] input: ThinkPad Extra Buttons as > > /devices/platform/thinkpad_acpi/input/input14 > > > > == Before the patch == > > sudo modprobe thinkpad_acpi > > FATAL: Error inserting thinkpad_acpi > > (/lib/modules/3.2.0-27-generic/kernel/drivers/platform/x86/thinkpad_acpi.ko): > > No such device > > > > Test on B485 > > ============= > > This patch was also test in a B485 where the thinkpad_acpi module does not > > have any issues loading. But, I tested it to make sure this patch does not > > break on already functioning models of Lenovo products. > > > > [13486.746359] thinkpad_acpi: ThinkPad ACPI Extras v0.24 > > [13486.746364] thinkpad_acpi: http://ibm-acpi.sf.net/ > > [13486.746368] thinkpad_acpi: ThinkPad BIOS HJET15WW(1.01), EC unknown > > [13486.746373] thinkpad_acpi: Lenovo Lenovo LB485, model 814TR01 > > [13486.747300] thinkpad_acpi: detected a 8-level brightness capable ThinkPad > > [13486.752435] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio > > is unblocked > > [13486.752883] Registered led device: tpacpi::thinklight > > [13486.752915] thinkpad_acpi: Standard ACPI backlight interface > > available, not loading native one > > [13486.753216] thinkpad_acpi: Console audio control enabled, mode: > > monitor (read only) > > [13486.757147] input: ThinkPad Extra Buttons as > > /devices/platform/thinkpad_acpi/input/input15 > > > > Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com> > > Signed-off-by: Matthew Garrett <mjg@redhat.com> > > Signed-off-by: Shuduo Sang <shuduo.sang@canonical.com> > > --- > > drivers/platform/x86/thinkpad_acpi.c | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/drivers/platform/x86/thinkpad_acpi.c > > b/drivers/platform/x86/thinkpad_acpi.c > > index f28f36c..80e3779 100644 > > --- a/drivers/platform/x86/thinkpad_acpi.c > > +++ b/drivers/platform/x86/thinkpad_acpi.c > > @@ -8664,6 +8664,13 @@ static int __must_check __init > > get_thinkpad_model_data( > > tp->model_str = kstrdup(s, GFP_KERNEL); > > if (!tp->model_str) > > return -ENOMEM; > > + } else { > > + s = dmi_get_system_info(DMI_BIOS_VENDOR); > > + if (s && !(strnicmp(s, "Lenovo", 6))) { > > + tp->model_str = kstrdup(s, GFP_KERNEL); > > + if (!tp->model_str) > > + return -ENOMEM; > > + } > > } > > > > s = dmi_get_system_info(DMI_PRODUCT_NAME); > > -- > > 1.8.1.2 >
============= == After the patch == [ 1350.295757] thinkpad_acpi: ThinkPad ACPI Extras v0.24 [ 1350.295760] thinkpad_acpi: http://ibm-acpi.sf.net/ [ 1350.295761] thinkpad_acpi: ThinkPad BIOS H7ET21WW (1.00 ), EC unknown [ 1350.295763] thinkpad_acpi: Lenovo LENOVO, model LV5DXXX [ 1350.296086] thinkpad_acpi: detected a 8-level brightness capable ThinkPad [ 1350.296694] thinkpad_acpi: radio switch found; radios are enabled [ 1350.296703] thinkpad_acpi: possible tablet mode switch found; ThinkPad in laptop mode [ 1350.306466] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked [ 1350.307082] Registered led device: tpacpi::thinklight [ 1350.307215] Registered led device: tpacpi::power [ 1350.307255] Registered led device: tpacpi::standby [ 1350.307294] Registered led device: tpacpi::thinkvantage [ 1350.308160] thinkpad_acpi: Standard ACPI backlight interface available, not loading native one [ 1350.308333] thinkpad_acpi: Console audio control enabled, mode: monitor (read only) [ 1350.312287] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input14 == Before the patch == sudo modprobe thinkpad_acpi FATAL: Error inserting thinkpad_acpi (/lib/modules/3.2.0-27-generic/kernel/drivers/platform/x86/thinkpad_acpi.ko): No such device Test on B485 ============= This patch was also test in a B485 where the thinkpad_acpi module does not have any issues loading. But, I tested it to make sure this patch does not break on already functioning models of Lenovo products. [13486.746359] thinkpad_acpi: ThinkPad ACPI Extras v0.24 [13486.746364] thinkpad_acpi: http://ibm-acpi.sf.net/ [13486.746368] thinkpad_acpi: ThinkPad BIOS HJET15WW(1.01), EC unknown [13486.746373] thinkpad_acpi: Lenovo Lenovo LB485, model 814TR01 [13486.747300] thinkpad_acpi: detected a 8-level brightness capable ThinkPad [13486.752435] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked [13486.752883] Registered led device: tpacpi::thinklight [13486.752915] thinkpad_acpi: Standard ACPI backlight interface available, not loading native one [13486.753216] thinkpad_acpi: Console audio control enabled, mode: monitor (read only) [13486.757147] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input15 Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Shuduo Sang <shuduo.sang@canonical.com> --- drivers/platform/x86/thinkpad_acpi.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index f28f36c..80e3779 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c @@ -8664,6 +8664,13 @@ static int __must_check __init get_thinkpad_model_data( tp->model_str = kstrdup(s, GFP_KERNEL); if (!tp->model_str) return -ENOMEM; + } else { + s = dmi_get_system_info(DMI_BIOS_VENDOR); + if (s && !(strnicmp(s, "Lenovo", 6))) { + tp->model_str = kstrdup(s, GFP_KERNEL); + if (!tp->model_str) + return -ENOMEM; + } }
This patch was submitted to upstream in Aug 2012 by Monoj Iyer and merged into v3.6-rc3. Pls backport to Quantal 3.5 kernel. This patch fixes the issue thinkpad-acpi module not be loaded on some Lenovo laptops for example Zhaoyang series. Thanks, Shuduo From a4f46bb9fa84642e356898ee44b670989622f8bb Mon Sep 17 00:00:00 2001 From: Manoj Iyer <manoj.iyer@canonical.com> Date: Mon, 6 Aug 2012 18:15:37 -0500 Subject: [PATCH] thinkpad-acpi: recognize latest V-Series using DMI_BIOS_VENDOR In the latest V-series bios DMI_PRODUCT_VERSION does not contain the string Lenovo or Thinkpad, but is set to the model number, this causes the thinkpad_acpi module to fail to load. Recognize laptop as Lenovo using DMI_BIOS_VENDOR instead, which is set to Lenovo. Test on V490u s = dmi_get_system_info(DMI_PRODUCT_NAME);