Re: HP9000 K-Series support, howto and diffs
Michael Shalayeff <[email protected]> Sun, 2 Nov 2003 17:10:42 -0500 (EST)
| Newsgroups | gmane.os.openbsd.hppa |
|---|---|
| Message-ID | <[email protected]> |
Making, drinking tea and reading an opus magnum from Hellmuth Michaelis:
> Michael Shalayeff wrote:
>
> > > > walk_iomem() is way wrong. IOA is supposed to have it's own driver
> > > > that would handle the issues.
> > >
> > > I cannot parse this.
> >
> > ok. what is the purpose od walk_iomem() function?
>
> You might want to have a look at the PDC_SYSTEM_MAP documentation in the
> PDC manual i referenced in my previous mail, page 4-79 where you find the
> algorithm for probing/scanning for devices on parisc platforms.
>
> The very first sentence is "Find monarch processor and memory controller".
> On the K, these two items are not found by neither PDC_SYSTEM_MAP nor by
> PDC_MEMMAP (PDC_SYSTEM_MAP does not find these ond others and PDC_MEMMAP
> is not supported on that platform).
>
> Have a look at the "Firmware Objectives Overview" manual, pp 2-2 where
> the HPA address space is described. You'll find the sentence "The flex
> value for the central bus is always 1022" which documents and nails down
> the address at which to start to search for the root in the tree of the
> io modules on the central bus.
>
> In case you might be interested, get yourself a copy of the Service
> Manual for the K-Series machines, orderable from HP with the part number
> A2375-90004. I'm referencing Edition 5, June 1998. Have a look at
> chapter Support Information, Figure B-3, p B-4 for a diagram of the
> architecture of the K machines where you see the central bus as the
> root of the machine (its also interesting as it is the only source
> for some address documentation for the K machines which i have found).
>
> So the purpose of walk_iomem() is to initially scan the central bus
> to get the memory controller, cpu(s) and IOA's from where to scan
> further down the tree to get everything else possible.
>
> With the exception of that it might not be ok to call walk_iomem()
> recursively (but go down with all sorts of other scans down the tree),
> i can currently not see "walk_iomem() is way wrong".
>
> And, my goal was not to produce the last word in bugfree probe
> code for the hppa arch and it was not to play guessing games
> afterwards and it was not to possibly insult egos of anyone who
> had put much work into the support of this architecture before,
> but to get support for the K's a bit further.
>
> After i made all this work of documenting what i did just and only
> because of _you_ were several times requesting to get my work, i
> think it would be polite if you would tell me exactly what is wrong
> and why its wrong instead of just shooting me down. Thank you!
i did not mean to insult in any way. sorry if that happened.
i told you what is wrong w/ walk_iomem() -- it pretends to
be the driver for IOA bridge that is wrong and the way it is
supposed to be handled is to write a driver for IOA.
cu
--
paranoic mickey (my employers have changed but, the name has remained)