diff options
| author | Dan Williams <dan.j.williams@intel.com> | 2007-04-29 04:31:21 -0400 |
|---|---|---|
| committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2007-04-30 10:24:47 -0400 |
| commit | 8903fcce9b91bab6bb98adbb57a4edfc372c8bff (patch) | |
| tree | 2afd7bd442724e35da774b4c1bef016b74814301 | |
| parent | 235b185ce47ce64793362bd3ae4bcd8afc6b57b8 (diff) | |
[ARM] 4340/1: iop: fix iop_getttimeoffset
Fix a typo which causes a necessary cpwait to be missed on iop3xx, Michael
Brunner <mibru@gmx.de>
Save a register in the assembly routine, rmk
Cc: Lennert Buytenhek <kernel@wantstofly.org>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| -rw-r--r-- | arch/arm/plat-iop/time.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/arm/plat-iop/time.c b/arch/arm/plat-iop/time.c index 16300adfb4de..0cc26da034a1 100644 --- a/arch/arm/plat-iop/time.c +++ b/arch/arm/plat-iop/time.c | |||
| @@ -32,22 +32,22 @@ static unsigned long next_jiffy_time; | |||
| 32 | 32 | ||
| 33 | unsigned long iop_gettimeoffset(void) | 33 | unsigned long iop_gettimeoffset(void) |
| 34 | { | 34 | { |
| 35 | unsigned long offset, temp1, temp2; | 35 | unsigned long offset, temp; |
| 36 | 36 | ||
| 37 | /* enable cp6, if necessary, to avoid taking the overhead of an | 37 | /* enable cp6, if necessary, to avoid taking the overhead of an |
| 38 | * undefined instruction trap | 38 | * undefined instruction trap |
| 39 | */ | 39 | */ |
| 40 | asm volatile ( | 40 | asm volatile ( |
| 41 | "mrc p15, 0, %0, c15, c1, 0\n\t" | 41 | "mrc p15, 0, %0, c15, c1, 0\n\t" |
| 42 | "ands %1, %0, #(1 << 6)\n\t" | 42 | "tst %0, #(1 << 6)\n\t" |
| 43 | "orreq %0, %0, #(1 << 6)\n\t" | 43 | "orreq %0, %0, #(1 << 6)\n\t" |
| 44 | "mcreq p15, 0, %0, c15, c1, 0\n\t" | 44 | "mcreq p15, 0, %0, c15, c1, 0\n\t" |
| 45 | #ifdef CONFIG_XSCALE | 45 | #ifdef CONFIG_CPU_XSCALE |
| 46 | "mrceq p15, 0, %0, c15, c1, 0\n\t" | 46 | "mrceq p15, 0, %0, c15, c1, 0\n\t" |
| 47 | "moveq %0, %0\n\t" | 47 | "moveq %0, %0\n\t" |
| 48 | "subeq pc, pc, #4\n\t" | 48 | "subeq pc, pc, #4\n\t" |
| 49 | #endif | 49 | #endif |
| 50 | : "=r"(temp1), "=r"(temp2) : : "cc"); | 50 | : "=r"(temp) : : "cc"); |
| 51 | 51 | ||
| 52 | offset = next_jiffy_time - read_tcr1(); | 52 | offset = next_jiffy_time - read_tcr1(); |
| 53 | 53 | ||
