File system, RTEMS, RTOS, Software

Setting up YAFFS2 and JFFS2 on RTEMS with Flash Simulated on a RAM-Disk

Hi all, In this post, we’ll look forward to setting up flash file systems namely JFFS2 and YAFFS2 on RTEMS with flash simulated on a RAM-disk. For file system benchmarking purposes, we didn’t actually use them on a real flash(as to eliminate the effect of flash driver’s performance) but implementing them on a real flash won’t be very different from the process given in the later sections of this post. So, let’s begin with JFFS2 first: JFFS2 on RTEMS First reference you will see is of testsuites/fstests/jffs2_support/fs_support.c . Configuration here works up to a large extent unless the size of…

Continue Reading

GSoC, RTEMS, Software

GSoC 2018: Final Report

This is the final report of the work done under GSoC’18 with the RTEMS community. I’ll begin with a summary of all the work done during this summer and will then move towards the corresponding code and documentation developed throughout the timeline.   Porting SDIO driver to RTEMS and benchmarking Student:- Udit Kumar Agarwal Mentors:- Christian Mauderer, Punit Vara Original proposal link: Here Weekly updates:- https://devel.rtems.org/wiki/GSoC/2018#UditkumarAgarwal Project tickets:-  ticket#3429, ticket#3430, ticket#3428 Github Repository:– https://github.com/madaari/GSoC-rtems-18 ABSTRACT RTEMS, being an open-source hard real-time operating system, is already supported by a vast community of developers, hobbyists, and industrialists. With its full application, it…

Continue Reading

ARM, Benchmark, File system, FIO, GSoC, RTEMS, Software

Benchmarking RTEMS Filesystems using FIO

Hi, In this post we will explore FIO’s RTEMS port and how it can be used to benchmark RTEMS filesystems and drivers. First, let’s have a quick look at all the RTEMS filesystems: RTEMS FILESYSTEMS RTEMS supports mainly two types of filesystems: Network and Physical fs. Benchmarking support for networking filesystems isn’t yet available. However, nearly every other physical filesystem can be benchmarked and contrasted. Heap-based file systems are those which uses malloc() for file allocation. In other words, they reside completely on heap memory. These are mainly used to provide basic directory/file management even if there is no dedicated…

Continue Reading

CAM, GSoC, mmccam, RTEMS, SDIO

RTEMS SDIO driver: Current progress

Hi, this post mainly concerns with the current progress of SDIO driver’s implementation on RTEMS. In a nutshell, driver is able to detect, initialize the type of card. However, the part concerned with registering the partitions of the card as RTEMS disks is still buggy. So, I’ll discuss some of the bugs which were previously resolved and the ones that are still left. Starting with a very short introduction of how MMCCAM driver is being interfaced with SDHCI driver: Part 1: Interfacing Complete interfacing task is done mainly via these two files: nexus_devices.h #ifdef RTEMS_BSD_MODULE_MMCCAM SYSINIT_MODULE_REFERENCE(cam); SYSINIT_MODULE_REFERENCE(mmcprobe); SYSINIT_MODULE_REFERENCE(sdda); #endif /*…

Continue Reading