[i2c] [PATCH] AT91 I2C driver update

Andrew Victor andrew at sanpeople.com
Fri Dec 8 13:10:46 CET 2006


hi,

This patch updates the AT91 I2C driver for the recently-merged core AT91
changes.

Some of the header files have been changed/renamed.
Replace the CPU identification with the cpu_is_XXX() macro.


Signed-off-by: Andrew Victor <andrew at sanpeople.com>


diff -urN -x CVS linux-2.6.19-final/drivers/i2c/busses/i2c-at91.c linux-2.6.19/drivers/i2c/busses/i2c-at91.c
--- linux-2.6.19-final/drivers/i2c/busses/i2c-at91.c	Mon Dec  4 11:32:47 2006
+++ linux-2.6.19/drivers/i2c/busses/i2c-at91.c	Fri Nov 10 09:18:41 2006
@@ -27,9 +27,9 @@
 
 #include <asm/io.h>
 
-#include <asm/arch/at91rm9200_twi.h>
+#include <asm/arch/at91_twi.h>
 #include <asm/arch/board.h>
-#include <asm/arch/system.h>
+#include <asm/arch/cpu.h>
 
 #define TWI_CLOCK		100000		/* Hz. max 400 Kbits/sec */
 
@@ -61,7 +61,7 @@
 		cdiv = cdiv >> 1;
 	}
 
-	if (arch_identify() == ARCH_ID_AT91RM9200) {	/* AT91RM9200 Errata #22 */
+	if (cpu_is_at91rm9200()) {			/* AT91RM9200 Errata #22 */
 		if (ckdiv > 5) {
 			printk(KERN_ERR "AT91 I2C: Invalid TWI_CLOCK value!\n");
 			ckdiv = 5;
@@ -244,9 +244,9 @@
 	return 0;
 
 fail3:
-	clk_disable(twi_clk);
 	platform_set_drvdata(pdev, NULL);
 	kfree(adapter);
+	clk_disable(twi_clk);
 fail2:
 	clk_put(twi_clk);
 fail1:






More information about the i2c mailing list