From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752894AbbDBGHg (ORCPT ); Thu, 2 Apr 2015 02:07:36 -0400 Received: from mga01.intel.com ([192.55.52.88]:12958 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752564AbbDBGHD (ORCPT ); Thu, 2 Apr 2015 02:07:03 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,509,1422950400"; d="scan'208";a="674174004" From: Ramakrishna Pallala To: linux-kernel@vger.kernel.org, MyungJoo Ham , Chanwoo Choi , Lee Jones , Samuel Ortiz , Carlo Caione Cc: Jacob Pan , Pallala Ramakrishna Subject: [PATCH v1 1/2] mfd/axp20x: add support for extcon cell Date: Thu, 2 Apr 2015 19:45:30 +0530 Message-Id: <1427984131-22899-2-git-send-email-ramakrishna.pallala@intel.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1427984131-22899-1-git-send-email-ramakrishna.pallala@intel.com> References: <1427984131-22899-1-git-send-email-ramakrishna.pallala@intel.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch adds the mfd cell info for axp288 extcon device. Signed-off-by: Ramakrishna Pallala --- drivers/mfd/axp20x.c | 28 ++++++++++++++++++++++++++++ include/linux/mfd/axp20x.h | 5 +++++ 2 files changed, 33 insertions(+) diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c index 0acbe52..a569721 100644 --- a/drivers/mfd/axp20x.c +++ b/drivers/mfd/axp20x.c @@ -290,6 +290,29 @@ static struct resource axp288_adc_resources[] = { }, }; +static struct resource axp288_extcon_resources[] = { + { + .start = AXP288_IRQ_VBUS_FALL, + .end = AXP288_IRQ_VBUS_FALL, + .flags = IORESOURCE_IRQ, + }, + { + .start = AXP288_IRQ_VBUS_RISE, + .end = AXP288_IRQ_VBUS_RISE, + .flags = IORESOURCE_IRQ, + }, + { + .start = AXP288_IRQ_MV_CHNG, + .end = AXP288_IRQ_MV_CHNG, + .flags = IORESOURCE_IRQ, + }, + { + .start = AXP288_IRQ_BC_USB_CHNG, + .end = AXP288_IRQ_BC_USB_CHNG, + .flags = IORESOURCE_IRQ, + }, +}; + static struct resource axp288_charger_resources[] = { { .start = AXP288_IRQ_OV, @@ -345,6 +368,11 @@ static struct mfd_cell axp288_cells[] = { .resources = axp288_adc_resources, }, { + .name = "axp288_extcon", + .num_resources = ARRAY_SIZE(axp288_extcon_resources), + .resources = axp288_extcon_resources, + }, + { .name = "axp288_charger", .num_resources = ARRAY_SIZE(axp288_charger_resources), .resources = axp288_charger_resources, diff --git a/include/linux/mfd/axp20x.h b/include/linux/mfd/axp20x.h index dfabd6d..4ed8071 100644 --- a/include/linux/mfd/axp20x.h +++ b/include/linux/mfd/axp20x.h @@ -275,4 +275,9 @@ struct axp20x_fg_pdata { int thermistor_curve[MAX_THERM_CURVE_SIZE][2]; }; +struct axp288_extcon_pdata { + /* GPIO pin control to switch D+/D- lines b/w PMIC and SOC */ + struct gpio_desc *gpio_mux_cntl; +}; + #endif /* __LINUX_MFD_AXP20X_H */ -- 1.7.9.5