Colin Cross wrote at Wednesday, February 23, 2011 2:16 PM: > > On Wed, Feb 23, 2011 at 1:08 PM, Olof Johansson <olof@xxxxxxxxx> wrote: > > ... > > On Wed, Feb 23, 2011 at 10:58 AM, Stephen Warren <swarren@xxxxxxxxxx> wrote: > > [...] > >> diff --git a/arch/arm/mach-tegra/board-harmony.h b/arch/arm/mach-tegra/board-harmony.h > >> index 4fe33b8..fbf2304 100644 > >> --- a/arch/arm/mach-tegra/board-harmony.h > >> +++ b/arch/arm/mach-tegra/board-harmony.h > >> @@ -17,12 +17,19 @@ > >> #ifndef _MACH_TEGRA_BOARD_HARMONY_H > >> #define _MACH_TEGRA_BOARD_HARMONY_H > >> > >> +#define GPIO_WM8903(_x_) (TEGRA_NR_GPIOS + (_x_)) > > > > > > The above assumes that wm8903 is the GPIO controller that gets > > allocated the numbers right after native tegra gpio. That might not be > > the case on all boards, since the TPS PMIC has some as well, I > > believe. > The GPIO numbers above TEGRA_NR_GPIOS are allocated by the board, and > this is in board-harmony.h, so I think its OK. The Seaboard equivalent of this that I wrote for ChromeOS is: #define TPS_GPIO_BASE TEGRA_NR_GPIOS #define TPS_GPIO_WWAN_PWR (TPS_GPIO_BASE + 2) #define GPIO_WM8903(_x_) (TPS_GPIO_BASE + 4 + (_x_)) Which takes into account other devices. > > Does it need a hardcoded GPIO base, or can it use the dynamic one > > (i.e. use -1 here)? I don't even see any reference to gpio_base in the > > driver... > I assume that is in the ASoC tree. The platform data in tegra > for-next does not include a gpio_base entry. Yes, gpio_base is added to that tree. -1 would probably work. But then, I have no idea how to find out what base was assigned to the WM8903, in order to initialize the ASoC machine driver's platform_data... -- nvpublic -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html