From: E Shattow <e@freeshell.de>
To: Yixun Lan <dlan@kernel.org>
Cc: u-boot@lists.u-boot-project.org, Tom Rini <trini@konsulko.com>
Subject: Re: [PATCH 2/2] configs: spacemit: k3: enable mtdparts on Pico-ITX in main app
Date: Wed, 21 Oct 2026 07:35:48 -0700 [thread overview]
Message-ID: <d0ce354d-71d0-4dab-9725-70e06998df2b@freeshell.de> (raw)
In-Reply-To: <20261021075605-GKD65567@kernel.org>
Hi Yixun,
On 10/21/26 00:56, Yixun Lan wrote:
> Hi E Shattow,
>
>
> On 12:51 Tue 20 Oct , E Shattow wrote:
>> add default mtdparts and mtdids consistent with k3-pico-itx.dts
>>
>> Signed-off-by: E Shattow <e@freeshell.de>
>> ---
>> configs/spacemit_k3_defconfig | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/configs/spacemit_k3_defconfig b/configs/spacemit_k3_defconfig
>> index b333e708d01b..2ca912556a88 100644
>> --- a/configs/spacemit_k3_defconfig
>> +++ b/configs/spacemit_k3_defconfig
>> @@ -26,6 +26,7 @@ CONFIG_SYS_PBSIZE=276
>> CONFIG_HUSH_PARSER=y
>> CONFIG_CMD_GPIO=y
>> CONFIG_CMD_I2C=y
>> +CONFIG_CMD_MTD=y
>> CONFIG_CMD_DHCP=y
>> CONFIG_CMD_DNS=y
>> CONFIG_CMD_MII=y
>> @@ -36,6 +37,9 @@ CONFIG_CMD_PMIC=y
>> CONFIG_CMD_REGULATOR=y
>> CONFIG_CMD_FAT=y
>> CONFIG_CMD_FS_GENERIC=y
>> +CONFIG_CMD_MTDPARTS=y
>> +CONFIG_MTDIDS_DEFAULT="nor0=spi0.0"
>> +CONFIG_MTDPARTS_DEFAULT="spi0.0:128k(bootinfo),512k(fsbl),64k(env),1024k(esos),384k(opensbi),-(uboot)"
> or make it more specific? s/spi0.0/d420c000.spi/
Yes and no, I do prefer an automatic layout (and layout name) be
generated from device tree at runtime. I guess that may possibly become
"qspi.flash0", or "fdt.soc.d420c000.spi.qspi.flash.0", etc.
The output of 'mtd list' tells us the parent:
=> mtd list
List of MTD devices:
* nor0
- device: flash@0
- parent: spi@d420c000
Also, then, the output of 'mtdparts' tells us the partition layout:
=> mtdpart
device nor0 <spi0.0>, # parts = 6
#: name size offset mask_flags
0: bootinfo 0x00020000 0x00000000 0
1: fsbl 0x00080000 0x00020000 0
2: env 0x00010000 0x000a0000 0
3: esos 0x00100000 0x000b0000 0
4: opensbi 0x00060000 0x001b0000 0
5: uboot 0x005f0000 0x00210000 0
active partition: nor0,0 - (bootinfo) 0x00020000 @ 0x00000000
defaults:
mtdids : nor0=spi0.0
mtdparts:
spi0.0:128k(bootinfo),512k(fsbl),64k(env),1024k(esos),384k(opensbi),-(uboot)
I consider the partition layout identifier style as you suggest:
$ egrep --exclude-dir=.git -or 'mtdparts=[^ ]+)' | cut -d: -f2 | sort |
uniq -c | egrep -v '[0-9a-fA-F]{7}' | sort -k1,1 -n
...
3 mtdparts=nand_mtd
3 mtdparts=uniphier-nand.0
4 mtdparts=nand0
4 mtdparts=spi-flash.0
5 mtdparts=nor0
5 mtdparts=spi_flash
7 mtdparts=boot
7 mtdparts=omap2-nand.0
8 mtdparts=nand
11 mtdparts=nand.0
12 mtdparts=orion_nand
13 mtdparts=spi0.0
16 mtdparts=gpmi-nand
50 mtdparts=atmel_nand
$ egrep --exclude-dir=.git -or 'mtdparts=[^ ]+)' | cut -d: -f2 | sort |
uniq -c | egrep '[0-9a-fA-F]{7}' | sort -k1,1 -n
1 mtdparts=10b80000.nand.0
1 mtdparts=1fc000000.nor_flash
1 mtdparts=21e0000.qspi
1 mtdparts=30bb0000.qspi
1 mtdparts=30bb0000.spi
1 mtdparts=8000000.nand
1 mtdparts=fe000000.nor_flash
1 mtdparts=ffb90000.nand.0
1 mtdparts=mtdparts=47040000.spi.0
1 mtdparts=[mtdparts=]edb7312-nor
1 mtdparts=mtdparts=edb7312-nor
2 mtdparts=02008000.spi.1
2 mtdparts=8000000.nor
4 mtdparts=1550000.spi
4 mtdparts=1550000.spi-0
4 mtdparts=47040000.spi.0
4 mtdparts=ec000000.nor
4 mtdparts=ef000000.nor
4 mtdparts=fef000000.nor
10 mtdparts=ff705000.spi.0
16 mtdparts=60000000.nor
16 mtdparts=ff800000.flash
22 mtdparts=fe8000000.nor
For the initial patch here I instead prefer the minimal and simple style
for mtdparts layout template names and to re-use what is popular in
U-Boot source tree. The use of hexadecimal bus address for the layout
name is difficult for me to read, and not clear to me what is the
benefit to doing this manually-entered data address?
=> env print
...
mtddevnum=0
mtdids=nor0=spi0.0
mtdparts=spi0.0:128k(bootinfo),512k(fsbl),64k(env),1024k(esos),384k(opensbi),-(uboot)
partition=nor0,0
...
Compared to a style of repeating the bus address:
=> env print
...
mtddevnum=0
mtdids=nor0=d420c000.spi
mtdparts=d420c000.spi:128k(bootinfo),512k(fsbl),64k(env),1024k(esos),384k(opensbi),-(uboot)
partition=nor0,0
...
Let me know if you do yet prefer the bus address repeated for the name
of partition layout. I'd like to see this as part of a runtime-generated
mtdparts configuration, so anything is okay with me for the initial
manual layout here.
>
>> CONFIG_DEVICE_TREE_INCLUDES="spacemit-k3-u-boot.dtsi"
>> CONFIG_ENV_OVERWRITE=y
>> CONFIG_ENV_IS_IN_SPI_FLASH=y
>> @@ -49,6 +53,7 @@ CONFIG_DM_I2C=y
>> CONFIG_SYS_I2C_SPACEMIT_K1=y
>> CONFIG_MISC=y
>> CONFIG_SPI_FLASH_WINBOND=y
>> +CONFIG_SPI_FLASH_MTD=y
>> CONFIG_PHY_GIGE=y
>> CONFIG_DWC_ETH_QOS=y
>> CONFIG_DWC_ETH_QOS_SPACEMIT=y
>> --
>> 2.53.0
>>
>
Thanks,
-E
next prev parent reply other threads:[~2026-10-21 14:36 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-20 19:51 [PATCH 0/2] Enable SPI NOR flash for SpacemiT K3 in main app E Shattow
2026-10-20 19:51 ` [PATCH 1/2] configs: spacemit: k3: enable spi nor flash " E Shattow
2026-10-21 7:13 ` Yixun Lan
2026-10-21 7:37 ` E Shattow
2026-10-21 8:01 ` Yixun Lan
2026-10-21 15:47 ` E Shattow
2026-10-20 19:51 ` [PATCH 2/2] configs: spacemit: k3: enable mtdparts on Pico-ITX " E Shattow
2026-10-21 7:56 ` Yixun Lan
2026-10-21 14:35 ` E Shattow [this message]
2026-10-22 0:57 ` Yixun Lan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d0ce354d-71d0-4dab-9725-70e06998df2b@freeshell.de \
--to=e@freeshell.de \
--cc=dlan@kernel.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.u-boot-project.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.