Re: [PATCH 6/9] staging: panel: Make two more module params read-only

From: Mariusz Gorski
Date: Tue Nov 18 2014 - 16:50:46 EST


On Tue, Nov 18, 2014 at 10:20:34PM +0100, Willy Tarreau wrote:
> On Tue, Nov 18, 2014 at 09:56:11PM +0100, Mariusz Gorski wrote:
> > Make keypad_type and lcd_type module params read-only.
> > This step also starts making it more clear what is
> > the precedence of device params coming from different
> > sources (device profile, runtime module param values etc).
> >
> > Signed-off-by: Mariusz Gorski <marius.gorski@xxxxxxxxx>
> > ---
> > drivers/staging/panel/panel.c | 71 ++++++++++++++++++++++---------------------
> > 1 file changed, 37 insertions(+), 34 deletions(-)
> >
> > diff --git a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c
> > index 7f2f5f8..5b4f0a4 100644
> > --- a/drivers/staging/panel/panel.c
> > +++ b/drivers/staging/panel/panel.c
> > @@ -229,6 +229,9 @@ static struct {
> > bool enabled;
> > } lcd;
> >
> > +/* Needed only for init */
> > +static int selected_lcd_type = NOT_SET;
> > +
> > /* contains the LCD config state */
> > static unsigned long int lcd_flags;
> > /* contains the LCD X offset */
> > @@ -1417,7 +1420,7 @@ static void panel_lcd_print(const char *s)
> > /* initialize the LCD driver */
> > static void lcd_init(void)
> > {
> > - switch (lcd_type) {
> > + switch (selected_lcd_type) {
>
> (...)
>
> stupid question : why not move that to the lcd struct you just
> created instead of creating a new variable ? It would make sense
> to me to have lcd.type here just like you did with enabled.
> Same for keypad.
>
> Willy
>

I get your point here. This var is here only because it's set
in init_panel_module() and then used in lcd_init(). So it's needed
really only for the init code. It doesn't directly_ describe the
lcd's state, so I decided to keep it out.

Thanks,
Mariusz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/