On Fri, 4 Feb 2011, Tony Lindgren wrote: > * Nicolas Pitre <nico@xxxxxxxxxxx> [110204 12:14]: > > > > Just create a get_config_ptr macro or similar and the trickery will be > > nicely encapsulated. You'd have: > > > > .macro get_config_ptr ptr, tmp > > b 9002f > > .align > > 9001: .long . > > .long uart_param_storage > > 9002: adr \ptr, 9001b > > ldr \tmp, [\ptr] > > sub \tmp, \tmp, \ptr > > ldr \ptr, [\ptr, #4] > > sub \ptr, \ptr, \tmp > > .endm > > > > .macro addruart rp, rv > > get_config_ptr \rv > > ldr \rp, [\rv] > > ldr \rv, [\rv, #4] > > .endm > > > > And for the other macros, you get the hardware address to use already, > > but you can still use get_config_ptr for extra config values you > > need if necessary. > > Thanks, will try that out next week. That might run into problems with > busyuart as it only has rd register to play with. With some code auditing we could declare ip as being callee clobberable with those macros. Nicolas -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html