Linux AHCI PRD allocation -


i hardware developer creating ahci interface embedded system. know prd dma data created , allocated prds. sata uses dwords assuming data aligned multiples of 4 bytes. dont have experience of linux grateful if can point me in right direction.

thanks

ahci controller acts data movement engine between system memory , sata devices. take read operation example, rough sequence follows:

  • software "builds" command in memory(command header, command table, , corresponding prds)
  • software issues command configuring port register, pxci(and pxsact if ncq)
  • ahci controller fetch , process command(including data transfer...)
  • software interrupt service called process command completion
  • software read prds device content

prd entries created/allocated software(driver) , can located/retrieved via command table, is, hardware can locate command table retrieve prd entries. besides, ahci spec defines both prd address , byte count word-aligned(minimum)


Comments

Popular posts from this blog

c# - How to get the current UAC mode -

postgresql - Lazarus + Postgres: incomplete startup packet -

javascript - Ajax jqXHR.status==0 fix error -