From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751862AbeEBQlk (ORCPT ); Wed, 2 May 2018 12:41:40 -0400 Received: from mail.micronovasrl.com ([212.103.203.10]:57704 "EHLO mail.micronovasrl.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751713AbeEBQli (ORCPT ); Wed, 2 May 2018 12:41:38 -0400 Authentication-Results: mail.micronovasrl.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=micronovasrl.com X-Spam-Flag: NO X-Spam-Score: -2.899 Subject: Re: [PATCH 7/7] ARM: dts: sun7i: Add dts file for the A20-linova1-7 HMI From: Giulio Benetti To: Maxime Ripard Cc: Thierry Reding , David Airlie , Chen-Yu Tsai , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org References: <1521662593-25468-1-git-send-email-giulio.benetti@micronovasrl.com> <1521662593-25468-7-git-send-email-giulio.benetti@micronovasrl.com> <20180322180508.my64gobhh5rc2x2m@flea> <8ef3b259-03b4-6987-286e-36ff627a8b76@micronovasrl.com> <20180424084137.7xfwji2gcibxavvt@flea> <03a02abb-e95c-b4ec-748f-907c0af67969@micronovasrl.com> <20180425184016.xktppxw7egddr7li@flea> <42feccc9-1d09-9ff2-3ccc-1dea63bacfb6@micronovasrl.com> Message-ID: <839d2560-0250-9b3a-8019-4e83d9e931e2@micronovasrl.com> Date: Wed, 2 May 2018 18:41:34 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <42feccc9-1d09-9ff2-3ccc-1dea63bacfb6@micronovasrl.com> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Language: it Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Maxime, >> You don't have to handcode the fragments anymore with the new syntax, >> and U-Boot makes it really trivial to use if you use the FIT image >> format to have multiple overlays bundled in the same image. You can >> choose to apply them dynamically, for example based on an EEPROM or >> some other metric to see which combination you have. > > Ah, this is interesting. I'm going to experiment with that. > I'm struggling against this, I don't really know how to proceed, except keeping monolithic dts files including other dtsi files. About dt-overlays I've tried to look around lot of time, but the only thing I've found is this: https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git/tree/arch/arm/boot/dts?h=topic/renesas-overlays where they use .dtso tagging them as "/plugin/;" and compile all .dtso found in dts folder. Then they obtain .dtbo files that should be the dt-overlays we have spoken about right? What I can't understand is if there's a real standard at this time to follow, because on renesas-driver they use their way to handle all .dtso files, but on mainline there seems to be nothing about that. So at the moment I'm trying to compile dts tagged as /plugin/; but dtc gives me a lot of warnings. dts: " /dts-v1/; /plugin/; #include #include &i2c2 { pinctrl-names = "default"; pinctrl-0 = <&i2c2_pins_a>; status = "okay"; ft5x { compatible = "edt,edt-ft5306"; reg = <0x38>; interrupt-parent = <&pio>; interrupts = <7 2 IRQ_TYPE_EDGE_FALLING>; /* PH2 */ reset-gpios = <&pio 7 3 GPIO_ACTIVE_LOW>; /* PH3 */ touchscreen-size-x = <480>; touchscreen-size-y = <272>; }; }; " Build output issuing make ARCH=arm CROSS_COMPILE=arm-linux- aaa.dtb (I use aaa.dts as source): " arch/arm/boot/dts/aaa.dtb: Warning (reg_format): /fragment@0/__overlay__/ft5x:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1) arch/arm/boot/dts/aaa.dtb: Warning (pci_device_bus_num): Failed prerequisite 'reg_format' arch/arm/boot/dts/aaa.dtb: Warning (simple_bus_reg): Failed prerequisite 'reg_format' arch/arm/boot/dts/aaa.dtb: Warning (avoid_default_addr_size): /fragment@0/__overlay__/ft5x: Relying on default #address-cells value arch/arm/boot/dts/aaa.dtb: Warning (avoid_default_addr_size): /fragment@0/__overlay__/ft5x: Relying on default #size-cells value " Then in uboot I'm trying to do as follows: # fdt addr 0x43000000 (where dtb is) # fdt resize 8192 # fdt apply 0x430c0000 (where dtbo is) But it gives me "libfdt fdt_check_header(): FDT_ERR_BADMAGIC" (I was expecting some error) Is there anywhere a guide for this? Is this what you've meant before? Using FIT for my use is not the best, so I would like to have many overlays in /boot folder and use different boot.scr depending on hardware. Can you point me to somewhere or something? I don't really know where to beat my head! Thanks in advance. -- Giulio Benetti CTO MICRONOVA SRL Sede: Via A. Niedda 3 - 35010 Vigonza (PD) Tel. 049/8931563 - Fax 049/8931346 Cod.Fiscale - P.IVA 02663420285 Capitale Sociale ¤ 26.000 i.v. Iscritta al Reg. Imprese di Padova N. 02663420285 Numero R.E.A. 258642 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Giulio Benetti Subject: Re: [PATCH 7/7] ARM: dts: sun7i: Add dts file for the A20-linova1-7 HMI Date: Wed, 2 May 2018 18:41:34 +0200 Message-ID: <839d2560-0250-9b3a-8019-4e83d9e931e2@micronovasrl.com> References: <1521662593-25468-1-git-send-email-giulio.benetti@micronovasrl.com> <1521662593-25468-7-git-send-email-giulio.benetti@micronovasrl.com> <20180322180508.my64gobhh5rc2x2m@flea> <8ef3b259-03b4-6987-286e-36ff627a8b76@micronovasrl.com> <20180424084137.7xfwji2gcibxavvt@flea> <03a02abb-e95c-b4ec-748f-907c0af67969@micronovasrl.com> <20180425184016.xktppxw7egddr7li@flea> <42feccc9-1d09-9ff2-3ccc-1dea63bacfb6@micronovasrl.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <42feccc9-1d09-9ff2-3ccc-1dea63bacfb6@micronovasrl.com> Content-Language: it List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Maxime Ripard Cc: devicetree@vger.kernel.org, David Airlie , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Chen-Yu Tsai , Thierry Reding , linux-arm-kernel@lists.infradead.org List-Id: devicetree@vger.kernel.org SGkgTWF4aW1lLAoKPj4gWW91IGRvbid0IGhhdmUgdG8gaGFuZGNvZGUgdGhlIGZyYWdtZW50cyBh bnltb3JlIHdpdGggdGhlIG5ldyBzeW50YXgsCj4+IGFuZCBVLUJvb3QgbWFrZXMgaXQgcmVhbGx5 IHRyaXZpYWwgdG8gdXNlIGlmIHlvdSB1c2UgdGhlIEZJVCBpbWFnZQo+PiBmb3JtYXQgdG8gaGF2 ZSBtdWx0aXBsZSBvdmVybGF5cyBidW5kbGVkIGluIHRoZSBzYW1lIGltYWdlLiBZb3UgY2FuCj4+ IGNob29zZSB0byBhcHBseSB0aGVtIGR5bmFtaWNhbGx5LCBmb3IgZXhhbXBsZSBiYXNlZCBvbiBh biBFRVBST00gb3IKPj4gc29tZSBvdGhlciBtZXRyaWMgdG8gc2VlIHdoaWNoIGNvbWJpbmF0aW9u IHlvdSBoYXZlLgo+IAo+IEFoLCB0aGlzIGlzIGludGVyZXN0aW5nLiBJJ20gZ29pbmcgdG8gZXhw ZXJpbWVudCB3aXRoIHRoYXQuCj4gCgpJJ20gc3RydWdnbGluZyBhZ2FpbnN0IHRoaXMsIEkgZG9u J3QgcmVhbGx5IGtub3cgaG93IHRvIHByb2NlZWQsCmV4Y2VwdCBrZWVwaW5nIG1vbm9saXRoaWMg ZHRzIGZpbGVzIGluY2x1ZGluZyBvdGhlciBkdHNpIGZpbGVzLgoKQWJvdXQgZHQtb3ZlcmxheXMg SSd2ZSB0cmllZCB0byBsb29rIGFyb3VuZCBsb3Qgb2YgdGltZSwKYnV0IHRoZSBvbmx5IHRoaW5n IEkndmUgZm91bmQgaXMgdGhpczoKaHR0cHM6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4 L2tlcm5lbC9naXQvZ2VlcnQvcmVuZXNhcy1kcml2ZXJzLmdpdC90cmVlL2FyY2gvYXJtL2Jvb3Qv ZHRzP2g9dG9waWMvcmVuZXNhcy1vdmVybGF5cwoKd2hlcmUgdGhleSB1c2UgLmR0c28gdGFnZ2lu ZyB0aGVtIGFzICIvcGx1Z2luLzsiCmFuZCBjb21waWxlIGFsbCAuZHRzbyBmb3VuZCBpbiBkdHMg Zm9sZGVyLgpUaGVuIHRoZXkgb2J0YWluIC5kdGJvIGZpbGVzIHRoYXQgc2hvdWxkIGJlIHRoZSBk dC1vdmVybGF5cyB3ZSBoYXZlIApzcG9rZW4gYWJvdXQgcmlnaHQ/CgpXaGF0IEkgY2FuJ3QgdW5k ZXJzdGFuZCBpcyBpZiB0aGVyZSdzIGEgcmVhbCBzdGFuZGFyZCBhdCB0aGlzIHRpbWUgdG8gCmZv bGxvdywgYmVjYXVzZSBvbiByZW5lc2FzLWRyaXZlciB0aGV5IHVzZSB0aGVpciB3YXkgdG8gaGFu ZGxlIGFsbCAuZHRzbyAKZmlsZXMsIGJ1dCBvbiBtYWlubGluZSB0aGVyZSBzZWVtcyB0byBiZSBu b3RoaW5nIGFib3V0IHRoYXQuCgpTbyBhdCB0aGUgbW9tZW50IEknbSB0cnlpbmcgdG8gY29tcGls ZSBkdHMgdGFnZ2VkIGFzIC9wbHVnaW4vOwpidXQgZHRjIGdpdmVzIG1lIGEgbG90IG9mIHdhcm5p bmdzLgoKZHRzOgoiCi9kdHMtdjEvOwovcGx1Z2luLzsKCiNpbmNsdWRlIDxkdC1iaW5kaW5ncy9n cGlvL2dwaW8uaD4KI2luY2x1ZGUgPGR0LWJpbmRpbmdzL2ludGVycnVwdC1jb250cm9sbGVyL2ly cS5oPgoKJmkyYzIgewoJcGluY3RybC1uYW1lcyA9ICJkZWZhdWx0IjsKCXBpbmN0cmwtMCA9IDwm aTJjMl9waW5zX2E+OwoJc3RhdHVzID0gIm9rYXkiOwoKCWZ0NXggewoJCWNvbXBhdGlibGUgPSAi ZWR0LGVkdC1mdDUzMDYiOwoJCXJlZyA9IDwweDM4PjsKCQlpbnRlcnJ1cHQtcGFyZW50ID0gPCZw aW8+OwoJCWludGVycnVwdHMgPSA8NyAyIElSUV9UWVBFX0VER0VfRkFMTElORz47IC8qIFBIMiAq LwoJCXJlc2V0LWdwaW9zID0gPCZwaW8gNyAzIEdQSU9fQUNUSVZFX0xPVz47IC8qIFBIMyAqLwoJ CXRvdWNoc2NyZWVuLXNpemUteCA9IDw0ODA+OwoJCXRvdWNoc2NyZWVuLXNpemUteSA9IDwyNzI+ OwoJfTsKfTsKIgoKQnVpbGQgb3V0cHV0IGlzc3VpbmcgbWFrZSBBUkNIPWFybSBDUk9TU19DT01Q SUxFPWFybS1saW51eC0gYWFhLmR0YiAoSSAKdXNlIGFhYS5kdHMgYXMgc291cmNlKToKIgphcmNo L2FybS9ib290L2R0cy9hYWEuZHRiOiBXYXJuaW5nIChyZWdfZm9ybWF0KTogCi9mcmFnbWVudEAw L19fb3ZlcmxheV9fL2Z0NXg6cmVnOiBwcm9wZXJ0eSBoYXMgaW52YWxpZCBsZW5ndGggKDQgYnl0 ZXMpIAooI2FkZHJlc3MtY2VsbHMgPT0gMiwgI3NpemUtY2VsbHMgPT0gMSkKYXJjaC9hcm0vYm9v dC9kdHMvYWFhLmR0YjogV2FybmluZyAocGNpX2RldmljZV9idXNfbnVtKTogRmFpbGVkIApwcmVy ZXF1aXNpdGUgJ3JlZ19mb3JtYXQnCmFyY2gvYXJtL2Jvb3QvZHRzL2FhYS5kdGI6IFdhcm5pbmcg KHNpbXBsZV9idXNfcmVnKTogRmFpbGVkIHByZXJlcXVpc2l0ZSAKJ3JlZ19mb3JtYXQnCmFyY2gv YXJtL2Jvb3QvZHRzL2FhYS5kdGI6IFdhcm5pbmcgKGF2b2lkX2RlZmF1bHRfYWRkcl9zaXplKTog Ci9mcmFnbWVudEAwL19fb3ZlcmxheV9fL2Z0NXg6IFJlbHlpbmcgb24gZGVmYXVsdCAjYWRkcmVz cy1jZWxscyB2YWx1ZQphcmNoL2FybS9ib290L2R0cy9hYWEuZHRiOiBXYXJuaW5nIChhdm9pZF9k ZWZhdWx0X2FkZHJfc2l6ZSk6IAovZnJhZ21lbnRAMC9fX292ZXJsYXlfXy9mdDV4OiBSZWx5aW5n IG9uIGRlZmF1bHQgI3NpemUtY2VsbHMgdmFsdWUKIgoKVGhlbiBpbiB1Ym9vdCBJJ20gdHJ5aW5n IHRvIGRvIGFzIGZvbGxvd3M6CiMgZmR0IGFkZHIgMHg0MzAwMDAwMCAod2hlcmUgZHRiIGlzKQoj IGZkdCByZXNpemUgODE5MgojIGZkdCBhcHBseSAweDQzMGMwMDAwICh3aGVyZSBkdGJvIGlzKQpC dXQgaXQgZ2l2ZXMgbWUgImxpYmZkdCBmZHRfY2hlY2tfaGVhZGVyKCk6IEZEVF9FUlJfQkFETUFH SUMiCihJIHdhcyBleHBlY3Rpbmcgc29tZSBlcnJvcikKCklzIHRoZXJlIGFueXdoZXJlIGEgZ3Vp ZGUgZm9yIHRoaXM/CklzIHRoaXMgd2hhdCB5b3UndmUgbWVhbnQgYmVmb3JlPwpVc2luZyBGSVQg Zm9yIG15IHVzZSBpcyBub3QgdGhlIGJlc3QsIHNvIEkgd291bGQgbGlrZSB0byBoYXZlIG1hbnkg Cm92ZXJsYXlzIGluIC9ib290IGZvbGRlciBhbmQgdXNlIGRpZmZlcmVudCBib290LnNjciBkZXBl bmRpbmcgb24gaGFyZHdhcmUuCgpDYW4geW91IHBvaW50IG1lIHRvIHNvbWV3aGVyZSBvciBzb21l dGhpbmc/CkkgZG9uJ3QgcmVhbGx5IGtub3cgd2hlcmUgdG8gYmVhdCBteSBoZWFkIQoKVGhhbmtz IGluIGFkdmFuY2UuCgotLSAKR2l1bGlvIEJlbmV0dGkKQ1RPCgpNSUNST05PVkEgU1JMClNlZGU6 IFZpYSBBLiBOaWVkZGEgMyAtIDM1MDEwIFZpZ29uemEgKFBEKQpUZWwuIDA0OS84OTMxNTYzIC0g RmF4IDA0OS84OTMxMzQ2CkNvZC5GaXNjYWxlIC0gUC5JVkEgMDI2NjM0MjAyODUKQ2FwaXRhbGUg U29jaWFsZSDigqwgMjYuMDAwIGkudi4KSXNjcml0dGEgYWwgUmVnLiBJbXByZXNlIGRpIFBhZG92 YSBOLiAwMjY2MzQyMDI4NQpOdW1lcm8gUi5FLkEuIDI1ODY0MgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 From: giulio.benetti@micronovasrl.com (Giulio Benetti) Date: Wed, 2 May 2018 18:41:34 +0200 Subject: [PATCH 7/7] ARM: dts: sun7i: Add dts file for the A20-linova1-7 HMI In-Reply-To: <42feccc9-1d09-9ff2-3ccc-1dea63bacfb6@micronovasrl.com> References: <1521662593-25468-1-git-send-email-giulio.benetti@micronovasrl.com> <1521662593-25468-7-git-send-email-giulio.benetti@micronovasrl.com> <20180322180508.my64gobhh5rc2x2m@flea> <8ef3b259-03b4-6987-286e-36ff627a8b76@micronovasrl.com> <20180424084137.7xfwji2gcibxavvt@flea> <03a02abb-e95c-b4ec-748f-907c0af67969@micronovasrl.com> <20180425184016.xktppxw7egddr7li@flea> <42feccc9-1d09-9ff2-3ccc-1dea63bacfb6@micronovasrl.com> Message-ID: <839d2560-0250-9b3a-8019-4e83d9e931e2@micronovasrl.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Maxime, >> You don't have to handcode the fragments anymore with the new syntax, >> and U-Boot makes it really trivial to use if you use the FIT image >> format to have multiple overlays bundled in the same image. You can >> choose to apply them dynamically, for example based on an EEPROM or >> some other metric to see which combination you have. > > Ah, this is interesting. I'm going to experiment with that. > I'm struggling against this, I don't really know how to proceed, except keeping monolithic dts files including other dtsi files. About dt-overlays I've tried to look around lot of time, but the only thing I've found is this: https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git/tree/arch/arm/boot/dts?h=topic/renesas-overlays where they use .dtso tagging them as "/plugin/;" and compile all .dtso found in dts folder. Then they obtain .dtbo files that should be the dt-overlays we have spoken about right? What I can't understand is if there's a real standard at this time to follow, because on renesas-driver they use their way to handle all .dtso files, but on mainline there seems to be nothing about that. So at the moment I'm trying to compile dts tagged as /plugin/; but dtc gives me a lot of warnings. dts: " /dts-v1/; /plugin/; #include #include &i2c2 { pinctrl-names = "default"; pinctrl-0 = <&i2c2_pins_a>; status = "okay"; ft5x { compatible = "edt,edt-ft5306"; reg = <0x38>; interrupt-parent = <&pio>; interrupts = <7 2 IRQ_TYPE_EDGE_FALLING>; /* PH2 */ reset-gpios = <&pio 7 3 GPIO_ACTIVE_LOW>; /* PH3 */ touchscreen-size-x = <480>; touchscreen-size-y = <272>; }; }; " Build output issuing make ARCH=arm CROSS_COMPILE=arm-linux- aaa.dtb (I use aaa.dts as source): " arch/arm/boot/dts/aaa.dtb: Warning (reg_format): /fragment at 0/__overlay__/ft5x:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1) arch/arm/boot/dts/aaa.dtb: Warning (pci_device_bus_num): Failed prerequisite 'reg_format' arch/arm/boot/dts/aaa.dtb: Warning (simple_bus_reg): Failed prerequisite 'reg_format' arch/arm/boot/dts/aaa.dtb: Warning (avoid_default_addr_size): /fragment at 0/__overlay__/ft5x: Relying on default #address-cells value arch/arm/boot/dts/aaa.dtb: Warning (avoid_default_addr_size): /fragment at 0/__overlay__/ft5x: Relying on default #size-cells value " Then in uboot I'm trying to do as follows: # fdt addr 0x43000000 (where dtb is) # fdt resize 8192 # fdt apply 0x430c0000 (where dtbo is) But it gives me "libfdt fdt_check_header(): FDT_ERR_BADMAGIC" (I was expecting some error) Is there anywhere a guide for this? Is this what you've meant before? Using FIT for my use is not the best, so I would like to have many overlays in /boot folder and use different boot.scr depending on hardware. Can you point me to somewhere or something? I don't really know where to beat my head! Thanks in advance. -- Giulio Benetti CTO MICRONOVA SRL Sede: Via A. Niedda 3 - 35010 Vigonza (PD) Tel. 049/8931563 - Fax 049/8931346 Cod.Fiscale - P.IVA 02663420285 Capitale Sociale ? 26.000 i.v. Iscritta al Reg. Imprese di Padova N. 02663420285 Numero R.E.A. 258642