When ahci init ,driver will send ATA_SRST command,ahci device report device 
type through port's sig register.
Ahci disk lookup change from IF_SD to IF_SCSI now,because IF_SD does not 
support cdrom media.
I just copy ide_atapi_cmd from hw/ide/core.c into hw/ahci.c,change a 
little,then the cdrom can be identified,and read by os.
If qemu can change dma_buf_prepare,dma_buf_rw,dma_buf_commit to a function 
pointer in BMDMAState,then I can rewrite three functions to support ahci's 
prtd,because it is different from ide's.

test a sata disk like this:
./i386-softmmu/qemu -cdrom KNOPPIX_V6.0.1CD-2009-02-08-EN.iso -drive 
if=scsi,file=/tmp/disk
test a sata cd like this:
./i386-softmmu/qemu -cdrom KNOPPIX_V6.0.1CD-2009-02-08-EN.iso -drive 
if=scsi,media=cdrom,file=KNOPPIX_V6.0.1CD-2009-02-08-EN.iso



QiaoChong (1):
  add cdrom support for ahci.

 hw/ahci.c |  425 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 422 insertions(+), 3 deletions(-)



Reply via email to