Jaunty SRU - LP364678 - UBUNTU: [PATCH v2] Sony laptop: Some Sony Vaia laptops do not enable wwan power by default.
Stefan Bader
stefan.bader at canonical.com
Wed Apr 22 20:05:14 UTC 2009
Tim Gardner wrote:
> The following changes since commit a63b7d7beeaa1f8f33369cab6419831fa8991e40:
> Tyler Hicks (1):
> UBUNTU: SAUCE: (drop after 2.6.28) [PATCH] eCryptfs: Larger buffer for encrypted symlink targets
>
> are available in the git repository at:
>
> git://kernel.ubuntu.com/rtg/ubuntu-jaunty lp364678
>
> Tim Gardner (1):
> UBUNTU: Sony laptop: Sony Vaio laptops do not enable wwan power by default.
>
> drivers/misc/sony-laptop.c | 23 +++++++++++++++++++++++
> 1 files changed, 23 insertions(+), 0 deletions(-)
> From 71194af7cddcf95c8a4b137c918a86097f3d0be9 Mon Sep 17 00:00:00 2001
> From: Tim Gardner <tim.gardner at canonical.com>
> Date: Tue, 21 Apr 2009 11:09:10 -0600
> Subject: [PATCH] UBUNTU: Sony laptop: Sony Vaio laptops do not enable wwan power by default.
>
> Bug: #364678
>
> Added quirk to enable wwan power based on DMI information already present in the module.
> It appears Vaio laptops do not enable wwan power after a cold boot.
>
> Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
> ---
> drivers/misc/sony-laptop.c | 23 +++++++++++++++++++++++
> 1 files changed, 23 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c
> index 7e73acc..0d6466e 100644
> --- a/drivers/misc/sony-laptop.c
> +++ b/drivers/misc/sony-laptop.c
> @@ -1252,6 +1252,10 @@ struct device_ctrl {
> struct sonypi_eventtypes *event_types;
> };
>
> +struct sony_pic_quirk_entry {
> + u8 set_wwan_power;
> +};
> +
> struct sony_pic_dev {
> struct device_ctrl *control;
> struct acpi_device *acpi_dev;
> @@ -1260,6 +1264,7 @@ struct sony_pic_dev {
> struct list_head interrupts;
> struct list_head ioports;
> struct mutex lock;
> + struct sony_pic_quirk_entry *quirks;
> u8 camera_power;
> u8 bluetooth_power;
> u8 wwan_power;
> @@ -2685,6 +2690,12 @@ static int sony_pic_add(struct acpi_device *device)
> if (result)
> goto err_remove_pf;
>
> + if (spic_dev.quirks && spic_dev.quirks->set_wwan_power) {
> + /*
> + * Power isn't enabled by default.
> + */
> + sony_pic_set_wwanpower(1);
> + }
> return 0;
>
> err_remove_pf:
> @@ -2755,6 +2766,16 @@ static struct acpi_driver sony_pic_driver = {
> },
> };
>
> +static struct sony_pic_quirk_entry sony_pic_vaio_vgn = {
> + .set_wwan_power = 1,
> +};
> +
> +static int dmi_matched(const struct dmi_system_id *dmi)
> +{
> + spic_dev.quirks = dmi->driver_data;
> + return 0;
> +}
> +
> static struct dmi_system_id __initdata sonypi_dmi_table[] = {
> {
> .ident = "Sony Vaio",
> @@ -2769,6 +2790,8 @@ static struct dmi_system_id __initdata sonypi_dmi_table[] = {
> DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
> DMI_MATCH(DMI_PRODUCT_NAME, "VGN-"),
> },
> + .callback = dmi_matched,
> + .driver_data = &sony_pic_vaio_vgn,
> },
> { }
> };
ACK on this one, I'll pull after one more.
--
When all other means of communication fail, try words!
More information about the kernel-team
mailing list