linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Can software discover MPC8xx variant?
@ 2003-01-29 13:56 Alex Zeffertt
  2003-01-29 14:13 ` Marius Groeger
  2003-01-30 20:52 ` Dan Malek
  0 siblings, 2 replies; 8+ messages in thread
From: Alex Zeffertt @ 2003-01-29 13:56 UTC (permalink / raw)
  To: linuxppc-embedded@lists.linuxppc.org


Hello,

Can anybody tell me if there is a way to identify which processor from
the MPC8xx family software is running on.  I hoped I could use the IMMR
special purpose register.  However, this only tells you the silicon
revision, which can have the same value even if the processors are
different!

Does the processor type (e.g. 862, 857T, 857DSL) reside anywhere in the
processor?

Thanks,

Alex


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

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

* Re: Can software discover MPC8xx variant?
  2003-01-29 13:56 Can software discover MPC8xx variant? Alex Zeffertt
@ 2003-01-29 14:13 ` Marius Groeger
  2003-01-30 20:52 ` Dan Malek
  1 sibling, 0 replies; 8+ messages in thread
From: Marius Groeger @ 2003-01-29 14:13 UTC (permalink / raw)
  To: Alex Zeffertt; +Cc: linuxppc-embedded@lists.linuxppc.org


On Wed, 29 Jan 2003, Alex Zeffertt wrote:

> Can anybody tell me if there is a way to identify which processor from
> the MPC8xx family software is running on.  I hoped I could use the IMMR
> special purpose register.  However, this only tells you the silicon
> revision, which can have the same value even if the processors are
> different!
>
> Does the processor type (e.g. 862, 857T, 857DSL) reside anywhere in the
> processor?

U-Boot/PPCboots cpu/mpc8xx/cpu.c contains a lot of generic type
detection code, but even there the assumes that the basic type is
known at compile time.

Regards,
Marius

-----------------------------------------------------------------------------
Marius Groeger           SYSGO Real-Time Solutions AG       mgroeger@sysgo.de
Software Engineering     Embedded and Real-Time Software    www.sysgo.de
Voice: +49-6136-9948-0   Am Pfaffenstein 14                 www.osek.de
FAX:   +49-6136-9948-10  55270 Klein-Winternheim, Germany   www.elinos.com

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

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

* Re: Can software discover MPC8xx variant?
@ 2003-01-29 16:29 Leonardo Pereira Santos
  0 siblings, 0 replies; 8+ messages in thread
From: Leonardo Pereira Santos @ 2003-01-29 16:29 UTC (permalink / raw)
  To: linuxppc-embedded@lists.linuxppc.org



As the 8xx family is supported by the kernel, I assume that what you want is
to know if the 8xx processor running supports some feature? If this is the
case, I can tell you how to do it the way I'd.
You can define some ioport with pull-up and pool-down resistors and in the
manufacturing process specifiy if this board is for product A, then you
should use MPC850DSL and you will mount some of the pull-ups and pull-downs.
If the board is for product B, then you should mount MPC850SAR and mount
differently the pull-ups and downs. By reading the value on the selected
pins, you might de able to know what board this is. This scheme can also be
used to know what hardware revision your board have.

On Wednesday 29 January 2003 12:13, Marius Groeger wrote:
> On Wed, 29 Jan 2003, Alex Zeffertt wrote:
> > Can anybody tell me if there is a way to identify which processor from
> > the MPC8xx family software is running on.  I hoped I could use the IMMR
> > special purpose register.  However, this only tells you the silicon
> > revision, which can have the same value even if the processors are
> > different!
> >
> > Does the processor type (e.g. 862, 857T, 857DSL) reside anywhere in the
> > processor?
>
> U-Boot/PPCboots cpu/mpc8xx/cpu.c contains a lot of generic type
> detection code, but even there the assumes that the basic type is
> known at compile time.
>
> Regards,
> Marius
>
> ---------------------------------------------------------------------------
>-- Marius Groeger           SYSGO Real-Time Solutions AG
> mgroeger@sysgo.de Software Engineering     Embedded and Real-Time Software
>   www.sysgo.de Voice: +49-6136-9948-0   Am Pfaffenstein 14
> www.osek.de FAX:   +49-6136-9948-10  55270 Klein-Winternheim, Germany
> www.elinos.com
>
- --

Leonardo Pereira Santos
Engenheiro de Projetos
PD3 Tecnologia
av. Pará 330/202
(51) 3337 1237

Today Fortune tells us:
Are you scared of speed? If so, try Windows NT.


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

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

* RE: Can software discover MPC8xx variant?
@ 2003-01-29 17:02 Steven Blakeslee
  2003-01-29 17:15 ` Leonardo Pereira Santos
  0 siblings, 1 reply; 8+ messages in thread
From: Steven Blakeslee @ 2003-01-29 17:02 UTC (permalink / raw)
  To: 'Leonardo Pereira Santos', linuxppc-embedded


Or you could set it in some type of data structure in your bootloader.  No
hardware change this way.

-----Original Message-----
From: Leonardo Pereira Santos [mailto:lsantos@pd3.com.br]
Sent: Wednesday, January 29, 2003 11:30 AM
To: linuxppc-embedded@lists.linuxppc.org
Subject: Re: Can software discover MPC8xx variant?




As the 8xx family is supported by the kernel, I assume that what you want is
to know if the 8xx processor running supports some feature? If this is the
case, I can tell you how to do it the way I'd.
You can define some ioport with pull-up and pool-down resistors and in the
manufacturing process specifiy if this board is for product A, then you
should use MPC850DSL and you will mount some of the pull-ups and pull-downs.
If the board is for product B, then you should mount MPC850SAR and mount
differently the pull-ups and downs. By reading the value on the selected
pins, you might de able to know what board this is. This scheme can also be
used to know what hardware revision your board have.

On Wednesday 29 January 2003 12:13, Marius Groeger wrote:
> On Wed, 29 Jan 2003, Alex Zeffertt wrote:
> > Can anybody tell me if there is a way to identify which processor from
> > the MPC8xx family software is running on.  I hoped I could use the IMMR
> > special purpose register.  However, this only tells you the silicon
> > revision, which can have the same value even if the processors are
> > different!
> >
> > Does the processor type (e.g. 862, 857T, 857DSL) reside anywhere in the
> > processor?
>
> U-Boot/PPCboots cpu/mpc8xx/cpu.c contains a lot of generic type
> detection code, but even there the assumes that the basic type is
> known at compile time.
>
> Regards,
> Marius
>
>
---------------------------------------------------------------------------
>-- Marius Groeger           SYSGO Real-Time Solutions AG
> mgroeger@sysgo.de Software Engineering     Embedded and Real-Time Software
>   www.sysgo.de Voice: +49-6136-9948-0   Am Pfaffenstein 14
> www.osek.de FAX:   +49-6136-9948-10  55270 Klein-Winternheim, Germany
> www.elinos.com
>
- --

Leonardo Pereira Santos
Engenheiro de Projetos
PD3 Tecnologia
av. Pará 330/202
(51) 3337 1237

Today Fortune tells us:
Are you scared of speed? If so, try Windows NT.


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

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

* Re: Can software discover MPC8xx variant?
  2003-01-29 17:02 Steven Blakeslee
@ 2003-01-29 17:15 ` Leonardo Pereira Santos
  0 siblings, 0 replies; 8+ messages in thread
From: Leonardo Pereira Santos @ 2003-01-29 17:15 UTC (permalink / raw)
  To: Steven Blakeslee; +Cc: linuxppc-embedded



Ok, but in this case the hardware itself wouldn't know waht revision or
whatever it is. And they already have to change the processor, so you have to
change the hardware anyway, mount or not a few resistors shouldn't be hard.

On Wednesday 29 January 2003 15:02, you wrote:
> Or you could set it in some type of data structure in your bootloader.  No
> hardware change this way.
>
> -----Original Message-----
> From: Leonardo Pereira Santos [mailto:lsantos@pd3.com.br]
> Sent: Wednesday, January 29, 2003 11:30 AM
> To: linuxppc-embedded@lists.linuxppc.org
> Subject: Re: Can software discover MPC8xx variant?
>
>
>
>
> As the 8xx family is supported by the kernel, I assume that what you want
> is to know if the 8xx processor running supports some feature? If this is
> the case, I can tell you how to do it the way I'd.
> You can define some ioport with pull-up and pool-down resistors and in the
> manufacturing process specifiy if this board is for product A, then you
> should use MPC850DSL and you will mount some of the pull-ups and
> pull-downs. If the board is for product B, then you should mount MPC850SAR
> and mount differently the pull-ups and downs. By reading the value on the
> selected pins, you might de able to know what board this is. This scheme
> can also be used to know what hardware revision your board have.
>
> On Wednesday 29 January 2003 12:13, Marius Groeger wrote:
> > On Wed, 29 Jan 2003, Alex Zeffertt wrote:
> > > Can anybody tell me if there is a way to identify which processor from
> > > the MPC8xx family software is running on.  I hoped I could use the IMMR
> > > special purpose register.  However, this only tells you the silicon
> > > revision, which can have the same value even if the processors are
> > > different!
> > >
> > > Does the processor type (e.g. 862, 857T, 857DSL) reside anywhere in the
> > > processor?
> >
> > U-Boot/PPCboots cpu/mpc8xx/cpu.c contains a lot of generic type
> > detection code, but even there the assumes that the basic type is
> > known at compile time.
> >
> > Regards,
> > Marius
>
> ---------------------------------------------------------------------------
>
> >-- Marius Groeger           SYSGO Real-Time Solutions AG
> > mgroeger@sysgo.de Software Engineering     Embedded and Real-Time
> > Software www.sysgo.de Voice: +49-6136-9948-0   Am Pfaffenstein 14
> > www.osek.de FAX:   +49-6136-9948-10  55270 Klein-Winternheim, Germany
> > www.elinos.com
>
> - --
>
> Leonardo Pereira Santos
> Engenheiro de Projetos
> PD3 Tecnologia
> av. Pará 330/202
> (51) 3337 1237
>
> Today Fortune tells us:
> Are you scared of speed? If so, try Windows NT.
>
>
- --

Leonardo Pereira Santos
Engenheiro de Projetos
PD3 Tecnologia
av. Pará 330/202
(51) 3337 1237

Today Fortune tells us:
Is knowledge knowable?  If not, how do we know that?


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

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

* RE: Can software discover MPC8xx variant?
@ 2003-01-29 17:31 Steven Blakeslee
  0 siblings, 0 replies; 8+ messages in thread
From: Steven Blakeslee @ 2003-01-29 17:31 UTC (permalink / raw)
  To: 'Leonardo Pereira Santos'; +Cc: linuxppc-embedded


I'm guessing you've never worked with a contract manufacturer.  :) jk

-----Original Message-----
From: Leonardo Pereira Santos [mailto:lsantos@pd3.com.br]
Sent: Wednesday, January 29, 2003 12:15 PM
To: Steven Blakeslee
Cc: linuxppc-embedded@lists.linuxppc.org
Subject: Re: Can software discover MPC8xx variant?



Ok, but in this case the hardware itself wouldn't know waht revision or
whatever it is. And they already have to change the processor, so you have
to
change the hardware anyway, mount or not a few resistors shouldn't be hard.

On Wednesday 29 January 2003 15:02, you wrote:
> Or you could set it in some type of data structure in your bootloader.  No
> hardware change this way.
>
> -----Original Message-----
> From: Leonardo Pereira Santos [mailto:lsantos@pd3.com.br]
> Sent: Wednesday, January 29, 2003 11:30 AM
> To: linuxppc-embedded@lists.linuxppc.org
> Subject: Re: Can software discover MPC8xx variant?
>
>
>
>
> As the 8xx family is supported by the kernel, I assume that what you want
> is to know if the 8xx processor running supports some feature? If this is
> the case, I can tell you how to do it the way I'd.
> You can define some ioport with pull-up and pool-down resistors and in the
> manufacturing process specifiy if this board is for product A, then you
> should use MPC850DSL and you will mount some of the pull-ups and
> pull-downs. If the board is for product B, then you should mount MPC850SAR
> and mount differently the pull-ups and downs. By reading the value on the
> selected pins, you might de able to know what board this is. This scheme
> can also be used to know what hardware revision your board have.
>
> On Wednesday 29 January 2003 12:13, Marius Groeger wrote:
> > On Wed, 29 Jan 2003, Alex Zeffertt wrote:
> > > Can anybody tell me if there is a way to identify which processor from
> > > the MPC8xx family software is running on.  I hoped I could use the
IMMR
> > > special purpose register.  However, this only tells you the silicon
> > > revision, which can have the same value even if the processors are
> > > different!
> > >
> > > Does the processor type (e.g. 862, 857T, 857DSL) reside anywhere in
the
> > > processor?
> >
> > U-Boot/PPCboots cpu/mpc8xx/cpu.c contains a lot of generic type
> > detection code, but even there the assumes that the basic type is
> > known at compile time.
> >
> > Regards,
> > Marius
>
>
---------------------------------------------------------------------------
>
> >-- Marius Groeger           SYSGO Real-Time Solutions AG
> > mgroeger@sysgo.de Software Engineering     Embedded and Real-Time
> > Software www.sysgo.de Voice: +49-6136-9948-0   Am Pfaffenstein 14
> > www.osek.de FAX:   +49-6136-9948-10  55270 Klein-Winternheim, Germany
> > www.elinos.com
>
> - --
>
> Leonardo Pereira Santos
> Engenheiro de Projetos
> PD3 Tecnologia
> av. Pará 330/202
> (51) 3337 1237
>
> Today Fortune tells us:
> Are you scared of speed? If so, try Windows NT.
>
>
- --

Leonardo Pereira Santos
Engenheiro de Projetos
PD3 Tecnologia
av. Pará 330/202
(51) 3337 1237

Today Fortune tells us:
Is knowledge knowable?  If not, how do we know that?

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

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

* Re: Can software discover MPC8xx variant?
  2003-01-29 13:56 Can software discover MPC8xx variant? Alex Zeffertt
  2003-01-29 14:13 ` Marius Groeger
@ 2003-01-30 20:52 ` Dan Malek
  2003-02-03  9:58   ` Alex Zeffertt
  1 sibling, 1 reply; 8+ messages in thread
From: Dan Malek @ 2003-01-30 20:52 UTC (permalink / raw)
  To: Alex Zeffertt; +Cc: linuxppc-embedded@lists.linuxppc.org


Alex Zeffertt wrote:

> Can anybody tell me if there is a way to identify which processor from
> the MPC8xx family software is running on.

I haven't checked recently, but I believe the PVR still has the same
core type for all 8xx processors.  This is arguably a valid thing to
do since all of the PPC cores are the same in these processors.  There
are some mmu and cache differences, but they all behave in the same
generic manner.

> ....  I hoped I could use the IMMR
> special purpose register.  However, this only tells you the silicon
> revision, which can have the same value even if the processors are
> different!

Right.  The processors also have a CPM microcode revision number stored
in the DPRAM.  Since the real difference among the processors is the CPM,
you can read this number and likely detect the CPM configuration.  Perhaps
from all three values you can detect the processor variant.  From a software
perspective, it really doesn't matter if you can determine the actual
part number printed on the package (that's only for human consumption), but
you can detect the silicon configurations if you wish to dynamically adapt
to the different CPM configurations.

 From the first day of Linux on 8xx, we decided it wasn't worth the baggage
to try and dynamically detect all of these details (and we weren't sure we
could).  In the interest of small, efficient, embedded kernels we adpoted
the direction of configuring specifically for a known part.

Thanks.


	-- Dan


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

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

* Re: Can software discover MPC8xx variant?
  2003-01-30 20:52 ` Dan Malek
@ 2003-02-03  9:58   ` Alex Zeffertt
  0 siblings, 0 replies; 8+ messages in thread
From: Alex Zeffertt @ 2003-02-03  9:58 UTC (permalink / raw)
  To: linuxppc-embedded@lists.linuxppc.org


Thank you everyone for your suggestions.  It looks like I can't
determine the 8xx variant from software in a reliable way.  The idea
about using pull up/pull down resistors is a good one - but the boards
have already been manufactured, so I am not in the position to be able
to hard-wire the information in this way.

The reason I want to know the 8xx variant, however, is to optimise s/w
for the performance of the chip.  So, I guess I can get away with just
knowing the clock speeds, and the cache sizes.

I know how to determine the clock speeds (they're in /proc/cpuinfo), but
can anybody tell me how to determine the cache sizes (in a
non-destructive manner such as is used by ppcboot).

Thanks,

Alex


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

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

end of thread, other threads:[~2003-02-03  9:58 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-01-29 13:56 Can software discover MPC8xx variant? Alex Zeffertt
2003-01-29 14:13 ` Marius Groeger
2003-01-30 20:52 ` Dan Malek
2003-02-03  9:58   ` Alex Zeffertt
  -- strict thread matches above, loose matches on Subject: below --
2003-01-29 16:29 Leonardo Pereira Santos
2003-01-29 17:02 Steven Blakeslee
2003-01-29 17:15 ` Leonardo Pereira Santos
2003-01-29 17:31 Steven Blakeslee

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