diff mbox

[v4,8/8] arm64: dts: rockchip: Add Landingship config

Message ID 1458136727-32075-9-git-send-email-afaerber@suse.de
State New
Headers show

Commit Message

Andreas Färber March 16, 2016, 1:58 p.m. UTC
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 v3 -> v4: Unchanged
 
 v2 -> v3:
 * Changed compatible string to include geekbox- (Heiko)
 * Rebroke compatible strings line
 * Disabled i2c1 to avoid hang (next-20160304)
 
 v2: New - showcases inclusion of GeekBox module config
 
 arch/arm64/boot/dts/rockchip/Makefile              |  1 +
 .../dts/rockchip/rk3368-geekbox-landingship.dts    | 57 ++++++++++++++++++++++
 2 files changed, 58 insertions(+)
 create mode 100644 arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts

Comments

Heiko Stübner March 29, 2016, 8:18 p.m. UTC | #1
Am Mittwoch, 16. März 2016, 14:58:46 schrieb Andreas Färber:

This needs a commit message explaining the i2c1/i2c2 voodoo below - especially 
as this is the only difference to the core geekbox board.

And I'm still not fully convinced about having the landing ship separate.
I guess I'll just go to the talk about "Portable Device Tree Connector: 
Painless Expansion Board Support" [0] on monday to help make up my mind ;-) .


Heiko


[0] http://openiotelc2016.sched.org/event/6DA4/portable-device-tree-connector-painless-expansion-board-support-pantelis-antoniou-konsulko-group


> Signed-off-by: Andreas Färber <afaerber@suse.de>
> ---
>  v3 -> v4: Unchanged
> 
>  v2 -> v3:
>  * Changed compatible string to include geekbox- (Heiko)
>  * Rebroke compatible strings line
>  * Disabled i2c1 to avoid hang (next-20160304)
> 
>  v2: New - showcases inclusion of GeekBox module config
> 
>  arch/arm64/boot/dts/rockchip/Makefile              |  1 +
>  .../dts/rockchip/rk3368-geekbox-landingship.dts    | 57
> ++++++++++++++++++++++ 2 files changed, 58 insertions(+)
>  create mode 100644
> arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts
> 
> diff --git a/arch/arm64/boot/dts/rockchip/Makefile
> b/arch/arm64/boot/dts/rockchip/Makefile index df37865e8ced..201bcd9863ce
> 100644
> --- a/arch/arm64/boot/dts/rockchip/Makefile
> +++ b/arch/arm64/boot/dts/rockchip/Makefile
> @@ -1,5 +1,6 @@
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-evb-act8846.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-geekbox.dtb
> +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-geekbox-landingship.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-r88.dtb
> 
>  always		:= $(dtb-y)
> diff --git a/arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts
> b/arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts new file mode
> 100644
> index 000000000000..a28ace9512bb
> --- /dev/null
> +++ b/arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts
> @@ -0,0 +1,57 @@
> +/*
> + * Copyright (c) 2016 Andreas Färber
> + *
> + * This file is dual-licensed: you can use it either under the terms
> + * of the GPL or the X11 license, at your option. Note that this dual
> + * licensing only applies to this file, and not this project as a
> + * whole.
> + *
> + *  a) This file 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 file 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.
> + *
> + * Or, alternatively,
> + *
> + *  b) Permission is hereby granted, free of charge, to any person
> + *     obtaining a copy of this software and associated documentation
> + *     files (the "Software"), to deal in the Software without
> + *     restriction, including without limitation the rights to use,
> + *     copy, modify, merge, publish, distribute, sublicense, and/or
> + *     sell copies of the Software, and to permit persons to whom the
> + *     Software is furnished to do so, subject to the following
> + *     conditions:
> + *
> + *     The above copyright notice and this permission notice shall be
> + *     included in all copies or substantial portions of the Software.
> + *
> + *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> + *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
> + *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> + *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
> + *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
> + *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> + *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
> + *     OTHER DEALINGS IN THE SOFTWARE.
> + */
> +
> +#include "rk3368-geekbox.dts"
> +
> +/ {
> +	model = "GeekBox on Landingship";
> +	compatible = "geekbuying,geekbox-landingship",
> +		     "geekbuying,geekbox", "rockchip,rk3368";
> +};
> +
> +&i2c1 {
> +	status = "disabled";
> +};
> +
> +&i2c2 {
> +	status = "okay";
> +};
Andreas Färber March 29, 2016, 10:18 p.m. UTC | #2
Am 29.03.2016 um 22:18 schrieb Heiko Stübner:
> This needs a commit message explaining the i2c1/i2c2 voodoo below - especially 
> as this is the only difference to the core geekbox board.

You're probably right about the commit message, but there is no voodoo
about i2c2 below.

Would you rather have i2c1 dropped for now? Having it disabled at least
documents that the connectors are there.

>From a distro perspective I like dtb filename stability and not needing
to mess with filename changing from .dtb to -landingship.dtb, so I
rather add it from the start than later as more nodes get added.

> And I'm still not fully convinced about having the landing ship separate.

Separate would've been copy&paste! It's using the preprocessor
specifically to avoid having them be separate.

> I guess I'll just go to the talk about "Portable Device Tree Connector: 
> Painless Expansion Board Support" [0] on monday to help make up my mind ;-) .

This is not a random expansion board to exchange, it's a baseboard and
as we found out one very specific to this module, so no reuse unlike
Shields. As mentioned elsewhere, I2C are not the only difference,
they're the only difference _for now_. USB-SATA bridge comes for free
via USB node; there's four GPIO buttons to be figured out, an I2S codec
somewhere, display options (that I cannot test myself) and additional
regulator(s) needed.

Do enjoy the talk and report your findings. The pure existence of
overlays for Beagleboard is not convincing to me for dropping this patch
though - we've had similar discussions among distro people before
settling for EFI boot. Reality is messy, unfortunately. For an FPGA I've
grudgingly agreed that given a sane U-Boot one can use dtb commands to
add a couple nodes via a boot.scr, sanitizing the matrix of hardware
models x FPGA bitstreams to just the hardware models; however this
Landingship board is actually sold in hardware and is the only sane
rk3368 devboard to date rather than just some bitstream file, and we at
openSUSE are looking to abandon boot.scr in favor of generic bootefi,
running counter to that idea. Here I'm still dealing with a vendor
U-Boot, so neither works for now, only supplying a feature-complete .dtb
in the resource image partition does, which I need to build from
something - this patch. So no is not a solution. And it's not like
you're swamped in rk3368 .dts files anyway.

Thanks for queuing the core bits,

Andreas

> [0] http://openiotelc2016.sched.org/event/6DA4/portable-device-tree-connector-painless-expansion-board-support-pantelis-antoniou-konsulko-group
[...]
>> +&i2c1 {
>> +	status = "disabled";
>> +};
>> +
>> +&i2c2 {
>> +	status = "okay";
>> +};
diff mbox

Patch

diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index df37865e8ced..201bcd9863ce 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -1,5 +1,6 @@ 
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-evb-act8846.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-geekbox.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-geekbox-landingship.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-r88.dtb
 
 always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts b/arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts
new file mode 100644
index 000000000000..a28ace9512bb
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3368-geekbox-landingship.dts
@@ -0,0 +1,57 @@ 
+/*
+ * Copyright (c) 2016 Andreas Färber
+ *
+ * This file is dual-licensed: you can use it either under the terms
+ * of the GPL or the X11 license, at your option. Note that this dual
+ * licensing only applies to this file, and not this project as a
+ * whole.
+ *
+ *  a) This file 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 file 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.
+ *
+ * Or, alternatively,
+ *
+ *  b) Permission is hereby granted, free of charge, to any person
+ *     obtaining a copy of this software and associated documentation
+ *     files (the "Software"), to deal in the Software without
+ *     restriction, including without limitation the rights to use,
+ *     copy, modify, merge, publish, distribute, sublicense, and/or
+ *     sell copies of the Software, and to permit persons to whom the
+ *     Software is furnished to do so, subject to the following
+ *     conditions:
+ *
+ *     The above copyright notice and this permission notice shall be
+ *     included in all copies or substantial portions of the Software.
+ *
+ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ *     OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+#include "rk3368-geekbox.dts"
+
+/ {
+	model = "GeekBox on Landingship";
+	compatible = "geekbuying,geekbox-landingship",
+		     "geekbuying,geekbox", "rockchip,rk3368";
+};
+
+&i2c1 {
+	status = "disabled";
+};
+
+&i2c2 {
+	status = "okay";
+};