[PATCH 6/6] ARM: dts: add rk3288 evaluation board
Olof Johansson
olof at lixom.net
Tue Jul 15 18:00:29 PDT 2014
Hi,
This mostly looks good, with a couple of comments below.
On Wed, Jul 16, 2014 at 01:02:58AM +0200, Heiko Stübner wrote:
> +&i2c0 {
> + hym8563 at 51 {
> + compatible = "haoyu,hym8563";
> + reg = <0x51>;
> +
> + interrupt-parent = <&gpio0>;
> + interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&hym8563_int>;
> +
> + #clock-cells = <0>;
> + clock-output-names = "xin32k";
> + };
> +
> + act8846: act8846 at 5a {
> + compatible = "active-semi,act8846";
> + reg = <0x5a>;
> + status = "okay";
> + };
> +};
> +
> +&act8846 {
This is slightly odd since you're defining the node just above, you could just
add the regulators right there.
> + regulators {
> + vcc_ddr: REG1 {
> + regulator-name = "VCC_DDR";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + };
> +
> + vcc_io: REG2 {
> + regulator-name = "VCC_IO";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + vdd_log: REG3 {
> + regulator-name = "VDD_LOG";
> + regulator-min-microvolt = <1000000>;
> + regulator-max-microvolt = <1000000>;
> + regulator-always-on;
> + };
> +
> + vcc_20: REG4 {
> + regulator-name = "VCC_20";
> + regulator-min-microvolt = <2000000>;
> + regulator-max-microvolt = <2000000>;
> + regulator-always-on;
> + };
> +
> + vccio_sd: REG5 {
> + regulator-name = "VCCIO_SD";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + vdd10_lcd: REG6 {
> + regulator-name = "VDD10_LCD";
> + regulator-min-microvolt = <1000000>;
> + regulator-max-microvolt = <1000000>;
> + regulator-always-on;
> + };
> +
> + vcca_codec: REG7 {
> + regulator-name = "VCCA_CODEC";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + vcca_tp: REG8 {
> + regulator-name = "VCCA_TP";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + vccio_pmu: REG9 {
> + regulator-name = "VCCIO_PMU";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + vdd_10: REG10 {
> + regulator-name = "VDD_10";
> + regulator-min-microvolt = <1000000>;
> + regulator-max-microvolt = <1000000>;
> + regulator-always-on;
> + };
> +
> + vcc_18: REG11 {
> + regulator-name = "VCC_18";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + };
> +
> + vcc18_lcd: REG12 {
> + regulator-name = "VCC18_LCD";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + };
> + };
> +};
> +
> +&pinctrl {
> + hym8563 {
> + hym8563_int: hym8563-int {
> + rockchip,pins = <RK_GPIO0 4 RK_FUNC_GPIO &pcfg_pull_up>;
> + };
> + };
> +};
> diff --git a/arch/arm/boot/dts/rk3288-evb-rk808.dts b/arch/arm/boot/dts/rk3288-evb-rk808.dts
> new file mode 100644
> index 0000000..c168cb2
> --- /dev/null
> +++ b/arch/arm/boot/dts/rk3288-evb-rk808.dts
> @@ -0,0 +1,19 @@
> +/*
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + */
> +
> +/dts-v1/;
> +#include "rk3288-evb.dtsi"
> +
> +/ {
> + compatible = "rockchip,rk3288-evb-rk808", "rockchip,rk3288";
> +
> +};
No rk808 node? Or adding that once the driver is sorted out?
> diff --git a/arch/arm/boot/dts/rk3288-evb.dtsi b/arch/arm/boot/dts/rk3288-evb.dtsi
> new file mode 100644
> index 0000000..ff642d4
> --- /dev/null
> +++ b/arch/arm/boot/dts/rk3288-evb.dtsi
> @@ -0,0 +1,77 @@
> +/*
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + */
> +
> +#include "rk3288.dtsi"
> +
> +/ {
> + aliases {
> + serial0 = &uart0;
> + serial1 = &uart1;
> + serial2 = &uart2;
> + serial3 = &uart3;
> + serial4 = &uart4;
> + };
> +
> + memory {
> + reg = <0x0 0x80000000>;
> + };
> +
> + soc {
> + gpio-keys {
I'd recommend doing all of these with &-references instead to avoid having to
revisit this if/when the tree topography changes w.r.t. the 'soc' node. Also,
the gpio-keys should be on the top level.
> + compatible = "gpio-keys";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + autorepeat;
> +
> + button at 0 {
> + gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
> + linux,code = <116>;
> + label = "GPIO Key Power";
> + linux,input-type = <1>;
> + gpio-key,wakeup = <1>;
> + debounce-interval = <100>;
> + };
> + };
> +
> + i2c0: i2c at ff650000 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&i2c0_xfer>;
> + status = "okay";
> + };
> +
> + watchdog at ff800000 {
> + status = "okay";
> + };
> +
> + serial at ff180000 {
> + status = "okay";
> + };
> +
> + serial at ff190000 {
> + status = "okay";
> + };
> +
> + uart2: serial at ff690000 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart2_xfer>;
> + status = "okay";
> + };
> +
> + uart3: serial at ff1b0000 {
> + status = "okay";
> + };
> +
> + uart4: serial at ff1c0000 {
> + status = "okay";
> + };
> + };
> +};
-Olof
More information about the linux-arm-kernel
mailing list