svn commit: r236098 - head/sys/powerpc/booke
Rafal Jaworowski
raj at FreeBSD.org
Sat May 26 13:42:56 UTC 2012
Author: raj
Date: Sat May 26 13:42:55 2012
New Revision: 236098
URL: http://svn.freebsd.org/changeset/base/236098
Log:
Retrieve CPU number info from the device tree.
Obtained from: Freescale, Semihalf.
Modified:
head/sys/powerpc/booke/platform_bare.c
Modified: head/sys/powerpc/booke/platform_bare.c
==============================================================================
--- head/sys/powerpc/booke/platform_bare.c Sat May 26 13:36:18 2012 (r236097)
+++ head/sys/powerpc/booke/platform_bare.c Sat May 26 13:42:55 2012 (r236098)
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2008-2009 Semihalf, Rafal Jaworowski
+ * Copyright (c) 2008-2012 Semihalf.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -101,26 +101,16 @@ PLATFORM_DEF(bare_platform);
static int
bare_probe(platform_t plat)
{
- uint32_t ver, sr;
+ phandle_t cpus, child;
+ uint32_t sr;
int i, law_max, tgt;
- ver = SVR_VER(mfspr(SPR_SVR));
- switch (ver & ~0x0008) { /* Mask Security Enabled bit */
- case SVR_P4080:
- maxcpu = 8;
- break;
- case SVR_P4040:
- maxcpu = 4;
- break;
- case SVR_MPC8572:
- case SVR_P1020:
- case SVR_P2020:
- maxcpu = 2;
- break;
- default:
+ if ((cpus = OF_finddevice("/cpus")) != 0) {
+ for (maxcpu = 0, child = OF_child(cpus); child != 0;
+ child = OF_peer(child), maxcpu++)
+ ;
+ } else
maxcpu = 1;
- break;
- }
/*
* Clear local access windows. Skip DRAM entries, so we don't shoot
More information about the svn-src-head
mailing list