From: javier@osg.samsung.com (Javier Martinez Canillas)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 5/7] arm64: dts: exynos: Add dts files for Samsung Exynos5433 64bit SoC
Date: Wed, 7 Sep 2016 09:55:09 +0200 [thread overview]
Message-ID: <38902a3f-6f9d-3a74-f082-dc44afdf928e@osg.samsung.com> (raw)
In-Reply-To: <57C95B88.80909@samsung.com>
Hello Chanwoo,
On 09/02/2016 12:59 PM, Chanwoo Choi wrote:
> Hi Javier,
>
> On 2016? 08? 27? 02:49, Javier Martinez Canillas wrote:
>> Hello Chanwoo,
>>
[snip]
>>
>>> + mipi_phy: video-phy at 105C0708 {
>>> + compatible = "samsung,exynos5433-mipi-video-phy";
>>> + #phy-cells = <1>;
>>> + samsung,pmu-syscon = <&pmu_system_controller>;
>>> + samsung,cam0-sysreg = <&syscon_cam0>;
>>> + samsung,cam1-sysreg = <&syscon_cam1>;
>>> + samsung,disp-sysreg = <&syscon_disp>;
>>> + };
>>
>> This node has a unit name but it doesn't have a reg property so dtc will
>> warn about the mismatch when executed with W=1.
>
> The mipi_phy address are included in the PMU (base 0x105c_0000).
> There is no memory map for only MIPI_PHY. Instead, the mipi_phy driver[1]
> uses the regmap (pmu, syscon_cam0/1/disp).
> [1] drivers/phy/phy-exynos-mipi-video.c don't use
>
> Also, the first MIPI_PHY's address is 0x105c0710. I'll fix it.
>
> If you want to add the 'reg' property, I can add DT node as following:
>
> mipi_phy: video-phy at 105c0710 {
> reg = <0x105c0710 0x0>;
> compatible = "samsung,exynos5433-mipi-video-phy";
> ...
> };
>
> But it looks strange because the mipi_phy driver[1] never gets
> the base address with of_iomap().
>
The DT should describe the actual HW regardless of the driver implementation.
I'm not sure what's the correct way to handle this (i.e: adding an unused reg
property or not having a unit name) but the mismatch should be fixed to avoid
dtc to complain about it.
>>
>> [snip]
>>
>>> + usbdrd30: usb at 15400000 {
>>> + compatible = "samsung,exynos5250-dwusb3";
>>> + clocks = <&cmu_fsys CLK_ACLK_USBDRD30>,
>>> + <&cmu_fsys CLK_SCLK_USBDRD30>;
>>> + clock-names = "usbdrd30", "usbdrd30_susp_clk";
>>> + assigned-clocks =
>>> + <&cmu_fsys CLK_MOUT_SCLK_USBDRD30_USER>,
>>> + <&cmu_top CLK_MOUT_SCLK_USBDRD30>,
>>> + <&cmu_top CLK_DIV_SCLK_USBDRD30>;
>>> + assigned-clock-parents =
>>> + <&cmu_top CLK_SCLK_USBDRD30_FSYS>,
>>> + <&cmu_top CLK_MOUT_BUS_PLL_USER>;
>>> + assigned-clock-rates = <0>, <0>, <66700000>;
>>> + #address-cells = <1>;
>>> + #size-cells = <1>;
>>> + ranges;
>>> + status = "disabled";
>>> +
>>
>> Ditto, the node has unit address but no reg property.
>
> The usbdrd[2] driver don't map the base address.
> So, this DT node don't include any code calling the of_iomap().
> [2] drivers/usb/dwc3/dwc3-exynos.c
>
Same comment than above.
> But, the usbdrd's base address is 0x15400000.
>
>>
>>> + dwc3 {
>>> + compatible = "snps,dwc3";
>>> + reg = <0x15400000 0x10000>;
>>
>> Ditto, the node doesn't have a unit address but has reg property.
>
> OK. I'll modify it as following:
> dwc3 at 15400000 {
>
Ok.
>>
>>> + interrupts = <0 231 0>;
>>> + phys = <&usbdrd30_phy 0>, <&usbdrd30_phy 1>;
>>> + phy-names = "usb2-phy", "usb3-phy";
>>> + };
>>> + };
>>> +
>>> +
>>> + usbhost30: usb at 15a00000 {
>>> + compatible = "samsung,exynos5250-dwusb3";
>>> + clocks = <&cmu_fsys CLK_ACLK_USBHOST30>,
>>> + <&cmu_fsys CLK_SCLK_USBHOST30>;
>>> + clock-names = "usbdrd30", "usbdrd30_susp_clk";
>>> + assigned-clocks =
>>> + <&cmu_fsys CLK_MOUT_SCLK_USBHOST30_USER>,
>>> + <&cmu_top CLK_MOUT_SCLK_USBHOST30>,
>>> + <&cmu_top CLK_DIV_SCLK_USBHOST30>;
>>> + assigned-clock-parents =
>>> + <&cmu_top CLK_SCLK_USBHOST30_FSYS>,
>>> + <&cmu_top CLK_MOUT_BUS_PLL_USER>;
>>> + assigned-clock-rates = <0>, <0>, <66700000>;
>>> + #address-cells = <1>;
>>> + #size-cells = <1>;
>>> + ranges;
>>> + status = "disabled";
>>> +
>>
>> Ditto, the node has unit address but no reg property.
>
> This case is same with above 'usbdrd30'.
>
Same comment than above. The DT shouldn't leak Linux implementation details.
>>
>>> + usbdrd_dwc3_0: dwc3 {
>>> + compatible = "snps,dwc3";
>>> + reg = <0x15a00000 0x10000>;
>>
>> Ditto, the node doesn't have a unit address but has reg property.
>
> I'll modify it as following:
> usbdrd_dwc3_0: dwc3 at 15a00000 {
>
>>
>>> + interrupts = <0 244 0>;
>>> + phys = <&usbhost30_phy 0>, <&usbhost30_phy 1>;
>>> + phy-names = "usb2-phy", "usb3-phy";
>>> + };
>>> + };
>>> +
>>
>> [snip]
>>
>>> + audio-subsystem {
>
> I'll modify it as following:
> audio-subsystem at 11400000 {
>
Ok.
>>> + compatible = "samsung,exynos5433-lpass";
>>> + reg = <0x11400000 0x100>, <0x11500000 0x08>;
>>
>> Ditto, the node doesn't have a unit address but has reg property.
>>
>> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
>
> Thanks for your review.
>
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
next prev parent reply other threads:[~2016-09-07 7:55 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-24 13:49 [PATCH v2 0/7] arm64: dts: Add the dts file for Exynos5433 and TM/TM2E board Chanwoo Choi
2016-08-24 13:49 ` [PATCH v2 1/7] clocksource: exynos_mct: Add the support for ARM64 Chanwoo Choi
2016-08-26 16:02 ` Krzysztof Kozlowski
2016-09-08 11:04 ` Daniel Lezcano
[not found] ` <CGME20160916111052eucas1p1fb19531ab7b3e53f6fdeb4fa0e8a5449@eucas1p1.samsung.com>
2016-09-16 11:10 ` Krzysztof Kozlowski
2016-08-24 13:49 ` [PATCH v2 2/7] Documentation: bindings: Add Exynos5433 PMU compatible Chanwoo Choi
2016-08-24 13:49 ` [PATCH v2 3/7] pinctrl: samsung: Add the support the multiple IORESOURCE_MEM for one pin-bank Chanwoo Choi
2016-08-25 14:30 ` Tomasz Figa
2016-08-25 14:41 ` Tomasz Figa
2016-09-05 8:08 ` Chanwoo Choi
2016-09-20 1:03 ` Tomasz Figa
2016-08-24 13:49 ` [PATCH v2 4/7] pinctrl: samsung: Add GPF support for Exynos5433 Chanwoo Choi
2016-08-25 14:34 ` Tomasz Figa
2016-08-24 13:49 ` [PATCH v2 5/7] arm64: dts: exynos: Add dts files for Samsung Exynos5433 64bit SoC Chanwoo Choi
2016-08-26 16:14 ` Krzysztof Kozlowski
2016-09-02 9:54 ` Chanwoo Choi
2016-08-26 17:49 ` Javier Martinez Canillas
2016-09-02 10:59 ` Chanwoo Choi
2016-09-07 7:55 ` Javier Martinez Canillas [this message]
2016-10-04 13:37 ` Geert Uytterhoeven
2016-10-04 13:46 ` Krzysztof Kozlowski
2016-08-24 13:49 ` [PATCH v2 6/7] arm64: dts: exynos: Add dts file for Exynos5433-based TM2 board Chanwoo Choi
2016-08-25 9:28 ` kbuild test robot
2016-08-26 16:32 ` Krzysztof Kozlowski
2016-08-26 17:11 ` Krzysztof Kozlowski
2016-08-26 20:46 ` Chanwoo Choi
2016-08-26 18:30 ` Javier Martinez Canillas
2016-08-26 18:35 ` Javier Martinez Canillas
2016-09-02 11:29 ` Chanwoo Choi
2016-09-07 8:08 ` Javier Martinez Canillas
2016-08-30 17:11 ` Rob Herring
2016-08-31 1:24 ` Chanwoo Choi
2016-08-24 13:49 ` [PATCH v2 7/7] arm64: dts: exynos: Add dts file for Exynos5433-based TM2E board Chanwoo Choi
2016-08-26 18:32 ` Javier Martinez Canillas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=38902a3f-6f9d-3a74-f082-dc44afdf928e@osg.samsung.com \
--to=javier@osg.samsung.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).