[U-Boot] [PATCH 31/57] ahci: Add an AHCI uclass
Bin Meng
bmeng.cn at gmail.com
Sun Dec 13 13:54:58 CET 2015
Hi Simon,
On Tue, Dec 8, 2015 at 11:38 AM, Simon Glass <sjg at chromium.org> wrote:
> Add a uclass ID for AHCI/SATA. There are no operations and no interface so
> far, but it is possible to probe a SATA device.
I think we should create an ATA or disk controller uclass, instead of
AHCI class. AHCI should be a specific driver scope of this uclass.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> drivers/block/Makefile | 2 +-
> drivers/block/ahci-uclass.c | 14 ++++++++++++++
> include/dm/uclass-id.h | 1 +
> 3 files changed, 16 insertions(+), 1 deletion(-)
> create mode 100644 drivers/block/ahci-uclass.c
>
> diff --git a/drivers/block/Makefile b/drivers/block/Makefile
> index f161c01..b75c75d 100644
> --- a/drivers/block/Makefile
> +++ b/drivers/block/Makefile
> @@ -5,7 +5,7 @@
> # SPDX-License-Identifier: GPL-2.0+
> #
>
> -obj-$(CONFIG_SCSI_AHCI) += ahci.o
> +obj-$(CONFIG_SCSI_AHCI) += ahci.o ahci-uclass.o
> obj-$(CONFIG_DWC_AHSATA) += dwc_ahsata.o
> obj-$(CONFIG_FSL_SATA) += fsl_sata.o
> obj-$(CONFIG_IDE_FTIDE020) += ftide020.o
> diff --git a/drivers/block/ahci-uclass.c b/drivers/block/ahci-uclass.c
> new file mode 100644
> index 0000000..7b8c326
> --- /dev/null
> +++ b/drivers/block/ahci-uclass.c
> @@ -0,0 +1,14 @@
> +/*
> + * Copyright (c) 2015 Google, Inc
> + * Written by Simon Glass <sjg at chromium.org>
> + *
> + * SPDX-License-Identifier: GPL-2.0+
> + */
> +
> +#include <common.h>
> +#include <dm.h>
> +
> +UCLASS_DRIVER(ahci) = {
> + .id = UCLASS_AHCI,
> + .name = "ahci",
> +};
> diff --git a/include/dm/uclass-id.h b/include/dm/uclass-id.h
> index 4a6827b..c74601a 100644
> --- a/include/dm/uclass-id.h
> +++ b/include/dm/uclass-id.h
> @@ -26,6 +26,7 @@ enum uclass_id {
>
> /* U-Boot uclasses start here - in alphabetical order */
> UCLASS_ADC, /* Analog-to-digital converter */
> + UCLASS_AHCI, /* AHCI / SATA controller */
> UCLASS_CLK, /* Clock source, e.g. used by peripherals */
> UCLASS_CPU, /* CPU, typically part of an SoC */
> UCLASS_CROS_EC, /* Chrome OS EC */
> --
Regards,
Bin
More information about the U-Boot
mailing list