LIBATA

优质
小牛编辑
133浏览
2023-12-01

LIBATA

[LIBATA]
libata.noacpi
在libata驱动休眠/唤醒过程中禁止使用ACPI。主要用于解决某些有缺陷的BIOS导致的硬盘假死问题。
[LIBATA]
libata.dma=整数
控制DMA特性的使用
libata.dma=0 表示完全禁止所有SATA/PATA端口使用DMA
libata.dma=1 表示仅允许SATA/PATA硬盘使用DMA
libata.dma=2 表示仅允许ATAPI(CDROM)使用DMA
libata.dma=4 表示仅允许CF卡使用DMA
上述1,2,4实际上是位掩码,可以组合使用,例如 libata.dma=3 表示允许硬盘和CDROM使用DMA,但是禁止CF卡使用DMA
[LIBATA]
libata.ignore_hpa={0|1}
是否忽略HPA(Host Protected Area)的限制。"0"(默认值)表示不忽略;"1"表示忽略(也就是可以使用整个磁盘空间)
[LIBATA]
libata.force=PORT[.DEVICE]:VAL,PORT[.DEVICE]:VAL,...
手动强制指定libata的配置。
其中的"PORT[.DEVICE]"是libata驱动在控制台上以相同格式显示出来的ATA ID字符串(PORT和DEVICE都是十进制数字),下面是两个实例("1.00","2.00"):

ata1.00: ATAPI: VBOX CD-ROM, 1.0, max UDMA/133
ata2.00: ATA-6: VBOX HARDDISK, 1.0, max UDMA/133

如果不指定DEVICE部分,那么就表示适用于该PORT端口上的所有设备。
VAL部分用来强制设定设备属性:
40c, 80c, short40c, unk, ign, sata 这些都用于指定线缆类型
1.5Gbps, 3.0Gbps 这些都用于指定SATA连接速度
noncq, ncq 关闭还是开启NCQ功能
dump_id 转储IDENTIFY数据
pio[0-7], mwdma[0-4], udma[0-7](或者这么写也一样:udma[16,25,33,44,66,100,133]) 数据传输模式
nohrst, nosrst, norst 只禁止硬重置,只禁止软重置,同时禁止硬重置和软重置
rstonce 在热拔连接恢复(hot-unplug link recovery)过程中仅尝试一次重置
atapi_dmadir 开启 ATAPI DMADIR bridge 支持
disable 禁用该设备