[PATCH 2/6] drm/amd/display: Remove spaces before tabs in amdgpu_dm_hdcp.c
Aurabindo Pillai
aurabindo.pillai at amd.com
Wed Jul 12 16:15:47 UTC 2023
On 6/29/2023 12:46 AM, Srinivasan Shanmugam wrote:
> Conform to Linux kernel coding style.
>
> Reported by checkpatch:
>
> WARNING: please, no space before tabs
>
> And promote sysfs entry for set/get srm to kdoc
>
> Suggested-by: Rodrigo Siqueira <Rodrigo.Siqueira at amd.com>
> Cc: Rodrigo Siqueira <Rodrigo.Siqueira at amd.com>
> Cc: Aurabindo Pillai <aurabindo.pillai at amd.com>
> Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmugam at amd.com>
> ---
> .../amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 50 +++++++++++--------
> 1 file changed, 28 insertions(+), 22 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
> index 5536d17306d0..308f2b0687b5 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
> @@ -576,7 +576,10 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
> }
>
>
> -/* NOTE: From the usermodes prospective you only need to call write *ONCE*, the kernel
> +/**
> + * DOC: Add sysfs interface for set/get srm
> + *
> + * NOTE: From the usermodes prospective you only need to call write *ONCE*, the kernel
> * will automatically call once or twice depending on the size
> *
> * call: "cat file > /sys/class/drm/card0/device/hdcp_srm" from usermode no matter what the size is
> @@ -591,19 +594,19 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
> * cannot throw errors early as it will stop the kernel from writing to sysfs
> *
> * Example 1:
> - * Good SRM size = 5096
> - * first call to write 4096 -> PSP fails
> - * Second call to write 1000 -> PSP Pass -> SRM is set
> + * Good SRM size = 5096
> + * first call to write 4096 -> PSP fails
> + * Second call to write 1000 -> PSP Pass -> SRM is set
> *
> * Example 2:
> - * Bad SRM size = 4096
> - * first call to write 4096 -> PSP fails (This is the same as above, but we don't know if this
> - * is the last call)
> + * Bad SRM size = 4096
> + * first call to write 4096 -> PSP fails (This is the same as above, but we don't know if this
> + * is the last call)
> *
> * Solution?:
> - * 1: Parse the SRM? -> It is signed so we don't know the EOF
> - * 2: We can have another sysfs that passes the size before calling set. -> simpler solution
> - * below
> + * 1: Parse the SRM? -> It is signed so we don't know the EOF
> + * 2: We can have another sysfs that passes the size before calling set. -> simpler solution
> + * below
> *
> * Easy Solution:
> * Always call get after Set to verify if set was successful.
> @@ -612,14 +615,14 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
> * +----------------------+
> * PSP will only update its srm if its older than the one we are trying to load.
> * Always do set first than get.
> - * -if we try to "1. SET" a older version PSP will reject it and we can "2. GET" the newer
> - * version and save it
> + * -if we try to "1. SET" a older version PSP will reject it and we can "2. GET" the newer
> + * version and save it
> *
> - * -if we try to "1. SET" a newer version PSP will accept it and we can "2. GET" the
> - * same(newer) version back and save it
> + * -if we try to "1. SET" a newer version PSP will accept it and we can "2. GET" the
> + * same(newer) version back and save it
> *
> - * -if we try to "1. SET" a newer version and PSP rejects it. That means the format is
> - * incorrect/corrupted and we should correct our SRM by getting it from PSP
> + * -if we try to "1. SET" a newer version and PSP rejects it. That means the format is
> + * incorrect/corrupted and we should correct our SRM by getting it from PSP
> */
> static ssize_t srm_data_write(struct file *filp, struct kobject *kobj, struct bin_attribute *bin_attr, char *buffer,
> loff_t pos, size_t count)
> @@ -681,12 +684,15 @@ static ssize_t srm_data_read(struct file *filp, struct kobject *kobj, struct bin
> return ret;
> }
>
> -/* From the hdcp spec (5.Renewability) SRM needs to be stored in a non-volatile memory.
> +/**
> + * DOC: SRM should be persistent across boot/reboots/suspend/resume/shutdown
> + *
> + * From the hdcp spec (5.Renewability) SRM needs to be stored in a non-volatile memory.
> *
> * For example,
> - * if Application "A" sets the SRM (ver 2) and we reboot/suspend and later when Application "B"
> - * needs to use HDCP, the version in PSP should be SRM(ver 2). So SRM should be persistent
> - * across boot/reboots/suspend/resume/shutdown
> + * if Application "A" sets the SRM (ver 2) and we reboot/suspend and later when Application "B"
> + * needs to use HDCP, the version in PSP should be SRM(ver 2). So SRM should be persistent
> + * across boot/reboots/suspend/resume/shutdown
> *
> * Currently when the system goes down (suspend/shutdown) the SRM is cleared from PSP. For HDCP we need
> * to make the SRM persistent.
> @@ -699,8 +705,8 @@ static ssize_t srm_data_read(struct file *filp, struct kobject *kobj, struct bin
> *
> * Usermode can read/write to/from PSP using the sysfs interface
> * For example:
> - * to save SRM from PSP to storage : cat /sys/class/drm/card0/device/hdcp_srm > srmfile
> - * to load from storage to PSP: cat srmfile > /sys/class/drm/card0/device/hdcp_srm
> + * to save SRM from PSP to storage : cat /sys/class/drm/card0/device/hdcp_srm > srmfile
> + * to load from storage to PSP: cat srmfile > /sys/class/drm/card0/device/hdcp_srm
> */
> static const struct bin_attribute data_attr = {
> .attr = {.name = "hdcp_srm", .mode = 0664},
Reviewed-by: Aurabindo Pillai <aurabindo.pillai at amd.com>
More information about the amd-gfx
mailing list