While we try to get that working, this would require that the SD card be
formatted in advance, right? I would imagine we could possibly pre-format
two FAT partitions, load both partitions and then re-format one of them to
be littlefs (since littlefs formatting from a host computer is non-trivial
as far as I'm aware). Since we want 1 littlefs and 1 FAT partition. Does
NuttX have a better way to format an SD into two partitions via an internal
API, similar to how you can call `nx_mount` with "forceformat" to re-format
an entire block device?

Thank you so much for your help,
Matteo

On Tue, Oct 29, 2024 at 12:45 AM Xiang Xiao <xiaoxiang781...@gmail.com>
wrote:

> On Tue, Oct 29, 2024 at 10:02 AM Jia Lin <jia89...@gmail.com> wrote:
>
> > On 2024/10/26 05:27:35 Xiang Xiao wrote:
> > > have you enable CONFIG_GPT_PARTITION or CONFIG_MBR_PARTITION and
> > > call parse_block_partition:
> > >
> >
> >
> https://github.com/apache/nuttx/blob/master/include/nuttx/fs/partition.h#L81
> > > to register partitions as block devices again, so you can mount the
> > > different file systems on these new block devices.
> > >
> > > Thanks
> > > Xiang
> > >
> > > On Sat, Oct 26, 2024 at 4:51 AM Matteo Golin <ma...@gmail.com> wrote:
> > >
> > > > I got my hands on a SPI SD card adapter and managed to try out SD/MMC
> > > > support for it through NuttX on my Pico. FAT file
> > > > systems worked with no problem, and after a little configuring I
> > managed
> > > > to get littlefs going as well.
> > > >
> > > > Now I'm wondering if NuttX has support for multiple partitions on the
> > same
> > > > device; I'm hoping I can take a 32GB micro-SD
> > > > card and have 16GB be littlefs and 16GB be vfat. I haven't been able
> to
> > > > find any documentation about this though, and
> > > > after formatting my SD card to have two vfat partitions I can see
> that
> > > > NuttX is only able to mount the first one.
> > > >
> > > > I managed briefly to get both partitions on one card by first
> > formatting
> > > > the card as littlefs, then using fdisk on my
> > > > host computer to add a vfat partition starting halfway through the
> > card,
> > > > and then was able to mount both on NuttX as two
> > > > distinct file systems. Unfortunately after putting files on them,
> > > > rebooting NuttX and trying to remount, the vfat
> > > > partition was corrupted.
> > > >
> > > > Has anyone managed to get multiple partitions to work? How would I go
> > > > about it?
> > > >
> > > > Matteo
> > > >
> > >
> >
> > Hello everyone,
> >
> > I work with Matteo on CUInspace and am currently trying to get Nuttx to
> > recognize two partitions on a SD card. Currently I'm a little confused on
> > how to use / implement parse_block_partition. I did find a previous
> thread
> > on a similar subject (
> > https://lists.apache.org/thread/q19rdvst6k687s4v045q362j68r2so1t
> > <(https://lists.apache.org/thread/q19rdvst6k687s4v045q362j68r2so1t>),
> but
> > I
> > am a bit lost trying to follow the code, specifically on where would be
> the
> > best place to call parse_block_partition. If anyone has any experience
> with
> > mounting an SD card with multiple partitions any help would be
> appreciated!
> >
> >
> If the card is inserted physically, you can call parse_block_partition in
> board initialization like:
>
> https://github.com/apache/nuttx/blob/master/boards/risc-v/mpfs/common/src/mpfs_emmcsd.c#L74
> if the card is inserted dynamically, you may need insert the call in
> automount:
> https://github.com/apache/nuttx/blob/master/fs/mount/fs_automount.c
>
>
>
> > Thanks,
> > Tony
> >
>

Reply via email to