patches/linux/2.6.11.3/160-linux-2.6.11-allow-gcc-4.0-i2c.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 13 10:32:38 2008 +0000 (2008-07-13)
changeset 645 8e58024f8e37
permissions -rw-r--r--
Ioannis E. VENETIS <venetis@mail.capsl.udel.edu> pointed out that GMP and MPFR were not used by gcc.
Turned out that none could use GMP and MPFR as the config option changed its name, but the change was not propagated to all users.

/trunk/scripts/build/binutils.sh | 2 1 1 0 +-
/trunk/scripts/build/debug/300-gdb.sh | 2 1 1 0 +-
/trunk/scripts/build/cc_gcc.sh | 6 3 3 0 +++---
3 files changed, 5 insertions(+), 5 deletions(-)
yann@402
     1
Fixes
yann@402
     2
yann@402
     3
In file included from fs/compat_ioctl.c:69,
yann@402
     4
                 from arch/ppc64/kernel/ioctl32.c:24:
yann@402
     5
include/linux/i2c.h:58: error: array type has incomplete element type
yann@402
     6
include/linux/i2c.h:197: error: array type has incomplete element type
yann@402
     7
yann@402
     8
when compiling with gcc-4.0.
yann@402
     9
yann@402
    10
--- linux-2.6.11.3/include/linux/i2c.h.old	2005-03-19 10:59:09.000000000 -0800
yann@402
    11
+++ linux-2.6.11.3/include/linux/i2c.h	2005-03-19 11:01:37.000000000 -0800
yann@402
    12
@@ -36,7 +36,22 @@
yann@402
    13
 
yann@402
    14
 /* --- General options ------------------------------------------------	*/
yann@402
    15
 
yann@402
    16
-struct i2c_msg;
yann@402
    17
+/*
yann@402
    18
+ * I2C Message - used for pure i2c transaction, also from /dev interface
yann@402
    19
+ */
yann@402
    20
+struct i2c_msg {
yann@402
    21
+	__u16 addr;	/* slave address			*/
yann@402
    22
+ 	__u16 flags;		
yann@402
    23
+#define I2C_M_TEN	0x10	/* we have a ten bit chip address	*/
yann@402
    24
+#define I2C_M_RD	0x01
yann@402
    25
+#define I2C_M_NOSTART	0x4000
yann@402
    26
+#define I2C_M_REV_DIR_ADDR	0x2000
yann@402
    27
+#define I2C_M_IGNORE_NAK	0x1000
yann@402
    28
+#define I2C_M_NO_RD_ACK		0x0800
yann@402
    29
+ 	__u16 len;		/* msg length				*/
yann@402
    30
+ 	__u8 *buf;		/* pointer to msg data			*/
yann@402
    31
+};
yann@402
    32
+
yann@402
    33
 struct i2c_algorithm;
yann@402
    34
 struct i2c_adapter;
yann@402
    35
 struct i2c_client;
yann@402
    36
@@ -379,22 +394,6 @@
yann@402
    37
 /* Return 1 if adapter supports everything we need, 0 if not. */
yann@402
    38
 extern int i2c_check_functionality (struct i2c_adapter *adap, u32 func);
yann@402
    39
 
yann@402
    40
-/*
yann@402
    41
- * I2C Message - used for pure i2c transaction, also from /dev interface
yann@402
    42
- */
yann@402
    43
-struct i2c_msg {
yann@402
    44
-	__u16 addr;	/* slave address			*/
yann@402
    45
- 	__u16 flags;		
yann@402
    46
-#define I2C_M_TEN	0x10	/* we have a ten bit chip address	*/
yann@402
    47
-#define I2C_M_RD	0x01
yann@402
    48
-#define I2C_M_NOSTART	0x4000
yann@402
    49
-#define I2C_M_REV_DIR_ADDR	0x2000
yann@402
    50
-#define I2C_M_IGNORE_NAK	0x1000
yann@402
    51
-#define I2C_M_NO_RD_ACK		0x0800
yann@402
    52
- 	__u16 len;		/* msg length				*/
yann@402
    53
- 	__u8 *buf;		/* pointer to msg data			*/
yann@402
    54
-};
yann@402
    55
-
yann@402
    56
 /* To determine what functionality is present */
yann@402
    57
 
yann@402
    58
 #define I2C_FUNC_I2C			0x00000001