misc: xilinx_sdfec: Add ability to get/set config
- Add capability to get SD-FEC config data using ioctl XSDFEC_GET_CONFIG. - Add capability to set SD-FEC data order using ioctl SDFEC_SET_ORDER. - Add capability to set SD-FEC bypass option using ioctl XSDFEC_SET_BYPASS. - Add capability to set SD-FEC active state using ioctl XSDFEC_IS_ACTIVE. Tested-by: Dragan Cvetic <dragan.cvetic@xilinx.com> Signed-off-by: Derek Kiernan <derek.kiernan@xilinx.com> Signed-off-by: Dragan Cvetic <dragan.cvetic@xilinx.com> Link: https://lore.kernel.org/r/1564216438-322406-5-git-send-email-dragan.cvetic@xilinx.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
20ec628e80
commit
77dd39d924
@@ -287,6 +287,19 @@ struct xsdfec_ldpc_param_table_sizes {
|
||||
*/
|
||||
#define XSDFEC_ADD_LDPC_CODE_PARAMS \
|
||||
_IOW(XSDFEC_MAGIC, 5, struct xsdfec_ldpc_params)
|
||||
/**
|
||||
* DOC: XSDFEC_GET_CONFIG
|
||||
* @Parameters
|
||||
*
|
||||
* @struct xsdfec_config *
|
||||
* Pointer to the &struct xsdfec_config that contains the current
|
||||
* configuration settings of the SD-FEC Block
|
||||
*
|
||||
* @Description
|
||||
*
|
||||
* ioctl that returns SD-FEC core configuration
|
||||
*/
|
||||
#define XSDFEC_GET_CONFIG _IOR(XSDFEC_MAGIC, 6, struct xsdfec_config)
|
||||
/**
|
||||
* DOC: XSDFEC_GET_TURBO
|
||||
* @Parameters
|
||||
@@ -300,4 +313,48 @@ struct xsdfec_ldpc_param_table_sizes {
|
||||
* ioctl that returns SD-FEC turbo param values
|
||||
*/
|
||||
#define XSDFEC_GET_TURBO _IOR(XSDFEC_MAGIC, 7, struct xsdfec_turbo)
|
||||
/**
|
||||
* DOC: XSDFEC_SET_ORDER
|
||||
* @Parameters
|
||||
*
|
||||
* @struct unsigned long *
|
||||
* Pointer to the unsigned long that contains a value from the
|
||||
* @enum xsdfec_order
|
||||
*
|
||||
* @Description
|
||||
*
|
||||
* ioctl that sets order, if order of blocks can change from input to output
|
||||
*
|
||||
* This can only be used when the driver is in the XSDFEC_STOPPED state
|
||||
*/
|
||||
#define XSDFEC_SET_ORDER _IOW(XSDFEC_MAGIC, 8, unsigned long)
|
||||
/**
|
||||
* DOC: XSDFEC_SET_BYPASS
|
||||
* @Parameters
|
||||
*
|
||||
* @struct bool *
|
||||
* Pointer to bool that sets the bypass value, where false results in
|
||||
* normal operation and false results in the SD-FEC performing the
|
||||
* configured operations (same number of cycles) but output data matches
|
||||
* the input data
|
||||
*
|
||||
* @Description
|
||||
*
|
||||
* ioctl that sets bypass.
|
||||
*
|
||||
* This can only be used when the driver is in the XSDFEC_STOPPED state
|
||||
*/
|
||||
#define XSDFEC_SET_BYPASS _IOW(XSDFEC_MAGIC, 9, bool)
|
||||
/**
|
||||
* DOC: XSDFEC_IS_ACTIVE
|
||||
* @Parameters
|
||||
*
|
||||
* @struct bool *
|
||||
* Pointer to bool that returns true if the SD-FEC is processing data
|
||||
*
|
||||
* @Description
|
||||
*
|
||||
* ioctl that determines if SD-FEC is processing data
|
||||
*/
|
||||
#define XSDFEC_IS_ACTIVE _IOR(XSDFEC_MAGIC, 10, bool)
|
||||
#endif /* __XILINX_SDFEC_H__ */
|
||||
|
||||
Reference in New Issue
Block a user