Linux I2C development
 help / color / mirror / Atom feed
From: Jean Delvare <khali-PUYAD+kWke1g9hUCZPvPmw@public.gmane.org>
To: Herbert Poetzl <herbert-dBHVzrDq9nF4Lj/PQRBjDg@public.gmane.org>
Cc: I2C ML <i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org>
Subject: Re: [PATCH] i2c: Floppy controller bus driver (V0.2)
Date: Mon, 18 Aug 2008 20:57:08 +0200	[thread overview]
Message-ID: <20080818205708.324961c4@hyperion.delvare> (raw)
In-Reply-To: <20080818164053.GA32376-ZD0Mn47LIGX0Pe/G4T7+5F6hYfS7NtTn@public.gmane.org>

Hi Herbert,

On Mon, 18 Aug 2008 18:40:53 +0200, Herbert Poetzl wrote:
> On Mon, Aug 18, 2008 at 10:45:39AM +0200, Jean Delvare wrote:
> > On Mon, 18 Aug 2008 05:10:46 +0200, Herbert Poetzl wrote:
> > > diff -NurpP --minimal linux-2.6.27-rc3/drivers/i2c/busses/Kconfig linux-2.6.27-rc3-fi2c-v0.2/drivers/i2c/busses/Kconfig
> > > --- linux-2.6.27-rc3/drivers/i2c/busses/Kconfig	2008-08-15 21:19:24.000000000 +0200
> > > +++ linux-2.6.27-rc3-fi2c-v0.2/drivers/i2c/busses/Kconfig	2008-08-18 03:46:31.000000000 +0200
> > > @@ -490,6 +490,22 @@ config I2C_VERSATILE
> > >  
> > >  comment "External I2C/SMBus adapter drivers"
> > >  
> > > +config I2C_FLOPPY
> > > +	tristate "Floppy controller adapter"
> > > +	select I2C_ALGOBIT
> > > +	default n
> > > +	help
> > > +	  This supports a simple do-it-yourself floppy controller to
> > > +	  I2C adapters using the motor control lines for SDA and SCL,
> > > +	  and the drive change input for SDA readback.
> > > +
> > > +	  This support is also available as a module.  If so, the module
> > > +	  will be called i2c-floppy.
> > > +
> > > +	  If you do not have such a device, and do not plan to build one,
> > > +	  it's safe to say N here. Do not say Y here and to the floppy
> > > +	  driver unless you know exactly what you are doing.
> > 
> > Good point. In fact it would be safer to depend on !BLK_DEV_FD. There's
> > no "if you know exactly what you are doing" that holds: if any of these
> > drivers is built in, the other one _must_ be excluded.
> 
> well, actually not true ... I build both drivers
> as module, and can then decide wether I want to
> attach a floppy or an I2C adapter ... and except
> for the fact that floppy access to the I2C adapter
> is not the best idea, this works perfectly fine

What I propose wouldn't prevent you from doing that. "depend
on !BLK_DEV_FD" means that both drivers can't be built-in. Both drivers
as modules is OK. Remember that the Kconfig language is based on
ternary logic.

> 
> but as far as I know, there is no (sane) way to
> say building both 'M' is fine, but 'Y' is a nono
> (I think that is why many drivers write it this
> way in the help)

There _is_ a way do to this and that's exactly what I proposed.

> 
> making it mutually exclusive is kind of problematic
> as you need to disable one _beforehand_ to see the
> other in the config ...

This is true, but I don't expect this to be a problem in practice. Most
users have the standard floppy driver built as module, so they will see
i2c-floppy and will be able to build it as a module. Worst case is if
the standard floppy driver is built-in, but I don't expect this to be a
popular choice these days, with all the PCs out there without a floppy
disk drive. If this is really a problem, it's easy to add a message in
Kconfig to tell people what they need to do to get access to
i2c-floppy. But I don't expect your driver to be popular enough to
warrant this.

>                          magically disabling the 
> floppy driver from the i2c-floppy is not an option
> either, as the build system doesn't support that

Agreed. Even if the build system could do that, this would be highly
unfriendly.

> 
> so I personally think the 'default n' + warning
> is fine for everyday use, but of course, the final
> call is yours

I'll add the dependency. If I don't, somebody will quickly complain
that floppy support is broken by allyesconfig.

No need to resend, I'll do that in a incremental patch. I think I'll
add a dependency on EXPERIMENTAL as well - after all your driver has
seen little testing so far.

-- 
Jean Delvare

_______________________________________________
i2c mailing list
i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org
http://lists.lm-sensors.org/mailman/listinfo/i2c

  parent reply	other threads:[~2008-08-18 18:57 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-18  3:10 [PATCH] i2c: Floppy controller bus driver (V0.2) Herbert Poetzl
     [not found] ` <20080818031046.GE8052-ZD0Mn47LIGX0Pe/G4T7+5F6hYfS7NtTn@public.gmane.org>
2008-08-18  8:45   ` Jean Delvare
     [not found]     ` <20080818104539.480ba532-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2008-08-18 16:40       ` Herbert Poetzl
     [not found]         ` <20080818164053.GA32376-ZD0Mn47LIGX0Pe/G4T7+5F6hYfS7NtTn@public.gmane.org>
2008-08-18 18:57           ` Jean Delvare [this message]
     [not found]             ` <20080818205708.324961c4-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2008-08-18 19:58               ` Herbert Poetzl

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=20080818205708.324961c4@hyperion.delvare \
    --to=khali-puyad+kwke1g9huczpvpmw@public.gmane.org \
    --cc=herbert-dBHVzrDq9nF4Lj/PQRBjDg@public.gmane.org \
    --cc=i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox