Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1699882 > unrolled thread
| Started by | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| First post | 2017-07-31 12:10 +0200 |
| Last post | 2017-07-31 12:30 +0200 |
| Articles | 20 on this page of 21 — 4 participants |
Back to article view | Back to linux.kernel
[PATCH 00/14] Support more devices on rockchip rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:10 +0200
[PATCH 05/14] i2c: rk3x: add support for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
Re: [PATCH 05/14] i2c: rk3x: add support for rv1108 Heiko Stübner <heiko@sntech.de> - 2017-07-31 13:30 +0200
[PATCH 09/14] ARM: dts: rockchip: add pwm dt node for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
Re: [PATCH 09/14] ARM: dts: rockchip: add pwm dt node for rv1108 Heiko Stübner <heiko@sntech.de> - 2017-07-31 13:30 +0200
[PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
Re: [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 Heiko Stuebner <heiko@sntech.de> - 2017-08-01 17:20 +0200
Re: [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 Heiko Stuebner <heiko@sntech.de> - 2017-08-01 21:00 +0200
Re: [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-08-02 02:40 +0200
[PATCH 07/14] spi: rockchip: add compatible string for rv1108 spi Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
[PATCH 06/14] ARM: dts: rockchip: add i2c dt node for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
[PATCH 11/14] ARM: dts: rockchip: add saradc support for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
Re: [PATCH 11/14] ARM: dts: rockchip: add saradc support for rv1108 Heiko Stuebner <heiko@sntech.de> - 2017-08-01 01:20 +0200
[PATCH 08/14] ARM: dts: rockchip: add spi dt node for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
[PATCH 03/14] pinctrl: rockchip: add input schmitt support for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
Re: [PATCH 03/14] pinctrl: rockchip: add input schmitt support for rv1108 Heiko Stübner <heiko@sntech.de> - 2017-07-31 13:30 +0200
Re: [PATCH 03/14] pinctrl: rockchip: add input schmitt support for rv1108 Linus Walleij <linus.walleij@linaro.org> - 2017-08-07 10:50 +0200
[PATCH 04/14] dt-bindings: i2c: rk3x: add support for rv1108 Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:20 +0200
[PATCH 14/14] ARM: dts: rockchip: add accelerometer bma250e dt node for rv1108 evb Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:30 +0200
[PATCH 13/14] ARM: dts: rockchip: add pmic rk805 dt node for rv1108 evb Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:30 +0200
[PATCH 12/14] ARM: dts: rockchip: add pwm backlight for rv1108 evb Andy Yan <andy.yan@rock-chips.com> - 2017-07-31 12:30 +0200
Page 1 of 2 [1] 2 Next page →
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:10 +0200 |
| Subject | [PATCH 00/14] Support more devices on rockchip rv1108 |
| Message-ID | <u9fOa-4XH-17@gated-at.bofh.it> |
This series try to support i2c/spi/pwm/saradc/pmic/watchdog and the full clk tree on rockchip rv1108 soc. Andy Yan (12): pinctrl: rockchip: add input schmitt support for rv1108 dt-bindings: i2c: rk3x: add support for rv1108 i2c: rk3x: add support for rv1108 ARM: dts: rockchip: add i2c dt node for rv1108 spi: rockchip: add compatible string for rv1108 spi ARM: dts: rockchip: add spi dt node for rv1108 ARM: dts: rockchip: add pwm dt node for rv1108 ARM: dts: rockchip: add watchdog dt node for rv1108 ARM: dts: rockchip: add saradc support for rv1108 ARM: dts: rockchip: add pwm backlight for rv1108 evb ARM: dts: rockchip: add pmic rk805 dt node for rv1108 evb ARM: dts: rockchip: add accelerometer bma250e dt node for rv1108 evb Elaine Zhang (2): clk: rockchip: add more clk ids for rv1108 clk: rockchip: support more clks for rv1108 Documentation/devicetree/bindings/i2c/i2c-rk3x.txt | 1 + .../devicetree/bindings/spi/spi-rockchip.txt | 1 + arch/arm/boot/dts/rv1108-evb.dts | 158 +++++++ arch/arm/boot/dts/rv1108.dtsi | 249 ++++++++++ drivers/clk/rockchip/clk-rv1108.c | 513 ++++++++++++++++----- drivers/i2c/busses/i2c-rk3x.c | 9 + drivers/pinctrl/pinctrl-rockchip.c | 31 ++ drivers/spi/spi-rockchip.c | 1 + include/dt-bindings/clock/rv1108-cru.h | 128 ++++- 9 files changed, 964 insertions(+), 127 deletions(-) -- 2.7.4
[toc] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 05/14] i2c: rk3x: add support for rv1108 |
| Message-ID | <u9fXQ-513-9@gated-at.bofh.it> |
| In reply to | #1699882 |
Support for the i2c controller on rv1108
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
drivers/i2c/busses/i2c-rk3x.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/i2c/busses/i2c-rk3x.c b/drivers/i2c/busses/i2c-rk3x.c
index df22066..fe23457 100644
--- a/drivers/i2c/busses/i2c-rk3x.c
+++ b/drivers/i2c/busses/i2c-rk3x.c
@@ -1131,6 +1131,11 @@ static const struct i2c_algorithm rk3x_i2c_algorithm = {
.functionality = rk3x_i2c_func,
};
+static const struct rk3x_i2c_soc_data rv1108_soc_data = {
+ .grf_offset = -1,
+ .calc_timings = rk3x_i2c_v1_calc_timings,
+};
+
static const struct rk3x_i2c_soc_data rk3066_soc_data = {
.grf_offset = 0x154,
.calc_timings = rk3x_i2c_v0_calc_timings,
@@ -1158,6 +1163,10 @@ static const struct rk3x_i2c_soc_data rk3399_soc_data = {
static const struct of_device_id rk3x_i2c_match[] = {
{
+ .compatible = "rockchip,rv1108-i2c",
+ .data = (void *)&rv1108_soc_data
+ },
+ {
.compatible = "rockchip,rk3066-i2c",
.data = (void *)&rk3066_soc_data
},
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Heiko Stübner <heiko@sntech.de> |
|---|---|
| Date | 2017-07-31 13:30 +0200 |
| Subject | Re: [PATCH 05/14] i2c: rk3x: add support for rv1108 |
| Message-ID | <u9h3A-5Dx-25@gated-at.bofh.it> |
| In reply to | #1699890 |
Am Montag, 31. Juli 2017, 18:12:43 CEST schrieb Andy Yan: > Support for the i2c controller on rv1108 > > Signed-off-by: Andy Yan <andy.yan@rock-chips.com> Reviewed-by: Heiko Stuebner <heiko@sntech.de>
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 09/14] ARM: dts: rockchip: add pwm dt node for rv1108 |
| Message-ID | <u9fXQ-513-13@gated-at.bofh.it> |
| In reply to | #1699882 |
Add pwm device tree node for rv1108
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108.dtsi | 143 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 143 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
index 6ae83a8..7fcc6de 100644
--- a/arch/arm/boot/dts/rv1108.dtsi
+++ b/arch/arm/boot/dts/rv1108.dtsi
@@ -213,6 +213,54 @@
status = "disabled";
};
+ pwm4: pwm@10280000 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x10280000 0x10>;
+ interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm4_pin>;
+ clocks = <&cru SCLK_PWM1>, <&cru PCLK_PWM1>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
+ pwm5: pwm@10280010 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x10280010 0x10>;
+ interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm5_pin>;
+ clocks = <&cru SCLK_PWM1>, <&cru PCLK_PWM1>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
+ pwm6: pwm@10280020 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x10280020 0x10>;
+ interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm6_pin>;
+ clocks = <&cru SCLK_PWM1>, <&cru PCLK_PWM1>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
+ pwm7: pwm@10280030 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x10280030 0x10>;
+ interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm7_pin>;
+ clocks = <&cru SCLK_PWM1>, <&cru PCLK_PWM1>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
grf: syscon@10300000 {
compatible = "rockchip,rv1108-grf", "syscon";
reg = <0x10300000 0x1000>;
@@ -232,6 +280,53 @@
status = "disabled";
};
+ pwm0: pwm@20040000 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x20040000 0x10>;
+ interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm0_pin>;
+ clocks = <&cru SCLK_PWM0_PMU>, <&cru PCLK_PWM0_PMU>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
+ pwm1: pwm@20040010 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x20040010 0x10>;
+ interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm1_pin>;
+ clocks = <&cru SCLK_PWM0_PMU>, <&cru PCLK_PWM0_PMU>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
+ pwm2: pwm@20040020 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x20040020 0x10>;
+ interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm2_pin>;
+ clocks = <&cru SCLK_PWM0_PMU>, <&cru PCLK_PWM0_PMU>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
+
+ pwm3: pwm@20040030 {
+ compatible = "rockchip,rk3288-pwm";
+ reg = <0x20040030 0x10>;
+ interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm3_pin>;
+ clocks = <&cru SCLK_PWM0_PMU>, <&cru PCLK_PWM0_PMU>;
+ clock-names = "pwm", "pclk";
+ status = "disabled";
+ };
pmugrf: syscon@20060000 {
compatible = "rockchip,rv1108-pmugrf", "syscon";
reg = <0x20060000 0x1000>;
@@ -453,6 +548,54 @@
};
};
+ pwm0 {
+ pwm0_pin: pwm0-pin {
+ rockchip,pins = <0 RK_PC5 RK_FUNC_1 &pcfg_pull_none>;
+ };
+ };
+
+ pwm1 {
+ pwm1_pin: pwm1-pin {
+ rockchip,pins = <0 RK_PC4 RK_FUNC_1 &pcfg_pull_none>;
+ };
+ };
+
+ pwm2 {
+ pwm2_pin: pwm2-pin {
+ rockchip,pins = <0 RK_PC6 RK_FUNC_1 &pcfg_pull_none>;
+ };
+ };
+
+ pwm3 {
+ pwm3_pin: pwm3-pin {
+ rockchip,pins = <0 RK_PC0 RK_FUNC_1 &pcfg_pull_none>;
+ };
+ };
+
+ pwm4 {
+ pwm4_pin: pwm4-pin {
+ rockchip,pins = <1 RK_PC1 RK_FUNC_3 &pcfg_pull_none>;
+ };
+ };
+
+ pwm5 {
+ pwm5_pin: pwm5-pin {
+ rockchip,pins = <1 RK_PA7 RK_FUNC_2 &pcfg_pull_none>;
+ };
+ };
+
+ pwm6 {
+ pwm6_pin: pwm6-pin {
+ rockchip,pins = <1 RK_PB0 RK_FUNC_2 &pcfg_pull_none>;
+ };
+ };
+
+ pwm7 {
+ pwm7_pin: pwm7-pin {
+ rockchip,pins = <1 RK_PB1 RK_FUNC_2 &pcfg_pull_none>;
+ };
+ };
+
sdmmc {
sdmmc_clk: sdmmc-clk {
rockchip,pins = <3 RK_PC4 RK_FUNC_1 &pcfg_pull_none_drv_4ma>;
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Heiko Stübner <heiko@sntech.de> |
|---|---|
| Date | 2017-07-31 13:30 +0200 |
| Subject | Re: [PATCH 09/14] ARM: dts: rockchip: add pwm dt node for rv1108 |
| Message-ID | <u9h3A-5Dx-21@gated-at.bofh.it> |
| In reply to | #1699891 |
Hi Andy,
Am Montag, 31. Juli 2017, 18:17:45 CEST schrieb Andy Yan:
> Add pwm device tree node for rv1108
>
> Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
> ---
>
> arch/arm/boot/dts/rv1108.dtsi | 143
> ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 143
> insertions(+)
>
> diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
> index 6ae83a8..7fcc6de 100644
> --- a/arch/arm/boot/dts/rv1108.dtsi
> +++ b/arch/arm/boot/dts/rv1108.dtsi
> @@ -213,6 +213,54 @@
> status = "disabled";
> };
>
> + pwm4: pwm@10280000 {
> + compatible = "rockchip,rk3288-pwm";
please make that a
compatible = "rockchip,rv1108-pwm", "rockchip,rk3288-pwm";
and update the binding accordingly.
Thanks
Heiko
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 |
| Message-ID | <u9fXQ-513-15@gated-at.bofh.it> |
| In reply to | #1699882 |
Add watchdog device tree node for rv1108
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108.dtsi | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
index 7fcc6de..1fc467e 100644
--- a/arch/arm/boot/dts/rv1108.dtsi
+++ b/arch/arm/boot/dts/rv1108.dtsi
@@ -266,6 +266,15 @@
reg = <0x10300000 0x1000>;
};
+ watchdog: wdt@10360000 {
+ compatible = "snps,dw-wdt";
+ reg = <0x10360000 0x100>;
+ clocks = <&cru PCLK_WDT>;
+ clock-names = "pclk_wdt";
+ interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
i2c0: i2c@20000000 {
compatible = "rockchip,rv1108-i2c";
reg = <0x20000000 0x1000>;
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Heiko Stuebner <heiko@sntech.de> |
|---|---|
| Date | 2017-08-01 17:20 +0200 |
| Subject | Re: [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 |
| Message-ID | <u9H7H-5CS-3@gated-at.bofh.it> |
| In reply to | #1699892 |
Hi Andy, Am Montag, 31. Juli 2017, 18:18:30 CEST schrieb Andy Yan: > Add watchdog device tree node for rv1108 > > Signed-off-by: Andy Yan <andy.yan@rock-chips.com> I've adapted this patch to apply against the current rv1108.dtsi and applied it for 4.14. So resends of your series should take this change into account please :-) . See https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip.git/log/?h=v4.14-armsoc/dts32 for reference Heiko
[toc] | [prev] | [next] | [standalone]
| From | Heiko Stuebner <heiko@sntech.de> |
|---|---|
| Date | 2017-08-01 21:00 +0200 |
| Subject | Re: [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 |
| Message-ID | <u9KyC-7DW-25@gated-at.bofh.it> |
| In reply to | #1701143 |
Hi Andy, Am Dienstag, 1. August 2017, 17:16:40 CEST schrieb Heiko Stuebner: > Am Montag, 31. Juli 2017, 18:18:30 CEST schrieb Andy Yan: > > Add watchdog device tree node for rv1108 > > > > Signed-off-by: Andy Yan <andy.yan@rock-chips.com> > > I've adapted this patch to apply against the current rv1108.dtsi > and applied it for 4.14. So resends of your series should take this > change into account please :-) . as the kbuild robot noticed that it doesn't build and I somehow missed that (heat and all), I've dropped the patch again. So we'll need to wait for your v2 of the series. Heiko
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-08-02 02:40 +0200 |
| Subject | Re: [PATCH 10/14] ARM: dts: rockchip: add watchdog dt node for rv1108 |
| Message-ID | <u9PRD-2Dc-7@gated-at.bofh.it> |
| In reply to | #1701345 |
Hi Heiko:
On 2017年08月02日 02:55, Heiko Stuebner wrote:
> Hi Andy,
>
> Am Dienstag, 1. August 2017, 17:16:40 CEST schrieb Heiko Stuebner:
>> Am Montag, 31. Juli 2017, 18:18:30 CEST schrieb Andy Yan:
>>> Add watchdog device tree node for rv1108
>>>
>>> Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
>> I've adapted this patch to apply against the current rv1108.dtsi
>> and applied it for 4.14. So resends of your series should take this
>> change into account please :-) .
> as the kbuild robot noticed that it doesn't build and I somehow missed
> that (heat and all), I've dropped the patch again.
>
> So we'll need to wait for your v2 of the series.
All the dts series depend on the clk id parts. I will send the V2
today.
>
> Heiko
>
>
>
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 07/14] spi: rockchip: add compatible string for rv1108 spi |
| Message-ID | <u9fXQ-513-11@gated-at.bofh.it> |
| In reply to | #1699882 |
The spi on rv1108 is the same as other rockchip based
socs, add compatible string for it.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
Documentation/devicetree/bindings/spi/spi-rockchip.txt | 1 +
drivers/spi/spi-rockchip.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/spi/spi-rockchip.txt b/Documentation/devicetree/bindings/spi/spi-rockchip.txt
index 83da493..6e3ffac 100644
--- a/Documentation/devicetree/bindings/spi/spi-rockchip.txt
+++ b/Documentation/devicetree/bindings/spi/spi-rockchip.txt
@@ -6,6 +6,7 @@ and display controllers using the SPI communication interface.
Required Properties:
- compatible: should be one of the following.
+ "rockchip,rv1108-spi" for rv1108 SoCs.
"rockchip,rk3036-spi" for rk3036 SoCS.
"rockchip,rk3066-spi" for rk3066 SoCs.
"rockchip,rk3188-spi" for rk3188 SoCs.
diff --git a/drivers/spi/spi-rockchip.c b/drivers/spi/spi-rockchip.c
index 0b4a52b..6235b14 100644
--- a/drivers/spi/spi-rockchip.c
+++ b/drivers/spi/spi-rockchip.c
@@ -919,6 +919,7 @@ static const struct dev_pm_ops rockchip_spi_pm = {
};
static const struct of_device_id rockchip_spi_dt_match[] = {
+ { .compatible = "rockchip,rv1108-spi", }
{ .compatible = "rockchip,rk3036-spi", },
{ .compatible = "rockchip,rk3066-spi", },
{ .compatible = "rockchip,rk3188-spi", },
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 06/14] ARM: dts: rockchip: add i2c dt node for rv1108 |
| Message-ID | <u9fXR-513-21@gated-at.bofh.it> |
| In reply to | #1699882 |
There are four i2c controllers on rv1108, add
device tree node for them.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108.dtsi | 72 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 72 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
index 0da144c..a4d34d9 100644
--- a/arch/arm/boot/dts/rv1108.dtsi
+++ b/arch/arm/boot/dts/rv1108.dtsi
@@ -52,6 +52,10 @@
interrupt-parent = <&gic>;
aliases {
+ i2c0 = &i2c0;
+ i2c1 = &i2c1;
+ i2c2 = &i2c2;
+ i2c3 = &i2c3;
serial0 = &uart0;
serial1 = &uart1;
serial2 = &uart2;
@@ -154,11 +158,67 @@
status = "disabled";
};
+ i2c1: i2c@10240000 {
+ compatible = "rockchip,rv1108-i2c";
+ reg = <0x10240000 0x1000>;
+ interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
+ rockchip,grf = <&grf>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&cru SCLK_I2C1>, <&cru PCLK_I2C1>;
+ clock-names = "i2c", "pclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_xfer>;
+ status = "disabled";
+ };
+
+ i2c2: i2c@10250000 {
+ compatible = "rockchip,rv1108-i2c";
+ reg = <0x10250000 0x1000>;
+ interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
+ rockchip,grf = <&grf>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&cru SCLK_I2C2>, <&cru PCLK_I2C2>;
+ clock-names = "i2c", "pclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c2m1_xfer>;
+ status = "disabled";
+ };
+
+ i2c3: i2c@10260000 {
+ compatible = "rockchip,rv1108-i2c";
+ reg = <0x10260000 0x1000>;
+ interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
+ rockchip,grf = <&grf>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&cru SCLK_I2C3>, <&cru PCLK_I2C3>;
+ clock-names = "i2c", "pclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c3_xfer>;
+ status = "disabled";
+ };
+
grf: syscon@10300000 {
compatible = "rockchip,rv1108-grf", "syscon";
reg = <0x10300000 0x1000>;
};
+ i2c0: i2c@20000000 {
+ compatible = "rockchip,rv1108-i2c";
+ reg = <0x20000000 0x1000>;
+ interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
+ rockchip,grf = <&grf>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&cru SCLK_I2C0_PMU>, <&cru PCLK_I2C0_PMU>;
+ clock-names = "i2c", "pclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_xfer>;
+ status = "disabled";
+ };
+
pmugrf: syscon@20060000 {
compatible = "rockchip,rv1108-pmugrf", "syscon";
reg = <0x20060000 0x1000>;
@@ -330,6 +390,18 @@
input-enable;
};
+ pcfg_pull_none_smt: pcfg-pull-none-smt {
+ bias-disable;
+ input-schmitt-enable;
+ };
+
+ i2c0 {
+ i2c0_xfer: i2c0-xfer {
+ rockchip,pins = <0 RK_PB1 RK_FUNC_1 &pcfg_pull_none_smt>,
+ <0 RK_PB2 RK_FUNC_1 &pcfg_pull_none_smt>;
+ };
+ };
+
i2c1 {
i2c1_xfer: i2c1-xfer {
rockchip,pins = <2 RK_PD3 RK_FUNC_1 &pcfg_pull_up>,
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 11/14] ARM: dts: rockchip: add saradc support for rv1108 |
| Message-ID | <u9fXR-513-27@gated-at.bofh.it> |
| In reply to | #1699882 |
Add saradc device tree node for rv1108
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108.dtsi | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
index 1fc467e..958fecd 100644
--- a/arch/arm/boot/dts/rv1108.dtsi
+++ b/arch/arm/boot/dts/rv1108.dtsi
@@ -275,6 +275,18 @@
status = "disabled";
};
+ adc: adc@1038c000 {
+ compatible = "rockchip,rk3399-saradc";
+ reg = <0x1038c000 0x100>;
+ interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
+ #io-channel-cells = <1>;
+ io-channel-ranges;
+ clock-frequency = <1000000>;
+ clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
+ clock-names = "saradc", "apb_pclk";
+ status = "disabled";
+ };
+
i2c0: i2c@20000000 {
compatible = "rockchip,rv1108-i2c";
reg = <0x20000000 0x1000>;
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Heiko Stuebner <heiko@sntech.de> |
|---|---|
| Date | 2017-08-01 01:20 +0200 |
| Subject | Re: [PATCH 11/14] ARM: dts: rockchip: add saradc support for rv1108 |
| Message-ID | <u9s8F-428-1@gated-at.bofh.it> |
| In reply to | #1699896 |
Hi Andy,
Am Montag, 31. Juli 2017, 18:19:19 CEST schrieb Andy Yan:
> Add saradc device tree node for rv1108
>
> Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
> ---
>
> arch/arm/boot/dts/rv1108.dtsi | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
> index 1fc467e..958fecd 100644
> --- a/arch/arm/boot/dts/rv1108.dtsi
> +++ b/arch/arm/boot/dts/rv1108.dtsi
> @@ -275,6 +275,18 @@
> status = "disabled";
> };
>
> + adc: adc@1038c000 {
> + compatible = "rockchip,rk3399-saradc";
you should amend the binding txt to make this something like
compatible = "rockchip,rv1108-saradc", "rockchip,rk3399-saradc"
See for example the bindings/mmc/rockchip-dw-mshc.txt as inspiration.
Heiko
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 08/14] ARM: dts: rockchip: add spi dt node for rv1108 |
| Message-ID | <u9fXR-513-35@gated-at.bofh.it> |
| In reply to | #1699882 |
Add SPI device tree node for rv1108
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108.dtsi | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
index a4d34d9..6ae83a8 100644
--- a/arch/arm/boot/dts/rv1108.dtsi
+++ b/arch/arm/boot/dts/rv1108.dtsi
@@ -200,6 +200,19 @@
status = "disabled";
};
+ spi: spi@10270000 {
+ compatible = "rockchip,rv1108-spi";
+ reg = <0x10270000 0x1000>;
+ interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&cru SCLK_SPI>, <&cru PCLK_SPI>;
+ clock-names = "spiclk", "apb_pclk";
+ dmas = <&pdma 8>, <&pdma 9>;
+ #dma-cells = <2>;
+ status = "disabled";
+ };
+
grf: syscon@10300000 {
compatible = "rockchip,rv1108-grf", "syscon";
reg = <0x10300000 0x1000>;
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 03/14] pinctrl: rockchip: add input schmitt support for rv1108 |
| Message-ID | <u9fXR-513-33@gated-at.bofh.it> |
| In reply to | #1699882 |
Some pins like i2c SCL/SDA need the schmitt input function
to avoid crosstalk problems.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
drivers/pinctrl/pinctrl-rockchip.c | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/drivers/pinctrl/pinctrl-rockchip.c b/drivers/pinctrl/pinctrl-rockchip.c
index e831647..868cb9c 100644
--- a/drivers/pinctrl/pinctrl-rockchip.c
+++ b/drivers/pinctrl/pinctrl-rockchip.c
@@ -1084,6 +1084,36 @@ static void rv1108_calc_drv_reg_and_bit(struct rockchip_pin_bank *bank,
*bit *= RV1108_DRV_BITS_PER_PIN;
}
+#define RV1108_SCHMITT_PMU_OFFSET 0x30
+#define RV1108_SCHMITT_GRF_OFFSET 0x388
+#define RV1108_SCHMITT_BANK_STRIDE 8
+#define RV1108_SCHMITT_PINS_PER_GRF_REG 16
+#define RV1108_SCHMITT_PINS_PER_PMU_REG 8
+
+static int rv1108_calc_schmitt_reg_and_bit(struct rockchip_pin_bank *bank,
+ int pin_num,
+ struct regmap **regmap,
+ int *reg, u8 *bit)
+{
+ struct rockchip_pinctrl *info = bank->drvdata;
+ int pins_per_reg;
+
+ if (bank->bank_num == 0) {
+ *regmap = info->regmap_pmu;
+ *reg = RV1108_SCHMITT_PMU_OFFSET;
+ pins_per_reg = RV1108_SCHMITT_PINS_PER_PMU_REG;
+ } else {
+ *regmap = info->regmap_base;
+ *reg = RV1108_SCHMITT_GRF_OFFSET;
+ pins_per_reg = RV1108_SCHMITT_PINS_PER_GRF_REG;
+ *reg += (bank->bank_num - 1) * RV1108_SCHMITT_BANK_STRIDE;
+ }
+ *reg += ((pin_num / pins_per_reg) * 4);
+ *bit = pin_num % pins_per_reg;
+
+ return 0;
+}
+
#define RK2928_PULL_OFFSET 0x118
#define RK2928_PULL_PINS_PER_REG 16
#define RK2928_PULL_BANK_STRIDE 8
@@ -3017,6 +3047,7 @@ static struct rockchip_pin_ctrl rv1108_pin_ctrl = {
.pmu_mux_offset = 0x0,
.pull_calc_reg = rv1108_calc_pull_reg_and_bit,
.drv_calc_reg = rv1108_calc_drv_reg_and_bit,
+ .schmitt_calc_reg = rv1108_calc_schmitt_reg_and_bit,
};
static struct rockchip_pin_bank rk2928_pin_banks[] = {
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Heiko Stübner <heiko@sntech.de> |
|---|---|
| Date | 2017-07-31 13:30 +0200 |
| Subject | Re: [PATCH 03/14] pinctrl: rockchip: add input schmitt support for rv1108 |
| Message-ID | <u9h3z-5Dx-13@gated-at.bofh.it> |
| In reply to | #1699899 |
Am Montag, 31. Juli 2017, 18:10:22 CEST schrieb Andy Yan: > Some pins like i2c SCL/SDA need the schmitt input function > to avoid crosstalk problems. > > Signed-off-by: Andy Yan <andy.yan@rock-chips.com> Reviewed-by: Heiko Stuebner <heiko@sntech.de>
[toc] | [prev] | [next] | [standalone]
| From | Linus Walleij <linus.walleij@linaro.org> |
|---|---|
| Date | 2017-08-07 10:50 +0200 |
| Subject | Re: [PATCH 03/14] pinctrl: rockchip: add input schmitt support for rv1108 |
| Message-ID | <ubLTA-5V4-27@gated-at.bofh.it> |
| In reply to | #1699899 |
On Mon, Jul 31, 2017 at 12:10 PM, Andy Yan <andy.yan@rock-chips.com> wrote: > Some pins like i2c SCL/SDA need the schmitt input function > to avoid crosstalk problems. > > Signed-off-by: Andy Yan <andy.yan@rock-chips.com> Patch applied with Heiko's review tag. Yours, Linus Walleij
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:20 +0200 |
| Subject | [PATCH 04/14] dt-bindings: i2c: rk3x: add support for rv1108 |
| Message-ID | <u9fXS-513-43@gated-at.bofh.it> |
| In reply to | #1699882 |
Add dt Document for i2c controller on rv1108
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
Documentation/devicetree/bindings/i2c/i2c-rk3x.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt b/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt
index e18445d..22f2eeb 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt
@@ -7,6 +7,7 @@ Required properties :
- reg : Offset and length of the register set for the device
- compatible: should be one of the following:
+ - "rockchip,rv1108-i2c": for rv1108
- "rockchip,rk3066-i2c": for rk3066
- "rockchip,rk3188-i2c": for rk3188
- "rockchip,rk3228-i2c": for rk3228
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:30 +0200 |
| Subject | [PATCH 14/14] ARM: dts: rockchip: add accelerometer bma250e dt node for rv1108 evb |
| Message-ID | <u9g7w-54B-23@gated-at.bofh.it> |
| In reply to | #1699882 |
Add dt node of bosch accelerometer bma250e on rv1108 evb.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108-evb.dts | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108-evb.dts b/arch/arm/boot/dts/rv1108-evb.dts
index 5675975..60bb501 100644
--- a/arch/arm/boot/dts/rv1108-evb.dts
+++ b/arch/arm/boot/dts/rv1108-evb.dts
@@ -109,6 +109,13 @@
i2c-scl-falling-time-ns = <16>;
clock-frequency = <400000>;
+ bma250: accelerometer@19 {
+ compatible = "bosch,bma250e";
+ reg = <0x19>;
+ interrupt-parent = <&gpio0>;
+ interrupts = <RK_PB3 IRQ_TYPE_LEVEL_LOW>;
+ };
+
rk805: pmic@18 {
compatible = "rockchip,rk805";
reg = <0x18>;
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Andy Yan <andy.yan@rock-chips.com> |
|---|---|
| Date | 2017-07-31 12:30 +0200 |
| Subject | [PATCH 13/14] ARM: dts: rockchip: add pmic rk805 dt node for rv1108 evb |
| Message-ID | <u9g7w-54B-25@gated-at.bofh.it> |
| In reply to | #1699882 |
RK805 is used as the voltage regulator on rv1108 evaluation
board. Add device tree node for it.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
arch/arm/boot/dts/rv1108-evb.dts | 108 +++++++++++++++++++++++++++++++++++++++
1 file changed, 108 insertions(+)
diff --git a/arch/arm/boot/dts/rv1108-evb.dts b/arch/arm/boot/dts/rv1108-evb.dts
index 8a5a88f..5675975 100644
--- a/arch/arm/boot/dts/rv1108-evb.dts
+++ b/arch/arm/boot/dts/rv1108-evb.dts
@@ -93,6 +93,114 @@
248 249 250 251 252 253 254 255>;
default-brightness-level = <200>;
};
+
+ vcc_sys: vsys-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vsys";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-boot-on;
+ };
+};
+
+&i2c0 {
+ status = "okay";
+ i2c-scl-rising-time-ns = <275>;
+ i2c-scl-falling-time-ns = <16>;
+ clock-frequency = <400000>;
+
+ rk805: pmic@18 {
+ compatible = "rockchip,rk805";
+ reg = <0x18>;
+ interrupt-parent = <&gpio0>;
+ interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>;
+ rockchip,system-power-controller;
+
+ vcc1-supply = <&vcc_sys>;
+ vcc2-supply = <&vcc_sys>;
+ vcc3-supply = <&vcc_sys>;
+ vcc4-supply = <&vcc_sys>;
+ vcc5-supply = <&vcc_sys>;
+ vcc6-supply = <&vcc_sys>;
+
+ regulators {
+ vdd_core: DCDC_REG1 {
+ regulator-name= "vdd_core";
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-state-mem {
+ regulator-state-enabled;
+ regulator-state-uv = <900000>;
+ };
+ };
+
+ vdd_cam: DCDC_REG2 {
+ regulator-name= "vdd_cam";
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <2000000>;
+ regulator-state-mem {
+ regulator-state-disabled;
+ };
+ };
+
+ vcc_ddr: DCDC_REG3 {
+ regulator-name= "vcc_ddr";
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-state-mem {
+ regulator-state-enabled;
+ };
+ };
+
+ vcc_io: DCDC_REG4 {
+ regulator-name= "vcc_io";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-state-mem {
+ regulator-state-enabled;
+ regulator-state-uv = <3300000>;
+ };
+ };
+
+ vdd_10: LDO_REG1 {
+ regulator-name= "vdd_10";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-state-mem {
+ regulator-state-disabled;
+ };
+ };
+
+ vcc_18: LDO_REG2 {
+ regulator-name= "vcc_18";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-state-mem {
+ regulator-state-disabled;
+ };
+ };
+
+ vdd10_pmu: LDO_REG3 {
+ regulator-name= "vdd10_pmu";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-state-mem {
+ regulator-state-enabled;
+ regulator-state-uv = <1000000>;
+ };
+ };
+ };
+ };
};
&pwm0 {
--
2.7.4
[toc] | [prev] | [next] | [standalone]
Page 1 of 2 [1] 2 Next page →
Back to top | Article view | linux.kernel
csiph-web