AHCI

Component Description:
Advanced Host Controller Interface (AHCI) is a programming interface for SATA host controllers. AHCI defines transactions between the SATA controller and software and enables advanced performance and usability with SATA. AHCI has advantage of performance features such as no master/slave designation for SATA devices-each device is treated as a master-and hardware assisted native command queuing. AHCI also provides usability enhancements such as Hot-Plug. AHCI also requires appropriate software support (e.g., an AHCI driver) and for some features, hardware support in the SATA device.The AhciSrc Module can be added to a EFI BIOS to support Initialization, Detection and Enumeration of drives in Native Ahci Mode.The Module can be bisected to view the following functionality:Ahci Bus : This file will take care of installing and Uninstalling the driver binding protocol, Block Io Protocol for the Ahci Bus. Besides this it will take care of the detection of SATA device connected to given Port and PM Port and initializing, configuring and Programming the Ports and Ahci Controller if present. Other functionality about the Disk information, Identification and other miscellaneous task such as delays status check memory test etc will also be preformed when the disk is enumerated.AhciController : All the Controller related functionality are handled in this file. Besides having the Sata Block-io protocol functions, it will execute all controller related PIO, Packet and Non Data Commands. This File will also takes care of the Command structure based information that needs to be passed and controller features like generating resets, Start and Stop unit commands for controller, Wait for Controller processing actions.Aint13 : This file will take care of the main interaction of the Ahci EFI Module to relate to the CSM Legacy 16 which in turn passes the Number of Drives and Drive information to the legacy 16 bit binary so that the Ahci Sata devices (HDD/CD/DVD etc) will be entered in the bbs entry and passing the informationAint13Csp : This is chipset porting file that has routines to port index/data ports to access memory-mapped registersAhciAccess : Main functionality will be to provide Index Data Port Access to AHCI ControllerContol Flow : Ahci Driver is similar to IdeBus driver Functionality besides it uses the memory mapped access and Command structure to pass for the drive and operation instead of the Port map access. The Driver gets controlled as a generic driver binding model once it has been supported and the start function will enumerate the devices connected on the sata ports if found presence. Once Detected, the sata devices will be configured with the sata protocols and all the supplementary functionality. Finally at the end of Post, the enumerated devices are added to the bbs Prioroty table and the device information will be passed to the legacy 16 bit Csm Module.Name = "PORT_MULTIPLIER_SUPPORT"Value = "0"Help = "Switch to Enable/Disable PM Support"Name = "INDEX_DATA_PORT_ACCESS"Value = "0"Help = "0-MMIO Access , 1- Index/Port access"AHCI_USE_PCIIO_FOR_MMIO_AND_IO:0- Use direct Io/Mmio read/write , 1- Use PciIo->Io/PciIo->Mem APIs for Io/Mmmio operations"HDD_PASSWORD_SUPPORT_UNDER_RAIDMODE:0-HDD Password not support under Raid mode 1- EnabledSUPPORT_ATAPI_IN_RAID_MODE:1-Under Raid mode , Atapi devices are handled by AhciBus driver. 0 - Raid option rom will handle the Atapi devices.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值