conf.c revision 1.2
1/* $NetBSD: conf.c,v 1.2 2018/04/11 10:32:09 nonaka Exp $ */ 2 3/* 4 * Copyright (c) 1997 5 * Matthias Drochner. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 21 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 25 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 */ 27 28#include <sys/cdefs.h> 29#include <sys/types.h> 30 31#include <lib/libsa/stand.h> 32#include <lib/libsa/ufs.h> 33#include <lib/libsa/lfs.h> 34#ifdef SUPPORT_EXT2FS 35#include <lib/libsa/ext2fs.h> 36#endif 37#ifdef SUPPORT_MINIXFS3 38#include <lib/libsa/minixfs3.h> 39#endif 40#ifdef SUPPORT_DOSFS 41#include <lib/libsa/dosfs.h> 42#endif 43#ifdef SUPPORT_CD9660 44#include <lib/libsa/cd9660.h> 45#endif 46#if defined(SUPPORT_NFS) || defined(SUPPORT_TFTP) 47#include <lib/libsa/net.h> 48#include <lib/libsa/dev_net.h> 49#ifdef SUPPORT_NFS 50#include <lib/libsa/nfs.h> 51#endif 52#ifdef SUPPORT_TFTP 53#include <lib/libsa/tftp.h> 54#endif 55#endif 56#include <biosdisk.h> 57#include "efinet.h" 58 59struct devsw devsw[] = { 60 { "disk", biosdisk_strategy, biosdisk_open, biosdisk_close, biosdisk_ioctl }, 61 { "net", net_strategy, net_open, net_close, net_ioctl }, 62}; 63int ndevs = __arraycount(devsw); 64 65#if defined(SUPPORT_NFS) || defined(SUPPORT_TFTP) 66struct netif_driver *netif_drivers[] = { 67 &efinetif, 68}; 69int n_netif_drivers = __arraycount(netif_drivers); 70#endif 71 72struct fs_ops file_system[] = { 73#ifdef SUPPORT_CD9660 74 FS_OPS(null), 75#endif 76 FS_OPS(null), FS_OPS(null), 77 FS_OPS(null), FS_OPS(null), 78#ifdef SUPPORT_EXT2FS 79 FS_OPS(null), 80#endif 81#ifdef SUPPORT_MINIXFS3 82 FS_OPS(null), 83#endif 84#ifdef SUPPORT_DOSFS 85 FS_OPS(null), 86#endif 87}; 88int nfsys = __arraycount(file_system); 89 90struct fs_ops file_system_disk[] = { 91#ifdef SUPPORT_CD9660 92 FS_OPS(cd9660), 93#endif 94 FS_OPS(ffsv1), FS_OPS(ffsv2), 95 FS_OPS(lfsv1), FS_OPS(lfsv2), 96#ifdef SUPPORT_EXT2FS 97 FS_OPS(ext2fs), 98#endif 99#ifdef SUPPORT_MINIXFS3 100 FS_OPS(minixfs3), 101#endif 102#ifdef SUPPORT_DOSFS 103 FS_OPS(dosfs), 104#endif 105}; 106__CTASSERT(__arraycount(file_system) == __arraycount(file_system_disk)); 107const int nfsys_disk = __arraycount(file_system_disk); 108 109struct fs_ops file_system_null = FS_OPS(null); 110#ifdef SUPPORT_NFS 111struct fs_ops file_system_nfs = FS_OPS(nfs); 112#endif 113#ifdef SUPPORT_TFTP 114struct fs_ops file_system_tftp = FS_OPS(tftp); 115#endif 116