blob: 9bc5283c268846a51d60f1afe4926d6367f54117 [file] [log] [blame]
Simon Glassf2105c62017-06-14 21:28:26 -06001config AHCI
2 bool "Support SATA controllers with driver model"
3 depends on DM
4 help
5 This enables a uclass for disk controllers in U-Boot. Various driver
6 types can use this, such as AHCI/SATA. It does not provide any standard
7 operations at present. The block device interface has not been converted
8 to driver model.
9
10config SATA
11 bool "Support SATA controllers"
12 help
13 This enables support for SATA (Serial Advanced Technology
14 Attachment), a serial bus standard for connecting to hard drives and
15 other storage devices.
16
17 SATA replaces PATA (originally just ATA), which stands for Parallel AT
18 Attachment, where AT refers to an IBM AT (Advanced Technology)
19 computer released in 1984.
20
21 See also CMD_SATA which provides command-line support.
22
Tuomas Tynkkynenb82e6672017-12-08 15:36:20 +020023config LIBATA
24 bool
25 help
26 Select this to build and link the libata helper functions.
27
Tuomas Tynkkynen9fd95ef2017-12-08 15:36:19 +020028config SCSI_AHCI
29 bool "Enable SCSI interface to SATA devices"
Tuomas Tynkkynenb82e6672017-12-08 15:36:20 +020030 select LIBATA
Tuomas Tynkkynen9fd95ef2017-12-08 15:36:19 +020031 help
32 Enable this to allow interfacing SATA devices via the SCSI layer.
33
Simon Glassf2105c62017-06-14 21:28:26 -060034menu "SATA/SCSI device support"
35
Bin Menga5c680f2017-07-30 19:23:59 -070036config AHCI_PCI
37 bool "Support for PCI-based AHCI controller"
Tom Rini36f890f2021-09-16 11:45:03 -040038 depends on PCI
Tom Rinib630f8b2023-10-27 20:59:51 -040039 depends on SCSI
Heinrich Schuchardt480c1d62023-03-26 18:58:25 +020040 depends on SCSI_AHCI
Bin Menga5c680f2017-07-30 19:23:59 -070041 help
42 Enables support for the PCI-based AHCI controller.
43
Simon Glassf73a7562022-01-31 07:49:35 -070044if AHCI
45
Pali Rohár73059522021-08-15 16:27:37 +020046config SPL_AHCI_PCI
47 bool "Support for PCI-based AHCI controller for SPL"
48 depends on SPL
49 depends on SPL_PCI
Tom Rinib630f8b2023-10-27 20:59:51 -040050 depends on SPL_SATA && SCSI
Pali Rohár73059522021-08-15 16:27:37 +020051
Simon Glassf2105c62017-06-14 21:28:26 -060052config DWC_AHCI
53 bool "Enable Synopsys DWC AHCI driver support"
54 select SCSI_AHCI
55 select PHY
Tom Rinib630f8b2023-10-27 20:59:51 -040056 depends on SCSI
Simon Glassf2105c62017-06-14 21:28:26 -060057 help
58 Enable this driver to support Sata devices through
59 Synopsys DWC AHCI module.
60
Tuomas Tynkkynen477b16a2017-12-08 15:36:18 +020061config DWC_AHSATA
62 bool "Enable DWC AHSATA driver support"
Tuomas Tynkkynenb82e6672017-12-08 15:36:20 +020063 select LIBATA
Tom Rini90932da2021-02-09 21:42:44 -050064 depends on BLK
Tuomas Tynkkynen477b16a2017-12-08 15:36:18 +020065 help
66 Enable this driver to support the DWC AHSATA SATA controller found
67 in i.MX5 and i.MX6 SoCs.
68
Soeren Moch046a69b2019-03-01 13:10:59 +010069config DWC_AHSATA_AHCI
70 bool "Enable DWC AHSATA AHCI driver support"
71 depends on DWC_AHSATA
Soeren Moch046a69b2019-03-01 13:10:59 +010072 default y
73 help
74 Enable this option unless you need your private ahci implementation
75
Simon Glassf73a7562022-01-31 07:49:35 -070076config MTK_AHCI
77 bool "Enable Mediatek AHCI driver support"
Andre Przywaraf8c86692019-04-12 16:28:54 +053078 help
Simon Glassf73a7562022-01-31 07:49:35 -070079 Enable this driver to support Sata devices through
80 Mediatek AHCI controller (e.g. MT7622).
Andre Przywaraf8c86692019-04-12 16:28:54 +053081
Ken Ma592b4a72018-05-25 15:49:24 +080082config AHCI_MVEBU
83 bool "Marvell EBU AHCI SATA support"
Stefan Roese1eefd492021-04-07 09:12:34 +020084 depends on ARCH_MVEBU || ARCH_OCTEON
Ken Ma592b4a72018-05-25 15:49:24 +080085 select SCSI_AHCI
Tom Rinib630f8b2023-10-27 20:59:51 -040086 select SCSI
Ken Ma592b4a72018-05-25 15:49:24 +080087 help
88 This option enables support for the Marvell EBU SoC's
89 onboard AHCI SATA.
90
91 If unsure, say N.
Frank Wunderlich38bff322020-08-13 10:20:47 +020092
Simon Glassf73a7562022-01-31 07:49:35 -070093config SUNXI_AHCI
94 bool "Enable Allwinner SATA driver support"
95 default y if ARCH_SUNXI
Frank Wunderlich38bff322020-08-13 10:20:47 +020096 help
Simon Glassf73a7562022-01-31 07:49:35 -070097 Enable this driver to support the SATA controllers found in the
98 Allwinner A10, A20 and R40 SoCs.
99
100endif # AHCI
Frank Wunderlich38bff322020-08-13 10:20:47 +0200101
Simon Glass6edb5dd2022-01-31 07:49:33 -0700102if SATA
103
104config SATA_CEVA
105 bool "Ceva Sata controller"
106 depends on AHCI
Tom Rinib630f8b2023-10-27 20:59:51 -0400107 depends on SCSI
Simon Glass6edb5dd2022-01-31 07:49:33 -0700108 help
109 This option enables Ceva Sata controller hard IP available on Xilinx
110 ZynqMP. Support up to 2 external devices. Compliant with SATA 3.1 and
111 AHCI 1.3 specifications with hot-plug detect feature.
112
113config FSL_SATA
114 bool "Enable Freescale SATA controller driver support"
Tom Rini0a816d92022-06-10 22:59:27 -0400115 depends on PPC
Simon Glass6edb5dd2022-01-31 07:49:33 -0700116 select AHCI
117 select LIBATA
Tom Riniaca1f672022-06-10 22:59:28 -0400118 imply LBA48
Simon Glass6edb5dd2022-01-31 07:49:33 -0700119 help
120 Enable this driver to support the SATA controller found in
121 some Freescale PowerPC SoCs.
122
Tom Rini0a816d92022-06-10 22:59:27 -0400123config FSL_SATA_V2
124 bool "Enable support for V2 of the Freescale SATA controller"
125 depends on FSL_SATA
126 help
127 Enable support for V2 of this controller, rather than V1.
128
Simon Glass6edb5dd2022-01-31 07:49:33 -0700129config SATA_MV
130 bool "Enable Marvell SATA controller driver support"
131 select AHCI
132 select LIBATA
133 help
134 Enable this driver to support the SATA controller found in
135 some Marvell SoCs.
136
137config SATA_SIL
138 bool "Enable Silicon Image SIL3131 / SIL3132 / SIL3124 SATA driver support"
Pali Rohár31336512022-12-29 18:15:35 +0100139 depends on PCI
Simon Glass6edb5dd2022-01-31 07:49:33 -0700140 select AHCI
141 select LIBATA
142 help
143 Enable this driver to support the SIL3131, SIL3132 and SIL3124
144 SATA controllers.
145
Simon Glassedca8cf2022-01-31 07:49:37 -0700146config SYS_SATA_MAX_DEVICE
147 int "Maximum number of SATA devices"
148 depends on !AHCI || FSL_SATA || SATA_MV
149 help
150 Sets the maximum number of SATA devices which can be supported
151 by U-Boot.
152
153 This is only partially converted to driver model. See sata_bread()
154 for example, which shows where the conversion needs to be completed.
155
Simon Glass6edb5dd2022-01-31 07:49:33 -0700156endif # SATA
157
Simon Glassf2105c62017-06-14 21:28:26 -0600158endmenu