Subject: Re: CVS commit: src/sys
To: None <thorpej@netbsd.org>
From: Simon Burge <simonb@wasabisystems.com>
List: source-changes
Date: 10/06/2003 13:13:16
Jason R Thorpe wrote:

> Module Name:	src
> Committed By:	thorpej
> Date:		Tue Sep 30 00:35:31 UTC 2003
>
> Log Message:
> 
> New generic I2C framework.  Supports bit-bang and "intelligent" I2C
> interface controllers (of varying intelligence levels).

dev/i2c/files.i2c has:

	+# Dallas DS1307 Real Time Clock
	+device dsrtc
	+attach dsrtc at iic
	+file   dev/i2c/ds1307.c                        dsrtc

Several other ports (cats, evbppc/walnut) also use "dsrtc" for different
types of Dallas RTCs (and were previously listed in sys/dev/DEVNAMES).
Trying to configure a walnut kernel gives:

	sys/arch/evbppc/conf/files.walnut:53: redefinition of `dsrtc'
	sys/arch/evbppc/conf/files.walnut:54: redefinition of `dsrtc'
	WALNUT:224: A dsrtc cannot attach to a pbus
	WALNUT:225: A todclock cannot attach to a dsrtc

and something similar for cats kernels.  The i2c, cats and walnut RTCs
all have completely different register offsets and usages - I'm not
sure that a shared driver makes much sense (in that it would really
degenerate to N separate backends and not really have much common code).
What's the best way of dealing with this?

Simon.
--
Simon Burge                            <simonb@wasabisystems.com>
NetBSD Support and Service:         http://www.wasabisystems.com/