linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Segher Boessenkool <segher@kernel.crashing.org>
To: Gabriel Paubert <paubert@iram.es>
Cc: "linuxppc-dev@ozlabs.org" <linuxppc-dev@ozlabs.org>
Subject: Re: [PATCH 2/8] Add uli1575 pci-bridge sector to MPC8641HPCN dts file.
Date: Sun, 3 Jun 2007 13:42:22 +0200	[thread overview]
Message-ID: <ee4d3e25c4b6ede84483399249929632@kernel.crashing.org> (raw)
In-Reply-To: <20070603101052.GA3313@iram.es>

>>> This said, I'm looking at device trees right now, and I can 
>>> understand
>>> that interrupt-parent of the 8259 is &mpic in mpc8641_hpcn.dts, but
>>> I don't understand at all why it is &pci1 on the mpc85??cds.dts.
>>
>> Perhaps the 8259 IRQ output is routed to a PCI
>> interrupt.  If not, this is just plain wrong.
>
> Maybe, but it ultimately has to go the mpic, no?

Yes, certainly.  A PowerPC CPU has only one connection
to one interrupt controller, everything else hangs below
that one.

>> I have no idea what this whole 8259-ack thing is
>> so I cannot comment further.
>
> It is a way to fetch the vector from the interrupt controller.

[big snip]

Thanks, I did know that stuff, just not the device
tree property :-)

But a great explanation anyway.

> If you need more details, ask me.

That was quite detailed enough, heh :-)

> Now a question: how would you describe the nvram and RTC
> on the PreP boards that I have?
>
> In the residual data I have:
>
> ISA Device, Slot 0, LogicalDev 0: IBM0008, SystemPeripheral, NVRAM, 
> #-1, IndirectNVRAM
>   Device flags 2800: Integrated, Static
>   Packets describing allocated resources:
>     Variable (16 decoded bits) I/O port
>       from 0x0074 to 0x0074, alignment 1, 2 ports
>     Variable (16 decoded bits) I/O port
>       from 0x0077 to 0x0077, alignment 1, 1 ports

This is an IBM NVRAM thing -- write address to ISA I/O
0x74/0x75, read/write a byte from 0x76.

This node should be a child of the "isa" (or isa
compatible) bus, and look something like this:

nvram@i74 {
	device_type = "nvram";
	regs = <1 74 3>;
	compatible = "whatever-chip-this-is";
	#bytes = <2000>; // 8kB, just an example
}

> ISA Device, Slot 0, LogicalDev 0: PNP0B00, SystemPeripheral, 
> RealTimeClock, #-1, interface 129
>   Device flags 2800: Integrated, Static
>   Packets describing allocated resources:
>     Variable (16 decoded bits) I/O port
>       from 0x0074 to 0x0074, alignment 1, 2 ports
>     Variable (16 decoded bits) I/O port
>       from 0x0077 to 0x0077, alignment 1, 1 ports
>     Chip identification: MOT3040
>     Small vendor item type 0x00, data (hex): 01 f8 1f 00 00

The I/O port numbers here are wrong.

rtc@i70 {
	device_type = "rtc";
	reg = <1 70 2>;
	compatible = "pnpPNP,b00";
}

You might want to set the register range to 4 in both
cases, esp. if the chip actually decodes those ranges;
there are no useful registers there though (AFAIK).

> It is the same chip that has the NVRAM and the RTC, only that
> the last 8 bytes of the NVRAM change with time. I've not found
> the last "Small vendor item" described in any doc, but it looks
> like a byte of 1, followed by the offset of the RTC inside the
> NVRAM in little-endian byte order.
>
> But essentially the problem is that I have two logically
> different devices in the same chip.

That isn't a problem -- logically they are both children
of the ISA bus, just describe them like that.  This is
done all the time, just look at some SoC tree ;-)

> Of course the size of
> the nvram should be somewhere (8k-8, starting at 0).

It's implicit from the chip type; the Device Support
Extensions recommended practice defines the "#bytes"
property for nvram devices though.


Segher

  reply	other threads:[~2007-06-03 11:42 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-01 17:48 [PATCH 2/8] Add uli1575 pci-bridge sector to MPC8641HPCN dts file Jon Loeliger
2007-06-01 18:58 ` Segher Boessenkool
2007-06-01 21:45   ` Wade Farnsworth
2007-06-02  8:22     ` Segher Boessenkool
2007-06-02  8:53       ` Gabriel Paubert
2007-06-02  9:01         ` Segher Boessenkool
2007-06-02 19:53           ` Gabriel Paubert
2007-06-02 20:23             ` Segher Boessenkool
2007-06-03  0:01               ` Benjamin Herrenschmidt
2007-06-03  7:41                 ` Segher Boessenkool
2007-06-03  8:33                   ` Gabriel Paubert
2007-06-03  8:57                     ` Segher Boessenkool
2007-06-03  9:12                       ` Benjamin Herrenschmidt
2007-06-03 10:02                         ` Segher Boessenkool
2007-06-03 10:10                       ` Gabriel Paubert
2007-06-03 11:42                         ` Segher Boessenkool [this message]
2007-06-03 12:43                           ` Gabriel Paubert
2007-06-03 14:42                             ` Segher Boessenkool
2007-06-03 18:20                               ` Gabriel Paubert
2007-06-03 18:56                                 ` Segher Boessenkool
2007-06-03  9:07                     ` Benjamin Herrenschmidt
2007-06-03  9:59                       ` Segher Boessenkool
2007-06-03 14:50                     ` Jon Loeliger
2007-06-03 17:27                       ` Segher Boessenkool
2007-06-04 20:27                     ` Andy Fleming
2007-06-04 22:31                       ` Randy Vinson
2007-06-05 19:16                         ` Andy Fleming
2007-06-05 20:28                           ` Randy Vinson
2007-06-06  7:09                         ` Benjamin Herrenschmidt
2007-06-07 16:21                           ` Andy Fleming
2007-06-07 16:53                             ` Segher Boessenkool
2007-06-07 22:12                             ` Benjamin Herrenschmidt
2007-06-08  8:29                               ` Segher Boessenkool
2007-06-08  8:32                                 ` Benjamin Herrenschmidt
2007-06-05  6:05               ` Zang Roy-r61911
2007-06-02 23:52           ` Benjamin Herrenschmidt
2007-06-02 23:51         ` Benjamin Herrenschmidt
2007-06-03  8:59         ` Geert Uytterhoeven
2007-06-04 18:50       ` Jon Loeliger
2007-06-04 19:27         ` Segher Boessenkool
2007-06-01 23:28   ` Benjamin Herrenschmidt
2007-06-01 23:36   ` Jon Loeliger
2007-06-02  0:22     ` Benjamin Herrenschmidt
2007-06-02  8:28       ` Segher Boessenkool
2007-06-02 16:04         ` Jon Loeliger
2007-06-02 20:00           ` Segher Boessenkool
2007-06-02 23:16             ` Benjamin Herrenschmidt
2007-06-03  7:37               ` Segher Boessenkool
2007-06-04  0:16               ` Olof Johansson
2007-06-04  8:18                 ` Segher Boessenkool
2007-06-02  8:25     ` Segher Boessenkool
2007-06-02 23:50 ` Benjamin Herrenschmidt
2007-06-03  0:13   ` Gabriel Paubert
2007-06-03  7:42     ` Segher Boessenkool
2007-06-03  7:53       ` Gabriel Paubert
2007-06-04 18:49   ` Jon Loeliger

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=ee4d3e25c4b6ede84483399249929632@kernel.crashing.org \
    --to=segher@kernel.crashing.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=paubert@iram.es \
    /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).