From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753415AbcAXUjY (ORCPT ); Sun, 24 Jan 2016 15:39:24 -0500 Received: from smtp05.smtpout.orange.fr ([80.12.242.127]:43029 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751973AbcAXUjV (ORCPT ); Sun, 24 Jan 2016 15:39:21 -0500 X-ME-Helo: belgarion X-ME-Auth: amFyem1pay5yb2JlcnRAb3JhbmdlLmZy X-ME-Date: Sun, 24 Jan 2016 21:39:18 +0100 X-ME-IP: 86.199.70.65 From: Robert Jarzmik To: Arnd Bergmann Cc: Masahiro Yamada , arm@kernel.org, Haojian Zhuang , linux-kernel@vger.kernel.org, Russell King , Daniel Mack , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL References: <1453577004-15295-1-git-send-email-yamada.masahiro@socionext.com> <87k2n0ar0v.fsf@belgarion.home> <1495788.v3fMfHFcmP@wuerfel> X-URL: http://belgarath.falguerolles.org/ Date: Sun, 24 Jan 2016 21:39:11 +0100 Message-ID: <87zivuaf0w.fsf@belgarion.home> User-Agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Arnd Bergmann writes: > On Saturday 23 January 2016 23:07:44 Robert Jarzmik wrote: >> I have this patch in my local tree for 2 monthes (see [1]). This is the patch >> I'd rather have. I had not posted it as I didn't think the pinctrl work was over >> yet. I know at least that pxa3xx is ready (as pinctrl-single should be used), >> and I had not the time to create the map for pxa25x. > > Once you are done, does that mean the plat-pxa/mfp.c stuff becomes > completely unused on pxa, or will it coexist with pinctrl? At first it will coexist. The main blocker so far I have are : - the pinconf in platform_data platform to define sleep state pin levels (aka. MFPR_LPM_DRIVE_LOW and MFPR_LPM_DRIVE_HIGH) I have [1], but it's not working yet, ie. upon entering suspend to RAM, the GPIO sleep registers are not programmed as expected. - all the pxa machine code have to be migrated from MFP to pinctrl So it will take time. > I'm asking because it seems that at that point, the entire plat-pxa > directory can be removed, with the dma.c and ssp.c files getting > moved to mach-pxa, and mfp.c moved to mach-mmp. :-) dma.c will die soon enough anyway, ssp.c will move to mach-pxa indeed, and as for mfp.c it requires a bit of work. Cheers. -- Robert [1] Extract of my samples in mioa701.c : #define PMGROUP(pin) #pin #define PMMUX(dev, pin, func) \ PIN_MAP_MUX_GROUP(#dev, PINCTRL_STATE_DEFAULT, "pxa27x-pinctrl", \ "P" PMGROUP(pin), #func) #define PMCONF_SLEEP(dev, pin, mode) \ PIN_MAP_CONFIGS_PIN(#dev, PINCTRL_STATE_SLEEP, "pxa27x-pinctrl", \ "P" PMGROUP(pin), gpio_ ## mode ## _sleep_mode) static unsigned long gpio_pull_sleep_mode[] = { PIN_CONF_PACKED(PIN_CONFIG_OUTPUT, 0), }; static unsigned long gpio_push_sleep_mode[] = { PIN_CONF_PACKED(PIN_CONFIG_OUTPUT, 1), }; static struct pinctrl_map pinmap[] __initdata = { /* USB */ PMMUX(pxa27x-udc, GPIO13_nUSB_DETECT, gpio_in), PMMUX(pxa27x-udc, GPIO22_USB_ENABLE, gpio_in), PMCONF_SLEEP(pxa27x-udc, GPIO22_USB_ENABLE, pull), }; ... /* pxa2xx_mfp_config(ARRAY_AND_SIZE(mioa701_pin_config)); */ pinctrl_register_mappings(pinmap, ARRAY_SIZE(pinmap));