aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/lantiq/patches-3.3/0072-fix_i2c_clock.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-3.3/0072-fix_i2c_clock.patch b/target/linux/lantiq/patches-3.3/0072-fix_i2c_clock.patch
new file mode 100644
index 0000000000..310b33f29f
--- /dev/null
+++ b/target/linux/lantiq/patches-3.3/0072-fix_i2c_clock.patch
@@ -0,0 +1,32 @@
+Index: linux-3.3.8/arch/mips/lantiq/falcon/sysctrl.c
+===================================================================
+--- linux-3.3.8.orig/arch/mips/lantiq/falcon/sysctrl.c 2012-08-02 15:14:10.811781411 +0200
++++ linux-3.3.8/arch/mips/lantiq/falcon/sysctrl.c 2012-08-02 15:16:24.587787128 +0200
+@@ -171,6 +171,7 @@
+ clk->cl.con_id = NULL;
+ clk->cl.clk = clk;
+ clk->module = module;
++ clk->bits = bits;
+ clk->activate = ltq_sysctl_activate;
+ clk->deactivate = ltq_sysctl_deactivate;
+ clk->enable = ltq_sysctl_clken;
+@@ -206,5 +207,5 @@
+ clkdev_add_sys("falcon_gpio.3", SYSCTL_SYS1, ACTS_PADCTRL3 | ACTS_P3);
+ clkdev_add_sys("falcon_gpio.4", SYSCTL_SYS1, ACTS_PADCTRL4 | ACTS_P4);
+ clkdev_add_sys("ltq_asc.1", SYSCTL_SYS1, ACTS_ASC1_ACT);
+- clkdev_add_sys("falcon_i2c", SYSCTL_SYS1, ACTS_I2C_ACT);
++ clkdev_add_sys("i2c-falcon.0", SYSCTL_SYS1, ACTS_I2C_ACT);
+ }
+Index: linux-3.3.8/drivers/i2c/busses/i2c-falcon.c
+===================================================================
+--- linux-3.3.8.orig/drivers/i2c/busses/i2c-falcon.c 2012-08-02 15:14:10.939781415 +0200
++++ linux-3.3.8/drivers/i2c/busses/i2c-falcon.c 2012-08-02 15:15:59.667786063 +0200
+@@ -824,7 +824,7 @@
+ dev_err(&pdev->dev, "failed to get i2c clk\n");
+ return -ENOENT;
+ }
+-
++ clk_activate(clk);
+ /* allocate private data */
+ priv = kzalloc(sizeof(*priv), GFP_KERNEL);
+ if (!priv) {