Kconfig 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. menuconfig RT_USING_ATA
  2. bool "Using Advanced Technology Attachment (ATA) device drivers"
  3. depends on RT_USING_DM
  4. depends on RT_USING_BLK
  5. depends on RT_USING_DMA
  6. default n
  7. help
  8. Enable the ATA core so AHCI/legacy controllers can register themselves in
  9. the driver model, allocate DMA resources, and expose block devices to the
  10. RT-Thread block layer. Select this only on SoCs/boards that actually wire
  11. SATA ports because it pulls in the SCSI translation layer and requires DMA
  12. support. When disabled, no SATA disks will be enumerated.
  13. config RT_ATA_AHCI
  14. bool "Advanced Host Controller Interface (AHCI)"
  15. depends on RT_USING_ATA
  16. depends on RT_USING_SCSI
  17. default y
  18. help
  19. Build the generic AHCI driver that maps HBA registers (ports, command list,
  20. FIS receive, etc.), handles NCQ, and bridges each detected SATA device to
  21. the RT-SCSI mid-layer so filesystems can treat them like disks. Enable it
  22. whenever your SoC implements a standards-compliant AHCI core; disable if
  23. you rely on a vendor-specific ATA engine.
  24. config RT_ATA_AHCI_PCI
  25. bool "AHCI support on PCI bus"
  26. depends on RT_ATA_AHCI
  27. depends on RT_USING_PCI
  28. default n
  29. help
  30. Allow the AHCI driver to bind to PCI devices and fetch resources via PCI
  31. config space. Required on PC-class hardware where the AHCI HBA is behind
  32. PCI/PCIe; boards with platform AHCI (non-PCI) can leave this off to save a
  33. little code.
  34. if RT_USING_ATA
  35. osource "$(SOC_DM_ATA_DIR)/Kconfig"
  36. endif