6aaec67da1
DMTIMER source selection on OMAP1 is broken. omap1_dm_timer_set_src()
tries to use __raw_{read,write}l() to read from and write to physical
addresses, but those functions take virtual addresses.
sparse caught this:
arch/arm/mach-omap1/timer.c:50:13: warning: incorrect type in argument 1 (different base types)
arch/arm/mach-omap1/timer.c:50:13: expected void const volatile [noderef] <asn:2>*<noident>
arch/arm/mach-omap1/timer.c:50:13: got unsigned int
arch/arm/mach-omap1/timer.c:52:9: warning: incorrect type in argument 1 (different base types)
arch/arm/mach-omap1/timer.c:52:9: expected void const volatile [noderef] <asn:2>*<noident>
arch/arm/mach-omap1/timer.c:52:9: got unsigned int
Fix by using omap_{read,writel}(), just like the other users of the
MOD_CONF_CTRL_1 register in the OMAP1 codebase. Of course, in the long term,
removing omap_{read,write}l() is the appropriate thing to do; but
this will take some work to do this cleanly.
Looks like this was caused by
|
||
---|---|---|
.. | ||
include/mach | ||
ams-delta-fiq-handler.S | ||
ams-delta-fiq.c | ||
board-ams-delta.c | ||
board-fsample.c | ||
board-generic.c | ||
board-h2-mmc.c | ||
board-h2.c | ||
board-h2.h | ||
board-h3-mmc.c | ||
board-h3.c | ||
board-h3.h | ||
board-htcherald.c | ||
board-innovator.c | ||
board-nokia770.c | ||
board-osk.c | ||
board-palmte.c | ||
board-palmtt.c | ||
board-palmz71.c | ||
board-perseus2.c | ||
board-sx1-mmc.c | ||
board-sx1.c | ||
board-voiceblue.c | ||
clock_data.c | ||
clock.c | ||
clock.h | ||
common.h | ||
devices.c | ||
dma.c | ||
flash.c | ||
fpga.c | ||
gpio7xx.c | ||
gpio15xx.c | ||
gpio16xx.c | ||
i2c.c | ||
id.c | ||
io.c | ||
iomap.h | ||
irq.c | ||
Kconfig | ||
lcd_dma.c | ||
leds-h2p2-debug.c | ||
leds-innovator.c | ||
leds-osk.c | ||
leds.c | ||
leds.h | ||
mailbox.c | ||
Makefile | ||
Makefile.boot | ||
mcbsp.c | ||
mux.c | ||
opp_data.c | ||
opp.h | ||
pm_bus.c | ||
pm.c | ||
pm.h | ||
reset.c | ||
serial.c | ||
sleep.S | ||
sram.S | ||
time.c | ||
timer32k.c | ||
timer.c | ||
usb.c |