Re: [PATCH 5/5] add module parameters for default values
flat view
From: Hans Verkuil <hidden>
Date: 2018-02-06 21:31:18
Also in:
linux-media
On 02/06/2018 10:01 PM, Florian Echtler wrote:
quoted hunk ↗ jump to hunk
To allow setting custom parameters for the sensor directly at startup, the three primary controls are exposed as module parameters in this patch. Signed-off-by: Florian Echtler <redacted> --- drivers/input/touchscreen/sur40.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)diff --git a/drivers/input/touchscreen/sur40.c b/drivers/input/touchscreen/sur40.c index 66ef7e6..d1fcb95 100644 --- a/drivers/input/touchscreen/sur40.c +++ b/drivers/input/touchscreen/sur40.c@@ -167,6 +167,17 @@ struct sur40_image_header { #define SUR40_BACKLIGHT_MIN 0x00 #define SUR40_BACKLIGHT_DEF 0x01 +/* module parameters */ +static uint brightness = SUR40_BRIGHTNESS_DEF; +module_param(brightness, uint, 0644); +MODULE_PARM_DESC(brightness, "set default brightness"); +static uint contrast = SUR40_CONTRAST_DEF; +module_param(contrast, uint, 0644); +MODULE_PARM_DESC(contrast, "set default contrast"); +static uint gain = SUR40_GAIN_DEF; +module_param(gain, uint, 0644); +MODULE_PARM_DESC(contrast, "set default gain");
contrast -> gain Isn't 'initial gain' better than 'default gain'? If I load this module with gain=X, will the gain control also start off at X? I didn't see any code for that. It might be useful to add the allowed range in the description. E.g.: "set initial gain, range=0-255". Perhaps mention even the default value, but I'm not sure if that's really needed. Regards, Hans
quoted hunk ↗ jump to hunk
+ static const struct v4l2_pix_format sur40_pix_format[] = { { .pixelformat = V4L2_TCH_FMT_TU08,@@ -374,6 +385,11 @@ static void sur40_open(struct input_polled_dev *polldev) dev_dbg(sur40->dev, "open\n"); sur40_init(sur40); + + /* set default values */ + sur40_set_irlevel(sur40, brightness & 0xFF); + sur40_set_vsvideo(sur40, ((contrast & 0x0F) << 4) | (gain & 0x0F)); + sur40_set_preprocessor(sur40, SUR40_BACKLIGHT_DEF); } /* Disable device, polling has stopped. */