Re: Regression 3.11-rc1: omap4panda: no usb and consequently noethernet

From: Tony Lindgren
Date: Fri Jul 19 2013 - 06:54:06 EST


* Arend van Spriel <arend@xxxxxxxxxxxx> [130719 03:43]:
> On 07/18/2013 10:59 AM, Tony Lindgren wrote:
> >Then for the SDIO with device tree, take a look at the following
> >patches:
> >
> >[PATCH 0/3] WLAN support for omap4 when booted with devicetree
> >http://comments.gmane.org/gmane.linux.ports.arm.omap/97522#
>
> I have been looking at the pandaboard patch in the series above and
> I do have a question. Among other things the patch adds these dt
> entries.
>
> + 0x108 0x118 /* sdmmc5_clk.sdmmc5_clk INPUT_PULLUP | MODE0 */
> + 0x10a 0x118 /* sdmmc5_cmd.sdmmc5_cmd INPUT_PULLUP | MODE0 */
>
> If I look at the similar names in the deceased board-omap4panda.c:
>
> board-omap4panda.c: OMAP4_MUX(SDMMC5_CMD, OMAP_MUX_MODE0 |
> OMAP_PIN_INPUT_PULLUP),
> board-omap4panda.c: OMAP4_MUX(SDMMC5_CLK, OMAP_MUX_MODE0 |
> OMAP_PIN_INPUT_PULLUP),
>
> and in mux44xx.h:
>
> mux44xx.h:#define OMAP4_CTRL_MODULE_PAD_SDMMC5_CLK_OFFSET 0x0148
> mux44xx.h:#define OMAP4_CTRL_MODULE_PAD_SDMMC5_CMD_OFFSET 0x014a
>
> So how did 0x0148 get 0x0108 in DT and 0x014a get 0x010a. There is
> probably an explanation to it and it would help my understanding to
> know where this difference comes from. Hope you can help me out
> here.

That's pretty confusing I agree.. The reason is that we have multiple
instances of the pinctrl-single: one for core domain and one for wkup
domain. Those instances cover the padconf registers. Then further
instances of pinctrl-single,bits will be used for the various other
SCM registers.

Felipe suggested adding a macro like OMAP4_PAD(offset, value) to
make it less confusing, but for omap4 core padconf area the difference
is 0x40, and 0x30 for omap3 if I remember correctly.

> Below are the definitions that I need to move into a dts.
>
> /* MMC2 Mux for extension board */
> /* MMC2 CMD */
> OMAP4_MUX(GPMC_NWE, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
> /* MMC2 CLK */
> OMAP4_MUX(GPMC_NOE, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
> /* MMC2 DAT 0-7 */
> OMAP4_MUX(GPMC_AD0, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
> OMAP4_MUX(GPMC_AD1, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
> OMAP4_MUX(GPMC_AD2, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
> OMAP4_MUX(GPMC_AD3, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),

Assuming these are all in the core padconf area, just take the TRM
register offset and subtract 0x40.

Regards,

Tony

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/