From: 陈亮 <cl@rock-chips.com>
To: "Heiko Stübner" <heiko@sntech.de>, "Johan Jonker" <jbx6244@gmail.com>
Cc: cl@rock-chips.com, robh+dt@kernel.org,
jagan@amarulasolutions.com, wens@csie.org, uwe@kleine-koenig.org,
mail@david-bauer.net, linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
jensenhuang@friendlyarm.com, michael@amarulasolutions.com,
cnsztl@gmail.com, devicetree@vger.kernel.org,
ulf.hansson@linaro.org, linux-mmc@vger.kernel.org,
gregkh@linuxfoundation.org, linux-serial@vger.kernel.org,
linux-i2c@vger.kernel.org, jay.xu@rock-chips.com,
shawn.lin@rock-chips.com, david.wu@rock-chips.com,
zhangqing@rock-chips.com, huangtao@rock-chips.com,
wim@linux-watchdog.org, linux@roeck-us.net, jamie@jamieiles.com,
linux-watchdog@vger.kernel.org
Subject: Re: [PATCH v2 6/7] arm64: dts: rockchip: add core dtsi for RK3568 SoC
Date: Wed, 28 Apr 2021 11:51:55 +0800 [thread overview]
Message-ID: <12c486c7-f9ce-5ddc-c5db-97e4855f38d6@rock-chips.com> (raw)
In-Reply-To: <6618564.gtipl9YmvM@diego>
Hi heiko,
I plan to drop grf stuff in next version, and make a new submit
for grf and document later, thanks.
在 2021/4/27 下午4:07, Heiko Stübner 写道:
> Am Dienstag, 27. April 2021, 09:41:40 CEST schrieb Johan Jonker:
>> On 4/25/21 11:44 AM, cl@rock-chips.com wrote:
>>> From: Liang Chen <cl@rock-chips.com>
>>>
>>> RK3568 is a high-performance and low power quad-core application processor
>>> designed for personal mobile internet device and AIoT equipments. This patch
>>> add basic core dtsi file for it.
>>>
>>> We use scmi_clk for cortex-a55 instead of standard ARMCLK, so that
>>> kernel/uboot/rtos can change cpu clk with the same code in ATF, and we will
>>> enalbe a special high-performacne PLL when high frequency is required. The
>>> smci_clk code is in ATF, and clkid for cpu is 0, as below:
>>>
>>> cpu0: cpu@0 {
>>> device_type = "cpu";
>>> compatible = "arm,cortex-a55";
>>> reg = <0x0 0x0>;
>>> clocks = <&scmi_clk 0>;
>>> };
>>>
>>> Signed-off-by: Liang Chen <cl@rock-chips.com>
>>> ---
>>> .../boot/dts/rockchip/rk3568-pinctrl.dtsi | 3119 +++++++++++++++++
>>> arch/arm64/boot/dts/rockchip/rk3568.dtsi | 812 +++++
>>> 2 files changed, 3931 insertions(+)
>>> create mode 100644 arch/arm64/boot/dts/rockchip/rk3568-pinctrl.dtsi
>>> create mode 100644 arch/arm64/boot/dts/rockchip/rk3568.dtsi
>>>
>>> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-pinctrl.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-pinctrl.dtsi
>>> new file mode 100644
>>> index 000000000000..94ee3c2c38af
>>> --- /dev/null
>> [..]
>>
>>> diff --git a/arch/arm64/boot/dts/rockchip/rk3568.dtsi b/arch/arm64/boot/dts/rockchip/rk3568.dtsi
>>> new file mode 100644
>>> index 000000000000..66cb50218ca1
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/rockchip/rk3568.dtsi
>>> @@ -0,0 +1,812 @@
>> [..]
>>
>>> +
>>> + pmugrf: syscon@fdc20000 {
>>> + compatible = "rockchip,rk3568-pmugrf", "syscon", "simple-mfd";
>> TODO:
>>
>>> + reg = <0x0 0xfdc20000 0x0 0x10000>;
>>> +
>>> + reboot_mode: reboot-mode {
>>> + compatible = "syscon-reboot-mode";
>>> + mode-bootloader = <BOOT_BL_DOWNLOAD>;
>>> + mode-fastboot = <BOOT_FASTBOOT>;
>>> + mode-loader = <BOOT_BL_DOWNLOAD>;
>>> + mode-normal = <BOOT_NORMAL>;
>>> + mode-recovery = <BOOT_RECOVERY>;
>>> + offset = <0x200>;
>>> + };
>>> + };
>>> +
>>> + grf: syscon@fdc60000 {
>>> + compatible = "rockchip,rk3568-grf", "syscon", "simple-mfd";
>> TODO:
>>
>>> + reg = <0x0 0xfdc60000 0x0 0x10000>;
>>> + };
>>> +
>>> + pmucru: clock-controller@fdd00000 {
>>> + compatible = "rockchip,rk3568-pmucru";
>>> + reg = <0x0 0xfdd00000 0x0 0x1000>;
>>> + rockchip,grf = <&grf>;
>>> + rockchip,pmugrf = <&pmugrf>;
>> clock-controller@fdd00000: 'rockchip,grf', 'rockchip,pmugrf' do not
>> match any of the regexes: 'pinctrl-[0-9]+'
>>
>> Currently clk.c has only support for:
>>
>> ctx->grf = syscon_regmap_lookup_by_phandle(ctx->cru_node,
>> "rockchip,grf");
>>
>> Manufacturer tree:
>>
>> ctx->pmugrf = syscon_regmap_lookup_by_phandle(ctx->cru_node,
>> "rockchip,pmugrf");
>> case branch_muxpmugrf:
>> clk = rockchip_clk_register_muxgrf(list->name,
>> list->parent_names, list->num_parents,
>> flags, ctx->pmugrf, list->muxdiv_offset,
>> list->mux_shift, list->mux_width,
>> list->mux_flags);
>> break;
>>
>>
>> MUXPMUGRF(SCLK_32K_IOE, "clk_32k_ioe", clk_32k_ioe_p, 0,
>> RK3568_PMU_GRF_SOC_CON0, 0, 1, MFLAGS)
> (1) drop the rockchip,pmugrf property please
> (2) as I see it, we will only need the rockchip,grf property.
>
> For main clock controller grf points to main grf
> For pmu clock controller grf points to pmugrf
>
> Each clock controller has its own associated grf.
>
> I really see no case where main-clk would need to access the pmugrf
> same as pmu-clk would should not need to access the main grf, as the
> split into main-{clk,grf} + pmu-{clk,grf} is probably a for power-management
> reasons to separate different power-areas, the driver should also not
> cross this barrier anyway ;-) .
>
> Same as, if a clk uses the pmugrf it is a pmu-based clock, if it uses the
> main grf, it should live in the main clock driver.
>
> And as expected the clk_32k_ioe is already defined in the pmuclk
> part of the driver ;-)
>
>
> Heiko
>
>
>>> + #clock-cells = <1>;
>>> + #reset-cells = <1>;
>>> + };
>>> +
>>> + cru: clock-controller@fdd20000 {
>>> + compatible = "rockchip,rk3568-cru";
>>> + reg = <0x0 0xfdd20000 0x0 0x1000>;
>>> + rockchip,grf = <&grf>;
>> clock-controller@fdd20000: 'assigned-clock-parents',
>> 'assigned-clock-rates', 'assigned-clocks', 'rockchip,grf' do not match
>> any of the regexes:
>>
>> Add more properties to rockchip,rk3568-cru.yaml
>>
>>> + #clock-cells = <1>;
>>> + #reset-cells = <1>;
>>> +
>>> + assigned-clocks =
>>> + <&pmucru CLK_RTC_32K>, <&pmucru PLL_PPLL>,
>>> + <&pmucru PCLK_PMU>, <&cru PLL_CPLL>,
>>> + <&cru PLL_GPLL>, <&cru ACLK_BUS>,
>>> + <&cru PCLK_BUS>, <&cru ACLK_TOP_HIGH>,
>>> + <&cru ACLK_TOP_LOW>, <&cru HCLK_TOP>,
>>> + <&cru PCLK_TOP>, <&cru ACLK_PERIMID>,
>>> + <&cru HCLK_PERIMID>, <&cru PLL_NPLL>,
>>> + <&cru ACLK_PIPE>, <&cru PCLK_PIPE>,
>>> + <&cru ACLK_VOP>;
>>> + assigned-clock-rates =
>>> + <32768>, <200000000>,
>>> + <100000000>, <1000000000>,
>>> + <1188000000>, <150000000>,
>>> + <100000000>, <500000000>,
>>> + <400000000>, <150000000>,
>>> + <100000000>, <300000000>,
>>> + <150000000>, <1200000000>,
>>> + <400000000>, <100000000>,
>>> + <500000000>;
>>> + assigned-clock-parents =
>>> + <&pmucru CLK_RTC32K_FRAC>;
>>> + };
>
>
>
>
>
>
next prev parent reply other threads:[~2021-04-28 3:52 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-25 9:42 [PATCH v2 0/7] arm64: dts: rockchip: add basic dtsi/dts files for RK3568 SoC cl
2021-04-25 9:42 ` [PATCH v2 1/7] dt-bindings: i2c: i2c-rk3x: add description for rk3568 cl
2021-04-25 9:42 ` [PATCH v2 2/7] dt-bindings: serial: snps-dw-apb-uart: " cl
2021-04-25 9:42 ` [PATCH v2 3/7] dt-bindings: mmc: rockchip-dw-mshc: " cl
2021-04-25 9:42 ` [PATCH v2 4/7] dt-bindings: watchdog: dw-wdt: " cl
2021-04-25 9:44 ` [PATCH v2 5/7] arm64: dts: rockchip: add generic pinconfig settings used by most Rockchip socs cl
2021-04-25 9:44 ` [PATCH v2 6/7] arm64: dts: rockchip: add core dtsi for RK3568 SoC cl
2021-04-25 10:28 ` Marc Zyngier
2021-04-26 9:21 ` 陈亮
2021-04-26 12:16 ` Johan Jonker
2021-04-27 3:45 ` Kever Yang
2021-04-27 7:48 ` Heiko Stübner
2021-04-27 7:41 ` Johan Jonker
2021-04-27 8:07 ` Heiko Stübner
2021-04-28 3:51 ` 陈亮 [this message]
2021-04-25 9:44 ` [PATCH v2 7/7] arm64: dts: rockchip: add basic dts for RK3568 EVB cl
2021-04-27 7:50 ` Heiko Stübner
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=12c486c7-f9ce-5ddc-c5db-97e4855f38d6@rock-chips.com \
--to=cl@rock-chips.com \
--cc=cnsztl@gmail.com \
--cc=david.wu@rock-chips.com \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=heiko@sntech.de \
--cc=huangtao@rock-chips.com \
--cc=jagan@amarulasolutions.com \
--cc=jamie@jamieiles.com \
--cc=jay.xu@rock-chips.com \
--cc=jbx6244@gmail.com \
--cc=jensenhuang@friendlyarm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-serial@vger.kernel.org \
--cc=linux-watchdog@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=mail@david-bauer.net \
--cc=michael@amarulasolutions.com \
--cc=robh+dt@kernel.org \
--cc=shawn.lin@rock-chips.com \
--cc=ulf.hansson@linaro.org \
--cc=uwe@kleine-koenig.org \
--cc=wens@csie.org \
--cc=wim@linux-watchdog.org \
--cc=zhangqing@rock-chips.com \
/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).