Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4630b130 authored by Aaron Sierra's avatar Aaron Sierra Committed by Samuel Ortiz
Browse files

mfd: Add LPC driver for Intel ICH chipsets



This driver currently creates resources for use by a forthcoming ICH
chipset GPIO driver. It could be expanded to create the resources for
converting the esb2rom (mtd) and iTCO_wdt (wdt), and potentially more,
drivers to use the mfd model.

Signed-off-by: default avatarAaron Sierra <asierra@xes-inc.com>
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent f4bf7cf4
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -748,6 +748,15 @@ config LPC_SCH
	  LPC bridge function of the Intel SCH provides support for
	  System Management Bus and General Purpose I/O.

config LPC_ICH
	tristate "Intel ICH LPC"
	depends on PCI
	select MFD_CORE
	help
	  The LPC bridge function of the Intel ICH provides support for
	  many functional units. This driver provides needed support for
	  other drivers to control these functions, currently GPIO.

config MFD_RDC321X
	tristate "Support for RDC-R321x southbridge"
	select MFD_CORE
+1 −0
Original line number Diff line number Diff line
@@ -99,6 +99,7 @@ obj-$(CONFIG_MFD_DB5500_PRCMU) += db5500-prcmu.o
obj-$(CONFIG_MFD_TIMBERDALE)    += timberdale.o
obj-$(CONFIG_PMIC_ADP5520)	+= adp5520.o
obj-$(CONFIG_LPC_SCH)		+= lpc_sch.o
obj-$(CONFIG_LPC_ICH)		+= lpc_ich.o
obj-$(CONFIG_MFD_RDC321X)	+= rdc321x-southbridge.o
obj-$(CONFIG_MFD_JANZ_CMODIO)	+= janz-cmodio.o
obj-$(CONFIG_MFD_JZ4740_ADC)	+= jz4740-adc.o

drivers/mfd/lpc_ich.c

0 → 100644
+719 −0

File added.

Preview size limit exceeded, changes collapsed.

+41 −0
Original line number Diff line number Diff line
/*
 *  linux/drivers/mfd/lpc_ich.h
 *
 *  Copyright (c) 2012 Extreme Engineering Solution, Inc.
 *  Author: Aaron Sierra <asierra@xes-inc.com>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License 2 as published
 *  by the Free Software Foundation.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; see the file COPYING.  If not, write to
 *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 */
#ifndef LPC_ICH_H
#define LPC_ICH_H

/* GPIO resources */
#define ICH_RES_GPIO	0
#define ICH_RES_GPE0	1

/* GPIO compatibility */
#define ICH_I3100_GPIO		0x401
#define ICH_V5_GPIO		0x501
#define ICH_V6_GPIO		0x601
#define ICH_V7_GPIO		0x701
#define ICH_V9_GPIO		0x801
#define ICH_V10CORP_GPIO	0xa01
#define ICH_V10CONS_GPIO	0xa11

struct lpc_ich_info {
	char name[32];
	unsigned int gpio_version;
};

#endif