Am 27.08.2011 11:12, schrieb Daniel Verkamp:
> Implement an I/O space index-data register pair as defined by the AHCI
> spec, including the corresponding SATA PCI capability and BAR.
> 
> This allows real-mode code to access the AHCI registers; real-mode
> code cannot address the memory-mapped register space because it is
> beyond the first megabyte.
> 
> Signed-off-by: Daniel Verkamp <dan...@drv.nu>

Thanks, applied to the block branch.

> --- a/hw/ide/ich.c
> +++ b/hw/ide/ich.c
> @@ -72,6 +72,14 @@
>  #include <hw/ide/pci.h>
>  #include <hw/ide/ahci.h>
>  
> +#define ICH9_SATA_CAP_OFFSET    0xA8
> +
> +#define ICH9_IDP_BAR            4
> +#define ICH9_MEM_BAR            5
> +
> +#define ICH9_IDP_INDEX          0x10
> +#define ICH9_IDP_INDEX_LOG2     0x04

Just wondering, why did you choose 0x10 and not 0? The spec reads as if
the implementation could freely choose this, and I can't see what the
first 16 Bytes are used for.

Doesn't make it less correct, of course.

Kevin

Reply via email to