Changeset a9ac978 in mainline for boot/arch/sparc64/loader/ofwarch.c


Ignore:
Timestamp:
2006-09-27T20:11:34Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
00b38a3
Parents:
86b31ba9
Message:

SMP stuff for sparc64.
Almost complete except for IPIs.
The absence of IPI support deadlocks
the kernel when more CPUs are configured.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/sparc64/loader/ofwarch.c

    r86b31ba9 ra9ac978  
    3636#include <printf.h>
    3737#include <string.h>
     38#include <register.h>
    3839#include "main.h"
    3940
     
    5455}
    5556
    56 
    57 #define ASI_UPA_CONFIG          0x4a
    58 #define UPA_CONFIG_MID_SHIFT    17
    59 #define UPA_CONFIG_MID_MASK     0x1f
    60 
    6157int ofw_cpu(void)
    6258{
     
    7571        current_mid >>= UPA_CONFIG_MID_SHIFT;
    7672        current_mid &= UPA_CONFIG_MID_MASK;
     73
     74        int cpus;
    7775       
    78         for (; node != 0 && node != -1; node = ofw_get_peer_node(node)) {
     76        for (cpus = 0; node != 0 && node != -1; node = ofw_get_peer_node(node), cpus++) {
    7977                if (ofw_get_property(node, "device_type", type_name, sizeof(type_name)) > 0) {
    8078                        if (strcmp(type_name, "cpu") == 0) {
     
    9492        }
    9593
    96         return 1;
     94        return cpus;
    9795}
Note: See TracChangeset for help on using the changeset viewer.