Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1315974

Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL

From Robert Jarzmik <robert.jarzmik@free.fr>
Newsgroups linux.kernel
Subject Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL
Date 2016-01-24 21:40 +0100
Message-ID <qUzC3-1EG-23@gated-at.bofh.it> (permalink)
References <qUc2K-7pM-5@gated-at.bofh.it> <qUexA-3nL-9@gated-at.bofh.it> <qUftE-4nc-31@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Arnd Bergmann <arnd@arndb.de> 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));

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] ARM: pxa: let PXA27x select PINCTRL Masahiro Yamada <yamada.masahiro@socionext.com> - 2016-01-23 20:30 +0100
  Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL Robert Jarzmik <robert.jarzmik@free.fr> - 2016-01-23 23:10 +0100
    Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL Arnd Bergmann <arnd@arndb.de> - 2016-01-24 00:10 +0100
      Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL Robert Jarzmik <robert.jarzmik@free.fr> - 2016-01-24 21:40 +0100
        Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL Arnd Bergmann <arnd@arndb.de> - 2016-01-24 22:40 +0100
          Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL Masahiro Yamada <yamada.masahiro@socionext.com> - 2016-01-25 03:10 +0100
            Re: [PATCH] ARM: pxa: let PXA27x select PINCTRL Robert Jarzmik <robert.jarzmik@free.fr> - 2016-01-26 21:20 +0100

csiph-web