diff options
author | Joel Sherrill <joel.sherrill@oarcorp.com> | 2012-03-22 07:44:07 -0500 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@oarcorp.com> | 2012-03-22 07:44:07 -0500 |
commit | 0f09b7272648aa98c63e3af324779f76edfdc224 (patch) | |
tree | dfbbcb05be32192b2bc4b84566b508c6ec9a3e25 | |
parent | Add E1000 driver (diff) | |
download | rtems-libbsd-0f09b7272648aa98c63e3af324779f76edfdc224.tar.bz2 |
Add smp variables used by e1000 and remove unneeded ifdefs
+ added machine/smp.h as empty file
+ added rtems-bsd-smp.c for a few variables which were needed
-rw-r--r-- | Makefile | 1 | ||||
-rwxr-xr-x | freebsd-to-rtems.py | 2 | ||||
-rw-r--r-- | freebsd/dev/e1000/if_igb.c | 7 | ||||
-rw-r--r-- | freebsd/machine/smp.h | 1 | ||||
-rw-r--r-- | rtemsbsd/src/rtems-bsd-smp.c | 40 |
5 files changed, 44 insertions, 7 deletions
@@ -356,6 +356,7 @@ C_FILES += \ rtemsbsd/src/rtems-bsd-jail.c \ rtemsbsd/src/rtems-bsd-shell.c \ rtemsbsd/src/rtems-bsd-syscalls.c \ + rtemsbsd/src/rtems-bsd-smp.c \ rtemsbsd/src/rtems-bsd-malloc.c \ rtemsbsd/src/rtems-bsd-support.c \ rtemsbsd/src/rtems-bsd-bus-dma.c \ diff --git a/freebsd-to-rtems.py b/freebsd-to-rtems.py index e3de1dd5..bf18a1fb 100755 --- a/freebsd-to-rtems.py +++ b/freebsd-to-rtems.py @@ -516,6 +516,7 @@ rtems_sourceFiles = [ 'src/rtems-bsd-jail.c', 'src/rtems-bsd-shell.c', 'src/rtems-bsd-syscalls.c', + 'src/rtems-bsd-smp.c', #'src/rtems-bsd-socket.c', #'src/rtems-bsd-mbuf.c', 'src/rtems-bsd-malloc.c', @@ -1880,6 +1881,7 @@ mm.addEmptyFiles( 'machine/cpu.h', 'machine/elf.h', 'machine/sf_buf.h', + 'machine/smp.h', #'machine/vmparam.h', 'local/opt_ntp.h', 'local/pci_if.h', diff --git a/freebsd/dev/e1000/if_igb.c b/freebsd/dev/e1000/if_igb.c index 07a0aa2d..2b231ab0 100644 --- a/freebsd/dev/e1000/if_igb.c +++ b/freebsd/dev/e1000/if_igb.c @@ -60,10 +60,8 @@ #include <freebsd/sys/taskqueue.h> #include <freebsd/sys/eventhandler.h> #include <freebsd/sys/pcpu.h> -#ifndef __rtems__ #include <freebsd/sys/smp.h> #include <freebsd/machine/smp.h> -#endif #include <freebsd/machine/bus.h> #include <freebsd/machine/resource.h> @@ -2515,13 +2513,8 @@ igb_setup_msix(struct adapter *adapter) goto msi; } -#ifdef __rtems__ - /* Figure out a reasonable auto config value */ - queues = 10; /* XXX fix me */ -#else /* Figure out a reasonable auto config value */ queues = (mp_ncpus > (msgs-1)) ? (msgs-1) : mp_ncpus; -#endif /* Manual override */ if (igb_num_queues != 0) diff --git a/freebsd/machine/smp.h b/freebsd/machine/smp.h new file mode 100644 index 00000000..936ffd88 --- /dev/null +++ b/freebsd/machine/smp.h @@ -0,0 +1 @@ +/* EMPTY */ diff --git a/rtemsbsd/src/rtems-bsd-smp.c b/rtemsbsd/src/rtems-bsd-smp.c new file mode 100644 index 00000000..aa326a40 --- /dev/null +++ b/rtemsbsd/src/rtems-bsd-smp.c @@ -0,0 +1,40 @@ +/** + * @file + * + * @ingroup rtems_bsd_rtems + * + * @brief TODO. + */ + +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + * + */ + +#include <freebsd/machine/rtems-bsd-config.h> + +#include <freebsd/sys/types.h> + +#include <freebsd/sys/smp.h> +#include <freebsd/machine/smp.h> + +int mp_ncpus; +int mp_maxcpus; + +static void configure(void *dummy) +{ +#if defined(RTEMS_SMP) + mp_ncpus = rtems_smp_get_number_of_processors(); + mp_maxcpus = rtems_configuration_smp_maximum_processors; +#else + mp_ncpus = 1; + mp_maxcpus = 1; +#endif +} + +/* XXX setup initialization of this */ |