From 962b22060334daf5678f2480850d2d5dba681187 Mon Sep 17 00:00:00 2001 From: Jennifer Averett Date: Fri, 30 Mar 2012 11:31:00 -0500 Subject: [PATCH] Added Methods and stub file to remove warnings when linking with RealTek Nic. --- Makefile | 3 +- freebsd-to-rtems.py | 1 + rtemsbsd/src/rtems-bsd-vm_glue.c | 153 +++++++++++++++++++++++++++++++ 3 files changed, 156 insertions(+), 1 deletion(-) create mode 100644 rtemsbsd/src/rtems-bsd-vm_glue.c diff --git a/Makefile b/Makefile index 8724a5fe..27e0e932 100644 --- a/Makefile +++ b/Makefile @@ -381,7 +381,8 @@ C_FILES += \ rtemsbsd/src/rtems-bsd-sysctlnametomib.c \ rtemsbsd/src/rtems-bsd-uma.c \ rtemsbsd/src/rtems-bsd-taskqueue.c \ - rtemsbsd/src/rtems-bsd-newproc.c + rtemsbsd/src/rtems-bsd-newproc.c \ + rtemsbsd/src/rtems-bsd-vm_glue.c ifeq ($(RTEMS_CPU),arm) C_FILES += \ diff --git a/freebsd-to-rtems.py b/freebsd-to-rtems.py index 97fe84bf..24194919 100755 --- a/freebsd-to-rtems.py +++ b/freebsd-to-rtems.py @@ -531,6 +531,7 @@ rtems_sourceFiles = [ 'src/rtems-bsd-uma.c', 'src/rtems-bsd-taskqueue.c', 'src/rtems-bsd-newproc.c', + 'src/rtems-bsd-vm_glue.c', ] # RTEMS files handled separately from modules # rtems = Module('rtems') diff --git a/rtemsbsd/src/rtems-bsd-vm_glue.c b/rtemsbsd/src/rtems-bsd-vm_glue.c new file mode 100644 index 00000000..1fa73a09 --- /dev/null +++ b/rtemsbsd/src/rtems-bsd-vm_glue.c @@ -0,0 +1,153 @@ +/** + * @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 +__FBSDID("$FreeBSD$"); + +#include +#include +#include + +/* + * MPSAFE + * + * WARNING! This code calls vm_map_check_protection() which only checks + * the associated vm_map_entry range. It does not determine whether the + * contents of the memory is actually readable or writable. In most cases + * just checking the vm_map_entry is sufficient within the kernel's address + * space. + */ +int +kernacc(addr, len, rw) + void *addr; + int len, rw; +{ + return 1; +} + +/* + * MPSAFE + * + * WARNING! This code calls vm_map_check_protection() which only checks + * the associated vm_map_entry range. It does not determine whether the + * contents of the memory is actually readable or writable. vmapbuf(), + * vm_fault_quick(), or copyin()/copout()/su*()/fu*() functions should be + * used in conjuction with this call. + */ +int +useracc(addr, len, rw) + void *addr; + int len, rw; +{ + return 1; +} + +int +vslock(void *addr, size_t len) +{ + return 0; +} + +void +vsunlock(void *addr, size_t len) +{ +} + +/* + * Destroy the given CPU private mapping and unpin the page that it mapped. + */ +void +vm_imgact_unmap_page(struct sf_buf *sf) +{ +} + + +/* + * Create the kernel stack (including pcb for i386) for a new thread. + * This routine directly affects the fork perf for a process and + * create performance for a thread. + */ +int +vm_thread_new(struct thread *td, int pages) +{ + return (1); +} + +/* + * Dispose of a thread's kernel stack. + */ +void +vm_thread_dispose(struct thread *td) +{ +} + +/* + * Allow a thread's kernel stack to be paged out. + */ +void +vm_thread_swapout(struct thread *td) +{ +} + +/* + * Bring the kernel stack for a specified thread back in. + */ +void +vm_thread_swapin(struct thread *td) +{ +} + +/* + * Implement fork's actions on an address space. + * Here we arrange for the address space to be copied or referenced, + * allocate a user struct (pcb and kernel stack), then call the + * machine-dependent layer to fill those in and make the new process + * ready to run. The new process is set up so that it returns directly + * to user mode to avoid stack copying and relocation problems. + */ +int +vm_forkproc(td, p2, td2, vm2, flags) + struct thread *td; + struct proc *p2; + struct thread *td2; + struct vmspace *vm2; + int flags; +{ +} + +/* + * Called after process has been wait(2)'ed apon and is being reaped. + * The idea is to reclaim resources that we could not reclaim while + * the process was still executing. + */ +void +vm_waitproc(p) + struct proc *p; +{ +} + +void +faultin(p) + struct proc *p; +{ +} + +void +kick_proc0(void) +{ +}