[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 1/7] i8042 suspend


On Saturday 03 January 2004 05:03 am, Vojtech Pavlik wrote:
> On Sat, Jan 03, 2004 at 03:56:45AM -0500, Dmitry Torokhov wrote:
> > diff -Nru a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
> > --- a/drivers/input/serio/i8042.c	Sat Jan  3 03:07:29 2004
> > +++ b/drivers/input/serio/i8042.c	Sat Jan  3 03:07:29 2004
> > @@ -746,6 +746,29 @@
> >
> >
> >  /*
> > + * Reset the controller.
> > + */
> > +void i8042_controller_reset(void)
> > +{
> > +	if (i8042_reset) {
> > +		unsigned char param;
> > +
> > +		if (i8042_command(&param, I8042_CMD_CTL_TEST))
> > +			printk(KERN_ERR "i8042.c: i8042 controller reset timeout.\n");
> > +	}
>
> We should be checking the return value from the TEST command as well,
> if we want to use this to initialize the controller on non-x86
> platforms (where i8042.reset is 0).
>
> > -/*
> > - * Reset the controller.
> > - */
> > -
> > -	if (i8042_reset) {
> > -		unsigned char param;
> > +	i8042_controller_reset();
> > +}
> >
> > -		if (i8042_command(&param, I8042_CMD_CTL_TEST))
> > -			printk(KERN_ERR "i8042.c: i8042 controller reset timeout.\n");
> > -	}
>
> This actually introduces a bug, because we don't want to restore the
> CTR setting before we save it, which the new code does.
>

Hmm, I do not see it. i8042_controller_reset() is only called on suspend/
shutdown. The init path where we vigorously testing the hardware and saving
initial CTR value was left intact.

As far as checking the return value we usualy give some leniency on suspend/
shutdown and don't fail the entire process when there are non-clitical errors.

Or am I missing something?

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


この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: