All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] ide: Convert some options to Kconfig
@ 2022-01-22 12:53 Simon Glass
  2022-01-22 12:53 ` [PATCH 1/3] ide: Drop CONFIG_IDE_AHB Simon Glass
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Simon Glass @ 2022-01-22 12:53 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Bin Meng, Evgeni Dobrev, Heiko Schocher,
	Heinrich Schuchardt, Igor Opaniuk, Jason Cooper, Luka Perkov,
	Marek Behún, Mario Six, Michal Simek, Nobuhiro Iwamatsu,
	Patrick Delaunay, Paul Burton, Priyanka Jain, Rasmus Villemoes,
	Reinoud Zandijk, Siddarth Gore, Simon Guinot,
	Stefan Herbrechtsmeier, Stefan Roese, TsiChung Liew,
	Walter Schweizer

This converts some IDE options to use Kconfig, thus allowing the
sandbox config.h file to shrink a little more.

It also drops some dead code.


Simon Glass (3):
  ide: Drop CONFIG_IDE_AHB
  Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig
  Drop CONFIG_SYS_PIO_MODE

 README                                       |  19 ----
 arch/arm/mach-kirkwood/include/mach/config.h |   7 --
 configs/M5253DEMO_defconfig                  |   8 ++
 configs/coreboot64_defconfig                 |   5 +
 configs/coreboot_defconfig                   |   5 +
 configs/dns325_defconfig                     |   4 +
 configs/dreamplug_defconfig                  |   4 +
 configs/ds109_defconfig                      |   4 +
 configs/edminiv2_defconfig                   |   8 ++
 configs/efi-x86_payload32_defconfig          |   5 +
 configs/efi-x86_payload64_defconfig          |   5 +
 configs/guruplug_defconfig                   |   4 +
 configs/ib62x0_defconfig                     |   6 ++
 configs/malta64_defconfig                    |   4 +
 configs/malta64el_defconfig                  |   4 +
 configs/malta_defconfig                      |   4 +
 configs/maltael_defconfig                    |   4 +
 configs/nas220_defconfig                     |   4 +
 configs/openrd_base_defconfig                |   6 ++
 configs/openrd_client_defconfig              |   6 ++
 configs/openrd_ultimate_defconfig            |   6 ++
 configs/qemu-x86_64_defconfig                |   5 +
 configs/qemu-x86_defconfig                   |   5 +
 configs/r2dplus_defconfig                    |   8 ++
 configs/sandbox64_defconfig                  |   7 ++
 configs/sandbox_defconfig                    |   7 ++
 configs/sandbox_noinst_defconfig             |   7 ++
 configs/sandbox_spl_defconfig                |   7 ++
 drivers/block/Kconfig                        | 104 +++++++++++++++++++
 drivers/block/ide.c                          |  22 ----
 include/ata.h                                |   3 -
 include/configs/M5253DEMO.h                  |  13 ---
 include/configs/coreboot.h                   |   9 --
 include/configs/edminiv2.h                   |   8 --
 include/configs/efi-x86_payload.h            |   9 --
 include/configs/ib62x0.h                     |   2 -
 include/configs/lacie_kw.h                   |   2 -
 include/configs/malta.h                      |   6 --
 include/configs/openrd.h                     |   4 -
 include/configs/qemu-x86.h                   |   9 --
 include/configs/r2dplus.h                    |  13 ---
 include/configs/sandbox.h                    |  11 --
 include/ide.h                                |   7 --
 scripts/config_whitelist.txt                 |  12 ---
 44 files changed, 246 insertions(+), 156 deletions(-)

-- 
2.35.0.rc0.227.g00780c9af4-goog


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/3] ide: Drop CONFIG_IDE_AHB
  2022-01-22 12:53 [PATCH 0/3] ide: Convert some options to Kconfig Simon Glass
@ 2022-01-22 12:53 ` Simon Glass
  2022-01-23  7:21   ` Stefan Roese
  2022-02-09 16:38   ` Tom Rini
  2022-01-22 12:53 ` [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig Simon Glass
  2022-01-22 12:53 ` [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE Simon Glass
  2 siblings, 2 replies; 10+ messages in thread
From: Simon Glass @ 2022-01-22 12:53 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Heinrich Schuchardt, Patrick Delaunay,
	Rasmus Villemoes, Reinoud Zandijk, Stefan Roese

This is not used in U-Boot anymore. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README              |  8 --------
 drivers/block/ide.c | 22 ----------------------
 include/ide.h       |  7 -------
 3 files changed, 37 deletions(-)

diff --git a/README b/README
index 9ebd4f2345a..4cad8f8356c 100644
--- a/README
+++ b/README
@@ -2393,14 +2393,6 @@ Low Level (hardware related) configuration options:
 		If this macro is defined, then CONFIG_SYS_CCSRBAR_PHYS will be
 		forced to a value that ensures that CCSR is not relocated.
 
-- CONFIG_IDE_AHB:
-		Most IDE controllers were designed to be connected with PCI
-		interface. Only few of them were designed for AHB interface.
-		When software is doing ATA command and data transfer to
-		IDE devices through IDE-AHB controller, some additional
-		registers accessing to these kind of IDE-AHB controller
-		is required.
-
 - CONFIG_SYS_IMMR:	Physical address of the Internal Memory.
 		DO NOT CHANGE unless you know exactly what you're
 		doing! (11-4) [MPC8xx systems only]
diff --git a/drivers/block/ide.c b/drivers/block/ide.c
index 085aa356fee..63c4cfdc1c2 100644
--- a/drivers/block/ide.c
+++ b/drivers/block/ide.c
@@ -676,28 +676,14 @@ __weak void ide_outb(int dev, int port, unsigned char val)
 	debug("ide_outb (dev= %d, port= 0x%x, val= 0x%02x) : @ 0x%08lx\n",
 	      dev, port, val, ATA_CURR_BASE(dev) + port);
 
-#if defined(CONFIG_IDE_AHB)
-	if (port) {
-		/* write command */
-		ide_write_register(dev, port, val);
-	} else {
-		/* write data */
-		outb(val, (ATA_CURR_BASE(dev)));
-	}
-#else
 	outb(val, ATA_CURR_BASE(dev) + port);
-#endif
 }
 
 __weak unsigned char ide_inb(int dev, int port)
 {
 	uchar val;
 
-#if defined(CONFIG_IDE_AHB)
-	val = ide_read_register(dev, port);
-#else
 	val = inb(ATA_CURR_BASE(dev) + port);
-#endif
 
 	debug("ide_inb (dev= %d, port= 0x%x) : @ 0x%08lx -> 0x%02x\n",
 	      dev, port, ATA_CURR_BASE(dev) + port, val);
@@ -824,9 +810,6 @@ __weak void ide_input_swap_data(int dev, ulong *sect_buf, int words)
 
 __weak void ide_output_data(int dev, const ulong *sect_buf, int words)
 {
-#if defined(CONFIG_IDE_AHB)
-	ide_write_data(dev, sect_buf, words);
-#else
 	uintptr_t paddr = (ATA_CURR_BASE(dev) + ATA_DATA_REG);
 	ushort *dbuf;
 
@@ -837,14 +820,10 @@ __weak void ide_output_data(int dev, const ulong *sect_buf, int words)
 		EIEIO;
 		outw(cpu_to_le16(*dbuf++), paddr);
 	}
-#endif /* CONFIG_IDE_AHB */
 }
 
 __weak void ide_input_data(int dev, ulong *sect_buf, int words)
 {
-#if defined(CONFIG_IDE_AHB)
-	ide_read_data(dev, sect_buf, words);
-#else
 	uintptr_t paddr = (ATA_CURR_BASE(dev) + ATA_DATA_REG);
 	ushort *dbuf;
 
@@ -858,7 +837,6 @@ __weak void ide_input_data(int dev, ulong *sect_buf, int words)
 		EIEIO;
 		*dbuf++ = le16_to_cpu(inw(paddr));
 	}
-#endif /* CONFIG_IDE_AHB */
 }
 
 #ifdef CONFIG_BLK
diff --git a/include/ide.h b/include/ide.h
index 60739436e9f..2994b7a7622 100644
--- a/include/ide.h
+++ b/include/ide.h
@@ -41,13 +41,6 @@ int ide_preinit(void);
 int ide_device_present(int dev);
 #endif
 
-#if defined(CONFIG_IDE_AHB)
-unsigned char ide_read_register(int dev, unsigned int port);
-void ide_write_register(int dev, unsigned int port, unsigned char val);
-void ide_read_data(int dev, ulong *sect_buf, int words);
-void ide_write_data(int dev, const ulong *sect_buf, int words);
-#endif
-
 /*
  * I/O function overrides
  */
-- 
2.35.0.rc0.227.g00780c9af4-goog


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig
  2022-01-22 12:53 [PATCH 0/3] ide: Convert some options to Kconfig Simon Glass
  2022-01-22 12:53 ` [PATCH 1/3] ide: Drop CONFIG_IDE_AHB Simon Glass
@ 2022-01-22 12:53 ` Simon Glass
  2022-01-23  7:21   ` Stefan Roese
  2022-02-09 16:38   ` Tom Rini
  2022-01-22 12:53 ` [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE Simon Glass
  2 siblings, 2 replies; 10+ messages in thread
From: Simon Glass @ 2022-01-22 12:53 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Bin Meng, Evgeni Dobrev, Heiko Schocher,
	Heinrich Schuchardt, Igor Opaniuk, Jason Cooper, Luka Perkov,
	Marek Behún, Mario Six, Michal Simek, Nobuhiro Iwamatsu,
	Patrick Delaunay, Paul Burton, Priyanka Jain, Rasmus Villemoes,
	Reinoud Zandijk, Siddarth Gore, Simon Guinot,
	Stefan Herbrechtsmeier, Stefan Roese, TsiChung Liew,
	Walter Schweizer

This converts the following to Kconfig:
   CONFIG_SYS_IDE_MAXBUS
   CONFIG_SYS_IDE_MAXDEVICE
   CONFIG_SYS_ATA_BASE_ADDR
   CONFIG_SYS_ATA_STRIDE
   CONFIG_SYS_ATA_DATA_OFFSET
   CONFIG_SYS_ATA_REG_OFFSET
   CONFIG_SYS_ATA_ALT_OFFSET
   CONFIG_SYS_ATA_IDE0_OFFSET
   CONFIG_SYS_ATA_IDE1_OFFSET
   CONFIG_ATAPI
   CONFIG_IDE_RESET

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                                       |  11 --
 arch/arm/mach-kirkwood/include/mach/config.h |   7 --
 configs/M5253DEMO_defconfig                  |   8 ++
 configs/coreboot64_defconfig                 |   5 +
 configs/coreboot_defconfig                   |   5 +
 configs/dns325_defconfig                     |   4 +
 configs/dreamplug_defconfig                  |   4 +
 configs/ds109_defconfig                      |   4 +
 configs/edminiv2_defconfig                   |   8 ++
 configs/efi-x86_payload32_defconfig          |   5 +
 configs/efi-x86_payload64_defconfig          |   5 +
 configs/guruplug_defconfig                   |   4 +
 configs/ib62x0_defconfig                     |   6 ++
 configs/malta64_defconfig                    |   4 +
 configs/malta64el_defconfig                  |   4 +
 configs/malta_defconfig                      |   4 +
 configs/maltael_defconfig                    |   4 +
 configs/nas220_defconfig                     |   4 +
 configs/openrd_base_defconfig                |   6 ++
 configs/openrd_client_defconfig              |   6 ++
 configs/openrd_ultimate_defconfig            |   6 ++
 configs/qemu-x86_64_defconfig                |   5 +
 configs/qemu-x86_defconfig                   |   5 +
 configs/r2dplus_defconfig                    |   8 ++
 configs/sandbox64_defconfig                  |   7 ++
 configs/sandbox_defconfig                    |   7 ++
 configs/sandbox_noinst_defconfig             |   7 ++
 configs/sandbox_spl_defconfig                |   7 ++
 drivers/block/Kconfig                        | 104 +++++++++++++++++++
 include/ata.h                                |   3 -
 include/configs/M5253DEMO.h                  |  13 ---
 include/configs/coreboot.h                   |   9 --
 include/configs/edminiv2.h                   |   8 --
 include/configs/efi-x86_payload.h            |   9 --
 include/configs/ib62x0.h                     |   2 -
 include/configs/lacie_kw.h                   |   2 -
 include/configs/malta.h                      |   6 --
 include/configs/openrd.h                     |   4 -
 include/configs/qemu-x86.h                   |   9 --
 include/configs/r2dplus.h                    |   8 --
 include/configs/sandbox.h                    |  11 --
 scripts/config_whitelist.txt                 |  11 --
 42 files changed, 246 insertions(+), 113 deletions(-)

diff --git a/README b/README
index 4cad8f8356c..3870b0dbe4f 100644
--- a/README
+++ b/README
@@ -720,17 +720,6 @@ The following options need to be configured:
 		CONFIG_SCSI) you must configure support for at
 		least one non-MTD partition type as well.
 
-- IDE Reset method:
-		CONFIG_IDE_RESET - is this is defined, IDE Reset will
-		be performed by calling the function
-			ide_set_reset(int reset)
-		which has to be defined in a board specific file
-
-- ATAPI Support:
-		CONFIG_ATAPI
-
-		Set this to enable ATAPI support.
-
 - LBA48 Support
 		CONFIG_LBA48
 
diff --git a/arch/arm/mach-kirkwood/include/mach/config.h b/arch/arm/mach-kirkwood/include/mach/config.h
index eb9502361ee..b9f836bbaf8 100644
--- a/arch/arm/mach-kirkwood/include/mach/config.h
+++ b/arch/arm/mach-kirkwood/include/mach/config.h
@@ -59,18 +59,11 @@
 #ifdef CONFIG_IDE
 #define __io
 /* Data, registers and alternate blocks are at the same offset */
-#define CONFIG_SYS_ATA_DATA_OFFSET	(0x0100)
-#define CONFIG_SYS_ATA_REG_OFFSET	(0x0100)
-#define CONFIG_SYS_ATA_ALT_OFFSET	(0x0100)
 /* Each 8-bit ATA register is aligned to a 4-bytes address */
-#define CONFIG_SYS_ATA_STRIDE		4
 /* Controller supports 48-bits LBA addressing */
 #define CONFIG_LBA48
 /* CONFIG_IDE requires some #defines for ATA registers */
-#define CONFIG_SYS_IDE_MAXBUS		2
-#define CONFIG_SYS_IDE_MAXDEVICE	2
 /* ATA registers base is at SATA controller base */
-#define CONFIG_SYS_ATA_BASE_ADDR	MV_SATA_BASE
 #endif /* CONFIG_IDE */
 
 /* Use common timer */
diff --git a/configs/M5253DEMO_defconfig b/configs/M5253DEMO_defconfig
index 67f9875829b..348f525bbb9 100644
--- a/configs/M5253DEMO_defconfig
+++ b/configs/M5253DEMO_defconfig
@@ -20,6 +20,14 @@ CONFIG_CMD_FAT=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ENV_ADDR=0xFF804000
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0xA0
+CONFIG_SYS_ATA_REG_OFFSET=0xA0
+CONFIG_SYS_ATA_ALT_OFFSET=0xC0
+CONFIG_SYS_ATA_IDE0_OFFSET=0
+CONFIG_ATAPI=y
+CONFIG_IDE_RESET=y
 CONFIG_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_FSL=y
 CONFIG_SYS_FSL_I2C_OFFSET=0x280
diff --git a/configs/coreboot64_defconfig b/configs/coreboot64_defconfig
index 8146569a9d0..b3cb54702e5 100644
--- a/configs/coreboot64_defconfig
+++ b/configs/coreboot64_defconfig
@@ -46,6 +46,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_TFTP_TSIZE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
+CONFIG_SYS_IDE_MAXDEVICE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_ALT_OFFSET=0
+CONFIG_ATAPI=y
 # CONFIG_PCI_PNP is not set
 CONFIG_SOUND=y
 CONFIG_SOUND_I8254=y
diff --git a/configs/coreboot_defconfig b/configs/coreboot_defconfig
index a12e4cd4126..c63902132d6 100644
--- a/configs/coreboot_defconfig
+++ b/configs/coreboot_defconfig
@@ -41,6 +41,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_TFTP_TSIZE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
+CONFIG_SYS_IDE_MAXDEVICE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_ALT_OFFSET=0
+CONFIG_ATAPI=y
 # CONFIG_PCI_PNP is not set
 CONFIG_SOUND=y
 CONFIG_SOUND_I8254=y
diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig
index 144fd30706b..1d6a24abedf 100644
--- a/configs/dns325_defconfig
+++ b/configs/dns325_defconfig
@@ -41,6 +41,10 @@ CONFIG_ENV_OVERWRITE=y
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
 CONFIG_KIRKWOOD_GPIO=y
 # CONFIG_MMC is not set
 CONFIG_MTD=y
diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig
index 557013dbacd..b7bc0e47dd4 100644
--- a/configs/dreamplug_defconfig
+++ b/configs/dreamplug_defconfig
@@ -41,6 +41,10 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
 CONFIG_SATA_MV=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
 # CONFIG_MMC is not set
 CONFIG_MTD=y
 CONFIG_DM_SPI_FLASH=y
diff --git a/configs/ds109_defconfig b/configs/ds109_defconfig
index 8e2aea9ad62..130a92780c3 100644
--- a/configs/ds109_defconfig
+++ b/configs/ds109_defconfig
@@ -39,6 +39,10 @@ CONFIG_ENV_SPI_MAX_HZ=50000000
 CONFIG_ENV_ADDR=0x3D0000
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_MVTWSI=y
 # CONFIG_MMC is not set
diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
index a8f61e4844a..1108d7cf229 100644
--- a/configs/edminiv2_defconfig
+++ b/configs/edminiv2_defconfig
@@ -33,6 +33,14 @@ CONFIG_ENV_OVERWRITE=y
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_ENV_ADDR=0xFFF84000
 CONFIG_NETCONSOLE=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_IDE_MAXDEVICE=1
+CONFIG_SYS_ATA_BASE_ADDR=0xf1080000
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
+CONFIG_SYS_ATA_IDE0_OFFSET=0x4000
 CONFIG_SYS_I2C_LEGACY=y
 CONFIG_SPL_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/efi-x86_payload32_defconfig b/configs/efi-x86_payload32_defconfig
index d7be9579cce..fe6937e8a36 100644
--- a/configs/efi-x86_payload32_defconfig
+++ b/configs/efi-x86_payload32_defconfig
@@ -39,6 +39,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_TFTP_TSIZE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
+CONFIG_SYS_IDE_MAXDEVICE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_ALT_OFFSET=0
+CONFIG_ATAPI=y
 # CONFIG_PCI_PNP is not set
 # CONFIG_GZIP is not set
 CONFIG_EFI=y
diff --git a/configs/efi-x86_payload64_defconfig b/configs/efi-x86_payload64_defconfig
index 36dd0647c23..98e280a1797 100644
--- a/configs/efi-x86_payload64_defconfig
+++ b/configs/efi-x86_payload64_defconfig
@@ -39,6 +39,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_TFTP_TSIZE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
+CONFIG_SYS_IDE_MAXDEVICE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_ALT_OFFSET=0
+CONFIG_ATAPI=y
 # CONFIG_PCI_PNP is not set
 # CONFIG_GZIP is not set
 CONFIG_EFI=y
diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig
index e7802afb0a0..e30467557c0 100644
--- a/configs/guruplug_defconfig
+++ b/configs/guruplug_defconfig
@@ -43,6 +43,10 @@ CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
 # CONFIG_MMC is not set
 CONFIG_MTD=y
 CONFIG_MTD_RAW_NAND=y
diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig
index 23a211c3913..2655124f806 100644
--- a/configs/ib62x0_defconfig
+++ b/configs/ib62x0_defconfig
@@ -42,6 +42,12 @@ CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
+CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
+CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
 # CONFIG_MMC is not set
 CONFIG_MTD=y
 CONFIG_MTD_RAW_NAND=y
diff --git a/configs/malta64_defconfig b/configs/malta64_defconfig
index 9e6d8c0dc6b..1c1bc4e4cd4 100644
--- a/configs/malta64_defconfig
+++ b/configs/malta64_defconfig
@@ -25,6 +25,10 @@ CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_ENV_ADDR=0xFFFFFFFFBE3E0000
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
 CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
diff --git a/configs/malta64el_defconfig b/configs/malta64el_defconfig
index c44aa7e26d8..756138daafd 100644
--- a/configs/malta64el_defconfig
+++ b/configs/malta64el_defconfig
@@ -27,6 +27,10 @@ CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_ENV_ADDR=0xFFFFFFFFBE3E0000
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
 CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
diff --git a/configs/malta_defconfig b/configs/malta_defconfig
index 852e5c03be1..802cc370e9a 100644
--- a/configs/malta_defconfig
+++ b/configs/malta_defconfig
@@ -24,6 +24,10 @@ CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_ENV_ADDR=0xBE3E0000
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
 CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
diff --git a/configs/maltael_defconfig b/configs/maltael_defconfig
index b81ab6e33ae..f929fc82d26 100644
--- a/configs/maltael_defconfig
+++ b/configs/maltael_defconfig
@@ -26,6 +26,10 @@ CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_ENV_ADDR=0xBE3E0000
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
 CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
diff --git a/configs/nas220_defconfig b/configs/nas220_defconfig
index 7e4e19a9f78..f6a1dcbee06 100644
--- a/configs/nas220_defconfig
+++ b/configs/nas220_defconfig
@@ -42,6 +42,10 @@ CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
 CONFIG_KIRKWOOD_GPIO=y
 # CONFIG_MMC is not set
 CONFIG_MTD=y
diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig
index 2c5a29cfe35..a2fdafd10ee 100644
--- a/configs/openrd_base_defconfig
+++ b/configs/openrd_base_defconfig
@@ -43,6 +43,12 @@ CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
+CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
+CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
 # CONFIG_MMC_HW_PARTITIONING is not set
 CONFIG_MTD=y
 CONFIG_MTD_RAW_NAND=y
diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig
index b21d41b1ed4..208deb4ce14 100644
--- a/configs/openrd_client_defconfig
+++ b/configs/openrd_client_defconfig
@@ -44,6 +44,12 @@ CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
+CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
+CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
 # CONFIG_MMC_HW_PARTITIONING is not set
 CONFIG_MTD=y
 CONFIG_MTD_RAW_NAND=y
diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig
index ceeb62109aa..d7269c40860 100644
--- a/configs/openrd_ultimate_defconfig
+++ b/configs/openrd_ultimate_defconfig
@@ -44,6 +44,12 @@ CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_DM=y
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0x100
+CONFIG_SYS_ATA_REG_OFFSET=0x100
+CONFIG_SYS_ATA_ALT_OFFSET=0x100
+CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
+CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
 # CONFIG_MMC_HW_PARTITIONING is not set
 CONFIG_MTD=y
 CONFIG_MTD_RAW_NAND=y
diff --git a/configs/qemu-x86_64_defconfig b/configs/qemu-x86_64_defconfig
index 2dfb48b3831..6b2f12a5057 100644
--- a/configs/qemu-x86_64_defconfig
+++ b/configs/qemu-x86_64_defconfig
@@ -55,6 +55,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_TFTP_TSIZE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
+CONFIG_SYS_IDE_MAXDEVICE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_ALT_OFFSET=0
+CONFIG_ATAPI=y
 CONFIG_CPU=y
 CONFIG_NVME=y
 CONFIG_SPL_DM_RTC=y
diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
index 6be7ce0c6e6..f7743c63e36 100644
--- a/configs/qemu-x86_defconfig
+++ b/configs/qemu-x86_defconfig
@@ -38,6 +38,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_TFTP_TSIZE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
+CONFIG_SYS_IDE_MAXDEVICE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=0
+CONFIG_SYS_ATA_ALT_OFFSET=0
+CONFIG_ATAPI=y
 CONFIG_CPU=y
 CONFIG_NVME=y
 CONFIG_SPI=y
diff --git a/configs/r2dplus_defconfig b/configs/r2dplus_defconfig
index 9e2036a946b..8b5c8ff4e18 100644
--- a/configs/r2dplus_defconfig
+++ b/configs/r2dplus_defconfig
@@ -29,6 +29,14 @@ CONFIG_ENV_OVERWRITE=y
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_ENV_ADDR=0xA0040000
 CONFIG_DM=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_IDE_MAXDEVICE=1
+CONFIG_SYS_ATA_BASE_ADDR=0xb4000000
+CONFIG_SYS_ATA_STRIDE=2
+CONFIG_SYS_ATA_DATA_OFFSET=0x1000
+CONFIG_SYS_ATA_REG_OFFSET=0x1000
+CONFIG_SYS_ATA_ALT_OFFSET=0x800
+CONFIG_IDE_RESET=y
 CONFIG_CLK=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
diff --git a/configs/sandbox64_defconfig b/configs/sandbox64_defconfig
index c9afe4c8408..e1aac615070 100644
--- a/configs/sandbox64_defconfig
+++ b/configs/sandbox64_defconfig
@@ -106,6 +106,13 @@ CONFIG_ADC=y
 CONFIG_ADC_SANDBOX=y
 CONFIG_AXI=y
 CONFIG_AXI_SANDBOX=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_BASE_ADDR=0x100
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=1
+CONFIG_SYS_ATA_ALT_OFFSET=2
+CONFIG_SYS_ATA_IDE0_OFFSET=0
 CONFIG_BUTTON=y
 CONFIG_BUTTON_GPIO=y
 CONFIG_CLK=y
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index 19cde873973..c540cd0aa5c 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -130,6 +130,13 @@ CONFIG_ADC=y
 CONFIG_ADC_SANDBOX=y
 CONFIG_AXI=y
 CONFIG_AXI_SANDBOX=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_BASE_ADDR=0x100
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=1
+CONFIG_SYS_ATA_ALT_OFFSET=2
+CONFIG_SYS_ATA_IDE0_OFFSET=0
 CONFIG_BOOTCOUNT_LIMIT=y
 CONFIG_DM_BOOTCOUNT=y
 CONFIG_DM_BOOTCOUNT_RTC=y
diff --git a/configs/sandbox_noinst_defconfig b/configs/sandbox_noinst_defconfig
index 7d872ada15d..3d47ea620b7 100644
--- a/configs/sandbox_noinst_defconfig
+++ b/configs/sandbox_noinst_defconfig
@@ -110,6 +110,13 @@ CONFIG_ADC=y
 CONFIG_ADC_SANDBOX=y
 CONFIG_AXI=y
 CONFIG_AXI_SANDBOX=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_BASE_ADDR=0x100
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=1
+CONFIG_SYS_ATA_ALT_OFFSET=2
+CONFIG_SYS_ATA_IDE0_OFFSET=0
 CONFIG_CLK=y
 CONFIG_SPL_CLK=y
 CONFIG_CPU=y
diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig
index 29a89171bc6..926c34c37e0 100644
--- a/configs/sandbox_spl_defconfig
+++ b/configs/sandbox_spl_defconfig
@@ -112,6 +112,13 @@ CONFIG_ADC=y
 CONFIG_ADC_SANDBOX=y
 CONFIG_AXI=y
 CONFIG_AXI_SANDBOX=y
+CONFIG_SYS_IDE_MAXBUS=1
+CONFIG_SYS_ATA_BASE_ADDR=0x100
+CONFIG_SYS_ATA_STRIDE=4
+CONFIG_SYS_ATA_DATA_OFFSET=0
+CONFIG_SYS_ATA_REG_OFFSET=1
+CONFIG_SYS_ATA_ALT_OFFSET=2
+CONFIG_SYS_ATA_IDE0_OFFSET=0
 CONFIG_CLK=y
 CONFIG_SPL_CLK=y
 CONFIG_CPU=y
diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
index 8235430497d..c54b58110cf 100644
--- a/drivers/block/Kconfig
+++ b/drivers/block/Kconfig
@@ -102,3 +102,107 @@ config IDE
 	  This allows access to raw blocks and filesystems on an IDE drive
 	  from U-Boot. See also CMD_IDE which provides an 'ide' command for
 	  performing various IDE operations.
+
+if IDE
+
+config SYS_IDE_MAXBUS
+	hex "Maximumm number of IDE buses"
+	default 2
+	help
+	  This is the number of IDE buses provided by the board. Each one
+	  can have one or two devices. One is designated the master and the
+	  other one the slave. It is not required to have one or both on any
+	  controller.
+
+config SYS_IDE_MAXDEVICE
+	hex "Maximum number of IDE devices"
+	default 2
+	help
+	  This is the number of IDE devices which can be connected to the
+	  board. Normally this is 2 * CONFIG_SYS_IDE_MAXBUS since up to two
+	  devices can be connected to each bus. The number of devices actually
+	  connected is determined by probing.
+
+config SYS_ATA_BASE_ADDR
+	hex "Base address of IDE controller"
+	default 0
+	help
+	  This is the address of the IDE controller, from which other addresses
+	  are calculated. Each bus is at a fixed offset from this address,
+	  so it assumed that they are in the same area of the I/O space or
+	  memory.
+
+config SYS_ATA_STRIDE
+	hex "IDE port stride"
+	default 0x1
+	help
+	  This is the distance between each IDE register, in bytes. For an
+	  8-bit controller this is typically 1, meaning that the registers
+	  appear at consecutive bytes. If the value 2 two, that might indicate
+	  a 16-bit register space.
+
+config SYS_ATA_DATA_OFFSET
+	hex "Offset of the data register"
+	default 0x0
+	help
+	  This is the offset of the controller's data register from the base
+	  address of the controller. This is typically 0, but may be something
+	  else if there are some other registers at the start of the
+	  controller space.
+
+config SYS_ATA_REG_OFFSET
+	hex "Offset of the register space"
+	default 0x0
+	help
+	  This is the offset of the controller's 'register' space from the base
+	  address of the controller. The data register (which is typically at
+	  offset 0) has its own CONFIG, to deal with controllers where it is
+	  somewhere else. Register 1 will be at this offset + 1, register 2 at
+	  CONFIG_SYS_ATA_REG_OFFSET + 2, etc.
+
+config SYS_ATA_ALT_OFFSET
+	hex "Offset of the alternative registers"
+	default 0x0
+	help
+	  This is the offset of the controller's 'alternative' space from the
+	  base address of the controller. This allows these registers to be
+	  located separately from the data and register space.
+
+config SYS_ATA_IDE0_OFFSET
+	hex "Offset of bus 0"
+	default 0x1f0
+	help
+	  This is the start offset of bus 0 from the start of the
+	  controller registers. All the other registers are calculated from
+	  this address. using the above options. For x86 hardware this is often
+	  0x1f0.
+
+config SYS_ATA_IDE1_OFFSET
+	hex "Offset of bus 1"
+	default 0x170
+	help
+	  This is the start offset of bus 1 from the start of the
+	  controller registers. All the other registers are calculated from
+	  this address. using the above options. For x86 hardware this is often
+	  0x170.
+
+config ATAPI
+	bool "Enable ATAPI support"
+	help
+	  This enabled Advanced Technology Attachment Packet Interface (ATAPI),
+	  a protocol that allows a greater variety of devices to be connected
+	  to the IDE port than with plain ATA. It allows SCSI commands to be
+	  sent across the bus, e.g. to support optical drives.
+
+config IDE_RESET
+	bool "Support board-specific reset"
+	help
+	  If this is defined, IDE Reset will be performed by calling the
+	  function:
+
+	     ide_set_reset(int reset)
+
+	  where reset is 1 to assert reset and 0 to de-assert it. This function
+	  must be defined in a board-specific file.
+
+endif  # IDE
diff --git a/include/ata.h b/include/ata.h
index 32ad5f64271..a7bcee6a64c 100644
--- a/include/ata.h
+++ b/include/ata.h
@@ -19,9 +19,6 @@
  * 8-bit (register) and 16-bit (data) accesses might use different
  * address spaces. This is implemented by the following definitions.
  */
-#ifndef CONFIG_SYS_ATA_STRIDE
-#define CONFIG_SYS_ATA_STRIDE	1
-#endif
 
 #define ATA_IO_DATA(x)	(CONFIG_SYS_ATA_DATA_OFFSET+((x) * CONFIG_SYS_ATA_STRIDE))
 #define ATA_IO_REG(x)	(CONFIG_SYS_ATA_REG_OFFSET +((x) * CONFIG_SYS_ATA_STRIDE))
diff --git a/include/configs/M5253DEMO.h b/include/configs/M5253DEMO.h
index 6ba5c525431..c27f0a5a2d7 100644
--- a/include/configs/M5253DEMO.h
+++ b/include/configs/M5253DEMO.h
@@ -23,21 +23,8 @@
 
 #ifdef CONFIG_IDE
 /* ATA */
-#	define CONFIG_IDE_RESET		1
 #	define CONFIG_IDE_PREINIT	1
-#	define CONFIG_ATAPI
 #	undef CONFIG_LBA48
-
-#	define CONFIG_SYS_IDE_MAXBUS		1
-#	define CONFIG_SYS_IDE_MAXDEVICE	2
-
-#	define CONFIG_SYS_ATA_BASE_ADDR	(CONFIG_SYS_MBAR2 + 0x800)
-#	define CONFIG_SYS_ATA_IDE0_OFFSET	0
-
-#	define CONFIG_SYS_ATA_DATA_OFFSET	0xA0	/* Offset for data I/O */
-#	define CONFIG_SYS_ATA_REG_OFFSET	0xA0	/* Offset for normal register accesses */
-#	define CONFIG_SYS_ATA_ALT_OFFSET	0xC0	/* Offset for alternate registers */
-#	define CONFIG_SYS_ATA_STRIDE		4	/* Interval between registers */
 #endif
 
 #define CONFIG_DRIVER_DM9000
diff --git a/include/configs/coreboot.h b/include/configs/coreboot.h
index d6d679fd7dd..23c493b2582 100644
--- a/include/configs/coreboot.h
+++ b/include/configs/coreboot.h
@@ -22,14 +22,5 @@
 					"stderr=serial,vidconsole\0"
 
 /* ATA/IDE support */
-#define CONFIG_SYS_IDE_MAXBUS		2
-#define CONFIG_SYS_IDE_MAXDEVICE	4
-#define CONFIG_SYS_ATA_BASE_ADDR	0
-#define CONFIG_SYS_ATA_DATA_OFFSET	0
-#define CONFIG_SYS_ATA_REG_OFFSET	0
-#define CONFIG_SYS_ATA_ALT_OFFSET	0
-#define CONFIG_SYS_ATA_IDE0_OFFSET	0x1f0
-#define CONFIG_SYS_ATA_IDE1_OFFSET	0x170
-#define CONFIG_ATAPI
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index 90e387e6c5e..a599722ae3b 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -110,20 +110,12 @@
 #ifdef CONFIG_IDE
 #define __io
 /* Data, registers and alternate blocks are at the same offset */
-#define CONFIG_SYS_ATA_DATA_OFFSET	(0x0100)
-#define CONFIG_SYS_ATA_REG_OFFSET	(0x0100)
-#define CONFIG_SYS_ATA_ALT_OFFSET	(0x0100)
 /* Each 8-bit ATA register is aligned to a 4-bytes address */
-#define CONFIG_SYS_ATA_STRIDE		4
 /* Controller supports 48-bits LBA addressing */
 #define CONFIG_LBA48
 /* A single bus, a single device */
-#define CONFIG_SYS_IDE_MAXBUS		1
-#define CONFIG_SYS_IDE_MAXDEVICE	1
 /* ATA registers base is at SATA controller base */
-#define CONFIG_SYS_ATA_BASE_ADDR	ORION5X_SATA_BASE
 /* ATA bus 0 is orion5x port 1 on ED Mini V2 */
-#define CONFIG_SYS_ATA_IDE0_OFFSET	ORION5X_SATA_PORT1_OFFSET
 /* end of IDE defines */
 #endif /* CMD_IDE */
 
diff --git a/include/configs/efi-x86_payload.h b/include/configs/efi-x86_payload.h
index 1cf5c037e85..59fad4c15db 100644
--- a/include/configs/efi-x86_payload.h
+++ b/include/configs/efi-x86_payload.h
@@ -19,14 +19,5 @@
 					"stderr=serial,vidconsole\0"
 
 /* ATA/IDE support */
-#define CONFIG_SYS_IDE_MAXBUS		2
-#define CONFIG_SYS_IDE_MAXDEVICE	4
-#define CONFIG_SYS_ATA_BASE_ADDR	0
-#define CONFIG_SYS_ATA_DATA_OFFSET	0
-#define CONFIG_SYS_ATA_REG_OFFSET	0
-#define CONFIG_SYS_ATA_ALT_OFFSET	0
-#define CONFIG_SYS_ATA_IDE0_OFFSET	0x1f0
-#define CONFIG_SYS_ATA_IDE1_OFFSET	0x170
-#define CONFIG_ATAPI
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/ib62x0.h b/include/configs/ib62x0.h
index 9783fd89ec0..2598deaac6e 100644
--- a/include/configs/ib62x0.h
+++ b/include/configs/ib62x0.h
@@ -40,8 +40,6 @@
  */
 #ifdef CONFIG_IDE
 #define __io
-#define CONFIG_SYS_ATA_IDE0_OFFSET	MV_SATA_PORT0_OFFSET
-#define CONFIG_SYS_ATA_IDE1_OFFSET	MV_SATA_PORT1_OFFSET
 #endif /* CONFIG_IDE */
 
 #endif /* _CONFIG_IB62x0_H */
diff --git a/include/configs/lacie_kw.h b/include/configs/lacie_kw.h
index 046f1888cb1..7366a332f94 100644
--- a/include/configs/lacie_kw.h
+++ b/include/configs/lacie_kw.h
@@ -9,8 +9,6 @@
 #include "mv-common.h"
 
 /* Remove or override few declarations from mv-common.h */
-#undef CONFIG_SYS_IDE_MAXBUS
-#undef CONFIG_SYS_IDE_MAXDEVICE
 
 /*
  * Enable platform initialisation via misc_init_r() function
diff --git a/include/configs/malta.h b/include/configs/malta.h
index 61860ee6942..6d150fd557c 100644
--- a/include/configs/malta.h
+++ b/include/configs/malta.h
@@ -63,12 +63,6 @@
 /*
  * IDE/ATA
  */
-#define CONFIG_SYS_IDE_MAXBUS		1
-#define CONFIG_SYS_IDE_MAXDEVICE	2
-#define CONFIG_SYS_ATA_BASE_ADDR	CONFIG_SYS_ISA_IO_BASE_ADDRESS
-#define CONFIG_SYS_ATA_IDE0_OFFSET	0x01f0
-#define CONFIG_SYS_ATA_DATA_OFFSET	0
-#define CONFIG_SYS_ATA_REG_OFFSET	0
 
 /*
  * Commands
diff --git a/include/configs/openrd.h b/include/configs/openrd.h
index 43d089657b1..7dad002f3b8 100644
--- a/include/configs/openrd.h
+++ b/include/configs/openrd.h
@@ -59,9 +59,5 @@
 /*
  * SATA Driver configuration
  */
-#ifdef CONFIG_MVSATA_IDE
-#define CONFIG_SYS_ATA_IDE0_OFFSET	MV_SATA_PORT0_OFFSET
-#define CONFIG_SYS_ATA_IDE1_OFFSET	MV_SATA_PORT1_OFFSET
-#endif /*CONFIG_MVSATA_IDE*/
 
 #endif /* _CONFIG_OPENRD_BASE_H */
diff --git a/include/configs/qemu-x86.h b/include/configs/qemu-x86.h
index 52c33600b3c..e9dbd54517f 100644
--- a/include/configs/qemu-x86.h
+++ b/include/configs/qemu-x86.h
@@ -33,15 +33,6 @@
  *   - Only legacy IDE controller is supported for QEMU '-M pc' target
  *   - AHCI controller is supported for QEMU '-M q35' target
  */
-#define CONFIG_SYS_IDE_MAXBUS		2
-#define CONFIG_SYS_IDE_MAXDEVICE	4
-#define CONFIG_SYS_ATA_BASE_ADDR	0
-#define CONFIG_SYS_ATA_DATA_OFFSET	0
-#define CONFIG_SYS_ATA_REG_OFFSET	0
-#define CONFIG_SYS_ATA_ALT_OFFSET	0
-#define CONFIG_SYS_ATA_IDE0_OFFSET	0x1f0
-#define CONFIG_SYS_ATA_IDE1_OFFSET	0x170
-#define CONFIG_ATAPI
 
 #define CONFIG_SPL_BOARD_LOAD_IMAGE
 
diff --git a/include/configs/r2dplus.h b/include/configs/r2dplus.h
index e3105fe53cb..49dcdbe4914 100644
--- a/include/configs/r2dplus.h
+++ b/include/configs/r2dplus.h
@@ -32,15 +32,7 @@
 /*
  * IDE support
  */
-#define CONFIG_IDE_RESET	1
 #define CONFIG_SYS_PIO_MODE		1
-#define CONFIG_SYS_IDE_MAXBUS		1 /* IDE bus */
-#define CONFIG_SYS_IDE_MAXDEVICE	1
-#define CONFIG_SYS_ATA_BASE_ADDR	0xb4000000
-#define CONFIG_SYS_ATA_STRIDE		2 /* 1bit shift */
-#define CONFIG_SYS_ATA_DATA_OFFSET	0x1000	/* data reg offset */
-#define CONFIG_SYS_ATA_REG_OFFSET	0x1000	/* reg offset */
-#define CONFIG_SYS_ATA_ALT_OFFSET	0x800	/* alternate register offset */
 
 /*
  * SuperH PCI Bridge Configration
diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
index 9e0e8c7056f..86b93bcbe70 100644
--- a/include/configs/sandbox.h
+++ b/include/configs/sandbox.h
@@ -29,17 +29,6 @@
 #define CONFIG_SANDBOX_SDL
 #endif
 
-#ifndef CONFIG_SPL_BUILD
-#define CONFIG_SYS_IDE_MAXBUS		1
-#define CONFIG_SYS_ATA_IDE0_OFFSET	0
-#define CONFIG_SYS_IDE_MAXDEVICE	2
-#define CONFIG_SYS_ATA_BASE_ADDR	0x100
-#define CONFIG_SYS_ATA_DATA_OFFSET	0
-#define CONFIG_SYS_ATA_REG_OFFSET	1
-#define CONFIG_SYS_ATA_ALT_OFFSET	2
-#define CONFIG_SYS_ATA_STRIDE		4
-#endif
-
 #define CONFIG_SCSI_AHCI_PLAT
 #define CONFIG_SYS_SCSI_MAX_DEVICE	2
 #define CONFIG_SYS_SCSI_MAX_SCSI_ID	8
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index e393fbee1b0..21c9c3095f6 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -21,7 +21,6 @@ CONFIG_AT91SAM9M10G45EK
 CONFIG_AT91_GPIO_PULLUP
 CONFIG_AT91_LED
 CONFIG_AT91_WANTS_COMMON_PHY
-CONFIG_ATAPI
 CONFIG_ATMEL_LCD
 CONFIG_ATMEL_LCD_BGR555
 CONFIG_ATMEL_LCD_RGB565
@@ -441,7 +440,6 @@ CONFIG_I2C_RTC_ADDR
 CONFIG_ICACHE
 CONFIG_ICS307_REFCLK_HZ
 CONFIG_IDE_PREINIT
-CONFIG_IDE_RESET
 CONFIG_IMX
 CONFIG_IMX6_PWM_PER_CLK
 CONFIG_IMX_HDMI
@@ -846,13 +844,6 @@ CONFIG_SYS_AT91_MAIN_CLOCK
 CONFIG_SYS_AT91_PLLA
 CONFIG_SYS_AT91_PLLB
 CONFIG_SYS_AT91_SLOW_CLOCK
-CONFIG_SYS_ATA_ALT_OFFSET
-CONFIG_SYS_ATA_BASE_ADDR
-CONFIG_SYS_ATA_DATA_OFFSET
-CONFIG_SYS_ATA_IDE0_OFFSET
-CONFIG_SYS_ATA_IDE1_OFFSET
-CONFIG_SYS_ATA_REG_OFFSET
-CONFIG_SYS_ATA_STRIDE
 CONFIG_SYS_AUTOLOAD
 CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION
 CONFIG_SYS_AUXCORE_BOOTDATA
@@ -1418,8 +1409,6 @@ CONFIG_SYS_I2C_RTC_ADDR
 CONFIG_SYS_I2C_TCA642X_ADDR
 CONFIG_SYS_I2C_TCA642X_BUS_NUM
 CONFIG_SYS_ICACHE_INV
-CONFIG_SYS_IDE_MAXBUS
-CONFIG_SYS_IDE_MAXDEVICE
 CONFIG_SYS_IFC_ADDR
 CONFIG_SYS_IFC_CCR
 CONFIG_SYS_INIT_DBCR
-- 
2.35.0.rc0.227.g00780c9af4-goog


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE
  2022-01-22 12:53 [PATCH 0/3] ide: Convert some options to Kconfig Simon Glass
  2022-01-22 12:53 ` [PATCH 1/3] ide: Drop CONFIG_IDE_AHB Simon Glass
  2022-01-22 12:53 ` [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig Simon Glass
@ 2022-01-22 12:53 ` Simon Glass
  2022-01-23  7:22   ` Stefan Roese
  2022-02-09 16:38   ` Tom Rini
  2 siblings, 2 replies; 10+ messages in thread
From: Simon Glass @ 2022-01-22 12:53 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Marek Behún, Nobuhiro Iwamatsu,
	Patrick Delaunay, Priyanka Jain, Stefan Roese

This option is not used in U-Boot. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 include/configs/r2dplus.h    | 5 -----
 scripts/config_whitelist.txt | 1 -
 2 files changed, 6 deletions(-)

diff --git a/include/configs/r2dplus.h b/include/configs/r2dplus.h
index 49dcdbe4914..04b34814805 100644
--- a/include/configs/r2dplus.h
+++ b/include/configs/r2dplus.h
@@ -29,11 +29,6 @@
  */
 #define	CONFIG_SYS_PLL_SETTLING_TIME	100/* in us */
 
-/*
- * IDE support
- */
-#define CONFIG_SYS_PIO_MODE		1
-
 /*
  * SuperH PCI Bridge Configration
  */
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 21c9c3095f6..58c15f0ea08 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -1791,7 +1791,6 @@ CONFIG_SYS_PIOC_PDR_VAL1
 CONFIG_SYS_PIOC_PPUDR_VAL
 CONFIG_SYS_PIOD_PDR_VAL1
 CONFIG_SYS_PIOD_PPUDR_VAL
-CONFIG_SYS_PIO_MODE
 CONFIG_SYS_PJPAR
 CONFIG_SYS_PL310_BASE
 CONFIG_SYS_PLLAR_VAL
-- 
2.35.0.rc0.227.g00780c9af4-goog


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/3] ide: Drop CONFIG_IDE_AHB
  2022-01-22 12:53 ` [PATCH 1/3] ide: Drop CONFIG_IDE_AHB Simon Glass
@ 2022-01-23  7:21   ` Stefan Roese
  2022-02-09 16:38   ` Tom Rini
  1 sibling, 0 replies; 10+ messages in thread
From: Stefan Roese @ 2022-01-23  7:21 UTC (permalink / raw)
  To: Simon Glass, U-Boot Mailing List
  Cc: Tom Rini, Heinrich Schuchardt, Patrick Delaunay,
	Rasmus Villemoes, Reinoud Zandijk

On 1/22/22 13:53, Simon Glass wrote:
> This is not used in U-Boot anymore. Drop it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
> 
>   README              |  8 --------
>   drivers/block/ide.c | 22 ----------------------
>   include/ide.h       |  7 -------
>   3 files changed, 37 deletions(-)
> 
> diff --git a/README b/README
> index 9ebd4f2345a..4cad8f8356c 100644
> --- a/README
> +++ b/README
> @@ -2393,14 +2393,6 @@ Low Level (hardware related) configuration options:
>   		If this macro is defined, then CONFIG_SYS_CCSRBAR_PHYS will be
>   		forced to a value that ensures that CCSR is not relocated.
>   
> -- CONFIG_IDE_AHB:
> -		Most IDE controllers were designed to be connected with PCI
> -		interface. Only few of them were designed for AHB interface.
> -		When software is doing ATA command and data transfer to
> -		IDE devices through IDE-AHB controller, some additional
> -		registers accessing to these kind of IDE-AHB controller
> -		is required.
> -
>   - CONFIG_SYS_IMMR:	Physical address of the Internal Memory.
>   		DO NOT CHANGE unless you know exactly what you're
>   		doing! (11-4) [MPC8xx systems only]
> diff --git a/drivers/block/ide.c b/drivers/block/ide.c
> index 085aa356fee..63c4cfdc1c2 100644
> --- a/drivers/block/ide.c
> +++ b/drivers/block/ide.c
> @@ -676,28 +676,14 @@ __weak void ide_outb(int dev, int port, unsigned char val)
>   	debug("ide_outb (dev= %d, port= 0x%x, val= 0x%02x) : @ 0x%08lx\n",
>   	      dev, port, val, ATA_CURR_BASE(dev) + port);
>   
> -#if defined(CONFIG_IDE_AHB)
> -	if (port) {
> -		/* write command */
> -		ide_write_register(dev, port, val);
> -	} else {
> -		/* write data */
> -		outb(val, (ATA_CURR_BASE(dev)));
> -	}
> -#else
>   	outb(val, ATA_CURR_BASE(dev) + port);
> -#endif
>   }
>   
>   __weak unsigned char ide_inb(int dev, int port)
>   {
>   	uchar val;
>   
> -#if defined(CONFIG_IDE_AHB)
> -	val = ide_read_register(dev, port);
> -#else
>   	val = inb(ATA_CURR_BASE(dev) + port);
> -#endif
>   
>   	debug("ide_inb (dev= %d, port= 0x%x) : @ 0x%08lx -> 0x%02x\n",
>   	      dev, port, ATA_CURR_BASE(dev) + port, val);
> @@ -824,9 +810,6 @@ __weak void ide_input_swap_data(int dev, ulong *sect_buf, int words)
>   
>   __weak void ide_output_data(int dev, const ulong *sect_buf, int words)
>   {
> -#if defined(CONFIG_IDE_AHB)
> -	ide_write_data(dev, sect_buf, words);
> -#else
>   	uintptr_t paddr = (ATA_CURR_BASE(dev) + ATA_DATA_REG);
>   	ushort *dbuf;
>   
> @@ -837,14 +820,10 @@ __weak void ide_output_data(int dev, const ulong *sect_buf, int words)
>   		EIEIO;
>   		outw(cpu_to_le16(*dbuf++), paddr);
>   	}
> -#endif /* CONFIG_IDE_AHB */
>   }
>   
>   __weak void ide_input_data(int dev, ulong *sect_buf, int words)
>   {
> -#if defined(CONFIG_IDE_AHB)
> -	ide_read_data(dev, sect_buf, words);
> -#else
>   	uintptr_t paddr = (ATA_CURR_BASE(dev) + ATA_DATA_REG);
>   	ushort *dbuf;
>   
> @@ -858,7 +837,6 @@ __weak void ide_input_data(int dev, ulong *sect_buf, int words)
>   		EIEIO;
>   		*dbuf++ = le16_to_cpu(inw(paddr));
>   	}
> -#endif /* CONFIG_IDE_AHB */
>   }
>   
>   #ifdef CONFIG_BLK
> diff --git a/include/ide.h b/include/ide.h
> index 60739436e9f..2994b7a7622 100644
> --- a/include/ide.h
> +++ b/include/ide.h
> @@ -41,13 +41,6 @@ int ide_preinit(void);
>   int ide_device_present(int dev);
>   #endif
>   
> -#if defined(CONFIG_IDE_AHB)
> -unsigned char ide_read_register(int dev, unsigned int port);
> -void ide_write_register(int dev, unsigned int port, unsigned char val);
> -void ide_read_data(int dev, ulong *sect_buf, int words);
> -void ide_write_data(int dev, const ulong *sect_buf, int words);
> -#endif
> -
>   /*
>    * I/O function overrides
>    */
> 

Viele Grüße,
Stefan Roese

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig
  2022-01-22 12:53 ` [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig Simon Glass
@ 2022-01-23  7:21   ` Stefan Roese
  2022-02-09 16:38   ` Tom Rini
  1 sibling, 0 replies; 10+ messages in thread
From: Stefan Roese @ 2022-01-23  7:21 UTC (permalink / raw)
  To: Simon Glass, U-Boot Mailing List
  Cc: Tom Rini, Bin Meng, Evgeni Dobrev, Heiko Schocher,
	Heinrich Schuchardt, Igor Opaniuk, Jason Cooper, Luka Perkov,
	Marek Behún, Mario Six, Michal Simek, Nobuhiro Iwamatsu,
	Patrick Delaunay, Paul Burton, Priyanka Jain, Rasmus Villemoes,
	Reinoud Zandijk, Siddarth Gore, Simon Guinot,
	Stefan Herbrechtsmeier, TsiChung Liew, Walter Schweizer

On 1/22/22 13:53, Simon Glass wrote:
> This converts the following to Kconfig:
>     CONFIG_SYS_IDE_MAXBUS
>     CONFIG_SYS_IDE_MAXDEVICE
>     CONFIG_SYS_ATA_BASE_ADDR
>     CONFIG_SYS_ATA_STRIDE
>     CONFIG_SYS_ATA_DATA_OFFSET
>     CONFIG_SYS_ATA_REG_OFFSET
>     CONFIG_SYS_ATA_ALT_OFFSET
>     CONFIG_SYS_ATA_IDE0_OFFSET
>     CONFIG_SYS_ATA_IDE1_OFFSET
>     CONFIG_ATAPI
>     CONFIG_IDE_RESET
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
> 
>   README                                       |  11 --
>   arch/arm/mach-kirkwood/include/mach/config.h |   7 --
>   configs/M5253DEMO_defconfig                  |   8 ++
>   configs/coreboot64_defconfig                 |   5 +
>   configs/coreboot_defconfig                   |   5 +
>   configs/dns325_defconfig                     |   4 +
>   configs/dreamplug_defconfig                  |   4 +
>   configs/ds109_defconfig                      |   4 +
>   configs/edminiv2_defconfig                   |   8 ++
>   configs/efi-x86_payload32_defconfig          |   5 +
>   configs/efi-x86_payload64_defconfig          |   5 +
>   configs/guruplug_defconfig                   |   4 +
>   configs/ib62x0_defconfig                     |   6 ++
>   configs/malta64_defconfig                    |   4 +
>   configs/malta64el_defconfig                  |   4 +
>   configs/malta_defconfig                      |   4 +
>   configs/maltael_defconfig                    |   4 +
>   configs/nas220_defconfig                     |   4 +
>   configs/openrd_base_defconfig                |   6 ++
>   configs/openrd_client_defconfig              |   6 ++
>   configs/openrd_ultimate_defconfig            |   6 ++
>   configs/qemu-x86_64_defconfig                |   5 +
>   configs/qemu-x86_defconfig                   |   5 +
>   configs/r2dplus_defconfig                    |   8 ++
>   configs/sandbox64_defconfig                  |   7 ++
>   configs/sandbox_defconfig                    |   7 ++
>   configs/sandbox_noinst_defconfig             |   7 ++
>   configs/sandbox_spl_defconfig                |   7 ++
>   drivers/block/Kconfig                        | 104 +++++++++++++++++++
>   include/ata.h                                |   3 -
>   include/configs/M5253DEMO.h                  |  13 ---
>   include/configs/coreboot.h                   |   9 --
>   include/configs/edminiv2.h                   |   8 --
>   include/configs/efi-x86_payload.h            |   9 --
>   include/configs/ib62x0.h                     |   2 -
>   include/configs/lacie_kw.h                   |   2 -
>   include/configs/malta.h                      |   6 --
>   include/configs/openrd.h                     |   4 -
>   include/configs/qemu-x86.h                   |   9 --
>   include/configs/r2dplus.h                    |   8 --
>   include/configs/sandbox.h                    |  11 --
>   scripts/config_whitelist.txt                 |  11 --
>   42 files changed, 246 insertions(+), 113 deletions(-)
> 
> diff --git a/README b/README
> index 4cad8f8356c..3870b0dbe4f 100644
> --- a/README
> +++ b/README
> @@ -720,17 +720,6 @@ The following options need to be configured:
>   		CONFIG_SCSI) you must configure support for at
>   		least one non-MTD partition type as well.
>   
> -- IDE Reset method:
> -		CONFIG_IDE_RESET - is this is defined, IDE Reset will
> -		be performed by calling the function
> -			ide_set_reset(int reset)
> -		which has to be defined in a board specific file
> -
> -- ATAPI Support:
> -		CONFIG_ATAPI
> -
> -		Set this to enable ATAPI support.
> -
>   - LBA48 Support
>   		CONFIG_LBA48
>   
> diff --git a/arch/arm/mach-kirkwood/include/mach/config.h b/arch/arm/mach-kirkwood/include/mach/config.h
> index eb9502361ee..b9f836bbaf8 100644
> --- a/arch/arm/mach-kirkwood/include/mach/config.h
> +++ b/arch/arm/mach-kirkwood/include/mach/config.h
> @@ -59,18 +59,11 @@
>   #ifdef CONFIG_IDE
>   #define __io
>   /* Data, registers and alternate blocks are at the same offset */
> -#define CONFIG_SYS_ATA_DATA_OFFSET	(0x0100)
> -#define CONFIG_SYS_ATA_REG_OFFSET	(0x0100)
> -#define CONFIG_SYS_ATA_ALT_OFFSET	(0x0100)
>   /* Each 8-bit ATA register is aligned to a 4-bytes address */
> -#define CONFIG_SYS_ATA_STRIDE		4
>   /* Controller supports 48-bits LBA addressing */
>   #define CONFIG_LBA48
>   /* CONFIG_IDE requires some #defines for ATA registers */
> -#define CONFIG_SYS_IDE_MAXBUS		2
> -#define CONFIG_SYS_IDE_MAXDEVICE	2
>   /* ATA registers base is at SATA controller base */
> -#define CONFIG_SYS_ATA_BASE_ADDR	MV_SATA_BASE
>   #endif /* CONFIG_IDE */
>   
>   /* Use common timer */
> diff --git a/configs/M5253DEMO_defconfig b/configs/M5253DEMO_defconfig
> index 67f9875829b..348f525bbb9 100644
> --- a/configs/M5253DEMO_defconfig
> +++ b/configs/M5253DEMO_defconfig
> @@ -20,6 +20,14 @@ CONFIG_CMD_FAT=y
>   CONFIG_MAC_PARTITION=y
>   CONFIG_ENV_ADDR=0xFF804000
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0xA0
> +CONFIG_SYS_ATA_REG_OFFSET=0xA0
> +CONFIG_SYS_ATA_ALT_OFFSET=0xC0
> +CONFIG_SYS_ATA_IDE0_OFFSET=0
> +CONFIG_ATAPI=y
> +CONFIG_IDE_RESET=y
>   CONFIG_SYS_I2C_LEGACY=y
>   CONFIG_SYS_I2C_FSL=y
>   CONFIG_SYS_FSL_I2C_OFFSET=0x280
> diff --git a/configs/coreboot64_defconfig b/configs/coreboot64_defconfig
> index 8146569a9d0..b3cb54702e5 100644
> --- a/configs/coreboot64_defconfig
> +++ b/configs/coreboot64_defconfig
> @@ -46,6 +46,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_TFTP_TSIZE=y
>   CONFIG_REGMAP=y
>   CONFIG_SYSCON=y
> +CONFIG_SYS_IDE_MAXDEVICE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_ALT_OFFSET=0
> +CONFIG_ATAPI=y
>   # CONFIG_PCI_PNP is not set
>   CONFIG_SOUND=y
>   CONFIG_SOUND_I8254=y
> diff --git a/configs/coreboot_defconfig b/configs/coreboot_defconfig
> index a12e4cd4126..c63902132d6 100644
> --- a/configs/coreboot_defconfig
> +++ b/configs/coreboot_defconfig
> @@ -41,6 +41,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_TFTP_TSIZE=y
>   CONFIG_REGMAP=y
>   CONFIG_SYSCON=y
> +CONFIG_SYS_IDE_MAXDEVICE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_ALT_OFFSET=0
> +CONFIG_ATAPI=y
>   # CONFIG_PCI_PNP is not set
>   CONFIG_SOUND=y
>   CONFIG_SOUND_I8254=y
> diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig
> index 144fd30706b..1d6a24abedf 100644
> --- a/configs/dns325_defconfig
> +++ b/configs/dns325_defconfig
> @@ -41,6 +41,10 @@ CONFIG_ENV_OVERWRITE=y
>   CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
>   CONFIG_KIRKWOOD_GPIO=y
>   # CONFIG_MMC is not set
>   CONFIG_MTD=y
> diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig
> index 557013dbacd..b7bc0e47dd4 100644
> --- a/configs/dreamplug_defconfig
> +++ b/configs/dreamplug_defconfig
> @@ -41,6 +41,10 @@ CONFIG_NET_RANDOM_ETHADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
>   CONFIG_SATA_MV=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
>   # CONFIG_MMC is not set
>   CONFIG_MTD=y
>   CONFIG_DM_SPI_FLASH=y
> diff --git a/configs/ds109_defconfig b/configs/ds109_defconfig
> index 8e2aea9ad62..130a92780c3 100644
> --- a/configs/ds109_defconfig
> +++ b/configs/ds109_defconfig
> @@ -39,6 +39,10 @@ CONFIG_ENV_SPI_MAX_HZ=50000000
>   CONFIG_ENV_ADDR=0x3D0000
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
>   CONFIG_DM_I2C=y
>   CONFIG_SYS_I2C_MVTWSI=y
>   # CONFIG_MMC is not set
> diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
> index a8f61e4844a..1108d7cf229 100644
> --- a/configs/edminiv2_defconfig
> +++ b/configs/edminiv2_defconfig
> @@ -33,6 +33,14 @@ CONFIG_ENV_OVERWRITE=y
>   CONFIG_ENV_IS_IN_FLASH=y
>   CONFIG_ENV_ADDR=0xFFF84000
>   CONFIG_NETCONSOLE=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_IDE_MAXDEVICE=1
> +CONFIG_SYS_ATA_BASE_ADDR=0xf1080000
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x4000
>   CONFIG_SYS_I2C_LEGACY=y
>   CONFIG_SPL_SYS_I2C_LEGACY=y
>   CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/efi-x86_payload32_defconfig b/configs/efi-x86_payload32_defconfig
> index d7be9579cce..fe6937e8a36 100644
> --- a/configs/efi-x86_payload32_defconfig
> +++ b/configs/efi-x86_payload32_defconfig
> @@ -39,6 +39,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_TFTP_TSIZE=y
>   CONFIG_REGMAP=y
>   CONFIG_SYSCON=y
> +CONFIG_SYS_IDE_MAXDEVICE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_ALT_OFFSET=0
> +CONFIG_ATAPI=y
>   # CONFIG_PCI_PNP is not set
>   # CONFIG_GZIP is not set
>   CONFIG_EFI=y
> diff --git a/configs/efi-x86_payload64_defconfig b/configs/efi-x86_payload64_defconfig
> index 36dd0647c23..98e280a1797 100644
> --- a/configs/efi-x86_payload64_defconfig
> +++ b/configs/efi-x86_payload64_defconfig
> @@ -39,6 +39,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_TFTP_TSIZE=y
>   CONFIG_REGMAP=y
>   CONFIG_SYSCON=y
> +CONFIG_SYS_IDE_MAXDEVICE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_ALT_OFFSET=0
> +CONFIG_ATAPI=y
>   # CONFIG_PCI_PNP is not set
>   # CONFIG_GZIP is not set
>   CONFIG_EFI=y
> diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig
> index e7802afb0a0..e30467557c0 100644
> --- a/configs/guruplug_defconfig
> +++ b/configs/guruplug_defconfig
> @@ -43,6 +43,10 @@ CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
>   # CONFIG_MMC is not set
>   CONFIG_MTD=y
>   CONFIG_MTD_RAW_NAND=y
> diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig
> index 23a211c3913..2655124f806 100644
> --- a/configs/ib62x0_defconfig
> +++ b/configs/ib62x0_defconfig
> @@ -42,6 +42,12 @@ CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
> +CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
>   # CONFIG_MMC is not set
>   CONFIG_MTD=y
>   CONFIG_MTD_RAW_NAND=y
> diff --git a/configs/malta64_defconfig b/configs/malta64_defconfig
> index 9e6d8c0dc6b..1c1bc4e4cd4 100644
> --- a/configs/malta64_defconfig
> +++ b/configs/malta64_defconfig
> @@ -25,6 +25,10 @@ CONFIG_CMD_DATE=y
>   # CONFIG_ISO_PARTITION is not set
>   CONFIG_ENV_IS_IN_FLASH=y
>   CONFIG_ENV_ADDR=0xFFFFFFFFBE3E0000
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
>   CONFIG_MTD_NOR_FLASH=y
>   CONFIG_FLASH_CFI_DRIVER=y
>   CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
> diff --git a/configs/malta64el_defconfig b/configs/malta64el_defconfig
> index c44aa7e26d8..756138daafd 100644
> --- a/configs/malta64el_defconfig
> +++ b/configs/malta64el_defconfig
> @@ -27,6 +27,10 @@ CONFIG_CMD_DATE=y
>   # CONFIG_ISO_PARTITION is not set
>   CONFIG_ENV_IS_IN_FLASH=y
>   CONFIG_ENV_ADDR=0xFFFFFFFFBE3E0000
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
>   CONFIG_MTD_NOR_FLASH=y
>   CONFIG_FLASH_CFI_DRIVER=y
>   CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
> diff --git a/configs/malta_defconfig b/configs/malta_defconfig
> index 852e5c03be1..802cc370e9a 100644
> --- a/configs/malta_defconfig
> +++ b/configs/malta_defconfig
> @@ -24,6 +24,10 @@ CONFIG_CMD_DATE=y
>   # CONFIG_ISO_PARTITION is not set
>   CONFIG_ENV_IS_IN_FLASH=y
>   CONFIG_ENV_ADDR=0xBE3E0000
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
>   CONFIG_MTD_NOR_FLASH=y
>   CONFIG_FLASH_CFI_DRIVER=y
>   CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
> diff --git a/configs/maltael_defconfig b/configs/maltael_defconfig
> index b81ab6e33ae..f929fc82d26 100644
> --- a/configs/maltael_defconfig
> +++ b/configs/maltael_defconfig
> @@ -26,6 +26,10 @@ CONFIG_CMD_DATE=y
>   # CONFIG_ISO_PARTITION is not set
>   CONFIG_ENV_IS_IN_FLASH=y
>   CONFIG_ENV_ADDR=0xBE3E0000
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x01f0
>   CONFIG_MTD_NOR_FLASH=y
>   CONFIG_FLASH_CFI_DRIVER=y
>   CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
> diff --git a/configs/nas220_defconfig b/configs/nas220_defconfig
> index 7e4e19a9f78..f6a1dcbee06 100644
> --- a/configs/nas220_defconfig
> +++ b/configs/nas220_defconfig
> @@ -42,6 +42,10 @@ CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
>   CONFIG_KIRKWOOD_GPIO=y
>   # CONFIG_MMC is not set
>   CONFIG_MTD=y
> diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig
> index 2c5a29cfe35..a2fdafd10ee 100644
> --- a/configs/openrd_base_defconfig
> +++ b/configs/openrd_base_defconfig
> @@ -43,6 +43,12 @@ CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
> +CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
>   # CONFIG_MMC_HW_PARTITIONING is not set
>   CONFIG_MTD=y
>   CONFIG_MTD_RAW_NAND=y
> diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig
> index b21d41b1ed4..208deb4ce14 100644
> --- a/configs/openrd_client_defconfig
> +++ b/configs/openrd_client_defconfig
> @@ -44,6 +44,12 @@ CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
> +CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
>   # CONFIG_MMC_HW_PARTITIONING is not set
>   CONFIG_MTD=y
>   CONFIG_MTD_RAW_NAND=y
> diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig
> index ceeb62109aa..d7269c40860 100644
> --- a/configs/openrd_ultimate_defconfig
> +++ b/configs/openrd_ultimate_defconfig
> @@ -44,6 +44,12 @@ CONFIG_ENV_IS_IN_NAND=y
>   CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_NETCONSOLE=y
>   CONFIG_DM=y
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0x100
> +CONFIG_SYS_ATA_REG_OFFSET=0x100
> +CONFIG_SYS_ATA_ALT_OFFSET=0x100
> +CONFIG_SYS_ATA_IDE0_OFFSET=0x2000
> +CONFIG_SYS_ATA_IDE1_OFFSET=0x4000
>   # CONFIG_MMC_HW_PARTITIONING is not set
>   CONFIG_MTD=y
>   CONFIG_MTD_RAW_NAND=y
> diff --git a/configs/qemu-x86_64_defconfig b/configs/qemu-x86_64_defconfig
> index 2dfb48b3831..6b2f12a5057 100644
> --- a/configs/qemu-x86_64_defconfig
> +++ b/configs/qemu-x86_64_defconfig
> @@ -55,6 +55,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_TFTP_TSIZE=y
>   CONFIG_REGMAP=y
>   CONFIG_SYSCON=y
> +CONFIG_SYS_IDE_MAXDEVICE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_ALT_OFFSET=0
> +CONFIG_ATAPI=y
>   CONFIG_CPU=y
>   CONFIG_NVME=y
>   CONFIG_SPL_DM_RTC=y
> diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
> index 6be7ce0c6e6..f7743c63e36 100644
> --- a/configs/qemu-x86_defconfig
> +++ b/configs/qemu-x86_defconfig
> @@ -38,6 +38,11 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
>   CONFIG_TFTP_TSIZE=y
>   CONFIG_REGMAP=y
>   CONFIG_SYSCON=y
> +CONFIG_SYS_IDE_MAXDEVICE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=0
> +CONFIG_SYS_ATA_ALT_OFFSET=0
> +CONFIG_ATAPI=y
>   CONFIG_CPU=y
>   CONFIG_NVME=y
>   CONFIG_SPI=y
> diff --git a/configs/r2dplus_defconfig b/configs/r2dplus_defconfig
> index 9e2036a946b..8b5c8ff4e18 100644
> --- a/configs/r2dplus_defconfig
> +++ b/configs/r2dplus_defconfig
> @@ -29,6 +29,14 @@ CONFIG_ENV_OVERWRITE=y
>   CONFIG_ENV_IS_IN_FLASH=y
>   CONFIG_ENV_ADDR=0xA0040000
>   CONFIG_DM=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_IDE_MAXDEVICE=1
> +CONFIG_SYS_ATA_BASE_ADDR=0xb4000000
> +CONFIG_SYS_ATA_STRIDE=2
> +CONFIG_SYS_ATA_DATA_OFFSET=0x1000
> +CONFIG_SYS_ATA_REG_OFFSET=0x1000
> +CONFIG_SYS_ATA_ALT_OFFSET=0x800
> +CONFIG_IDE_RESET=y
>   CONFIG_CLK=y
>   CONFIG_MTD_NOR_FLASH=y
>   CONFIG_FLASH_CFI_DRIVER=y
> diff --git a/configs/sandbox64_defconfig b/configs/sandbox64_defconfig
> index c9afe4c8408..e1aac615070 100644
> --- a/configs/sandbox64_defconfig
> +++ b/configs/sandbox64_defconfig
> @@ -106,6 +106,13 @@ CONFIG_ADC=y
>   CONFIG_ADC_SANDBOX=y
>   CONFIG_AXI=y
>   CONFIG_AXI_SANDBOX=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_BASE_ADDR=0x100
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=1
> +CONFIG_SYS_ATA_ALT_OFFSET=2
> +CONFIG_SYS_ATA_IDE0_OFFSET=0
>   CONFIG_BUTTON=y
>   CONFIG_BUTTON_GPIO=y
>   CONFIG_CLK=y
> diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
> index 19cde873973..c540cd0aa5c 100644
> --- a/configs/sandbox_defconfig
> +++ b/configs/sandbox_defconfig
> @@ -130,6 +130,13 @@ CONFIG_ADC=y
>   CONFIG_ADC_SANDBOX=y
>   CONFIG_AXI=y
>   CONFIG_AXI_SANDBOX=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_BASE_ADDR=0x100
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=1
> +CONFIG_SYS_ATA_ALT_OFFSET=2
> +CONFIG_SYS_ATA_IDE0_OFFSET=0
>   CONFIG_BOOTCOUNT_LIMIT=y
>   CONFIG_DM_BOOTCOUNT=y
>   CONFIG_DM_BOOTCOUNT_RTC=y
> diff --git a/configs/sandbox_noinst_defconfig b/configs/sandbox_noinst_defconfig
> index 7d872ada15d..3d47ea620b7 100644
> --- a/configs/sandbox_noinst_defconfig
> +++ b/configs/sandbox_noinst_defconfig
> @@ -110,6 +110,13 @@ CONFIG_ADC=y
>   CONFIG_ADC_SANDBOX=y
>   CONFIG_AXI=y
>   CONFIG_AXI_SANDBOX=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_BASE_ADDR=0x100
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=1
> +CONFIG_SYS_ATA_ALT_OFFSET=2
> +CONFIG_SYS_ATA_IDE0_OFFSET=0
>   CONFIG_CLK=y
>   CONFIG_SPL_CLK=y
>   CONFIG_CPU=y
> diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig
> index 29a89171bc6..926c34c37e0 100644
> --- a/configs/sandbox_spl_defconfig
> +++ b/configs/sandbox_spl_defconfig
> @@ -112,6 +112,13 @@ CONFIG_ADC=y
>   CONFIG_ADC_SANDBOX=y
>   CONFIG_AXI=y
>   CONFIG_AXI_SANDBOX=y
> +CONFIG_SYS_IDE_MAXBUS=1
> +CONFIG_SYS_ATA_BASE_ADDR=0x100
> +CONFIG_SYS_ATA_STRIDE=4
> +CONFIG_SYS_ATA_DATA_OFFSET=0
> +CONFIG_SYS_ATA_REG_OFFSET=1
> +CONFIG_SYS_ATA_ALT_OFFSET=2
> +CONFIG_SYS_ATA_IDE0_OFFSET=0
>   CONFIG_CLK=y
>   CONFIG_SPL_CLK=y
>   CONFIG_CPU=y
> diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
> index 8235430497d..c54b58110cf 100644
> --- a/drivers/block/Kconfig
> +++ b/drivers/block/Kconfig
> @@ -102,3 +102,107 @@ config IDE
>   	  This allows access to raw blocks and filesystems on an IDE drive
>   	  from U-Boot. See also CMD_IDE which provides an 'ide' command for
>   	  performing various IDE operations.
> +
> +if IDE
> +
> +config SYS_IDE_MAXBUS
> +	hex "Maximumm number of IDE buses"
> +	default 2
> +	help
> +	  This is the number of IDE buses provided by the board. Each one
> +	  can have one or two devices. One is designated the master and the
> +	  other one the slave. It is not required to have one or both on any
> +	  controller.
> +
> +config SYS_IDE_MAXDEVICE
> +	hex "Maximum number of IDE devices"
> +	default 2
> +	help
> +	  This is the number of IDE devices which can be connected to the
> +	  board. Normally this is 2 * CONFIG_SYS_IDE_MAXBUS since up to two
> +	  devices can be connected to each bus. The number of devices actually
> +	  connected is determined by probing.
> +
> +config SYS_ATA_BASE_ADDR
> +	hex "Base address of IDE controller"
> +	default 0
> +	help
> +	  This is the address of the IDE controller, from which other addresses
> +	  are calculated. Each bus is at a fixed offset from this address,
> +	  so it assumed that they are in the same area of the I/O space or
> +	  memory.
> +
> +config SYS_ATA_STRIDE
> +	hex "IDE port stride"
> +	default 0x1
> +	help
> +	  This is the distance between each IDE register, in bytes. For an
> +	  8-bit controller this is typically 1, meaning that the registers
> +	  appear at consecutive bytes. If the value 2 two, that might indicate
> +	  a 16-bit register space.
> +
> +config SYS_ATA_DATA_OFFSET
> +	hex "Offset of the data register"
> +	default 0x0
> +	help
> +	  This is the offset of the controller's data register from the base
> +	  address of the controller. This is typically 0, but may be something
> +	  else if there are some other registers at the start of the
> +	  controller space.
> +
> +config SYS_ATA_REG_OFFSET
> +	hex "Offset of the register space"
> +	default 0x0
> +	help
> +	  This is the offset of the controller's 'register' space from the base
> +	  address of the controller. The data register (which is typically at
> +	  offset 0) has its own CONFIG, to deal with controllers where it is
> +	  somewhere else. Register 1 will be at this offset + 1, register 2 at
> +	  CONFIG_SYS_ATA_REG_OFFSET + 2, etc.
> +
> +config SYS_ATA_ALT_OFFSET
> +	hex "Offset of the alternative registers"
> +	default 0x0
> +	help
> +	  This is the offset of the controller's 'alternative' space from the
> +	  base address of the controller. This allows these registers to be
> +	  located separately from the data and register space.
> +
> +config SYS_ATA_IDE0_OFFSET
> +	hex "Offset of bus 0"
> +	default 0x1f0
> +	help
> +	  This is the start offset of bus 0 from the start of the
> +	  controller registers. All the other registers are calculated from
> +	  this address. using the above options. For x86 hardware this is often
> +	  0x1f0.
> +
> +config SYS_ATA_IDE1_OFFSET
> +	hex "Offset of bus 1"
> +	default 0x170
> +	help
> +	  This is the start offset of bus 1 from the start of the
> +	  controller registers. All the other registers are calculated from
> +	  this address. using the above options. For x86 hardware this is often
> +	  0x170.
> +
> +config ATAPI
> +	bool "Enable ATAPI support"
> +	help
> +	  This enabled Advanced Technology Attachment Packet Interface (ATAPI),
> +	  a protocol that allows a greater variety of devices to be connected
> +	  to the IDE port than with plain ATA. It allows SCSI commands to be
> +	  sent across the bus, e.g. to support optical drives.
> +
> +config IDE_RESET
> +	bool "Support board-specific reset"
> +	help
> +	  If this is defined, IDE Reset will be performed by calling the
> +	  function:
> +
> +	     ide_set_reset(int reset)
> +
> +	  where reset is 1 to assert reset and 0 to de-assert it. This function
> +	  must be defined in a board-specific file.
> +
> +endif  # IDE
> diff --git a/include/ata.h b/include/ata.h
> index 32ad5f64271..a7bcee6a64c 100644
> --- a/include/ata.h
> +++ b/include/ata.h
> @@ -19,9 +19,6 @@
>    * 8-bit (register) and 16-bit (data) accesses might use different
>    * address spaces. This is implemented by the following definitions.
>    */
> -#ifndef CONFIG_SYS_ATA_STRIDE
> -#define CONFIG_SYS_ATA_STRIDE	1
> -#endif
>   
>   #define ATA_IO_DATA(x)	(CONFIG_SYS_ATA_DATA_OFFSET+((x) * CONFIG_SYS_ATA_STRIDE))
>   #define ATA_IO_REG(x)	(CONFIG_SYS_ATA_REG_OFFSET +((x) * CONFIG_SYS_ATA_STRIDE))
> diff --git a/include/configs/M5253DEMO.h b/include/configs/M5253DEMO.h
> index 6ba5c525431..c27f0a5a2d7 100644
> --- a/include/configs/M5253DEMO.h
> +++ b/include/configs/M5253DEMO.h
> @@ -23,21 +23,8 @@
>   
>   #ifdef CONFIG_IDE
>   /* ATA */
> -#	define CONFIG_IDE_RESET		1
>   #	define CONFIG_IDE_PREINIT	1
> -#	define CONFIG_ATAPI
>   #	undef CONFIG_LBA48
> -
> -#	define CONFIG_SYS_IDE_MAXBUS		1
> -#	define CONFIG_SYS_IDE_MAXDEVICE	2
> -
> -#	define CONFIG_SYS_ATA_BASE_ADDR	(CONFIG_SYS_MBAR2 + 0x800)
> -#	define CONFIG_SYS_ATA_IDE0_OFFSET	0
> -
> -#	define CONFIG_SYS_ATA_DATA_OFFSET	0xA0	/* Offset for data I/O */
> -#	define CONFIG_SYS_ATA_REG_OFFSET	0xA0	/* Offset for normal register accesses */
> -#	define CONFIG_SYS_ATA_ALT_OFFSET	0xC0	/* Offset for alternate registers */
> -#	define CONFIG_SYS_ATA_STRIDE		4	/* Interval between registers */
>   #endif
>   
>   #define CONFIG_DRIVER_DM9000
> diff --git a/include/configs/coreboot.h b/include/configs/coreboot.h
> index d6d679fd7dd..23c493b2582 100644
> --- a/include/configs/coreboot.h
> +++ b/include/configs/coreboot.h
> @@ -22,14 +22,5 @@
>   					"stderr=serial,vidconsole\0"
>   
>   /* ATA/IDE support */
> -#define CONFIG_SYS_IDE_MAXBUS		2
> -#define CONFIG_SYS_IDE_MAXDEVICE	4
> -#define CONFIG_SYS_ATA_BASE_ADDR	0
> -#define CONFIG_SYS_ATA_DATA_OFFSET	0
> -#define CONFIG_SYS_ATA_REG_OFFSET	0
> -#define CONFIG_SYS_ATA_ALT_OFFSET	0
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	0x1f0
> -#define CONFIG_SYS_ATA_IDE1_OFFSET	0x170
> -#define CONFIG_ATAPI
>   
>   #endif	/* __CONFIG_H */
> diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
> index 90e387e6c5e..a599722ae3b 100644
> --- a/include/configs/edminiv2.h
> +++ b/include/configs/edminiv2.h
> @@ -110,20 +110,12 @@
>   #ifdef CONFIG_IDE
>   #define __io
>   /* Data, registers and alternate blocks are at the same offset */
> -#define CONFIG_SYS_ATA_DATA_OFFSET	(0x0100)
> -#define CONFIG_SYS_ATA_REG_OFFSET	(0x0100)
> -#define CONFIG_SYS_ATA_ALT_OFFSET	(0x0100)
>   /* Each 8-bit ATA register is aligned to a 4-bytes address */
> -#define CONFIG_SYS_ATA_STRIDE		4
>   /* Controller supports 48-bits LBA addressing */
>   #define CONFIG_LBA48
>   /* A single bus, a single device */
> -#define CONFIG_SYS_IDE_MAXBUS		1
> -#define CONFIG_SYS_IDE_MAXDEVICE	1
>   /* ATA registers base is at SATA controller base */
> -#define CONFIG_SYS_ATA_BASE_ADDR	ORION5X_SATA_BASE
>   /* ATA bus 0 is orion5x port 1 on ED Mini V2 */
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	ORION5X_SATA_PORT1_OFFSET
>   /* end of IDE defines */
>   #endif /* CMD_IDE */
>   
> diff --git a/include/configs/efi-x86_payload.h b/include/configs/efi-x86_payload.h
> index 1cf5c037e85..59fad4c15db 100644
> --- a/include/configs/efi-x86_payload.h
> +++ b/include/configs/efi-x86_payload.h
> @@ -19,14 +19,5 @@
>   					"stderr=serial,vidconsole\0"
>   
>   /* ATA/IDE support */
> -#define CONFIG_SYS_IDE_MAXBUS		2
> -#define CONFIG_SYS_IDE_MAXDEVICE	4
> -#define CONFIG_SYS_ATA_BASE_ADDR	0
> -#define CONFIG_SYS_ATA_DATA_OFFSET	0
> -#define CONFIG_SYS_ATA_REG_OFFSET	0
> -#define CONFIG_SYS_ATA_ALT_OFFSET	0
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	0x1f0
> -#define CONFIG_SYS_ATA_IDE1_OFFSET	0x170
> -#define CONFIG_ATAPI
>   
>   #endif	/* __CONFIG_H */
> diff --git a/include/configs/ib62x0.h b/include/configs/ib62x0.h
> index 9783fd89ec0..2598deaac6e 100644
> --- a/include/configs/ib62x0.h
> +++ b/include/configs/ib62x0.h
> @@ -40,8 +40,6 @@
>    */
>   #ifdef CONFIG_IDE
>   #define __io
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	MV_SATA_PORT0_OFFSET
> -#define CONFIG_SYS_ATA_IDE1_OFFSET	MV_SATA_PORT1_OFFSET
>   #endif /* CONFIG_IDE */
>   
>   #endif /* _CONFIG_IB62x0_H */
> diff --git a/include/configs/lacie_kw.h b/include/configs/lacie_kw.h
> index 046f1888cb1..7366a332f94 100644
> --- a/include/configs/lacie_kw.h
> +++ b/include/configs/lacie_kw.h
> @@ -9,8 +9,6 @@
>   #include "mv-common.h"
>   
>   /* Remove or override few declarations from mv-common.h */
> -#undef CONFIG_SYS_IDE_MAXBUS
> -#undef CONFIG_SYS_IDE_MAXDEVICE
>   
>   /*
>    * Enable platform initialisation via misc_init_r() function
> diff --git a/include/configs/malta.h b/include/configs/malta.h
> index 61860ee6942..6d150fd557c 100644
> --- a/include/configs/malta.h
> +++ b/include/configs/malta.h
> @@ -63,12 +63,6 @@
>   /*
>    * IDE/ATA
>    */
> -#define CONFIG_SYS_IDE_MAXBUS		1
> -#define CONFIG_SYS_IDE_MAXDEVICE	2
> -#define CONFIG_SYS_ATA_BASE_ADDR	CONFIG_SYS_ISA_IO_BASE_ADDRESS
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	0x01f0
> -#define CONFIG_SYS_ATA_DATA_OFFSET	0
> -#define CONFIG_SYS_ATA_REG_OFFSET	0
>   
>   /*
>    * Commands
> diff --git a/include/configs/openrd.h b/include/configs/openrd.h
> index 43d089657b1..7dad002f3b8 100644
> --- a/include/configs/openrd.h
> +++ b/include/configs/openrd.h
> @@ -59,9 +59,5 @@
>   /*
>    * SATA Driver configuration
>    */
> -#ifdef CONFIG_MVSATA_IDE
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	MV_SATA_PORT0_OFFSET
> -#define CONFIG_SYS_ATA_IDE1_OFFSET	MV_SATA_PORT1_OFFSET
> -#endif /*CONFIG_MVSATA_IDE*/
>   
>   #endif /* _CONFIG_OPENRD_BASE_H */
> diff --git a/include/configs/qemu-x86.h b/include/configs/qemu-x86.h
> index 52c33600b3c..e9dbd54517f 100644
> --- a/include/configs/qemu-x86.h
> +++ b/include/configs/qemu-x86.h
> @@ -33,15 +33,6 @@
>    *   - Only legacy IDE controller is supported for QEMU '-M pc' target
>    *   - AHCI controller is supported for QEMU '-M q35' target
>    */
> -#define CONFIG_SYS_IDE_MAXBUS		2
> -#define CONFIG_SYS_IDE_MAXDEVICE	4
> -#define CONFIG_SYS_ATA_BASE_ADDR	0
> -#define CONFIG_SYS_ATA_DATA_OFFSET	0
> -#define CONFIG_SYS_ATA_REG_OFFSET	0
> -#define CONFIG_SYS_ATA_ALT_OFFSET	0
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	0x1f0
> -#define CONFIG_SYS_ATA_IDE1_OFFSET	0x170
> -#define CONFIG_ATAPI
>   
>   #define CONFIG_SPL_BOARD_LOAD_IMAGE
>   
> diff --git a/include/configs/r2dplus.h b/include/configs/r2dplus.h
> index e3105fe53cb..49dcdbe4914 100644
> --- a/include/configs/r2dplus.h
> +++ b/include/configs/r2dplus.h
> @@ -32,15 +32,7 @@
>   /*
>    * IDE support
>    */
> -#define CONFIG_IDE_RESET	1
>   #define CONFIG_SYS_PIO_MODE		1
> -#define CONFIG_SYS_IDE_MAXBUS		1 /* IDE bus */
> -#define CONFIG_SYS_IDE_MAXDEVICE	1
> -#define CONFIG_SYS_ATA_BASE_ADDR	0xb4000000
> -#define CONFIG_SYS_ATA_STRIDE		2 /* 1bit shift */
> -#define CONFIG_SYS_ATA_DATA_OFFSET	0x1000	/* data reg offset */
> -#define CONFIG_SYS_ATA_REG_OFFSET	0x1000	/* reg offset */
> -#define CONFIG_SYS_ATA_ALT_OFFSET	0x800	/* alternate register offset */
>   
>   /*
>    * SuperH PCI Bridge Configration
> diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
> index 9e0e8c7056f..86b93bcbe70 100644
> --- a/include/configs/sandbox.h
> +++ b/include/configs/sandbox.h
> @@ -29,17 +29,6 @@
>   #define CONFIG_SANDBOX_SDL
>   #endif
>   
> -#ifndef CONFIG_SPL_BUILD
> -#define CONFIG_SYS_IDE_MAXBUS		1
> -#define CONFIG_SYS_ATA_IDE0_OFFSET	0
> -#define CONFIG_SYS_IDE_MAXDEVICE	2
> -#define CONFIG_SYS_ATA_BASE_ADDR	0x100
> -#define CONFIG_SYS_ATA_DATA_OFFSET	0
> -#define CONFIG_SYS_ATA_REG_OFFSET	1
> -#define CONFIG_SYS_ATA_ALT_OFFSET	2
> -#define CONFIG_SYS_ATA_STRIDE		4
> -#endif
> -
>   #define CONFIG_SCSI_AHCI_PLAT
>   #define CONFIG_SYS_SCSI_MAX_DEVICE	2
>   #define CONFIG_SYS_SCSI_MAX_SCSI_ID	8
> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
> index e393fbee1b0..21c9c3095f6 100644
> --- a/scripts/config_whitelist.txt
> +++ b/scripts/config_whitelist.txt
> @@ -21,7 +21,6 @@ CONFIG_AT91SAM9M10G45EK
>   CONFIG_AT91_GPIO_PULLUP
>   CONFIG_AT91_LED
>   CONFIG_AT91_WANTS_COMMON_PHY
> -CONFIG_ATAPI
>   CONFIG_ATMEL_LCD
>   CONFIG_ATMEL_LCD_BGR555
>   CONFIG_ATMEL_LCD_RGB565
> @@ -441,7 +440,6 @@ CONFIG_I2C_RTC_ADDR
>   CONFIG_ICACHE
>   CONFIG_ICS307_REFCLK_HZ
>   CONFIG_IDE_PREINIT
> -CONFIG_IDE_RESET
>   CONFIG_IMX
>   CONFIG_IMX6_PWM_PER_CLK
>   CONFIG_IMX_HDMI
> @@ -846,13 +844,6 @@ CONFIG_SYS_AT91_MAIN_CLOCK
>   CONFIG_SYS_AT91_PLLA
>   CONFIG_SYS_AT91_PLLB
>   CONFIG_SYS_AT91_SLOW_CLOCK
> -CONFIG_SYS_ATA_ALT_OFFSET
> -CONFIG_SYS_ATA_BASE_ADDR
> -CONFIG_SYS_ATA_DATA_OFFSET
> -CONFIG_SYS_ATA_IDE0_OFFSET
> -CONFIG_SYS_ATA_IDE1_OFFSET
> -CONFIG_SYS_ATA_REG_OFFSET
> -CONFIG_SYS_ATA_STRIDE
>   CONFIG_SYS_AUTOLOAD
>   CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION
>   CONFIG_SYS_AUXCORE_BOOTDATA
> @@ -1418,8 +1409,6 @@ CONFIG_SYS_I2C_RTC_ADDR
>   CONFIG_SYS_I2C_TCA642X_ADDR
>   CONFIG_SYS_I2C_TCA642X_BUS_NUM
>   CONFIG_SYS_ICACHE_INV
> -CONFIG_SYS_IDE_MAXBUS
> -CONFIG_SYS_IDE_MAXDEVICE
>   CONFIG_SYS_IFC_ADDR
>   CONFIG_SYS_IFC_CCR
>   CONFIG_SYS_INIT_DBCR
> 

Viele Grüße,
Stefan Roese

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE
  2022-01-22 12:53 ` [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE Simon Glass
@ 2022-01-23  7:22   ` Stefan Roese
  2022-02-09 16:38   ` Tom Rini
  1 sibling, 0 replies; 10+ messages in thread
From: Stefan Roese @ 2022-01-23  7:22 UTC (permalink / raw)
  To: Simon Glass, U-Boot Mailing List
  Cc: Tom Rini, Marek Behún, Nobuhiro Iwamatsu, Patrick Delaunay,
	Priyanka Jain

On 1/22/22 13:53, Simon Glass wrote:
> This option is not used in U-Boot. Drop it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
> 
>   include/configs/r2dplus.h    | 5 -----
>   scripts/config_whitelist.txt | 1 -
>   2 files changed, 6 deletions(-)
> 
> diff --git a/include/configs/r2dplus.h b/include/configs/r2dplus.h
> index 49dcdbe4914..04b34814805 100644
> --- a/include/configs/r2dplus.h
> +++ b/include/configs/r2dplus.h
> @@ -29,11 +29,6 @@
>    */
>   #define	CONFIG_SYS_PLL_SETTLING_TIME	100/* in us */
>   
> -/*
> - * IDE support
> - */
> -#define CONFIG_SYS_PIO_MODE		1
> -
>   /*
>    * SuperH PCI Bridge Configration
>    */
> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
> index 21c9c3095f6..58c15f0ea08 100644
> --- a/scripts/config_whitelist.txt
> +++ b/scripts/config_whitelist.txt
> @@ -1791,7 +1791,6 @@ CONFIG_SYS_PIOC_PDR_VAL1
>   CONFIG_SYS_PIOC_PPUDR_VAL
>   CONFIG_SYS_PIOD_PDR_VAL1
>   CONFIG_SYS_PIOD_PPUDR_VAL
> -CONFIG_SYS_PIO_MODE
>   CONFIG_SYS_PJPAR
>   CONFIG_SYS_PL310_BASE
>   CONFIG_SYS_PLLAR_VAL
> 

Viele Grüße,
Stefan Roese

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/3] ide: Drop CONFIG_IDE_AHB
  2022-01-22 12:53 ` [PATCH 1/3] ide: Drop CONFIG_IDE_AHB Simon Glass
  2022-01-23  7:21   ` Stefan Roese
@ 2022-02-09 16:38   ` Tom Rini
  1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2022-02-09 16:38 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Heinrich Schuchardt, Patrick Delaunay,
	Rasmus Villemoes, Reinoud Zandijk, Stefan Roese

[-- Attachment #1: Type: text/plain, Size: 256 bytes --]

On Sat, Jan 22, 2022 at 05:53:23AM -0700, Simon Glass wrote:

> This is not used in U-Boot anymore. Drop it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Stefan Roese <sr@denx.de>

Applied to u-boot/master, thanks!

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig
  2022-01-22 12:53 ` [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig Simon Glass
  2022-01-23  7:21   ` Stefan Roese
@ 2022-02-09 16:38   ` Tom Rini
  1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2022-02-09 16:38 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Bin Meng, Evgeni Dobrev, Heiko Schocher,
	Heinrich Schuchardt, Igor Opaniuk, Jason Cooper, Luka Perkov,
	Marek Behún, Mario Six, Michal Simek, Nobuhiro Iwamatsu,
	Patrick Delaunay, Paul Burton, Priyanka Jain, Rasmus Villemoes,
	Reinoud Zandijk, Siddarth Gore, Simon Guinot,
	Stefan Herbrechtsmeier, Stefan Roese, TsiChung Liew,
	Walter Schweizer

[-- Attachment #1: Type: text/plain, Size: 574 bytes --]

On Sat, Jan 22, 2022 at 05:53:24AM -0700, Simon Glass wrote:

> This converts the following to Kconfig:
>    CONFIG_SYS_IDE_MAXBUS
>    CONFIG_SYS_IDE_MAXDEVICE
>    CONFIG_SYS_ATA_BASE_ADDR
>    CONFIG_SYS_ATA_STRIDE
>    CONFIG_SYS_ATA_DATA_OFFSET
>    CONFIG_SYS_ATA_REG_OFFSET
>    CONFIG_SYS_ATA_ALT_OFFSET
>    CONFIG_SYS_ATA_IDE0_OFFSET
>    CONFIG_SYS_ATA_IDE1_OFFSET
>    CONFIG_ATAPI
>    CONFIG_IDE_RESET
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Stefan Roese <sr@denx.de>

Applied to u-boot/master, thanks!

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE
  2022-01-22 12:53 ` [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE Simon Glass
  2022-01-23  7:22   ` Stefan Roese
@ 2022-02-09 16:38   ` Tom Rini
  1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2022-02-09 16:38 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Marek Behún, Nobuhiro Iwamatsu,
	Patrick Delaunay, Priyanka Jain, Stefan Roese

[-- Attachment #1: Type: text/plain, Size: 255 bytes --]

On Sat, Jan 22, 2022 at 05:53:25AM -0700, Simon Glass wrote:

> This option is not used in U-Boot. Drop it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Stefan Roese <sr@denx.de>

Applied to u-boot/master, thanks!

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-02-09 16:40 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-22 12:53 [PATCH 0/3] ide: Convert some options to Kconfig Simon Glass
2022-01-22 12:53 ` [PATCH 1/3] ide: Drop CONFIG_IDE_AHB Simon Glass
2022-01-23  7:21   ` Stefan Roese
2022-02-09 16:38   ` Tom Rini
2022-01-22 12:53 ` [PATCH 2/3] Convert CONFIG_SYS_IDE_MAXBUS et al to Kconfig Simon Glass
2022-01-23  7:21   ` Stefan Roese
2022-02-09 16:38   ` Tom Rini
2022-01-22 12:53 ` [PATCH 3/3] Drop CONFIG_SYS_PIO_MODE Simon Glass
2022-01-23  7:22   ` Stefan Roese
2022-02-09 16:38   ` Tom Rini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.