Configfs

Applicable for STM32MP13x lines, STM32MP15x lines

1 Introduction[edit]

Configfs[1] is a RAM-based filesystem that provides the converse of sysfs functionality.

While sysfs provides a filesystem-based view of kernel objects, configfs is a filesystem-based manager of kernel objects or config_items (every object in configfs is a config_item). This means that kernel objects can be created, managed and destroyed from the user space.

2 Installing configs on your target board[edit]

Configfs can be enabled and ready to be used in all STM32MPU Embedded Software distribution, via the Linux® kernel configuration CONFIG_CONFIGFS_FS (set to yes by default):

Symbol: CONFIGFS_FS
Location:
  File systems --->
    Pseudo filesystems -->
      -*- Userspace-driven configuration filesystem

Please refer to Menuconfig or how to configure kernel article for instructions for modifying the configuration and recompiling the Linux kernel image in the Distribution Package context.

3 Getting started[edit]

3.1 How to mount configfs[edit]

Use the following command to mount Configfs at /sys/kernel/config:

 mount -t configfs none /sys/kernel/config

3.2 How to set and manage configfs from Linux kernel drivers and user space[edit]

Refer to the Linux documentation[1] for detailed information.

Configfs is used by the USB framwework. Refer to USB API description for an example.

4 References[edit]