linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Scott Wood <scottwood@freescale.com>
To: Clemens Koller <clemens.koller@anagramm.de>
Cc: Alessandro Zummo <alessandro.zummo@towertech.it>,
	rtc-linux@googlegroups.com, linuxppc-embedded@ozlabs.org
Subject: Re: solved: Re: [rtc-linux] Re: DS1337 RTC on I2C broken.
Date: Mon, 03 Dec 2007 10:48:17 -0600	[thread overview]
Message-ID: <47543351.2080904@freescale.com> (raw)
In-Reply-To: <47542A50.1030208@anagramm.de>

Clemens Koller wrote:
> [OT+sarcasm on]
> 
> So, the time is over, where you just enable a driver in the kernel config and
> the device gets probed and - if it's probed successfully - it usually works.

The problem is the "probed successfully" bit -- i2c can't be 
automatically detected like PCI can, and the probing that was being done 
before was very error-prone.

Thus, there needs to be something describing what hardware is actually 
there, not just what the kernel supports.

> Now, the way is like this:
> 
> - enable the desired driver in the kernel.

As always.

> - check that the platform driver fsl_soc.c (in my case) defines the
>    desired rtc-chip in the i2c_board_info

Once the glue code gets consolidated, it'll just be a one-time thing for 
any given chip to be added to the OF I2C table.

I don't know why it was ever done in platform-specific code.

> - check that the rtc is included in the device tree.

This is the substitute for probing.

> - embed the device tree to the kernel (cuImage)

Or get it from the firmware.

> - boot'n'pray.
> 
> That looks really groundbreaking!
> 
> Now, I cannot use one kernel for two almost identical hardware revisions
> anymore because the rtc's on i2c are different? This must be a joke!

Not at all true.  The kernel just needs to know, at runtime, what 
hardware you actually have.  It uses the device tree for this.

With cuImage, you're limited to one device tree in a given build, though 
you can invoke the wrapper manually to create multiple images.  However, 
cuImage is a compatibility measure; if you use a newer u-boot with 
device tree support, the tree does not need to be statically wrapped in 
the kernel image.

> It seems like I first need to have full device tree support included in
> the boot-loader to be able to duplicate my configuration work to allow
> one kernel to boot on both hardware.

That's the simplest way, but not the only way.  You could also have a 
wrapper platform that chooses the proper device tree based on something 
you detect.

> Hmmm... this just s****!

There are some growing pains, but the old method of blindly poking at 
i2c addresses and hoping that the first driver to ask for a port that 
something responds to is actually the right driver for that port is just 
shit.

-Scott

  reply	other threads:[~2007-12-03 16:48 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-28 18:25 DS1337 RTC on I2C broken Clemens Koller
2007-11-28 18:43 ` Alessandro Zummo
2007-11-28 19:20   ` Clemens Koller
2007-11-28 19:36   ` Clemens Koller
2007-11-28 20:34     ` [rtc-linux] " Alessandro Zummo
2007-11-29 11:24   ` Clemens Koller
2007-11-29 11:34     ` raul.moreno
2007-11-29 12:43       ` Clemens Koller
2007-11-29 20:03   ` Clemens Koller
2007-11-29 20:19     ` Alessandro Zummo
2007-11-30 11:04       ` Clemens Koller
2007-11-30 11:20         ` [rtc-linux] " Alessandro Zummo
2007-11-30 14:12           ` Clemens Koller
2007-12-01 12:24             ` Alessandro Zummo
2007-12-02 20:25             ` Olof Johansson
2007-11-30 18:12           ` Clemens Koller
2007-12-01 12:16             ` Alessandro Zummo
2007-12-03 15:14           ` Clemens Koller
2007-12-03 16:07             ` Bartlomiej Sieka
2007-12-03 16:38               ` Clemens Koller
2007-12-03 16:09             ` solved: " Clemens Koller
2007-12-03 16:48               ` Scott Wood [this message]
2007-12-03 17:41                 ` OT: " Clemens Koller
2007-12-03 18:07                   ` Scott Wood
2007-12-03 19:35                     ` Clemens Koller
2007-12-03 20:05                       ` Grant Likely
2007-12-03 20:46                       ` Scott Wood
2007-12-04 11:42                         ` Clemens Koller
2007-12-04 13:08                           ` Scott Wood
2007-12-04 15:32                             ` Clemens Koller
2007-12-04 16:08                               ` Scott Wood
2007-12-05 10:27                                 ` Clemens Koller
2007-12-04 17:19                               ` Jon Smirl
2007-12-05 10:30                                 ` Clemens Koller

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=47543351.2080904@freescale.com \
    --to=scottwood@freescale.com \
    --cc=alessandro.zummo@towertech.it \
    --cc=clemens.koller@anagramm.de \
    --cc=linuxppc-embedded@ozlabs.org \
    --cc=rtc-linux@googlegroups.com \
    /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;
as well as URLs for NNTP newsgroup(s).