2007-12-03 09:48:07

by Jan Altenberg

[permalink] [raw]
Subject: [PATCH][AT91] Fix compile error for at91rm9200 in latest git

Hi,

at91rm9200ek doesn't compile in latest git:

/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c: In function `ek_board_init':
/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c:148: error: `ek_i2c_devices' undeclared (first use in this function)
/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c:148: error: (Each undeclared identifier is reported only once
/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c:148: error: for each function it appears in.)
/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c:148: warning: type defaults to `int' in declaration of `type name'
/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c:148: warning: type defaults to `int' in declaration of `type name'
/here/workdir/linux-2.6/at91rm9200ek/src/arch/arm/mach-at91/board-ek.c:148: error: size of array `type name' is negative

The offending commit is:

[jan@bender linux-2.6]$ git-bisect good
f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15 is first bad commit
commit f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15
Author: Andrew Victor <[email protected]>
Date: Mon Nov 19 13:47:20 2007 +0100

[ARM] 4650/1: AT91: New-style init of I2C, support for i2c-gpio

The AT91 I2C driver is currently marked as "broken" due to hardware
issues. This patch enables AT91-based platforms to also use the
bitbanged GPIO for I2C.

This updates platform setup logic (setting up an i2c-gpio device
using the same pins as the i2c-at91 device, unless only the BROKEN
driver is enabled).

Also make use of the new-style initialization of I2C devices using
i2c_register_board_info().

Signed-off-by: David Brownell <[email protected]>
Signed-off-by: Andrew Victor <[email protected]>
Signed-off-by: Russell King <[email protected]>

This patch adds the missing i2c_board_info struct (grabbed from Andrew
Victor's tree).

Signed-off-by: Jan Altenberg <[email protected]>

---
diff --git a/arch/arm/mach-at91/board-ek.c b/arch/arm/mach-at91/board-ek.c
index d05b1b2..53a5ef9 100644
--- a/arch/arm/mach-at91/board-ek.c
+++ b/arch/arm/mach-at91/board-ek.c
@@ -109,6 +109,15 @@ static struct spi_board_info ek_spi_devices[] = {
#endif
};

+static struct i2c_board_info __initdata ek_i2c_devices[] = {
+ {
+ I2C_BOARD_INFO("ics1523", 0x26),
+ },
+ {
+ I2C_BOARD_INFO("dac3550", 0x4d),
+ }
+};
+
#define EK_FLASH_BASE AT91_CHIPSELECT_0
#define EK_FLASH_SIZE 0x200000


2007-12-03 18:53:59

by David Brownell

[permalink] [raw]
Subject: Re: [PATCH][AT91] Fix compile error for at91rm9200 in latest git

On Monday 03 December 2007, Jan Altenberg wrote:
>
> at91rm9200ek doesn't compile in latest git:
> ...
> The offending commit is:
>
> [jan@bender linux-2.6]$ git-bisect good
> f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15 is first bad commit
> commit f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15
> Author: Andrew Victor <[email protected]>
> Date: Mon Nov 19 13:47:20 2007 +0100
>
> [ARM] 4650/1: AT91: New-style init of I2C, support for i2c-gpio
> ...
>
> Signed-off-by: David Brownell <[email protected]>
> Signed-off-by: Andrew Victor <[email protected]>
> Signed-off-by: Russell King <[email protected]>

Which is a combination of two patches, which seems to have dropped the
chunk you show below. The reason this seems to have my signoff is
that I originated one of those patches, and parts of the second, but
in fact I had never seen f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15
until after this email ...

Your patch looks correct, and seems to be the only obvious chunk
that's missing. So, I'll ack it FWIW ... usual policy for these
patches is to go through Russell.


I'll note that the whole "mark Atmel's TWI controller BROKEN" patchh
series, making everything use the i2c-gpio instead, has turned up
one more issue at the I2C level: the i2c_adapter.class for i2c-gpio
needs to include at least the HWMON class bit.

- Dave


> This patch adds the missing i2c_board_info struct (grabbed from Andrew
> Victor's tree).
>
> Signed-off-by: Jan Altenberg <[email protected]>
>
> ---
> diff --git a/arch/arm/mach-at91/board-ek.c b/arch/arm/mach-at91/board-ek.c
> index d05b1b2..53a5ef9 100644
> --- a/arch/arm/mach-at91/board-ek.c
> +++ b/arch/arm/mach-at91/board-ek.c
> @@ -109,6 +109,15 @@ static struct spi_board_info ek_spi_devices[] = {
> #endif
> };
>
> +static struct i2c_board_info __initdata ek_i2c_devices[] = {
> + {
> + I2C_BOARD_INFO("ics1523", 0x26),
> + },
> + {
> + I2C_BOARD_INFO("dac3550", 0x4d),
> + }
> +};
> +
> #define EK_FLASH_BASE AT91_CHIPSELECT_0
> #define EK_FLASH_SIZE 0x200000
>
>

2007-12-03 20:02:44

by Andrew Victor

[permalink] [raw]
Subject: Re: [PATCH][AT91] Fix compile error for at91rm9200 in latest git

hi,

> Which is a combination of two patches, which seems to have dropped the
> chunk you show below. The reason this seems to have my signoff is
> that I originated one of those patches, and parts of the second, but
> in fact I had never seen f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15
> until after this email ...

I guess in my rush to get those patches submitted before leaving SAN
People I missed that chunk. Sorry.

David: The Signed-off line was kept as-is to keep the attribution correct.


> Your patch looks correct, and seems to be the only obvious chunk
> that's missing. So, I'll ack it FWIW ... usual policy for these
> patches is to go through Russell.

You can add my Ack for what it's worth.


Regards,
Andrew Victor

2007-12-04 08:15:25

by Jan Altenberg

[permalink] [raw]
Subject: Re: [PATCH][AT91] Fix compile error for at91rm9200 in latest git

Hi all,

> > Your patch looks correct, and seems to be the only obvious chunk
> > that's missing. So, I'll ack it FWIW ... usual policy for these
> > patches is to go through Russell.
>
> You can add my Ack for what it's worth.

OK, CC'ed Russell and added your Acked-by.

Signed-off-by: Jan Altenberg <[email protected]>
Acked-by: Andrew Victor <[email protected]>

---
diff --git a/arch/arm/mach-at91/board-ek.c b/arch/arm/mach-at91/board-ek.c
index d05b1b2..53a5ef9 100644
--- a/arch/arm/mach-at91/board-ek.c
+++ b/arch/arm/mach-at91/board-ek.c
@@ -109,6 +109,15 @@ static struct spi_board_info ek_spi_devices[] = {
#endif
};

+static struct i2c_board_info __initdata ek_i2c_devices[] = {
+ {
+ I2C_BOARD_INFO("ics1523", 0x26),
+ },
+ {
+ I2C_BOARD_INFO("dac3550", 0x4d),
+ }
+};
+
#define EK_FLASH_BASE AT91_CHIPSELECT_0
#define EK_FLASH_SIZE 0x200000


2007-12-08 14:44:30

by Russell King - ARM Linux

[permalink] [raw]
Subject: Re: [PATCH][AT91] Fix compile error for at91rm9200 in latest git

On Tue, Dec 04, 2007 at 09:14:29AM +0100, Jan Altenberg wrote:
> Hi all,
>
> > > Your patch looks correct, and seems to be the only obvious chunk
> > > that's missing. So, I'll ack it FWIW ... usual policy for these
> > > patches is to go through Russell.
> >
> > You can add my Ack for what it's worth.
>
> OK, CC'ed Russell and added your Acked-by.
>
> Signed-off-by: Jan Altenberg <[email protected]>
> Acked-by: Andrew Victor <[email protected]>

-> patch system please.