Mounting/Accessing SD-Card on BBB

Christian Mauderer list at c-mauderer.de
Fri Aug 16 08:48:09 UTC 2019


Hello Nils,

thanks for the file list. I can't reproduce your problem with it.

On 16/08/2019 10:01, Nils Hölscher wrote:
> Hi,
> 
> Short update.
> 
> It seems the device only hangs while I am connected with the debugger.

Is that true for the original file system tree? You are debugging via
Ethernet, right? In that case I would lean more toward a problem with
the debugger support than the file system. Do you have enough file
descriptors configured?

Best regards

Christian

> looks like a Heisenberg bug.
> 
> Best,
> Nils
> 
> On Fri, 16 Aug 2019 at 09:50, Nils Hölscher <nilhoel1 at gmail.com
> <mailto:nilhoel1 at gmail.com>> wrote:
> 
> 
>     On Thu, 15 Aug 2019 at 19:51, Christian Mauderer <list at c-mauderer.de
>     <mailto:list at c-mauderer.de>> wrote:
> 
>         Hello Nils,
> 
>         maybe another bug in our FAT file system...
> 
>         Please do three things:
> 
>         1. Create an image of your current card (with dd or a similar
>         tool). FAT
>         bugs are sometimes hard to reproduce but it's really urgent that
>         we fix
>         them. So maybe I'll ask for that image later.
> 
>     I did that. 
>     Let me know if you need the image.
> 
>         2. Create a complete list of the files on your card (for example the
>         Linux `tree -h` command), post it here and tell me what you
>         tried to open.
> 
>      .
>     ├── [ 50K]  am335x-boneblack.dtb
>     ├── [ 49K]  am335x-boneblack+pruss.dtb
>     ├── [ 883]  AM335X-PRU-UIO-00A0.dtbo
>     ├── [ 649]  AM335X-PRU-UIO-BSD-00A0.dtbo
>     ├── [162K]  Linux-with-UIO.dtb
>     ├── [  44]  loob.bin
>     ├── [108K]  MLO
>     ├── [2.1M]  pru.exe.img
>     ├── [  12]  test.bin
>     ├── [471K]  u-boot.img
>     ├── [ 390]  uEnvLinuxfdt.txt
>     └── [ 560]  uEnv.txt
> 
>          3. Try another name / folder for the file you wanted to open.\
> 
>     I moved the file in another folder and renamed it.
>     It now works but I got en error, I am currently investigating if
>     this is on the pru driver side or not.
>     The tree while doing this was:
>     .
>     ├── [ 50K]  am335x-boneblack.dtb
>     ├── [ 49K]  am335x-boneblack+pruss.dtb
>     ├── [ 883]  AM335X-PRU-UIO-00A0.dtbo
>     ├── [ 649]  AM335X-PRU-UIO-BSD-00A0.dtbo
>     ├── [162K]  Linux-with-UIO.dtb
>     ├── [  44]  loob.bin
>     ├── [108K]  MLO
>     ├── [2.1M]  pru.exe.img
>     ├── [2.0K]  test
>     │   └── [  12]  test2.bin
>     ├── [  12]  test2.bin
>     ├── [471K]  u-boot.img
>     ├── [ 390]  uEnvLinuxfdt.txt
>     └── [ 560]  uEnv.txt
> 
> 
>     Thanks,
>     Nils 
> 
>         Best regards
> 
>         Christian
> 
>         On 15/08/2019 19:32, Nils Hölscher wrote:
>         > Hi Christian,
>         >
>         > The commands ls and cat work.
>         > I just tested them, this seems kinda awkward.
>         >
>         > Best,
>         > Nils
>         >
>         > On Thu, 15 Aug 2019 at 19:27, Christian Mauderer
>         <list at c-mauderer.de <mailto:list at c-mauderer.de>
>         > <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>>> wrote:
>         >
>         >     Hello Nils,
>         >
>         >     does some other access to the file system work? Like a ls
>         on the console
>         >     or creating a file. Can you do a `cat` on some text file
>         on the file
>         >     system? If not: Does it work for a file in the root file
>         system (should
>         >     be a IMFS)?
>         >
>         >     Best regards
>         >
>         >     Christian
>         >
>         >     On 15/08/2019 15:54, Nils Hölscher wrote:
>         >     > Hi,
>         >     >
>         >     > I when my app wants to open a file on the SD card
>         dev=mmcsd-0-0 rtems
>         >     > freezes.
>         >     > Exact call is:
>         >     > fd = open(file, O_RDONLY);
>         >     > With file being the pru binary I want to upload.
>         >     >
>         >     > Thanks,
>         >     > Nils
>         >     >
>         >     > On Tue, 13 Aug 2019 at 17:56, Christian Mauderer
>         >     > <christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>
>         >     <mailto:christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>>
>         >     > <mailto:christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>
>         >     <mailto:christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>>>> wrote:
>         >     >
>         >     >     Hello Nils,
>         >     >
>         >     >     a third possibility: You could start a FTP server
>         and push the
>         >     file
>         >     >     via network.
>         >     >
>         >     >     Best regards
>         >     >
>         >     >     Christian
>         >     >
>         >     >     Am Dienstag, 13. August 2019 schrieb Nils Hölscher:
>         >     >     > Hi,
>         >     >     >
>         >     >     >
>         >     >     > Thanks for the input I will try the SD card first.
>         >     >     > That way I won't have to alter the code when I
>         want to run other
>         >     >     stuff on the pru.
>         >     >     >
>         >     >     >
>         >     >     > Best,
>         >     >     > Nils
>         >     >     >
>         >     >     >
>         >     >     > On Tue, 13 Aug 2019 at 17:32, Gedare Bloom
>         <gedare at rtems.org <mailto:gedare at rtems.org>
>         >     <mailto:gedare at rtems.org <mailto:gedare at rtems.org>>
>         >     >     <mailto:gedare at rtems.org <mailto:gedare at rtems.org>
>         <mailto:gedare at rtems.org <mailto:gedare at rtems.org>>>> wrote:
>         >     >     >
>         >     >     > You can also build the PRU image into the RTEMS
>         binary. See
>         >     >     > examples-v2.git/file_io/crc/init.c
>         >     >     >
>         >     >     > On Tue, Aug 13, 2019 at 8:46 AM Christian Mauderer
>         >     >     <list at c-mauderer.de <mailto:list at c-mauderer.de>
>         <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>>
>         >     <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>
>         <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>>>> wrote:
>         >     >     > >
>         >     >     > > Hello Nils,
>         >     >     > >
>         >     >     > > that's a bit odd. I attached an expected output
>         below.
>         >     Some guesses:
>         >     >     > >
>         >     >     > > - Did you add FAT file system to your application?
>         >     >     > > - Is there some odd formatting on the SD?
>         Normally at
>         >     least the FAT
>         >     >     > > partition used by U-Boot should be visible.
>         >     >     > > - Is your BDBUF configuration OK?
>         >     >     > > - Do you have enough file descriptors?
>         >     >     > >
>         >     >     > > Beneath that: If you only need something where
>         you can put
>         >     some
>         >     >     files,
>         >     >     > > you can try to connect a USB stick instead.
>         Maybe that
>         >     works better.
>         >     >     > >
>         >     >     > > Best regards
>         >     >     > >
>         >     >     > > Christian
>         >     >     > >
>         >     >     > >
>         >     >     > > media listener: event = DISK ATTACH, state =
>         INQUIRY, src
>         >     = mmcsd
>         >     >     > > media listener: event = DISK ATTACH, state =
>         SUCCESS, src =
>         >     >     mmcsd, dest
>         >     >     > > = /dev/mmcsd-0
>         >     >     > > media listener: event = MOUNT, state = INQUIRY,
>         src =
>         >     /dev/mmcsd-0
>         >     >     > > mmcsd0: 4GB <SDHC TO 15.15 SN 000002F6 MFG
>         02/2017 by 25
>         >     DY> at mmc0
>         >     >     > > 24.0MHz/4bit/65535-block
>         >     >     > > media listener: event = MOUNT, state = FAILED, src =
>         >     /dev/mmcsd-0
>         >     >     > > media listener: event = PARTITION INQUIRY, state =
>         >     INQUIRY, src =
>         >     >     > > /dev/mmcsd-0
>         >     >     > > media listener: event = PARTITION INQUIRY, state =
>         >     SUCCESS, src =
>         >     >     > > /dev/mmcsd-0
>         >     >     > > media listener: event = PARTITION ATTACH, state
>         = INQUIRY,
>         >     src =
>         >     >     > > /dev/mmcsd-0
>         >     >     > > media listener: event = PARTITION ATTACH, state
>         = SUCCESS,
>         >     src =
>         >     >     > > /dev/mmcsd-0, dest = /dev/mmcsd-0-0
>         >     >     > > media listener: event = MOUNT, state = INQUIRY,
>         src =
>         >     /dev/mmcsd-0-0
>         >     >     > > media listener: event = MOUNT, state = SUCCESS,
>         src =
>         >     >     /dev/mmcsd-0-0,
>         >     >     > > dest = /media/mmcsd-0-0
>         >     >     > > media listener: event = DISK ATTACH, state =
>         INQUIRY, src
>         >     = mmcsd
>         >     >     > > media listener: event = DISK ATTACH, state =
>         SUCCESS, src =
>         >     >     mmcsd, dest
>         >     >     > > = /dev/mmcsd-1
>         >     >     > > media listener: event = MOUNT, state = INQUIRY,
>         src =
>         >     /dev/mmcsd-1
>         >     >     > > mmcsd1: 4GB <MMCHC MMC04G 5.8 SN 160D224B MFG
>         09/2014 by 112
>         >     >     0x0000> at
>         >     >     > > mmc1 48.0MHz/8bit/65535-block
>         >     >     > > media listener: event = MOUNT, state = FAILED, src =
>         >     /dev/mmcsd-1
>         >     >     > > media listener: event = PARTITION INQUIRY, state =
>         >     INQUIRY, src =
>         >     >     > > /dev/mmcsd-1
>         >     >     > > media listener: event = PARTITION INQUIRY, state
>         = FAILED,
>         >     src =
>         >     >     > > /dev/mmcsd-1
>         >     >     > > media listener: event = DISK ATTACH, state =
>         INQUIRY, src =
>         >     >     mmcsd1boot
>         >     >     > > mmcsd1boot0: 2MB partion 1 at mmcsd1
>         >     >     > > mmcsd1boot1: 2MB partion 2 at mmcsd1
>         >     >     > > mmcsd1rpmb: 131kB partion 3 at mmcsd1
>         >     >     > >
>         >     >     > >
>         >     >     > > On 13/08/2019 13:30, Nils Hölscher wrote:
>         >     >     > > > Hi,
>         >     >     > > >
>         >     >     > > > Thanks for the help.
>         >     >     > > > I tried to use your code, but I always get
>         "ERROR: SD
>         >     could not be
>         >     >     > > > mounted after timeout".
>         >     >     > > > Even after raising the waiting time.
>         >     >     > > >
>         >     >     > > > The sources I use start here:
>         >     >     > > >
>         >   
>          https://github.com/nilhoel1/rtems-pru/blob/pruss-shell/main.c#L110
>         >     >     > > >
>         >     >     > > > And my uart output is:
>         >     >     > > > ""
>         >     >     > > > waiting for SD...
>         >     >     > > >
>         >     >     > > > usbus0: 480Mbps High Speed USB v2.0
>         >     >     > > > usbus1: 480Mbps High Speed USB v2.0
>         >     >     > > > media listener: event = DISK ATTACH, state =
>         INQUIRY,
>         >     src = mmcsd
>         >     >     > > > media listener: event = DISK ATTACH, state =
>         SUCCESS, src =
>         >     >     mmcsd, dest
>         >     >     > > > = /dev/mmcsd-0
>         >     >     > > > media listener: event = MOUNT, state =
>         INQUIRY, src =
>         >     /dev/mmcsd-0
>         >     >     > > > ugen0.1: <Mentor Graphics OTG Root HUB> at usbus0
>         >     >     > > > ugen1.1: <Mentor Graphics OTG Root HUB> at usbus1
>         >     >     > > > uhub0: <Mentor Graphics OTG Root HUB, class
>         9/0, rev
>         >     >     2.00/1.00, addr 1>
>         >     >     > > > on usbus0
>         >     >     > > > uhub1: <Mentor Graphics OTG Root HUB, class
>         9/0, rev
>         >     >     2.00/1.00, addr 1>
>         >     >     > > > on usbus1
>         >     >     > > > media listener: event = MOUNT, state = FAILED,
>         src =
>         >     /dev/mmcsd-0
>         >     >     > > > media listener: event = PARTITION INQUIRY, state =
>         >     INQUIRY, src =
>         >     >     > > > /dev/mmcsd-0
>         >     >     > > > media listener: event = PARTITION INQUIRY, state =
>         >     SUCCESS, src =
>         >     >     > > > /dev/mmcsd-0
>         >     >     > > > media listener: event = PARTITION ATTACH, state =
>         >     INQUIRY, src =
>         >     >     > > > /dev/mmcsd-0
>         >     >     > > > media listener: event = PARTITION ATTACH, state =
>         >     SUCCESS, src =
>         >     >     > > > /dev/mmcsd-0, dest = /dev/mmcsd-0-0
>         >     >     > > > media listener: event = MOUNT, state =
>         INQUIRY, src =
>         >     >     /dev/mmcsd-0-0
>         >     >     > > > media listener: event = MOUNT, state = FAILED,
>         src =
>         >     >     /dev/mmcsd-0-0
>         >     >     > > > media listener: event = DISK ATTACH, state =
>         INQUIRY,
>         >     src = mmcsd
>         >     >     > > > media listener: event = DISK ATTACH, state =
>         SUCCESS, src =
>         >     >     mmcsd, dest
>         >     >     > > > = /dev/mmcsd-1
>         >     >     > > > media listener: event = MOUNT, state =
>         INQUIRY, src =
>         >     /dev/mmcsd-1
>         >     >     > > > media listener: event = MOUNT, state = FAILED,
>         src =
>         >     /dev/mmcsd-1
>         >     >     > > > media listener: event = PARTITION INQUIRY, state =
>         >     INQUIRY, src =
>         >     >     > > > /dev/mmcsd-1
>         >     >     > > > media listener: event = PARTITION INQUIRY, state =
>         >     SUCCESS, src =
>         >     >     > > > /dev/mmcsd-1
>         >     >     > > > media listener: event = PARTITION ATTACH, state =
>         >     INQUIRY, src =
>         >     >     > > > /dev/mmcsd-1
>         >     >     > > > media listener: event = PARTITION ATTACH, state =
>         >     SUCCESS, src =
>         >     >     > > > /dev/mmcsd-1, dest = /dev/mmcsd-1-0
>         >     >     > > > media listener: event = MOUNT, state =
>         INQUIRY, src =
>         >     >     /dev/mmcsd-1-0
>         >     >     > > > media listener: event = MOUNT, state = FAILED,
>         src =
>         >     >     /dev/mmcsd-1-0
>         >     >     > > > media listener: event = DISK ATTACH, state =
>         INQUIRY, src =
>         >     >     mmcsd1boot
>         >     >     > > > uhub0: 1 port with 1 removable, self powered
>         >     >     > > > uhub1: 1 port with 1 removable, self powered
>         >     >     > > > ERROR: SD could not be mounted after timeout
>         >     >     > > > ""
>         >     >     > > >
>         >     >     > > > Thanks,
>         >     >     > > > Nils
>         >     >     > > >
>         >     >     > > > On Mon, 12 Aug 2019 at 18:01, Christian Mauderer
>         >     >     <list at c-mauderer.de <mailto:list at c-mauderer.de>
>         <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>>
>         >     <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>
>         <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>>>
>         >     >     > > > <mailto:list at c-mauderer.de
>         <mailto:list at c-mauderer.de> <mailto:list at c-mauderer.de
>         <mailto:list at c-mauderer.de>>
>         >     <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>
>         <mailto:list at c-mauderer.de <mailto:list at c-mauderer.de>>>>> wrote:
>         >     >     > > >
>         >     >     > > >     On 12/08/2019 07:28, Nils Hölscher wrote:
>         >     >     > > >     > Hi,
>         >     >     > > >     >
>         >     >     > > >     > Can anyone help me with this?
>         >     >     > > >     > I need to access the BBB's SD-Card, so
>         that I can load
>         >     >     my pru
>         >     >     > > >     example on
>         >     >     > > >     > the pru.
>         >     >     > > >     >
>         >     >     > > >     > Thanks,
>         >     >     > > >     > Nils
>         >     >     > > >     >
>         >     >     > > >
>         >     >     > > >     Hello Nils,
>         >     >     > > >
>         >     >     > > >     take a look at the following application:
>         >     >     > > >
>         >     >     > > >   
>         >     >   
>         >   
>            https://gitlab.com/c-mauderer/rtems-bbb/blob/master/apps/wifi-sample/init.c#L64
>         >     >     > > >
>         >     >     > > >   
>         >     >   
>         >   
>            https://gitlab.com/c-mauderer/rtems-bbb/blob/master/apps/wifi-sample/libbsdhelper.c#L122
>         >     >     > > >
>         >     >     > > >     You should mainly need the stuff from the
>         >     >     libbsdhelper_init_sd_card()
>         >     >     > > >     and libbsdhelper_wait_for_sd().
>         >     >     > > >
>         >     >     > > >     Please note that the SD card needs quite
>         some time to
>         >     >     initialize on BBB.
>         >     >     > > >     I haven't had a look at it why that is the
>         case.
>         >     >     > > >
>         >     >     > > >     Best regards
>         >     >     > > >
>         >     >     > > >     Christian
>         >     >     > > >
>         >     >     > > >
>         >     >     > > > _______________________________________________
>         >     >     > > > users mailing list
>         >     >     > > > users at rtems.org <mailto:users at rtems.org>
>         <mailto:users at rtems.org <mailto:users at rtems.org>>
>         >     <mailto:users at rtems.org <mailto:users at rtems.org>
>         <mailto:users at rtems.org <mailto:users at rtems.org>>>
>         >     >     > > > http://lists.rtems.org/mailman/listinfo/users
>         >     >     > > >
>         >     >     > > _______________________________________________
>         >     >     > > users mailing list
>         >     >     > > users at rtems.org <mailto:users at rtems.org>
>         <mailto:users at rtems.org <mailto:users at rtems.org>>
>         >     <mailto:users at rtems.org <mailto:users at rtems.org>
>         <mailto:users at rtems.org <mailto:users at rtems.org>>>
>         >     >     > > http://lists.rtems.org/mailman/listinfo/users
>         >     >     >
>         >     >
>         >     >     --
>         >     >     --
>         >     >     --------------------------------------------
>         >     >     embedded brains GmbH
>         >     >     Herr Christian Mauderer
>         >     >     Dornierstr. 4
>         >     >     D-82178 Puchheim
>         >     >     Germany
>         >     >     email: christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>
>         >     <mailto:christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>>
>         >     >     <mailto:christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>
>         >     <mailto:christian.mauderer at embedded-brains.de
>         <mailto:christian.mauderer at embedded-brains.de>>>
>         >     >     Phone: +49-89-18 94 741 - 18
>         >     >     Fax:   +49-89-18 94 741 - 08
>         >     >     PGP: Public key available on request.
>         >     >
>         >     >     Diese Nachricht ist keine geschäftliche Mitteilung
>         im Sinne
>         >     des EHUG.
>         >     >
>         >     >
>         >     > _______________________________________________
>         >     > users mailing list
>         >     > users at rtems.org <mailto:users at rtems.org>
>         <mailto:users at rtems.org <mailto:users at rtems.org>>
>         >     > http://lists.rtems.org/mailman/listinfo/users
>         >     >
>         >
> 



More information about the devel mailing list