source: rtems-libbsd/rtemsbsd/src/rtems-bsd-smp.c @ 8420b94

4.115-freebsd-12freebsd-9.3
Last change on this file since 8420b94 was 8420b94, checked in by Jennifer Averett <jennifer.averett@…>, on May 8, 2012 at 2:14:42 PM

Modified copyright on rtems-bsd-xxx files to be consistant with FreeBSD copyright.

  • Property mode set to 100644
File size: 2.1 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup rtems_bsd_rtems
5 *
6 * @brief TODO.
7 */
8
9/*
10 * COPYRIGHT (c) 2012.
11 * On-Line Applications Research Corporation (OAR).
12 * All rights reserved.
13 *
14 * Redistribution and use in source and binary forms, with or without
15 * modification, are permitted provided that the following conditions
16 * are met:
17 * 1. Redistributions of source code must retain the above copyright
18 *    notice, this list of conditions and the following disclaimer.
19 * 2. Redistributions in binary form must reproduce the above copyright
20 *    notice, this list of conditions and the following disclaimer in the
21 *    documentation and/or other materials provided with the distribution.
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
24 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
27 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 */
35
36#include <freebsd/machine/rtems-bsd-config.h>
37
38#include <freebsd/sys/types.h>
39
40#include <freebsd/sys/smp.h>
41#include <freebsd/machine/smp.h>
42#include <freebsd/sys/sysctl.h>
43
44int       mp_ncpus;
45int       mp_maxcpus;
46cpumask_t all_cpus;
47u_int     mp_maxid;
48
49static void smp_configure(void *dummy)
50{
51  int i;
52
53  all_cpus = 0x0;
54
55#if defined(RTEMS_SMP)
56  mp_ncpus = rtems_smp_get_number_of_processors();
57  mp_maxcpus = rtems_configuration_smp_maximum_processors;
58#else
59  mp_ncpus = 1;
60  mp_maxcpus = 1;
61#endif
62
63  mp_maxid = mp_maxcpus;
64  for(i=0; i< mp_ncpus; i++)
65    all_cpus |= 0x1 << i;
66}
67
68SYSCTL_NODE(_kern, OID_AUTO, smp, CTLFLAG_RD, smp_configure, "Kernel SMP");
Note: See TracBrowser for help on using the repository browser.