Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:pzskc383
kernel
linux-2.6.34-moorestown-gpe-fix-for-sensor.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File linux-2.6.34-moorestown-gpe-fix-for-sensor.patch of Package kernel
From 39fd545bb198f6e17e7e8f730535e3976088cd9f Mon Sep 17 00:00:00 2001 From: Alan Olsen <alan.r.olsen@intel.com> Date: Fri, 26 Mar 2010 11:59:00 -0700 Subject: [PATCH] GPE fix for sensors Patch-mainline: 2.6.35? Signed-off-by: Alan Olsen <alan.r.olsen@intel.com> --- drivers/hwmon/emc1403.c | 53 ++++++++-------------------------------------- 1 files changed, 10 insertions(+), 43 deletions(-) diff --git a/drivers/hwmon/emc1403.c b/drivers/hwmon/emc1403.c index 75e3b15..c94d933 100644 --- a/drivers/hwmon/emc1403.c +++ b/drivers/hwmon/emc1403.c @@ -33,7 +33,6 @@ #include <linux/delay.h> #include <linux/mutex.h> #include <linux/sysfs.h> -#include <linux/gpe.h> #include <linux/intel_mid.h> @@ -624,48 +623,16 @@ static int emc1403_probe(struct i2c_client *new_client, data->therm_irq = t_irq & ~IRQ_TYPE_MASK; data->alert_irq = a_irq & ~IRQ_TYPE_MASK; /* interpret irq field */ - if (data->therm_irq == 0x113) { - if (t_irq & IRQ_TYPE_MASK) { - /* irq -> GPE_ID */ - res = request_gpe(data->therm_irq, - (gpio_function_t)therm_interrupt_handler, - data, DETECT_LEVEL_LOW); - if (res) - dev_crit(&new_client->dev, "%s(): cannot \ - register therm gpe \n", __func__); - } else { - res = request_irq(data->therm_irq, - therm_interrupt_handler, - DETECT_LEVEL_LOW, "emc1403", data); - if (res) - dev_crit(&new_client->dev, "%s(): \ - cannot get therm IRQ\n", __func__); - } - } else { - printk(KERN_WARNING"emc1403: IRQ mismatch \ - sent for therm registration"); - } - if (data->alert_irq == 0x114) { - if (a_irq & IRQ_TYPE_MASK) { - /* irq -> GPE_ID */ - res = request_gpe(data->alert_irq, - (gpio_function_t)alert_interrupt_handler, - data, DETECT_LEVEL_LOW); - if (res) - dev_crit(&new_client->dev, "%s(): \ - cannot register alert gpe \n", __func__); - } else { - res = request_irq(data->alert_irq, - alert_interrupt_handler, DETECT_LEVEL_LOW, - "emc1403", data); - if (res) - dev_crit(&new_client->dev, "%s(): cannot \ + res = request_irq(data->therm_irq, therm_interrupt_handler, + IRQ_TYPE_EDGE_FALLING, "emc1403_therm", data); + if (res) + dev_crit(&new_client->dev, "%s(): \ + cannot get therm IRQ\n", __func__); + res = request_irq(data->alert_irq, alert_interrupt_handler, + IRQ_TYPE_EDGE_FALLING, "emc1403_alert", data); + if (res) + dev_crit(&new_client->dev, "%s(): cannot \ get alert IRQ\n", __func__); - } - } else { - printk(KERN_WARNING"emc1403: IRQ mismatch \ - sent for alert registration"); - } #endif emc1403_set_default_config(new_client); dev_info(&new_client->dev, "%s EMC1403 Thermal chip found \n", -- 1.6.0.6
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor