summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/linux/ar7/files/drivers/vlynq/vlynq.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/target/linux/ar7/files/drivers/vlynq/vlynq.c b/target/linux/ar7/files/drivers/vlynq/vlynq.c
index 61e15eced8..879ed0d14c 100644
--- a/target/linux/ar7/files/drivers/vlynq/vlynq.c
+++ b/target/linux/ar7/files/drivers/vlynq/vlynq.c
@@ -380,6 +380,7 @@ static int __vlynq_enable_device(struct vlynq_device *dev)
switch (dev->divisor) {
case vlynq_div_auto:
/* Only try locally supplied clock, others cause problems */
+ vlynq_reg_write(dev->local->control, 0);
vlynq_reg_write(dev->remote->control, 0);
for (i = vlynq_ldiv2; i <= vlynq_ldiv8; i++) {
vlynq_reg_write(dev->local->control,
@@ -395,11 +396,11 @@ static int __vlynq_enable_device(struct vlynq_device *dev)
}
case vlynq_ldiv1: case vlynq_ldiv2: case vlynq_ldiv3: case vlynq_ldiv4:
case vlynq_ldiv5: case vlynq_ldiv6: case vlynq_ldiv7: case vlynq_ldiv8:
- vlynq_reg_write(dev->remote->control, 0);
vlynq_reg_write(dev->local->control,
VLYNQ_CTRL_CLOCK_INT |
VLYNQ_CTRL_CLOCK_DIV(dev->divisor -
vlynq_ldiv1));
+ vlynq_reg_write(dev->remote->control, 0);
if (vlynq_linked(dev)) {
printk(KERN_DEBUG
"%s: using local clock divisor %d\n",