From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 09 Jun 2023 16:38:30 +0200 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1q7dG4-00HJXp-6z for lore@lore.pengutronix.de; Fri, 09 Jun 2023 16:38:30 +0200 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1q7dG2-0001cC-1E; Fri, 09 Jun 2023 16:38:30 +0200 Received: from ptz.office.stw.pengutronix.de ([2a0a:edc0:0:900:1d::77] helo=[127.0.0.1]) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1q7dFz-0001bq-Ou; Fri, 09 Jun 2023 16:38:27 +0200 Message-ID: Date: Fri, 9 Jun 2023 16:38:22 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US, de-DE To: Ahmad Fatoum , distrokit@pengutronix.de References: <20230606-default_enable_fastboot_rock3a-v2-0-92606c4de9a9@pengutronix.de> <20230606-default_enable_fastboot_rock3a-v2-3-92606c4de9a9@pengutronix.de> From: Johannes Zink In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [DistroKit] [PATCH v2 3/4] v8a: barebox: enable loading kernel, dtb and initrd via fastboot X-BeenThere: distrokit@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: DistroKit Mailinglist List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: patchwork-jzi@pengutronix.de Sender: "DistroKit" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: distrokit-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false On 6/9/23 15:35, Ahmad Fatoum wrote: > On 09.06.23 12:28, Johannes Zink wrote: >> This allows to load kernel, dtb and initrd as sparse images to >> RAM-files. >> >> While at it, also enable the acm gadget, which exposes the barebox shell >> as an USB gadget and autostart the usb gadgets. >> >> Also expose mmc{0,1,2} as fastboot partitions and add init script to >> force barebox to detect these devices and have them available for >> fastboot. >> >> Signed-off-by: Johannes Zink >> >> --- >> >> Changes: >> >> v1 -> v2: >> - worked in Ahmad's and Jan's review findings, thanks for your review: >> - use generic names mmc{0,1,2} instead of {sd,emmc, } to allow >> generic reuse of the fastboot partitions across multiple boards >> - use more obvious partition names ram-{kernel,initramfs,oftree} to >> - add init script for detecting /dev/mmc{0,1,2} >> --- >> configs/platform-v8a/barebox-common-defaultenv/init/detect-mmcs | 3 +++ >> configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.acm | 1 + >> configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.bbu | 1 + >> configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.partitions | 1 + >> configs/platform-v8a/barebox-common-defaultenv/nv/usbgadget.autostart | 1 + >> 5 files changed, 7 insertions(+) >> >> diff --git a/configs/platform-v8a/barebox-common-defaultenv/init/detect-mmcs b/configs/platform-v8a/barebox-common-defaultenv/init/detect-mmcs >> new file mode 100755 >> index 000000000000..e3433f6da09f >> --- /dev/null >> +++ b/configs/platform-v8a/barebox-common-defaultenv/init/detect-mmcs >> @@ -0,0 +1,3 @@ >> +#!/bin/sh >> + >> +detect mmc0 mmc1 mmc2 > > We have a CI test that checks that barebox doesn't print errors. The Rock-3A > in the Pengutronix remote lab has no eMMC fitted, so detecting the MMC host > would throw an error and fail the test, I think. Did you check this? I did not explicitly check with the CI test. But the barebox error dmesg buffer is empty, so I'd assume there should be no problem with this. tbh, I am also not quite sure how this could be circumvented - either we abstain from detecting the mmcs (which would then cause the fastboot to fail if they have not been detected for any other reason), or we have to somehow deal with it, maybe by adding a filter in the CI tests. Johannes > > >> diff --git a/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.acm b/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.acm >> new file mode 100644 >> index 000000000000..d00491fd7e5b >> --- /dev/null >> +++ b/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.acm >> @@ -0,0 +1 @@ >> +1 >> diff --git a/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.bbu b/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.bbu >> new file mode 100644 >> index 000000000000..d00491fd7e5b >> --- /dev/null >> +++ b/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.bbu >> @@ -0,0 +1 @@ >> +1 >> diff --git a/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.partitions b/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.partitions >> new file mode 100644 >> index 000000000000..527925e1c58b >> --- /dev/null >> +++ b/configs/platform-v8a/barebox-common-defaultenv/nv/fastboot.partitions >> @@ -0,0 +1 @@ >> +/dev/mmc0(mmc0)o,/dev/mmc1(mmc1)o,/dev/mmc2(mmc2)o,/tmp/ram-kernel(ram-kernel)c,/tmp/ram-initramfs(ram-initramfs)c,/tmp/ram-oftree(ram-oftree)c >> diff --git a/configs/platform-v8a/barebox-common-defaultenv/nv/usbgadget.autostart b/configs/platform-v8a/barebox-common-defaultenv/nv/usbgadget.autostart >> new file mode 100644 >> index 000000000000..d00491fd7e5b >> --- /dev/null >> +++ b/configs/platform-v8a/barebox-common-defaultenv/nv/usbgadget.autostart >> @@ -0,0 +1 @@ >> +1 >> > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 |