Add a rump kernel component for the vioif virtio network interface.

This commit is contained in:
pooka 2014-08-22 09:48:54 +00:00
parent e125b93131
commit d7b8f51b8f
4 changed files with 78 additions and 0 deletions

View File

@ -0,0 +1,19 @@
# $NetBSD: Makefile,v 1.1 2014/08/22 09:48:54 pooka Exp $
#
RUMPTOP=${TOPRUMP}
.PATH: ${RUMPTOP}/../dev/pci
LIB= rumpdev_virtio_if_vioif
IOCONF= VIRTIO_IF_VIOIF.ioconf
SRCS= vioif_at_virtio.c
SRCS+= if_vioif.c
CPPFLAGS+= -I${RUMPTOP}/librump/rumpkern
.include "${RUMPTOP}/Makefile.rump"
.include <bsd.lib.mk>
.include <bsd.klinks.mk>

View File

@ -0,0 +1,12 @@
# $NetBSD: VIRTIO_IF_VIOIF.ioconf,v 1.1 2014/08/22 09:48:54 pooka Exp $
#
ioconf virtio_if_vioif
include "conf/files"
include "dev/pci/files.pci"
include "rump/dev/files.rump"
pseudo-root virtio*
vioif* at virtio? # Virtio network device

View File

@ -0,0 +1,2 @@
major=0
minor=0

View File

@ -0,0 +1,45 @@
/* $NetBSD: vioif_at_virtio.c,v 1.1 2014/08/22 09:48:54 pooka Exp $ */
/*
* Copyright (c) 2010 Antti Kantee. All Rights Reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: vioif_at_virtio.c,v 1.1 2014/08/22 09:48:54 pooka Exp $");
#include <sys/param.h>
#include <sys/conf.h>
#include <sys/device.h>
#include <sys/bus.h>
#include "rump_private.h"
#include "ioconf.c"
RUMP_COMPONENT(RUMP_COMPONENT_DEV)
{
config_init_component(cfdriver_ioconf_virtio_if_vioif,
cfattach_ioconf_virtio_if_vioif, cfdata_ioconf_virtio_if_vioif);
}