Rtems_fsmount dosfs hanging
Andre Marques
andre.lousa.marques at gmail.com
Mon May 12 16:23:32 UTC 2014
Hello,
I have used the pc386 BSP to mount the card (before your suggestions)
using the fileio sample and it could read the card contents perfectly.
Then I filled the card with zeros using dd on Linux, modified the fileio
sample to format the card with msdos_format(dev, NULL) and then mounted
it on the pc 386 BSP fileio sample and I could write and read the card.
On Linux I set the card with the necessary files for Raspberry, and when
my driver tries to mount the card on the Raspberry Pi it reads the first
2 blocks (now 0 and 1, because the card has no partition table) and
hangs, just as before.
I guess my driver is having some reading problems.
On 05/05/14 19:30, Andrey Mozzhuhin wrote:
> You can try to use SD Card in opposite direction:
> 0) fill SD Card with zeroes;
> 1) format partition under RTEMS with msdos_format() function;
> 2) check that PC can read/write this SD Card;
> 3) if PC fails to mount this partition - dump SD Card and check that
> all data is on right sectors.
>
>
>
> 2014-05-05 22:28 GMT+04:00 Andrey Mozzhuhin <nopscmn at gmail.com
> <mailto:nopscmn at gmail.com>>:
>
> Hi, Andre
>
> You can try to use SD Card in opposite direction:
> 0) fill SD Card with zeroes;
> 1) format partition under RTEMS with msdos_format() function;
> 2) check that PC can read/write this SD Card;
> 3) if PC fails to mount this partition - dump SD Card and check
> that all data is on right sectors.
>
>
>
> 2014-05-05 13:52 GMT+04:00 Andre Marques
> <andre.lousa.marques at gmail.com
> <mailto:andre.lousa.marques at gmail.com>>:
>
> Hello,
>
> Following the problem in
>
> http://www.rtems.org/pipermail/rtems-devel/2014-April/006585.html
>
> I am now trying to mount the SD card partitions on RTEMS.
>
> Summarizing the process:
>
> 1. rtems_io_register_driver (by calling my driver with
> CONFIGURE_APPLICATION_EXTRA_DRIVERS on hello sample)
>
> 2. rtems_filesystem_make_dev_t (to get the device file)
>
> 3. rtems_disk_io_initialize
>
> 4. rtems_disk_create_phys (to create the disk, at /dev/sdc0)
>
> 5. rtems_bdpart_register_from_disk (to read and register the
> partitions)
>
> 6. rtems_fsmount (to mount the partitions)
>
> For rtems_fsmount I am providing the following fs_table:
>
> rtems_fstab_entry fs_table [] = {
> {
> .source = "/dev/sdc0",
> .target = "/mnt/p1",
> .type = "dosfs",
> .options = RTEMS_FILESYSTEM_READ_WRITE,
> .report_reasons = RTEMS_FSTAB_ANY,
> .abort_reasons = RTEMS_FSTAB_OK
> },{
> .source = "/dev/sdc01",
> .target = "/mnt/p2",
> .type = "dosfs",
> .options = RTEMS_FILESYSTEM_READ_WRITE,
> .report_reasons = RTEMS_FSTAB_ANY,
> .abort_reasons = RTEMS_FSTAB_NONE
> }
> };
>
> The SD card has only one partition starting at block number 8192.
>
> After I call rtems_fsmount it calls my driver to read block
> 8192 and 8193 and then hangs.
>
> I have tested the driver and It seems to have no problem
> reading single or multiple blocks.
>
> Any tips?
>
> Also I am using the following confdefs configuration (some
> values are exaggerated):
>
> #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
> #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
> #define CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
>
> #define CONFIGURE_FILESYSTEM_DOSFS
> #define CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM
>
> #define CONFIGURE_APPLICATION_EXTRA_DRIVERS
> SD_CARD_DRIVER_TABLE_ENTRY
>
> #define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 20
>
> #define CONFIGURE_MAXIMUM_TASKS 2
> #define CONFIGURE_MAXIMUM_DRIVERS 10
>
> #define CONFIGURE_RTEMS_INIT_TASKS_TABLE
>
> #define CONFIGURE_INIT_TASK_STACK_SIZE (32 * 1024)
>
> #define CONFIGURE_INITIAL_EXTENSIONS RTEMS_TEST_INITIAL_EXTENSION
>
> #define CONFIGURE_INIT
>
> --André Marques
>
> _______________________________________________
> rtems-devel mailing list
> rtems-devel at rtems.org <mailto:rtems-devel at rtems.org>
> http://www.rtems.org/mailman/listinfo/rtems-devel
>
>
>
>
>
> _______________________________________________
> rtems-devel mailing list
> rtems-devel at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20140512/601c0d31/attachment-0001.html>
More information about the devel
mailing list