[U-Boot] [PATCH 7/7] scsi: dts: a3700: add scsi node
Stefan Roese
sr at denx.de
Thu Mar 23 14:06:12 UTC 2017
Hi Ken,
On 23.03.2017 10:29, make at marvell.com wrote:
> From: Ken Ma <make at marvell.com>
>
> - Add scsi node which acts as a bus for scsi devices, armada3700 has
> only 1 scsi interface, so max-id is 1, and the logic unit number is
> also 1 for armada3700;
> - Since a3700's scsi is sas(serial attached scsi) which is compatible
> for sata and sata hard disk is a sas device, so move sata node to be
> under scsi node.
>
> Signed-off-by: Ken Ma <make at marvell.com>
> Cc: Simon Glass <sjg at chromium.org>
> Cc: Stefan Roese <sr at denx.de>
> Cc: Michal Simek <michal.simek at xilinx.com>
> Reviewed-on: http://vgitil04.il.marvell.com:8080/35303
> Tested-by: iSoC Platform CI <ykjenk at marvell.com>
> Reviewed-by: Kostya Porotchkin <kostap at marvell.com>
> Reviewed-by: Omri Itach <omrii at marvell.com>
> ---
> arch/arm/dts/armada-3720-db.dts | 4 ++++
> arch/arm/dts/armada-37xx.dtsi | 16 ++++++++++++----
> 2 files changed, 16 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/dts/armada-3720-db.dts b/arch/arm/dts/armada-3720-db.dts
> index 85761af..9fc60f6 100644
> --- a/arch/arm/dts/armada-3720-db.dts
> +++ b/arch/arm/dts/armada-3720-db.dts
> @@ -89,6 +89,10 @@
> status = "okay";
> };
>
> +&scsi {
> + status = "okay";
> +};
> +
> /* CON3 */
> &sata {
> status = "okay";
> diff --git a/arch/arm/dts/armada-37xx.dtsi b/arch/arm/dts/armada-37xx.dtsi
> index 062f2a6..de5d3a1 100644
> --- a/arch/arm/dts/armada-37xx.dtsi
> +++ b/arch/arm/dts/armada-37xx.dtsi
> @@ -149,11 +149,19 @@
> status = "disabled";
> };
>
> - sata: sata at e0000 {
> - compatible = "marvell,armada-3700-ahci";
> - reg = <0xe0000 0x2000>;
> - interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
> + scsi: scsi {
> + compatible = "marvell,mvebu-scsi";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + max-id = <1>;
> + max-lun = <1>;
> status = "disabled";
> + sata: sata at e0000 {
> + compatible = "marvell,armada-3700-ahci";
> + reg = <0xe0000 0x2000>;
> + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> + };
> };
>
> gic: interrupt-controller at 1d00000 {
>
I see that you introduce a "scsi" DT node and move the SATA controller
one "level up". I'm not sure if such a change is acceptable as we try
to re-use the DT from Linux. Or thinking more about this, I'm pretty
sure that such a change is not acceptable in general.
Can't you use the existing DT layout and use the
"marvell,armada-3700-ahci" (and other perhaps?) compatible property
instead for driver probing? Not sure how to handle the "max-id" and
"max-lun" properties though. We definitely can't just add some ad-hoc
properties here in U-Boot which have no chance for Linux upstream
acceptance.
Thanks,
Stefan
More information about the U-Boot
mailing list