On 11/09/19 1:17 PM, Michal Simek wrote:
> From: Rajan Vaja <rajan.v...@xilinx.com>
> 
> Add simple ZynqMP firmware drive to populate child nodes under
> zynqmp_firmware DT node.
> 
> Signed-off-by: Rajan Vaja <rajan.v...@xilinx.com>
> Signed-off-by: Michal Simek <michal.si...@xilinx.com>

If this driver is only meant for populating child nodes, then simple-bus in
compatible can solve the problem.

Thanks and regards,
Loksh

> ---
> 
>  drivers/clk/Kconfig                |  1 +
>  drivers/firmware/Kconfig           | 10 ++++++++++
>  drivers/firmware/Makefile          |  1 +
>  drivers/firmware/firmware-zynqmp.c | 15 +++++++++++++++
>  4 files changed, 27 insertions(+)
>  create mode 100644 drivers/firmware/firmware-zynqmp.c
> 
> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> index 95fe0aea2ce8..305cbd96f165 100644
> --- a/drivers/clk/Kconfig
> +++ b/drivers/clk/Kconfig
> @@ -113,6 +113,7 @@ config CLK_ZYNQ
>  config CLK_ZYNQMP
>       bool "Enable clock driver support for ZynqMP"
>       depends on ARCH_ZYNQMP
> +     select ZYNQMP_FIRMWARE
>       help
>         This clock driver adds support for clock realted settings for
>         ZynqMP platform.
> diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig
> index 873bc8c79679..b70a2063551c 100644
> --- a/drivers/firmware/Kconfig
> +++ b/drivers/firmware/Kconfig
> @@ -26,3 +26,13 @@ config TI_SCI_PROTOCOL
>  
>         This protocol library is used by client drivers to use the features
>         provided by the system controller.
> +
> +config ZYNQMP_FIRMWARE
> +     bool "ZynqMP Firmware interface"
> +     select FIRMWARE
> +     help
> +       Firmware interface driver is used by different
> +       drivers to communicate with the firmware for
> +       various platform management services.
> +       Say yes to enable ZynqMP firmware interface driver.
> +       If in doubt, say N.
> diff --git a/drivers/firmware/Makefile b/drivers/firmware/Makefile
> index 6c3e12968527..a0c250a473eb 100644
> --- a/drivers/firmware/Makefile
> +++ b/drivers/firmware/Makefile
> @@ -2,3 +2,4 @@ obj-$(CONFIG_FIRMWARE)                += firmware-uclass.o
>  obj-$(CONFIG_$(SPL_)ARM_PSCI_FW)     += psci.o
>  obj-$(CONFIG_TI_SCI_PROTOCOL)        += ti_sci.o
>  obj-$(CONFIG_SANDBOX)                += firmware-sandbox.o
> +obj-$(CONFIG_ZYNQMP_FIRMWARE)        += firmware-zynqmp.o
> diff --git a/drivers/firmware/firmware-zynqmp.c 
> b/drivers/firmware/firmware-zynqmp.c
> new file mode 100644
> index 000000000000..b36eda1b04be
> --- /dev/null
> +++ b/drivers/firmware/firmware-zynqmp.c
> @@ -0,0 +1,15 @@
> +// SPDX-License-Identifier: GPL-2.0
> +
> +#include <dm.h>
> +
> +static const struct udevice_id zynqmp_firmware_ids[] = {
> +     { .compatible = "xlnx,zynqmp-firmware" },
> +     { }
> +};
> +
> +U_BOOT_DRIVER(zynqmp_firmware) = {
> +     .id = UCLASS_FIRMWARE,
> +     .name = "zynqmp-firmware",
> +     .probe = dm_scan_fdt_dev,
> +     .of_match = zynqmp_firmware_ids,
> +};
> 
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to