[PATCH V2 3/5] DCC: Added the sysfs entries for DCC(Data Capture and Compare) driver

Stephen Boyd swboyd at chromium.org
Mon Mar 29 21:09:33 BST 2021


Quoting Souradeep Chowdhury (2021-03-25 01:02:34)
> The DCC is a DMA engine designed to store register values either in
> case of a system crash or in case of software triggers manually done
> by the user.Using DCC hardware and the sysfs interface of the driver
> the user can exploit various functionalities of DCC.The user can specify
> the register addresses,the values of which is stored by DCC in it's
> dedicated SRAM.The register addresses can be used either to read from,
> write to,first read and store value and then write or to loop.All these
> options can be exploited using the sysfs interface given to the user.
> Following are the sysfs interfaces exposed in DCC driver which are
> documented
> 1)trigger
> 2)config
> 3)config_write
> 4)config_reset
> 5)enable
> 6)rd_mod_wr
> 7)loop
> 
> Signed-off-by: Souradeep Chowdhury <schowdhu at codeaurora.org>
> ---
>  Documentation/ABI/testing/sysfs-driver-dcc | 114 +++++++++++++++++++++++++++++

Please combine this with the driver patch.

>  1 file changed, 114 insertions(+)
>  create mode 100644 Documentation/ABI/testing/sysfs-driver-dcc

Perhaps this should be an ioctl interface instead of a sysfs interface?

> 
> diff --git a/Documentation/ABI/testing/sysfs-driver-dcc b/Documentation/ABI/testing/sysfs-driver-dcc
> new file mode 100644
> index 0000000..05d24f0
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-driver-dcc
> @@ -0,0 +1,114 @@
> +What:           /sys/bus/platform/devices/.../trigger
> +Date:           March 2021
> +Contact:        Souradeep Chowdhury <schowdhu at codeaurora.org>
> +Description:
> +               This is the sysfs interface for manual software
> +               triggers.The user can simply enter a 1 against
> +               the sysfs file and enable a manual trigger.
> +               Example:
> +               echo  1 > /sys/bus/platform/devices/.../trigger
> +
> +What:           /sys/bus/platform/devices/.../enable
> +Date:           March 2021
> +Contact:        Souradeep Chowdhury <schowdhu at codeaurora.org>
> +Description:
> +               This sysfs interface is used for enabling the
> +               the dcc hardware.Without this being set to 1,

Space after period please.

> +               the dcc hardware ceases to function.
> +               Example:
> +               echo  0 > /sys/bus/platform/devices/.../enable
> +               (disable interface)
> +               echo  1 > /sys/bus/platform/devices/.../enable
> +               (enable interface)
> +
> +What:           /sys/bus/platform/devices/.../config
> +Date:           March 2021
> +Contact:        Souradeep Chowdhury <schowdhu at codeaurora.org>
> +Description:
> +               This is the most commonly used sysfs interface
> +               file and this basically stores the addresses of
> +               the registers which needs to be read in case of
> +               a hardware crash or manual software triggers.
> +               Example:
> +               echo  0x80000010 10 > /sys/bus/platform/devices/../config
> +               This specifies that 10 words starting from address
> +               0x80000010 is to be read.In case there are no words to be
> +               specified we can simply enter the address.
> +
> +What:           /sys/bus/platform/devices/.../config_write
> +Date:           March 2021
> +Contact:        Souradeep Chowdhury <schowdhu at codeaurora.org>
> +Description:
> +               This file allows user to write a value to the register
> +               address given as argument.The values are entered in the
> +               form of <register_address> <value>.The reason for this
> +               feature of dcc is that for accessing certain registers
> +               it is necessary to set some bits of soe other register.

s/soe/some/?

> +               That is achievable by giving DCC this privelege.

s/privelege/privilege/

> +               Example:
> +               echo 0x80000000 0xFF > /sys/bus/platform/devices/.../config_write
> +
> +What:           /sys/bus/platform/devices/.../config_reset
> +Date:           March 2021
> +Contact:        Souradeep Chowdhury <schowdhu at codeaurora.org>
> +Description:
> +               This file is used to reset the configuration of
> +               a dcc driver to the default configuration.
> +               Example:
> +               echo  1 > /sys/bus/platform/devices/.../config_reset
> +



More information about the linux-arm-kernel mailing list