From: Hans de Goede <j.w.r.degoede@hhs.nl>
To: lm-sensors@vger.kernel.org
Subject: Re: [lm-sensors] [PATCH] First cut of a adt7470 driver
Date: Wed, 11 Jul 2007 05:23:39 +0000 [thread overview]
Message-ID: <4694695B.3070300@hhs.nl> (raw)
In-Reply-To: <20070706211144.GI3435@tree.beaverton.ibm.com>
Darrick J. Wong wrote:
> On Sat, Jul 07, 2007 at 10:21:57AM +0200, Hans de Goede wrote:
>
>> Why all the base defines? Why not put the base address directly in the ()
>> macros? You do not seem to use them anywhere else.
>
> I prefer to put all the register and bit-field definitions in one place
> so that later I can construct a map of all known registers after I've
> forgotten which ones the driver talks to and which ones it doesn't. The
> accessor macros that come after that are merely sugar, which is why I
> don't like encoding the base register address directly into the macro.
>
Ok, leave them in then.
>> Are you sure you only want to support revision 2? What are the differences?
>> Shouldn't the driver be able to support other revisions too? Maybe only
>> print a warning when its used with an untested revision?
>
> I don't have a data sheet for other revisions, so the safest thing to do is
> to reject that which we don't know about; an interested user can always
> bypass those safety checks with force_adt7470= at a later point in time
> and post a patch if the driver still works ok.
>
Good point about using the force parameter, ok.
>> Why use read_byte twice in read16, but write_word in write16?
>
> A "16 bit" register is really two 8 bit register reads/writes, and the
> register with the lower address has to be read/written first. Hence the
> weird helper functions.
>
>>> + /* delay is 200ms * number of tmp05 sensors */
>>> + udelay(TEMP_COLLECTION_TIME);
>> ugh, sleep here please.
>
> Would msleep_interruptible() work here? Some informal testing shows
> that it seems to work ok, though I've not subjected it to a rigorous ^C
> test to see if I can hit weird crash conditions.
>
Well msleep_interruptible() can be interrupted (you check the return value for
this) so if a user presses control-C, then your sleep will be cut short. So
either you must be prepared to handle this, or sleep uninterruptible. I would
sleep uninterruptible if I were you, using regular msleep.
Regards,
Hans
_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors
next prev parent reply other threads:[~2007-07-11 5:23 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-06 21:11 [lm-sensors] [PATCH] First cut of a adt7470 driver Darrick J. Wong
2007-07-07 8:21 ` Hans de Goede
2007-07-07 8:23 ` Hans de Goede
2007-07-08 16:53 ` Jean Delvare
2007-07-10 18:59 ` Darrick J. Wong
2007-07-10 23:33 ` Darrick J. Wong
2007-07-11 5:23 ` Hans de Goede [this message]
2007-07-11 12:47 ` Hans de Goede
2007-07-13 12:08 ` Hans de Goede
2007-07-14 14:23 ` Vadim Zeitlin
2007-07-14 20:05 ` Jean Delvare
2007-07-14 20:17 ` Hans de Goede
2007-07-16 20:18 ` Darrick J. Wong
2007-07-16 22:19 ` Philip Pokorny
2007-07-19 16:47 ` Jean Delvare
2007-07-19 16:57 ` Jean Delvare
2007-07-19 17:11 ` Hans de Goede
2007-07-21 20:07 ` Jean Delvare
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4694695B.3070300@hhs.nl \
--to=j.w.r.degoede@hhs.nl \
--cc=lm-sensors@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.