* Grazvydas Ignotas [off-list ref] [110204 04:03]:
On Fri, Feb 4, 2011 at 3:27 AM, Tony Lindgren [off-list ref] wrote:
quoted
Set the debug serial port based on machine ID. Note that most
of the patch is just trivial checking for the machine ID.
..
This looks a bit wasteful not only because of repeated CMPs, but also
LDRs are generating a large literal pool. Maybe something like that be
better:
adr r0, uart3_machines
0:
ldrh \v, [r0], #2
tst \v, \v
beq 999f @ end of list
cmp \id, \v
bne 0b
ldr \v, =OMAP3_UART3_BASE
str \v, [\a, #0] @ save port phys addr
ldr \v, =(OMAP3_UART3_BASE + OMAP2_L4_IO_OFFSET)
str \v, [\a, #4] @ save port virt addr
b 999f
uart3_machines:
.short MACH_TYPE_CM_T35
.short MACH_TYPE_CM_T3517
...
.short 0
of course this needs an extra register..
Hmm, addruart and busyuart are limited with registers, but
inituart may not be. I'll take a look if that can be done.
Regards,
Tony