[U-Boot] [PATCH V4 2/9] EXYNOS5: FDT: Add DWMMC device node data

Amarendra Reddy
2013-01-15T09:11:50Z

Hi Simon,

On 10 January 2013 20:51, Simon Glass <sjg@chromium.org> wrote:

> Hi Amar,
>
> On Fri, Jan 4, 2013 at 1:34 AM, Amar <amarendra.xt@samsung.com> wrote:
> > This patch adds DWMMC device node data for exynos5.
> > This patch also adds binding file for DWMMC device node.
> >
> > Changes from V1:
> > 1)Added binding file for DWMMC device node at the location
> > "doc/device-tree-bindings/exynos/dwmmc.txt".
> > 2)Removed the propname 'index' from device node.
> > 3)Prefixed the vendor name 'samsung' before propname in device
> node.
> >
> > Changes from V2:
> > 1)Updation of commit message and resubmition of proper patch set.
> >
> > Changes from V3:
> > No change.
>
> Sorry I may be too late with this comment.
>
> >
> > Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
> > Signed-off-by: Amar <amarendra.xt@samsung.com>X
> > ---
> > arch/arm/dts/exynos5250.dtsi | 32
> +++++++++++++++++++++++++++++++
> > board/samsung/dts/exynos5250-smdk5250.dts | 22 +++++++++++++++++++++
> > doc/device-tree-bindings/exynos/dwmmc.txt | 29
> ++++++++++++++++++++++++++++
> > 3 files changed, 83 insertions(+)
> > create mode 100644 doc/device-tree-bindings/exynos/dwmmc.txt
> >
> > diff --git a/arch/arm/dts/exynos5250.dtsi b/arch/arm/dts/exynos5250.dtsi
> > index 1008797..b701ae5 100644
> > --- a/arch/arm/dts/exynos5250.dtsi
> > +++ b/arch/arm/dts/exynos5250.dtsi
> > @@ -138,4 +138,36 @@
> > reg = <0x131b0000 0x30>;
> > interrupts = <0 130 0>;
> > };
> > +
> > + dwmmc at 12200000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + compatible = "samsung,exynos5250-dwmmc";
> > + reg = <0x12200000 0x1000>;
> > + interrupts = <0 75 0>;
> > + };
> > +
> > + dwmmc at 12210000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + compatible = "samsung,exynos5250-dwmmc";
> > + reg = <0x12210000 0x1000>;
> > + interrupts = <0 76 0>;
> > + };
> > +
> > + dwmmc at 12220000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + compatible = "samsung,exynos5250-dwmmc";
> > + reg = <0x12220000 0x1000>;
> > + interrupts = <0 77 0>;
> > + };
> > +
> > + dwmmc at 12230000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + compatible = "samsung,exynos5250-dwmmc";
> > + reg = <0x12230000 0x1000>;
> > + interrupts = <0 78 0>;
> > + };
> > };
> > diff --git a/board/samsung/dts/exynos5250-smdk5250.dts
> b/board/samsung/dts/exynos5250-smdk5250.dts
> > index a8e62da..9baf622 100644
> > --- a/board/samsung/dts/exynos5250-smdk5250.dts
> > +++ b/board/samsung/dts/exynos5250-smdk5250.dts
> > @@ -30,6 +30,10 @@
> > spi2 = "/spi at 12d40000";
> > spi3 = "/spi at 131a0000";
> > spi4 = "/spi at 131b0000";
> > + dwmmc0 = "/dwmmc at 12200000";
> > + dwmmc1 = "/dwmmc at 12210000";
> > + dwmmc2 = "/dwmmc at 12220000";
> > + dwmmc3 = "/dwmmc at 12230000";
>
> I think this should be mmc0, mmc1 instead of dwmmc0, dwmmc1, since
> ultimate we might want to support different drivers for each. The
> alias is support to link the generic mmc device number with the
> driver, and I don't think the numbering should be specific to the
> driver.
>
> Ok.

> > };
> >
> > sromc at 12250000 {
> > @@ -59,4 +63,22 @@
> > compatible = "wolfson,wm8994-codec";
> > };
> > };
> > +
> > + dwmmc at 12200000 {
> > + samsung,bus-width = <8>;
> > + samsung,timing = <1 3 3>;
> > + };
> > +
> > + dwmmc at 12210000 {
> > + status = "disabled";
> > + };
> > +
> > + dwmmc at 12220000 {
> > + samsung,bus-width = <4>;
> > + samsung,timing = <1 2 3>;
> > + };
> > +
> > + dwmmc at 12230000 {
> > + status = "disabled";
> > + };
> > };
> > diff --git a/doc/device-tree-bindings/exynos/dwmmc.txt
> b/doc/device-tree-bindings/exynos/dwmmc.txt
> > new file mode 100644
> > index 0000000..6232ad6
> > --- /dev/null
> > +++ b/doc/device-tree-bindings/exynos/dwmmc.txt
> > @@ -0,0 +1,29 @@
> > +* Exynos 5250 DWC_mobile_storage
> > +
> > +The Exynos 5250 provides DWC_mobile_storage interface which supports
> > +. Embedded Multimedia Cards (EMMC-version 4.5)
> > +. Secure Digital memory (SD mem-version 2.0)
> > +. Secure Digital I/O (SDIO-version 3.0)
> > +. Consumer Electronics Advanced Transport Architecture (CE-ATA-version
> 1.1)
> > +
> > +The Exynos 5250 DWC_mobile_storage provides four channels.
> > +SOC specific and Board specific properties are channel specific.
> > +
> > +Required SoC Specific Properties:
> > +
> > +- compatible: should be
> > + - samsung,exynos5250-dwmmc: for exynos5250 platforms
> > +
> > +- reg: physical base address of the controller and length of memory
> mapped
> > + region.
> > +
> > +- interrupts: The interrupt number to the cpu.
> > +
> > +Required Board Specific Properties:
> > +
> > +- #address-cells: should be 1.
> > +- #size-cells: should be 0.
> > +- samsung,bus-width: The width of the bus used to interface the devices
> > + supported by DWC_mobile_storage (SD-MMC/EMMC/SDIO).
>
> typically 4 or 8
> Ok. I will mention this.
> > +- samsung,timing: The timing values to be written into the
> > + Drv/sample clock selection register of corresponding channel.
>
> Please add a bit more detail here - there are 3 values - what do they mean?

> Ok
>

> You should add an example for your binding (something will illustrates
> the binding).

> Ok
>

> Also does the kernel use the same binding?
>
> The uboot binding is a subset of kernel binding.

> Regards,
> Simon
>
>
> > --
> > 1.8.0
> >
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>