linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* PPC/MCA RS/6000 port ?
@ 2000-03-19 20:36 Florian Lohoff
  2000-03-20  0:20 ` Gabriel Paubert
  0 siblings, 1 reply; 14+ messages in thread
From: Florian Lohoff @ 2000-03-19 20:36 UTC (permalink / raw)
  To: linuxppc-dev


Hi,
i have a handful of PPC/MCA RS/6000 Machines around -

Model 250 - PPC 601 66&80 Mhz, 2 MCA Slots, PizzaBox.
Model (C20/C10) - PPC 601 or 604 depending on the CPU Module and ~4-5 MCA Slots
Minitower.

Is there anyone working on a port ? As i already read these machines
are REALLY different from the later PPC/PCI machines and from the former
Power/MCA machines.

Does anyone have Hardware documentation available or got those
beasts to boot anything else than an AIX Kernel ?

BTW: Did anyone notice that the AIX 3.2.5 kernel do have symbols - I
was a bit astonished to see some quiet informational output
when doing an objdump with an "ppc-ibm-aix" objdump.

Flo
--
Florian Lohoff		flo@rfc822.org		      	+49-5241-470566
"Technology is a constant battle between manufacturers producing bigger and
more idiot-proof systems and nature producing bigger and better idiots."


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-19 20:36 PPC/MCA RS/6000 port ? Florian Lohoff
@ 2000-03-20  0:20 ` Gabriel Paubert
  2000-03-20  2:57   ` David Edelsohn
  2000-03-20 19:54   ` Florian Lohoff
  0 siblings, 2 replies; 14+ messages in thread
From: Gabriel Paubert @ 2000-03-20  0:20 UTC (permalink / raw)
  To: Florian Lohoff; +Cc: linuxppc-dev


On Sun, 19 Mar 2000, Florian Lohoff wrote:

>
> Hi,
> i have a handful of PPC/MCA RS/6000 Machines around -
>
> Model 250 - PPC 601 66&80 Mhz, 2 MCA Slots, PizzaBox.
> Model (C20/C10) - PPC 601 or 604 depending on the CPU Module and ~4-5 MCA Slots
> Minitower.
>
> Is there anyone working on a port ? As i already read these machines
> are REALLY different from the later PPC/PCI machines and from the former
> Power/MCA machines.

This is a recurring question on this list which comes up every few months.
I don't think anybody is working on a port due to the lack of HW
documentation and the probably odd implementation (there must be reason
for the so called direct store segments supported by the MMU of early PPC
processors).

> Does anyone have Hardware documentation available or got those
> beasts to boot anything else than an AIX Kernel ?

I don't think so.

	Gabriel.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20  0:20 ` Gabriel Paubert
@ 2000-03-20  2:57   ` David Edelsohn
  2000-03-20 19:53     ` Florian Lohoff
  2000-03-20 20:45     ` Gabriel Paubert
  2000-03-20 19:54   ` Florian Lohoff
  1 sibling, 2 replies; 14+ messages in thread
From: David Edelsohn @ 2000-03-20  2:57 UTC (permalink / raw)
  To: Gabriel Paubert; +Cc: Florian Lohoff, linuxppc-dev


	I do not have any hardware specs for these machines offhand, but
the interrupt controller may very well be PC-like cascaded 8259s.

	The PPC601 was a POWER architecture chip with additional user-mode
PowerPC instructions.  It was based on the existing RSC (RIOS Single Chip)
processor that IBM already was using and allowed the first PowerPC chip
implementation to be developed and deployed very rapidly.  The supervisor
state of the chip was all POWER architecture, not PowerPC Books II and
III.  The direct store segments were a way to access special devices on
the I/O bus.

David

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20  2:57   ` David Edelsohn
@ 2000-03-20 19:53     ` Florian Lohoff
  2000-03-20 19:59       ` David Edelsohn
  2000-03-20 20:50       ` Gabriel Paubert
  2000-03-20 20:45     ` Gabriel Paubert
  1 sibling, 2 replies; 14+ messages in thread
From: Florian Lohoff @ 2000-03-20 19:53 UTC (permalink / raw)
  To: David Edelsohn; +Cc: Gabriel Paubert, linuxppc-dev


On Sun, Mar 19, 2000 at 09:57:45PM -0500, David Edelsohn wrote:

> 	I do not have any hardware specs for these machines offhand, but
> the interrupt controller may very well be PC-like cascaded 8259s.

> 	The PPC601 was a POWER architecture chip with additional user-mode
> PowerPC instructions.  It was based on the existing RSC (RIOS Single Chip)
> processor that IBM already was using and allowed the first PowerPC chip
> implementation to be developed and deployed very rapidly.  The supervisor
> state of the chip was all POWER architecture, not PowerPC Books II and
> III.  The direct store segments were a way to access special devices on
> the I/O bus.

What does this mean in concern to the existing PPC port ? As i understand
the linuxppc port does already run on 601 - So the CPU is already
supported - Leaves us with bootstrap/bootprom and special architecture
(interrupts, scsi controller, serial ports etc)

Right ?

Flo
--
Florian Lohoff		flo@rfc822.org		      	+49-5241-470566
"Technology is a constant battle between manufacturers producing bigger and
more idiot-proof systems and nature producing bigger and better idiots."


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20  0:20 ` Gabriel Paubert
  2000-03-20  2:57   ` David Edelsohn
@ 2000-03-20 19:54   ` Florian Lohoff
  1 sibling, 0 replies; 14+ messages in thread
From: Florian Lohoff @ 2000-03-20 19:54 UTC (permalink / raw)
  To: Gabriel Paubert; +Cc: linuxppc-dev


On Mon, Mar 20, 2000 at 01:20:32AM +0100, Gabriel Paubert wrote:

> > Model (C20/C10) - PPC 601 or 604 depending on the
> > CPU Module and ~4-5 MCA Slots
>
> This is a recurring question on this list which comes up every few months.
> I don't think anybody is working on a port due to the lack of HW
> documentation and the probably odd implementation (there must be reason
> for the so called direct store segments supported by the MMU of early PPC
> processors).

But as i understood - The 601 is supported - If it isnt there are
still machines left - The Model C10/C20 with a 604 CPU Module.

Flo
--
Florian Lohoff		flo@rfc822.org		      	+49-5241-470566
"Technology is a constant battle between manufacturers producing bigger and
more idiot-proof systems and nature producing bigger and better idiots."


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20 19:53     ` Florian Lohoff
@ 2000-03-20 19:59       ` David Edelsohn
  2000-03-20 20:05         ` PPC601 support Hollis R Blanchard
  2000-03-21  1:40         ` PPC/MCA RS/6000 port ? David A. Gatwood
  2000-03-20 20:50       ` Gabriel Paubert
  1 sibling, 2 replies; 14+ messages in thread
From: David Edelsohn @ 2000-03-20 19:59 UTC (permalink / raw)
  To: Florian Lohoff; +Cc: Gabriel Paubert, linuxppc-dev


	I did not think thta PPC601 systems were supported by Linux/PPC,
only by MkLinux.

David

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC601 support
  2000-03-20 19:59       ` David Edelsohn
@ 2000-03-20 20:05         ` Hollis R Blanchard
  2000-03-20 20:24           ` Justin Shore
  2000-03-21  1:40         ` PPC/MCA RS/6000 port ? David A. Gatwood
  1 sibling, 1 reply; 14+ messages in thread
From: Hollis R Blanchard @ 2000-03-20 20:05 UTC (permalink / raw)
  To: David Edelsohn; +Cc: linuxppc-dev


On Mon, 20 Mar 2000, David Edelsohn wrote:
>
> 	I did not think thta PPC601 systems were supported by Linux/PPC,
> only by MkLinux.

I thought PowerMac 7200's and 7500's had 601 chips.

-Hollis


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC601 support
  2000-03-20 20:05         ` PPC601 support Hollis R Blanchard
@ 2000-03-20 20:24           ` Justin Shore
  0 siblings, 0 replies; 14+ messages in thread
From: Justin Shore @ 2000-03-20 20:24 UTC (permalink / raw)
  To: Hollis R Blanchard; +Cc: David Edelsohn, linuxppc-dev


At 3:05 PM -0500 3/20/00, Hollis R Blanchard wrote:
>On Mon, 20 Mar 2000, David Edelsohn wrote:
>>
>>	I did not think thta PPC601 systems were supported by Linux/PPC,
>>  only by MkLinux.
>
>I thought PowerMac 7200's and 7500's had 601 chips.

They do.  They are also PCI based which is what the advertised
requirement for LPPC is.  My mirror server is a 7500/100 w/ a ~380Mhz
G3 in it. :-)  I can't remember if the 7200 was built with the
processor on a daughtercard or not though.

Cheers,
   Justin
--

--
Justin Shore       K-State Linux Distro Mirror, Sysadmin
macdaddy@vinnie.ksu.ksu.edu
<http://vinnie.ksu.ksu.edu/mirror/rpm2html>
<ftp://vinnie.ksu.ksu.edu/pub/mirror/linux>

*Internet2 Users*
<ftp://quest.ksu.ksu.edu/pub/mirror/linux>

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20  2:57   ` David Edelsohn
  2000-03-20 19:53     ` Florian Lohoff
@ 2000-03-20 20:45     ` Gabriel Paubert
  2000-03-21 12:50       ` Dave Weis
  1 sibling, 1 reply; 14+ messages in thread
From: Gabriel Paubert @ 2000-03-20 20:45 UTC (permalink / raw)
  To: David Edelsohn; +Cc: Florian Lohoff, linuxppc-dev


On Sun, 19 Mar 2000, David Edelsohn wrote:

> 	The PPC601 was a POWER architecture chip with additional user-mode
> PowerPC instructions.  It was based on the existing RSC (RIOS Single Chip)
> processor that IBM already was using and allowed the first PowerPC chip
> implementation to be developed and deployed very rapidly.  The supervisor
> state of the chip was all POWER architecture, not PowerPC Books II and
> III.  The direct store segments were a way to access special devices on
> the I/O bus.

Actually I thought that the supervisor mode of the 601 was a mixture of
POWER and PPC. I read somewhere that the hash table implementation of the
POWER was very different for example (and POWER had only SPR 0 to 31
while PPCs, including 601, have many more).

Have a look at the code, there are quite a lot of tests for 601 specific
differences (for cache control operations, to avoid touching HID0,
different BATs). And a few ugly things like using the decrementer even in
cases where the tb/rtc would be more appropriate IMHO but the wraparound
at 1e9 of 601's RTCL would be awkward to handle.

However, if the use direct store segments is _unavoidable_, significant
kernel modifications are required.

	Gabriel.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20 19:53     ` Florian Lohoff
  2000-03-20 19:59       ` David Edelsohn
@ 2000-03-20 20:50       ` Gabriel Paubert
  1 sibling, 0 replies; 14+ messages in thread
From: Gabriel Paubert @ 2000-03-20 20:50 UTC (permalink / raw)
  To: Florian Lohoff; +Cc: David Edelsohn, linuxppc-dev


On Mon, 20 Mar 2000, Florian Lohoff wrote:

> What does this mean in concern to the existing PPC port ? As i understand
> the linuxppc port does already run on 601 - So the CPU is already
> supported - Leaves us with bootstrap/bootprom and special architecture
> (interrupts, scsi controller, serial ports etc)

Mostly, does your firmware provide residual data to the loaded program
and do you know at which physical address you can access serial ports for
example ?

I have code to dump residual data if you can upload it to some other
machine. This code could also probably be run standalone to dump on serial
port and capture on another machine.

	Gabriel.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20 19:59       ` David Edelsohn
  2000-03-20 20:05         ` PPC601 support Hollis R Blanchard
@ 2000-03-21  1:40         ` David A. Gatwood
  1 sibling, 0 replies; 14+ messages in thread
From: David A. Gatwood @ 2000-03-21  1:40 UTC (permalink / raw)
  To: David Edelsohn; +Cc: Florian Lohoff, Gabriel Paubert, linuxppc-dev


On Mon, 20 Mar 2000, David Edelsohn wrote:

> 	I did not think thta PPC601 systems were supported by Linux/PPC,
> only by MkLinux.

NuBus machines are only supported by MkLinux.  PPC 601s are supported by
MkLinux and LinuxPPC, but not NetBSD.


David

---------------------------------------------------------------------
A logician trying to explain logic to a programmer is like a cat
trying to explain to a fish what it's like to be wet.

	-- unknown, possibly Franklin Veaux


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-20 20:45     ` Gabriel Paubert
@ 2000-03-21 12:50       ` Dave Weis
  2000-03-21 14:30         ` Gabriel Paubert
  0 siblings, 1 reply; 14+ messages in thread
From: Dave Weis @ 2000-03-21 12:50 UTC (permalink / raw)
  To: Gabriel Paubert; +Cc: David Edelsohn, Florian Lohoff, linuxppc-dev


On Mon, 20 Mar 2000, Gabriel Paubert wrote:

> However, if the use direct store segments is _unavoidable_, significant
> kernel modifications are required.

I know we've (Gabriel and I) discussed this, but could you elaborate?
Based on what I've read in my docs, I think it is unavoidable. I'm getting
closer to having the boot process figured out. Once I've got some more
questions, I'm going to send my info to the list and see if my data looks
accurate.

dave


--
David Weis                | 10520 New York Ave, Des Moines, IA 50322
djweis@plconline.com      | Voice 515-278-0133 Ext 231
                          | http://www.perfectionlearning.com/


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-21 12:50       ` Dave Weis
@ 2000-03-21 14:30         ` Gabriel Paubert
  2000-03-21 20:45           ` Dave Weis
  0 siblings, 1 reply; 14+ messages in thread
From: Gabriel Paubert @ 2000-03-21 14:30 UTC (permalink / raw)
  To: Dave Weis; +Cc: David Edelsohn, Florian Lohoff, linuxppc-dev


On Tue, 21 Mar 2000, Dave Weis wrote:

>
> On Mon, 20 Mar 2000, Gabriel Paubert wrote:
>
> > However, if the use direct store segments is _unavoidable_, significant
> > kernel modifications are required.
>
> I know we've (Gabriel and I) discussed this, but could you elaborate?
> Based on what I've read in my docs, I think it is unavoidable. I'm getting
> closer to having the boot process figured out. Once I've got some more
> questions, I'm going to send my info to the list and see if my data looks
> accurate.

Right now the segment registers are only changed on task switches.
To access devices which are addressed through direct store segments, you
have to load one segment register (which occupies 256Mb of virtual address
space) when you enter the driver for this device.

You might also have to save/restore the segment register on interrupts,
and you'd better remove this segment when returning to user space or you
may create a huge security hole.

The best solution might be to designate one segment as reserved for this
purpose (say the last one) and use a save/restore mechanism in each
routine which needs to acces this kind of device. You have to make sure
that all paths restore it to the state it had on entry, but at least you
don't have to muck with the low level system call and interrupt entry and
exit code.

	Gabriel.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

* Re: PPC/MCA RS/6000 port ?
  2000-03-21 14:30         ` Gabriel Paubert
@ 2000-03-21 20:45           ` Dave Weis
  0 siblings, 0 replies; 14+ messages in thread
From: Dave Weis @ 2000-03-21 20:45 UTC (permalink / raw)
  To: Gabriel Paubert; +Cc: David Edelsohn, Florian Lohoff, linuxppc-dev


On Tue, 21 Mar 2000, Gabriel Paubert wrote:
> On Tue, 21 Mar 2000, Dave Weis wrote:
> > On Mon, 20 Mar 2000, Gabriel Paubert wrote:
> > > However, if the use direct store segments is _unavoidable_, significant
> > > kernel modifications are required.
> > I know we've (Gabriel and I) discussed this, but could you elaborate?
> > Based on what I've read in my docs, I think it is unavoidable. I'm getting
> > closer to having the boot process figured out. Once I've got some more
> > questions, I'm going to send my info to the list and see if my data looks
> > accurate.
>
> Right now the segment registers are only changed on task switches.
> To access devices which are addressed through direct store segments, you
> have to load one segment register (which occupies 256Mb of virtual address
> space) when you enter the driver for this device.

The way the drivers/info I've seen do it is to call iomem_att when they
need access to whatever they are looking for. I had a tarball of aix
driver source for a few devices but can't seem to find it now. If anyone
else knows where to find it, please let me know. The docs on this function
are viewable at
http://aix43.uwaterloo.ca/aix/doc_link/en_US/a_doc_lib/libs/ktechrf1/iomem_att.htm

> You might also have to save/restore the segment register on interrupts,
> and you'd better remove this segment when returning to user space or you
> may create a huge security hole.

True.

> The best solution might be to designate one segment as reserved for this
> purpose (say the last one) and use a save/restore mechanism in each
> routine which needs to acces this kind of device. You have to make sure
> that all paths restore it to the state it had on entry, but at least you
> don't have to muck with the low level system call and interrupt entry and
> exit code.

I think the aix way would probably work okay, especially since there's a
minimum number of drivers that would work on the machine anyway.

dave

--
David Weis                | 10520 New York Ave, Des Moines, IA 50322
djweis@plconline.com      | Voice 515-278-0133 Ext 231
                          | http://www.perfectionlearning.com/


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

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

end of thread, other threads:[~2000-03-21 20:45 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-03-19 20:36 PPC/MCA RS/6000 port ? Florian Lohoff
2000-03-20  0:20 ` Gabriel Paubert
2000-03-20  2:57   ` David Edelsohn
2000-03-20 19:53     ` Florian Lohoff
2000-03-20 19:59       ` David Edelsohn
2000-03-20 20:05         ` PPC601 support Hollis R Blanchard
2000-03-20 20:24           ` Justin Shore
2000-03-21  1:40         ` PPC/MCA RS/6000 port ? David A. Gatwood
2000-03-20 20:50       ` Gabriel Paubert
2000-03-20 20:45     ` Gabriel Paubert
2000-03-21 12:50       ` Dave Weis
2000-03-21 14:30         ` Gabriel Paubert
2000-03-21 20:45           ` Dave Weis
2000-03-20 19:54   ` Florian Lohoff

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).