Linux MIPS Architecture development
 help / color / mirror / Atom feed
* Re: [RFC] The driver model, I2C and gpio provision on Sharp SL-C1000 (Akita)
       [not found] <20051029190819.GB657@openzaurus.ucw.cz>
@ 2005-11-02 19:44 ` Andy Isaacson
  2005-11-02 22:52   ` Russell King
  0 siblings, 1 reply; 2+ messages in thread
From: Andy Isaacson @ 2005-11-02 19:44 UTC (permalink / raw)
  To: Pavel Machek; +Cc: Richard Purdie, LKML, Russell King, Greg KH, linux-mips

On Sat, Oct 29, 2005 at 09:08:19PM +0200, Pavel Machek wrote:
> > I2C drivers appear relatively late in the boot procedure and changing
> > that isn't practical. I therefore ended up writing akita-ioexp which
> 
> It seems that making i2c init early is only sane choice. I realize PC people
> will hate it... but apart from that, why is it impractical?

FWIW, I have also run into this "I need I2C early in boot, but it's not
inited until late" on SiByte (arch/mips/sibyte/{sb1250,bcm1480}/setup.c).  
For the time being in the linux-mips tree we simply have two drivers
talking to the I2C interface - sibyte/swarm/rtc_* and i2c-sibyte.c,
and they are currently lacking even any trivial locking.  We haven't
seen any problems yet but that's due to limited exercise - the default
config doesn't hook up any drivers for the other chips on I2C.

How do other arches that have I2C RTCs deal with this problem?  Or is
there something wrong with how arch/mips/kernel/time.c:time_init deals
with the rtc?

> > There is a fundamental problem with the lack of a proper gpio interface
> > in Linux. Every driver does something different with them (be it pxa
> > specific gpios, SCOOP gpios, those on a IO expander, those on a video
> > chip (w100fb springs to mind) to name just the Zaurus specific ones.
> 
> Yup. GPIOs are not problem on i386, so noone solved this one :-(.

I would also be overjoyed to have a GPIO infrastructure to plug into.

(And I would say "GPIOs are not used on PCs"; I am confident the Geode
driving the seat-back TV on this Song flight has GPIOs...)

-andy

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [RFC] The driver model, I2C and gpio provision on Sharp SL-C1000 (Akita)
  2005-11-02 19:44 ` [RFC] The driver model, I2C and gpio provision on Sharp SL-C1000 (Akita) Andy Isaacson
@ 2005-11-02 22:52   ` Russell King
  0 siblings, 0 replies; 2+ messages in thread
From: Russell King @ 2005-11-02 22:52 UTC (permalink / raw)
  To: Andy Isaacson; +Cc: Pavel Machek, Richard Purdie, LKML, Greg KH, linux-mips

On Wed, Nov 02, 2005 at 11:44:53AM -0800, Andy Isaacson wrote:
> On Sat, Oct 29, 2005 at 09:08:19PM +0200, Pavel Machek wrote:
> > > I2C drivers appear relatively late in the boot procedure and changing
> > > that isn't practical. I therefore ended up writing akita-ioexp which
> > 
> > It seems that making i2c init early is only sane choice. I realize PC people
> > will hate it... but apart from that, why is it impractical?
> 
> FWIW, I have also run into this "I need I2C early in boot, but it's not
> inited until late" on SiByte (arch/mips/sibyte/{sb1250,bcm1480}/setup.c).  
> For the time being in the linux-mips tree we simply have two drivers
> talking to the I2C interface - sibyte/swarm/rtc_* and i2c-sibyte.c,
> and they are currently lacking even any trivial locking.  We haven't
> seen any problems yet but that's due to limited exercise - the default
> config doesn't hook up any drivers for the other chips on I2C.
> 
> How do other arches that have I2C RTCs deal with this problem?  Or is
> there something wrong with how arch/mips/kernel/time.c:time_init deals
> with the rtc?

On ARM, where we have I2C RTCs, I tend to leave xtime well alone in
time_init and just setup the timer.  When i2c is initialised, and
the bus and RTC have been detected, I set the time from them at
that point.

I haven't seen any problems with this approach.  In fact, I'd
rather time_init() just setup the timer, and we set the time of
day later during the kernels initialisation.

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:  2.6 Serial core

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-11-02 22:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20051029190819.GB657@openzaurus.ucw.cz>
2005-11-02 19:44 ` [RFC] The driver model, I2C and gpio provision on Sharp SL-C1000 (Akita) Andy Isaacson
2005-11-02 22:52   ` Russell King

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox