* [PATCH 1/3] Correctly detect Sony TX770P PIC device type @ 2008-04-18 22:41 Sergey Yanovich 2008-04-18 22:41 ` [PATCH 2/3] Add control over wifi power in Sony laptops Sergey Yanovich 2008-04-27 6:15 ` [PATCH 1/3] Correctly detect Sony TX770P PIC device type Mattia Dongili 0 siblings, 2 replies; 11+ messages in thread From: Sergey Yanovich @ 2008-04-18 22:41 UTC (permalink / raw) To: linux-acpi; +Cc: malattia, Sergey Yanovich This laptop has Type 4 SPIC device, support for which has been added recently. This device resides behind an older ISA bridge and was earlier incorrectly detected as Type 3. --- drivers/misc/sony-laptop.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index 02ff3d1..be70153 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c @@ -1563,6 +1563,11 @@ static void sony_pic_detect_device_type(struct sony_pic_dev *dev) pcidev = pci_get_device(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH6_1, NULL); if (pcidev) { + if (pcidev->subsystem_vendor == PCI_VENDOR_ID_SONY && + pcidev->subsystem_device == 0x81E2) { + dev->control = &spic_types[3]; + goto out; + } dev->control = &spic_types[2]; goto out; } -- 1.5.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/3] Add control over wifi power in Sony laptops 2008-04-18 22:41 [PATCH 1/3] Correctly detect Sony TX770P PIC device type Sergey Yanovich @ 2008-04-18 22:41 ` Sergey Yanovich 2008-04-18 22:41 ` [PATCH 3/3] Synchronize wireless power state with hardware for " Sergey Yanovich 2008-04-29 13:36 ` [PATCH] acpi: add control over wifi power in " Sergey Yanovich 2008-04-27 6:15 ` [PATCH 1/3] Correctly detect Sony TX770P PIC device type Mattia Dongili 1 sibling, 2 replies; 11+ messages in thread From: Sergey Yanovich @ 2008-04-18 22:41 UTC (permalink / raw) To: linux-acpi; +Cc: malattia, Sergey Yanovich Sony laptops have a single hardware rfkill switch, which controls several wireless devices: wifi, bluetooth, wwan. The code to selectively control bluetooth and wwan is already present. This paths adds handling of wifi. --- drivers/misc/sony-laptop.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 43 insertions(+), 0 deletions(-) diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index be70153..1e9377e 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c @@ -1227,6 +1227,7 @@ struct sony_pic_dev { u8 camera_power; u8 bluetooth_power; u8 wwan_power; + u8 wifi_power; }; static struct sony_pic_dev spic_dev = { @@ -1760,6 +1761,7 @@ static void sony_pic_set_wwanpower(u8 state) return; } sony_pic_call2(0xB0, state); + sony_pic_call1(0x82); spic_dev.wwan_power = state; mutex_unlock(&spic_dev.lock); } @@ -1788,6 +1790,45 @@ static ssize_t sony_pic_wwanpower_show(struct device *dev, return count; } +/* wifi power (TX series) */ +static void sony_pic_set_wifipower(u8 state) +{ + state = !!state; + mutex_lock(&spic_dev.lock); + if (spic_dev.wifi_power == state) { + mutex_unlock(&spic_dev.lock); + return; + } + sony_pic_call2(0x98, -state); + sony_pic_call1(0x82); + spic_dev.wifi_power = state; + mutex_unlock(&spic_dev.lock); +} + +static ssize_t sony_pic_wifipower_store(struct device *dev, + struct device_attribute *attr, + const char *buffer, size_t count) +{ + unsigned long value; + if (count > 31) + return -EINVAL; + + value = simple_strtoul(buffer, NULL, 10); + sony_pic_set_wifipower(value); + + return count; +} + +static ssize_t sony_pic_wifipower_show(struct device *dev, + struct device_attribute *attr, char *buffer) +{ + ssize_t count; + mutex_lock(&spic_dev.lock); + count = snprintf(buffer, PAGE_SIZE, "%d\n", spic_dev.wifi_power); + mutex_unlock(&spic_dev.lock); + return count; +} + /* bluetooth subsystem power state */ static void __sony_pic_set_bluetoothpower(u8 state) { @@ -1870,11 +1911,13 @@ struct device_attribute spic_attr_##_name = __ATTR(_name, \ static SPIC_ATTR(bluetoothpower, 0644); static SPIC_ATTR(wwanpower, 0644); +static SPIC_ATTR(wifipower, 0644); static SPIC_ATTR(fanspeed, 0644); static struct attribute *spic_attributes[] = { &spic_attr_bluetoothpower.attr, &spic_attr_wwanpower.attr, + &spic_attr_wifipower.attr, &spic_attr_fanspeed.attr, NULL }; -- 1.5.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 3/3] Synchronize wireless power state with hardware for Sony laptops 2008-04-18 22:41 ` [PATCH 2/3] Add control over wifi power in Sony laptops Sergey Yanovich @ 2008-04-18 22:41 ` Sergey Yanovich 2008-04-18 23:45 ` Sergey Yanovich 2008-04-18 23:59 ` [PATCH 3/3] Synchronize wireless power state with hardware " Sergey Yanovich 2008-04-29 13:36 ` [PATCH] acpi: add control over wifi power in " Sergey Yanovich 1 sibling, 2 replies; 11+ messages in thread From: Sergey Yanovich @ 2008-04-18 22:41 UTC (permalink / raw) To: linux-acpi; +Cc: malattia, Sergey Yanovich The drivers stores own representation of wireless power states. Since hardware switch takes presedence over software controls, internal data goes out of sync with device state, after the hardware switch is toggled. This patch safeguards itself against possible conflicts with earlier models, and will only have any effect on the latest Type 4 devices. --- drivers/misc/sony-laptop.c | 37 ++++++++++++++++++++++++++++++++++--- 1 files changed, 34 insertions(+), 3 deletions(-) diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index 1e9377e..6678f45 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c @@ -281,12 +281,15 @@ static void do_sony_laptop_release_key(struct work_struct *work) static DECLARE_WORK(sony_laptop_release_key_work, do_sony_laptop_release_key); +static void sony_pic_rfkill_event(u8 is_on); + /* forward event to the input subsystem */ static void sony_laptop_report_input_event(u8 event) { struct input_dev *jog_dev = sony_laptop_input.jog_dev; struct input_dev *key_dev = sony_laptop_input.key_dev; struct sony_laptop_keypress kp = { NULL }; + u8 is_on = 0; if (event == SONYPI_EVENT_FNKEY_RELEASED) { /* Nothing, not all VAIOs generate this event */ @@ -314,6 +317,15 @@ static void sony_laptop_report_input_event(u8 event) kp.dev = jog_dev; break; + case SONYPI_EVENT_WIRELESS_ON: + is_on = 1; + // fall through here + case SONYPI_EVENT_WIRELESS_OFF: + kp.key = KEY_WLAN; + kp.dev = key_dev; + sony_pic_rfkill_event(is_on); + break; + default: if (event >= ARRAY_SIZE(sony_laptop_input_index)) { dprintk("sony_laptop_report_input_event, event not known: %d\n", event); @@ -1228,6 +1240,7 @@ struct sony_pic_dev { u8 bluetooth_power; u8 wwan_power; u8 wifi_power; + u8 rfkill; }; static struct sony_pic_dev spic_dev = { @@ -1756,7 +1769,7 @@ static void sony_pic_set_wwanpower(u8 state) { state = !!state; mutex_lock(&spic_dev.lock); - if (spic_dev.wwan_power == state) { + if (spic_dev.rfkill || spic_dev.wwan_power == state) { mutex_unlock(&spic_dev.lock); return; } @@ -1795,7 +1808,7 @@ static void sony_pic_set_wifipower(u8 state) { state = !!state; mutex_lock(&spic_dev.lock); - if (spic_dev.wifi_power == state) { + if (spic_dev.rfkill || spic_dev.wifi_power == state) { mutex_unlock(&spic_dev.lock); return; } @@ -1833,11 +1846,15 @@ static ssize_t sony_pic_wifipower_show(struct device *dev, static void __sony_pic_set_bluetoothpower(u8 state) { state = !!state; - if (spic_dev.bluetooth_power == state) + mutex_lock(&spic_dev.lock); + if (spic_dev.rfkill || spic_dev.bluetooth_power == state) { + mutex_unlock(&spic_dev.lock); return; + } sony_pic_call2(0x96, state); sony_pic_call1(0x82); spic_dev.bluetooth_power = state; + mutex_unlock(&spic_dev.lock); } static ssize_t sony_pic_bluetoothpower_store(struct device *dev, @@ -1866,6 +1883,20 @@ static ssize_t sony_pic_bluetoothpower_show(struct device *dev, return count; } +static void sony_pic_rfkill_event(u8 is_on) +{ + if (spic_dev.control->model != SONYPI_DEVICE_TYPE4) + return; + + mutex_lock(&spic_dev.lock); + spic_dev.rfkill = ! is_on; + spic_dev.bluetooth_power = is_on; + spic_dev.wifi_power = is_on; + if (! is_on) + spic_dev.wwan_power = 0; + mutex_unlock(&spic_dev.lock); +} + /* fan speed */ /* FAN0 information (reverse engineered from ACPI tables) */ #define SONY_PIC_FAN0_STATUS 0x93 -- 1.5.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 3/3] Synchronize wireless power state with hardware for Sony laptops 2008-04-18 22:41 ` [PATCH 3/3] Synchronize wireless power state with hardware for " Sergey Yanovich @ 2008-04-18 23:45 ` Sergey Yanovich 2008-04-18 23:51 ` Sergey Yanovich 2008-04-18 23:59 ` [PATCH 3/3] Synchronize wireless power state with hardware " Sergey Yanovich 1 sibling, 1 reply; 11+ messages in thread From: Sergey Yanovich @ 2008-04-18 23:45 UTC (permalink / raw) To: linux-acpi; +Cc: malattia Sergey Yanovich wrote: > The drivers stores own representation of wireless power states. Since > hardware switch takes presedence over software controls, internal > data goes out of sync with device state, after the hardware switch > is toggled. > > This patch safeguards itself against possible conflicts with earlier > models, and will only have any effect on the latest Type 4 devices. > --- > @@ -1833,11 +1846,15 @@ static ssize_t sony_pic_wifipower_show(struct device *dev, > static void __sony_pic_set_bluetoothpower(u8 state) > { > state = !!state; > - if (spic_dev.bluetooth_power == state) > + mutex_lock(&spic_dev.lock); This is redundant and causing a deadlock :) Correction follows. -- Sergey Yanovich ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 3/3] Synchronize wireless power state with hardware for Sony laptops 2008-04-18 23:45 ` Sergey Yanovich @ 2008-04-18 23:51 ` Sergey Yanovich 2008-04-29 13:38 ` [PATCH] acpi: synchronize wireless power state " Sergey Yanovich 0 siblings, 1 reply; 11+ messages in thread From: Sergey Yanovich @ 2008-04-18 23:51 UTC (permalink / raw) To: linux-acpi; +Cc: malattia, Sergey Yanovich The drivers stores own representation of wireless power states. Since hardware switch takes presedence over software controls, internal data goes out of sync with device state, after the hardware switch is toggled. This patch safeguards itself against possible conflicts with earlier models, and will only have any effect on the latest Type 4 devices. --- drivers/misc/sony-laptop.c | 36 ++++++++++++++++++++++++++++++++---- 1 files changed, 32 insertions(+), 4 deletions(-) diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index 1e9377e..a7404ba 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c @@ -281,12 +281,15 @@ static void do_sony_laptop_release_key(struct work_struct *work) static DECLARE_WORK(sony_laptop_release_key_work, do_sony_laptop_release_key); +static void sony_pic_rfkill_event(u8 is_on); + /* forward event to the input subsystem */ static void sony_laptop_report_input_event(u8 event) { struct input_dev *jog_dev = sony_laptop_input.jog_dev; struct input_dev *key_dev = sony_laptop_input.key_dev; struct sony_laptop_keypress kp = { NULL }; + u8 is_on = 0; if (event == SONYPI_EVENT_FNKEY_RELEASED) { /* Nothing, not all VAIOs generate this event */ @@ -314,6 +317,15 @@ static void sony_laptop_report_input_event(u8 event) kp.dev = jog_dev; break; + case SONYPI_EVENT_WIRELESS_ON: + is_on = 1; + // fall through here + case SONYPI_EVENT_WIRELESS_OFF: + kp.key = KEY_WLAN; + kp.dev = key_dev; + sony_pic_rfkill_event(is_on); + break; + default: if (event >= ARRAY_SIZE(sony_laptop_input_index)) { dprintk("sony_laptop_report_input_event, event not known: %d\n", event); @@ -1228,6 +1240,7 @@ struct sony_pic_dev { u8 bluetooth_power; u8 wwan_power; u8 wifi_power; + u8 rfkill; }; static struct sony_pic_dev spic_dev = { @@ -1756,7 +1769,7 @@ static void sony_pic_set_wwanpower(u8 state) { state = !!state; mutex_lock(&spic_dev.lock); - if (spic_dev.wwan_power == state) { + if (spic_dev.rfkill || spic_dev.wwan_power == state) { mutex_unlock(&spic_dev.lock); return; } @@ -1795,7 +1808,7 @@ static void sony_pic_set_wifipower(u8 state) { state = !!state; mutex_lock(&spic_dev.lock); - if (spic_dev.wifi_power == state) { + if (spic_dev.rfkill || spic_dev.wifi_power == state) { mutex_unlock(&spic_dev.lock); return; } @@ -1833,7 +1846,7 @@ static ssize_t sony_pic_wifipower_show(struct device *dev, static void __sony_pic_set_bluetoothpower(u8 state) { state = !!state; - if (spic_dev.bluetooth_power == state) + if (spic_dev.rfkill || spic_dev.bluetooth_power == state) return; sony_pic_call2(0x96, state); sony_pic_call1(0x82); @@ -1866,6 +1879,20 @@ static ssize_t sony_pic_bluetoothpower_show(struct device *dev, return count; } +static void sony_pic_rfkill_event(u8 is_on) +{ + if (spic_dev.control->model != SONYPI_DEVICE_TYPE4) + return; + + mutex_lock(&spic_dev.lock); + spic_dev.rfkill = ! is_on; + spic_dev.bluetooth_power = is_on; + spic_dev.wifi_power = is_on; + if (! is_on) + spic_dev.wwan_power = 0; + mutex_unlock(&spic_dev.lock); +} + /* fan speed */ /* FAN0 information (reverse engineered from ACPI tables) */ #define SONY_PIC_FAN0_STATUS 0x93 @@ -2684,7 +2711,8 @@ static int sony_pic_add(struct acpi_device *device) goto err_free_irq; } - spic_dev.bluetooth_power = -1; + spic_dev.bluetooth_power = 1; + spic_dev.wifi_power = 1; /* create device attributes */ result = sony_pf_add(); if (result) -- 1.5.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH] acpi: synchronize wireless power state for Sony laptops 2008-04-18 23:51 ` Sergey Yanovich @ 2008-04-29 13:38 ` Sergey Yanovich 0 siblings, 0 replies; 11+ messages in thread From: Sergey Yanovich @ 2008-04-29 13:38 UTC (permalink / raw) To: linux-acpi; +Cc: malattia, Sergey Yanovich The drivers stores own representation of wireless power states. Since hardware switch takes presedence over software controls, internal data goes out of sync with device state, after the hardware switch is toggled. This patch safeguards itself against possible conflicts with earlier models, and will only have any effect on the latest Type 4 devices. Signed-off-by: Sergey Yanovich <ynvich@gmail.com> --- drivers/misc/sony-laptop.c | 36 ++++++++++++++++++++++++++++++++---- 1 files changed, 32 insertions(+), 4 deletions(-) diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index e5b8709..bd97e1c 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c @@ -281,12 +281,15 @@ static void do_sony_laptop_release_key(struct work_struct *work) static DECLARE_WORK(sony_laptop_release_key_work, do_sony_laptop_release_key); +static void sony_pic_rfkill_event(u8 is_on); + /* forward event to the input subsystem */ static void sony_laptop_report_input_event(u8 event) { struct input_dev *jog_dev = sony_laptop_input.jog_dev; struct input_dev *key_dev = sony_laptop_input.key_dev; struct sony_laptop_keypress kp = { NULL }; + u8 is_on = 0; if (event == SONYPI_EVENT_FNKEY_RELEASED) { /* Nothing, not all VAIOs generate this event */ @@ -314,6 +317,15 @@ static void sony_laptop_report_input_event(u8 event) kp.dev = jog_dev; break; + case SONYPI_EVENT_WIRELESS_ON: + is_on = 1; + /* fall through here */ + case SONYPI_EVENT_WIRELESS_OFF: + kp.key = KEY_WLAN; + kp.dev = key_dev; + sony_pic_rfkill_event(is_on); + break; + default: if (event >= ARRAY_SIZE(sony_laptop_input_index)) { dprintk("sony_laptop_report_input_event, event not known: %d\n", event); @@ -1228,6 +1240,7 @@ struct sony_pic_dev { u8 bluetooth_power; u8 wwan_power; u8 wifi_power; + u8 rfkill; }; static struct sony_pic_dev spic_dev = { @@ -1756,7 +1769,7 @@ static void sony_pic_set_wwanpower(u8 state) { state = !!state; mutex_lock(&spic_dev.lock); - if (spic_dev.wwan_power == state) { + if (spic_dev.rfkill || spic_dev.wwan_power == state) { mutex_unlock(&spic_dev.lock); return; } @@ -1795,7 +1808,7 @@ static void sony_pic_set_wifipower(u8 state) { state = !!state; mutex_lock(&spic_dev.lock); - if (spic_dev.wifi_power == state) { + if (spic_dev.rfkill || spic_dev.wifi_power == state) { mutex_unlock(&spic_dev.lock); return; } @@ -1832,7 +1845,7 @@ static ssize_t sony_pic_wifipower_show(struct device *dev, static void __sony_pic_set_bluetoothpower(u8 state) { state = !!state; - if (spic_dev.bluetooth_power == state) + if (spic_dev.rfkill || spic_dev.bluetooth_power == state) return; sony_pic_call2(0x96, state); sony_pic_call1(0x82); @@ -1865,6 +1878,20 @@ static ssize_t sony_pic_bluetoothpower_show(struct device *dev, return count; } +static void sony_pic_rfkill_event(u8 is_on) +{ + if (spic_dev.control->model != SONYPI_DEVICE_TYPE4) + return; + + mutex_lock(&spic_dev.lock); + spic_dev.rfkill = !is_on; + spic_dev.bluetooth_power = is_on; + spic_dev.wifi_power = is_on; + if (!is_on) + spic_dev.wwan_power = 0; + mutex_unlock(&spic_dev.lock); +} + /* fan speed */ /* FAN0 information (reverse engineered from ACPI tables) */ #define SONY_PIC_FAN0_STATUS 0x93 @@ -2683,7 +2710,8 @@ static int sony_pic_add(struct acpi_device *device) goto err_free_irq; } - spic_dev.bluetooth_power = -1; + spic_dev.bluetooth_power = 1; + spic_dev.wifi_power = 1; /* create device attributes */ result = sony_pf_add(); if (result) -- 1.5.5.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 3/3] Synchronize wireless power state with hardware for Sony laptops 2008-04-18 22:41 ` [PATCH 3/3] Synchronize wireless power state with hardware for " Sergey Yanovich 2008-04-18 23:45 ` Sergey Yanovich @ 2008-04-18 23:59 ` Sergey Yanovich 1 sibling, 0 replies; 11+ messages in thread From: Sergey Yanovich @ 2008-04-18 23:59 UTC (permalink / raw) To: linux-acpi [-- Attachment #1: Type: text/plain, Size: 544 bytes --] Sergey Yanovich wrote: > The drivers stores own representation of wireless power states. Since > hardware switch takes presedence over software controls, internal > data goes out of sync with device state, after the hardware switch > is toggled. > > This patch safeguards itself against possible conflicts with earlier > models, and will only have any effect on the latest Type 4 devices. > --- I am enclosing a script, which I use with acpid and invoke by Fn-F1. It makes the wireless leds blink like a Christmas tree. -- Sergey Yanovich [-- Attachment #2: sonywifi.sh --] [-- Type: application/x-sh, Size: 1225 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] acpi: add control over wifi power in Sony laptops 2008-04-18 22:41 ` [PATCH 2/3] Add control over wifi power in Sony laptops Sergey Yanovich 2008-04-18 22:41 ` [PATCH 3/3] Synchronize wireless power state with hardware for " Sergey Yanovich @ 2008-04-29 13:36 ` Sergey Yanovich 1 sibling, 0 replies; 11+ messages in thread From: Sergey Yanovich @ 2008-04-29 13:36 UTC (permalink / raw) To: linux-acpi; +Cc: malattia, Sergey Yanovich Sony laptops have a single hardware rfkill switch, which controls several wireless devices: wifi, bluetooth, wwan. The code to selectively control bluetooth and wwan is already present. This paths adds handling of wifi. Signed-off-by: Sergey Yanovich <ynvich@gmail.com> --- drivers/misc/sony-laptop.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index be70153..e5b8709 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c @@ -1227,6 +1227,7 @@ struct sony_pic_dev { u8 camera_power; u8 bluetooth_power; u8 wwan_power; + u8 wifi_power; }; static struct sony_pic_dev spic_dev = { @@ -1760,6 +1761,7 @@ static void sony_pic_set_wwanpower(u8 state) return; } sony_pic_call2(0xB0, state); + sony_pic_call1(0x82); spic_dev.wwan_power = state; mutex_unlock(&spic_dev.lock); } @@ -1788,6 +1790,44 @@ static ssize_t sony_pic_wwanpower_show(struct device *dev, return count; } +/* wifi power (TX series) */ +static void sony_pic_set_wifipower(u8 state) +{ + state = !!state; + mutex_lock(&spic_dev.lock); + if (spic_dev.wifi_power == state) { + mutex_unlock(&spic_dev.lock); + return; + } + sony_pic_call2(0x98, -state); + sony_pic_call1(0x82); + spic_dev.wifi_power = state; + mutex_unlock(&spic_dev.lock); +} + +static ssize_t sony_pic_wifipower_store(struct device *dev, + struct device_attribute *attr, + const char *buffer, size_t count) +{ + unsigned long value; + if (!strict_strtoul(buffer, 10, &value)) + return -EINVAL; + + sony_pic_set_wifipower(value); + + return count; +} + +static ssize_t sony_pic_wifipower_show(struct device *dev, + struct device_attribute *attr, char *buffer) +{ + ssize_t count; + mutex_lock(&spic_dev.lock); + count = snprintf(buffer, PAGE_SIZE, "%d\n", spic_dev.wifi_power); + mutex_unlock(&spic_dev.lock); + return count; +} + /* bluetooth subsystem power state */ static void __sony_pic_set_bluetoothpower(u8 state) { @@ -1870,11 +1910,13 @@ struct device_attribute spic_attr_##_name = __ATTR(_name, \ static SPIC_ATTR(bluetoothpower, 0644); static SPIC_ATTR(wwanpower, 0644); +static SPIC_ATTR(wifipower, 0644); static SPIC_ATTR(fanspeed, 0644); static struct attribute *spic_attributes[] = { &spic_attr_bluetoothpower.attr, &spic_attr_wwanpower.attr, + &spic_attr_wifipower.attr, &spic_attr_fanspeed.attr, NULL }; -- 1.5.5.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 1/3] Correctly detect Sony TX770P PIC device type 2008-04-18 22:41 [PATCH 1/3] Correctly detect Sony TX770P PIC device type Sergey Yanovich 2008-04-18 22:41 ` [PATCH 2/3] Add control over wifi power in Sony laptops Sergey Yanovich @ 2008-04-27 6:15 ` Mattia Dongili 2008-04-29 8:52 ` Sergey Yanovich 1 sibling, 1 reply; 11+ messages in thread From: Mattia Dongili @ 2008-04-27 6:15 UTC (permalink / raw) To: Sergey Yanovich; +Cc: linux-acpi On Sat, Apr 19, 2008 at 01:41:33AM +0300, Sergey Yanovich wrote: > This laptop has Type 4 SPIC device, support for which has been added > recently. This device resides behind an older ISA bridge and was > earlier incorrectly detected as Type 3. NAK, introducing Type4 was actually a mistake in the beginning. Soon after my patches have been merged into mainline I had reports from Type3 users who would actually benefit from the same extra hotkey handling implemented for the Type4. What I'm going to do is remove the Type3/Type4 distinction, this should be enough. Cheers -- mattia :wq! ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/3] Correctly detect Sony TX770P PIC device type 2008-04-27 6:15 ` [PATCH 1/3] Correctly detect Sony TX770P PIC device type Mattia Dongili @ 2008-04-29 8:52 ` Sergey Yanovich 2008-04-29 11:45 ` Mattia Dongili 0 siblings, 1 reply; 11+ messages in thread From: Sergey Yanovich @ 2008-04-29 8:52 UTC (permalink / raw) To: Mattia Dongili; +Cc: linux-acpi Mattia Dongili wrote: > What I'm going to do is remove the Type3/Type4 distinction, this should > be enough. Great to hear, that the problem is being addressed. It'll be nice to have all keys working with a stock kernel. Any comments about wifi power and state sync patches? Cheers, -- Sergey Yanovich ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/3] Correctly detect Sony TX770P PIC device type 2008-04-29 8:52 ` Sergey Yanovich @ 2008-04-29 11:45 ` Mattia Dongili 0 siblings, 0 replies; 11+ messages in thread From: Mattia Dongili @ 2008-04-29 11:45 UTC (permalink / raw) To: Sergey Yanovich; +Cc: linux-acpi On Tue, Apr 29, 2008 at 11:52:05AM +0300, Sergey Yanovich wrote: > Mattia Dongili wrote: >> What I'm going to do is remove the Type3/Type4 distinction, this should >> be enough. > > Great to hear, that the problem is being addressed. It'll be nice to > have all keys working with a stock kernel. > > Any comments about wifi power and state sync patches? Yes, they are missing your sign off ;) The wifi power patch seems ok. The state sync patch instead I'd like to rework things a little but it definitely makes sense. Oh, last but not least, give your patches a go through scripts/checkpatch.pl Thanks -- mattia :wq! ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2008-04-29 13:39 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-04-18 22:41 [PATCH 1/3] Correctly detect Sony TX770P PIC device type Sergey Yanovich 2008-04-18 22:41 ` [PATCH 2/3] Add control over wifi power in Sony laptops Sergey Yanovich 2008-04-18 22:41 ` [PATCH 3/3] Synchronize wireless power state with hardware for " Sergey Yanovich 2008-04-18 23:45 ` Sergey Yanovich 2008-04-18 23:51 ` Sergey Yanovich 2008-04-29 13:38 ` [PATCH] acpi: synchronize wireless power state " Sergey Yanovich 2008-04-18 23:59 ` [PATCH 3/3] Synchronize wireless power state with hardware " Sergey Yanovich 2008-04-29 13:36 ` [PATCH] acpi: add control over wifi power in " Sergey Yanovich 2008-04-27 6:15 ` [PATCH 1/3] Correctly detect Sony TX770P PIC device type Mattia Dongili 2008-04-29 8:52 ` Sergey Yanovich 2008-04-29 11:45 ` Mattia Dongili
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox