pci_ids: add Intel Tunnel Creek LPC Bridge device ID.
Subsystems (3)
PATCH 1/3 pci_ids: add Intel Tunnel Creek LPC Bridge device ID.
--- include/linux/pci_ids.h | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
include/linux/pci_ids.h +1 -0
@@ -2731,6 +2731,7 @@#define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601#define PCI_DEVICE_ID_INTEL_SCH_LPC 0x8119#define PCI_DEVICE_ID_INTEL_SCH_IDE 0x811a +#define PCI_DEVICE_ID_INTEL_ITC_LPC 0x8186#define PCI_DEVICE_ID_INTEL_82454GX 0x84c4#define PCI_DEVICE_ID_INTEL_82450GX 0x84c5#define PCI_DEVICE_ID_INTEL_82451NX 0x84ca
Signature · 1 line
1.7.0.4
PATCH 2/3 lpc_sch: expand for Tunnel Creek
Intel Poulsbo SCH and Tunnel Creek provide almost the same LPC interface. Use the same driver for both devices while storing PCI ID to distinguish between platforms to apply plarform related quirks.
--- drivers/mfd/lpc_sch.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-)
drivers/mfd/lpc_sch.c +6 -1
@@ -61,6 +61,7 @@ static struct mfd_cell lpc_sch_cells[] = {static struct pci_device_id lpc_sch_ids[] = { {PCI_DEVICE (PCI_VENDOR_ID_INTEL ,PCI_DEVICE_ID_INTEL_SCH_LPC ) }, + {PCI_DEVICE (PCI_VENDOR_ID_INTEL ,PCI_DEVICE_ID_INTEL_ITC_LPC ) }, {0 , } };MODULE_DEVICE_TABLE (pci, lpc_sch_ids);
@@ -70,6 +71,7 @@ static int __devinit lpc_sch_probe(struct pci_dev *dev, {unsigned int base_addr_cfg;unsigned short base_addr; +int i;pci_read_config_dword (dev,SMBASE , &base_addr_cfg);if (!(base_addr_cfg & (1 <<31 ))) {
@@ -99,7 +101,10 @@ static int __devinit lpc_sch_probe(struct pci_dev *dev, gpio_sch_resource.start = base_addr; gpio_sch_resource.end = base_addr +GPIO_IO_SIZE -1 ; -return mfd_add_devices (&dev->dev,-1 , +for (i=0 ; i <ARRAY_SIZE (lpc_sch_cells); i++) + lpc_sch_cells[i].id = id->device; + +return mfd_add_devices (&dev->dev,0 , lpc_sch_cells,ARRAY_SIZE (lpc_sch_cells),NULL ,0 ); }
Signature · 1 line
1.7.0.4
PATCH 3/3 sch_gpio: expand for Tunnel Creak
Almost the same driver for both Poulsbo and Tunnel Creek. The difference is in quantity of GPIOs powered by the core power rail and by suspend power supply, default values for some GPIOs, etc. Detect actual hardware by platform device ID assigned in lpc_sch and set configuration accordingly.
--- drivers/gpio/Kconfig | 7 +++++-- drivers/gpio/sch_gpio.c | 46 +++++++++++++++++++++++++++++++++++++++------- 2 files changed, 44 insertions(+), 9 deletions(-)
drivers/gpio/Kconfig +5 -2
@@ -100,18 +100,21 @@ config GPIO_VR41XX Say yes here to support the NEC VR4100 series General-purpose I/O Uint config GPIO_SCH - tristate "Intel SCH GPIO" + tristate "Intel SCH/TunnelCreek GPIO" depends on GPIOLIB && PCI select MFD_CORE select LPC_SCH help - Say yes here to support GPIO interface on Intel Poulsbo SCH. + Say yes here to support GPIO interface on Intel Poulsbo SCH + or Intel Tunnel Creek processor. The Intel SCH contains a total of 14 GPIO pins. Ten GPIOs are powered by the core power rail and are turned off during sleep modes (S3 and higher). The remaining four GPIOs are powered by the Intel SCH suspend power supply. These GPIOs remain active during S3. The suspend powered GPIOs can be used to wake the system from the Suspend-to-RAM state. + The Intel Tunnel Creek processor has 5 GPIOs powered by the + core power rail and 9 from suspend power supply. This driver can also be built as a module. If so, the module will be called sch-gpio.
drivers/gpio/sch_gpio.c +38 -6
57 lines not on this page · raw message
Signature · 1 line
1.7.0.4
PATCH v2 3/3 sch_gpio: expand for Tunnel Creek
Almost the same driver for both Poulsbo and Tunnel Creek. The difference is in quantity of GPIOs powered by the core power rail and by suspend power supply, default values for some GPIOs, etc. Detect actual hardware by platform device ID assigned in lpc_sch and set configuration accordingly.
v2: added include <linux/pci_ids.h> line
--- drivers/gpio/Kconfig | 7 ++++- drivers/gpio/sch_gpio.c | 59 +++++++++++++++++++++++++++++++--------------- 2 files changed, 45 insertions(+), 21 deletions(-)
drivers/gpio/Kconfig +5 -2
@@ -100,18 +100,21 @@ config GPIO_VR41XX Say yes here to support the NEC VR4100 series General-purpose I/O Uint config GPIO_SCH - tristate "Intel SCH GPIO" + tristate "Intel SCH/TunnelCreek GPIO" depends on GPIOLIB && PCI select MFD_CORE select LPC_SCH help - Say yes here to support GPIO interface on Intel Poulsbo SCH. + Say yes here to support GPIO interface on Intel Poulsbo SCH + or Intel Tunnel Creek processor. The Intel SCH contains a total of 14 GPIO pins. Ten GPIOs are powered by the core power rail and are turned off during sleep modes (S3 and higher). The remaining four GPIOs are powered by the Intel SCH suspend power supply. These GPIOs remain active during S3. The suspend powered GPIOs can be used to wake the system from the Suspend-to-RAM state. + The Intel Tunnel Creek processor has 5 GPIOs powered by the + core power rail and 9 from suspend power supply. This driver can also be built as a module. If so, the module will be called sch-gpio.
drivers/gpio/sch_gpio.c +39 -18
82 lines not on this page · raw message
Signature · 1 line
1.7.0.4
Re: [PATCH 3/3 v2] sch_gpio: expand for Tunnel Creek
Hi Denis,
Quoted 5 lines · Denis Turischev
Almost the same driver for both Poulsbo and Tunnel Creek. The difference is in quantity of GPIOs powered by the core power rail and by suspend power supply, default values for some GPIOs, etc. Detect actual hardware by platform device ID assigned in
lpc_schand set configuration accordingly.
Grant, are you ok with me taking this patch ?
Cheers,
Samuel.
Signature · 2 lines
Intel Open Source Technology Centre http://oss.intel.com/
Grant Likely
Acked-byRe: [PATCH 3/3 v2] sch_gpio: expand for Tunnel Creek
Quoted 9 lines · Samuel Ortiz
Hi Denis,
Quoted 5 lines · Denis Turischev
Almost the same driver for both Poulsbo and Tunnel Creek. The difference is in quantity of GPIOs powered by the core power rail and by suspend power supply, default values for some GPIOs, etc. Detect actual hardware by platform device ID assigned in
lpc_schand set configuration accordingly.Grant, are you ok with me taking this patch ?
Quoted 7 lines
Cheers,
Samuel.Signature · 2 lines
Intel Open Source Technology Centre http://oss.intel.com/
Re: [PATCH 3/3] sch_gpio: expand for Tunnel Creak
In reply to Denis TurischevHi Denis,
Quoted 5 lines · Denis Turischev
Almost the same driver for both Poulsbo and Tunnel Creek. The difference is in quantity of GPIOs powered by the core power rail and by suspend power supply, default values for some GPIOs, etc. Detect actual hardware by platform device ID assigned in
lpc_schand set configuration accordingly.
Thanks, patch applied with Grant's ACK.
Cheers,
Samuel.
Signature · 2 lines
Intel Open Source Technology Centre http://oss.intel.com/
Re: [PATCH 2/3] lpc_sch: expand for Tunnel Creek
In reply to Denis TurischevHi Denis,
Quoted 4 lines · Denis Turischev
Intel Poulsbo SCH and Tunnel Creek provide almost the same LPC interface. Use the same driver for both devices while storing PCI ID to distinguish between platforms to apply plarform related quirks.
Thanks, patch applied.
Cheers,
Samuel.
Signature · 2 lines
Intel Open Source Technology Centre http://oss.intel.com/
Hi Denis,
Quoted 1 line · Denis Turischev
Signed-off-by Denis Turischev <[email protected]>
Jesse, are you ok with me carrying this patch ? The 2 following patches from this patchset depend on it, obviously.
Cheers,
Samuel.
Signature · 2 lines
Intel Open Source Technology Centre http://oss.intel.com/
Jesse Barnes
Acked-byQuoted 6 lines · On Mon, 14 Mar 2011 12:43:36 +0100 Samuel Ortiz <[email protected]> wrote:
Hi Denis,
Quoted 1 line · Denis Turischev
Signed-off-by Denis Turischev <[email protected]>Jesse, are you ok with me carrying this patch ? The 2 following patches from this patchset depend on it, obviously.
Yeah, np, assuming the PCI IDs are used in several places.
Signature · 1 line
Jesse Barnes, Intel Open Source Technology Center
Hi Denis,
Quoted 1 line · Denis Turischev
Signed-off-by Denis Turischev <[email protected]>
Patch applied, with Jesse's ACK.
Cheers,
Samuel.
Signature · 2 lines
Intel Open Source Technology Centre http://oss.intel.com/