Page 1 of 1

AHCI Command List should be in Physical address or MMIO?

Posted: Thu Feb 20, 2020 9:12 pm
by shore
Hi I'm trying to write an AHCI driver following https://wiki.osdev.org/AHCI.

In the sample program, start from "port->clb", which is the pointer to "Command List" and all following pointers, are defined by OS programmer.

Since ABAR and Ports are memory mapped address, I would like to ask if the following structure should be located in physical memory (RAM) or the memory mapped address??

Thanks a lot!

Re: AHCI Command List should be in Physical address or MMIO

Posted: Fri Feb 21, 2020 2:36 am
by Octocontrabass
I thought this diagram made it pretty clear.

Image

Re: AHCI Command List should be in Physical address or MMIO

Posted: Fri Feb 21, 2020 2:42 am
by shore
Octocontrabass wrote:I thought this diagram made it pretty clear.

Image
So it would be the RAM/physical memory right? and the AHCI controller would read from DMA method.

Thanks a lot

Re: AHCI Command List should be in Physical address or MMIO

Posted: Fri Feb 21, 2020 3:16 am
by Octocontrabass
Yes, that's correct.