Skip to contentSkip to conversation

How to the the physical addresses under linux (au1500)

DISCUSSION Sergio Ruiz 2 participants 2 messages May 3, 2005 MIPS

lore
Share & tools
lore
#0 lore raw

I am trying to program the DMA (with the ac97) in assembler using a linux kernel module for mips teaching purposes.
The problem is that I need to get the physical address of the pointer to the buffer to transfer to the AC97.
Looking at the kernel source code, I found that I can get the physical address subtracting 0x8000000, but It doesnt seem to work.

Any idea?

Thanks,

Sergio

#1 lore raw
Quoted 2 lines · Sergio Ruiz

I am trying to program the DMA (with the ac97) in assembler using a linux kernel module for mips teaching purposes.

I think you want to choose a more simple teaching example :-)

Quoted 2 lines

Looking at the kernel source code, I found that I can get the physical address subtracting 0x8000000, but It doesnt seem to work.

Not always. On systems like this one that are not cache coherent, we play games with mapped addresses to get uncached spaces or you need to apply various macros/functions to keep the space coherent.

Quoted 1 line

Any idea?

Use a more simple example. Maybe just update one of the LED displays on the board.

	-- Dan