Add the basic files, declarations and folders to bring in ATA support. Signed-off-by: Juergen Beisert --- drivers/Kconfig | 1 + drivers/Makefile | 1 + drivers/ata/Kconfig | 12 ++++++++++++ drivers/ata/Makefile | 3 +++ include/ata.h | 39 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 56 insertions(+) Index: u-boot-2.0.0-rc10/drivers/ata/Kconfig =================================================================== --- /dev/null +++ u-boot-2.0.0-rc10/drivers/ata/Kconfig @@ -0,0 +1,12 @@ +menuconfig ATA + bool "ATA " + help + Add support for ATA types of drives like harddisks and CDROMs. + +if ATA + +comment "drive types" + +comment "interface types" + +endif Index: u-boot-2.0.0-rc10/drivers/ata/Makefile =================================================================== --- /dev/null +++ u-boot-2.0.0-rc10/drivers/ata/Makefile @@ -0,0 +1,3 @@ +# drive types + +# interface types Index: u-boot-2.0.0-rc10/include/ata.h =================================================================== --- /dev/null +++ u-boot-2.0.0-rc10/include/ata.h @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2009 Juergen Beisert, Pengutronix + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + */ + +/** + * @file + * @brief Declarations to communicate with ATA types of drives + */ + +#include +#include + +/** + * Access functions from drives through the specified interface + */ +struct ata_interface { + /** write a count of sectors from a buffer to the drive */ + int (*write)(struct device_d*, uint64_t, unsigned, const void*); + /** read a count of sectors from the drive into the buffer */ + int (*read)(struct device_d*, uint64_t, unsigned, void*); + /** private interface data */ + void *priv; +}; Index: u-boot-2.0.0-rc10/drivers/Kconfig =================================================================== --- u-boot-2.0.0-rc10.orig/drivers/Kconfig +++ u-boot-2.0.0-rc10/drivers/Kconfig @@ -6,6 +6,7 @@ source "drivers/spi/Kconfig" source "drivers/i2c/Kconfig" source "drivers/nor/Kconfig" source "drivers/nand/Kconfig" +source "drivers/ata/Kconfig" source "drivers/usb/Kconfig" source "drivers/video/Kconfig" Index: u-boot-2.0.0-rc10/drivers/Makefile =================================================================== --- u-boot-2.0.0-rc10.orig/drivers/Makefile +++ u-boot-2.0.0-rc10/drivers/Makefile @@ -3,6 +3,7 @@ obj-y += serial/ obj-y += nand/ obj-y += nor/ obj-y += usb/ +obj-$(CONFIG_ATA) += ata/ obj-$(CONFIG_SPI) += spi/ obj-$(CONFIG_I2C) += i2c/ obj-$(CONFIG_VIDEO) += video/ --