From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752514AbbCaHz3 (ORCPT ); Tue, 31 Mar 2015 03:55:29 -0400 Received: from mga11.intel.com ([192.55.52.93]:1200 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752204AbbCaHzM (ORCPT ); Tue, 31 Mar 2015 03:55:12 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,499,1422950400"; d="scan'208";a="700651124" From: Ramakrishna Pallala To: linux-kernel@vger.kernel.org, MyungJoo Ham , Chanwoo Choi , Samuel Ortiz , Lee Jones Cc: Carlo Caione , Jacob Pan , Pallala Ramakrishna Subject: [PATCH v0 1/2] mfd/axp20x: add support for extcon cell Date: Tue, 31 Mar 2015 21:33:58 +0530 Message-Id: <1427817838-13775-1-git-send-email-ramakrishna.pallala@intel.com> X-Mailer: git-send-email 1.7.9.5 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..30af1a3 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 = "extcon-axp288", + .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