1 /* $NetBSD: boot.h,v 1.12 2008/05/29 14:25:01 tsutsui Exp $ */ 2 3 /*- 4 * Copyright (c) 2003 The NetBSD Foundation, Inc. 5 * 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 NETBSD FOUNDATION, INC. AND CONTRIBUTORS 17 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 18 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 19 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 20 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26 * POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 #if defined(_DEBUG) 30 #define DPRINTF(x) printf x; 31 #else 32 #define DPRINTF(x) 33 #endif 34 35 #define MAXDEVNAME 16 36 #define DEFBOOTDEV "wd0a" 37 #define DEFKERNELNAME kernelnames[0] 38 39 extern char *kernelnames[]; 40 41 /* 42 * com 43 */ 44 int comspeed(long); 45 46 /* 47 * console 48 */ 49 char *cninit(int *, int *); 50 int cngetc(void); 51 void cnputc(int); 52 int cnscan(void); 53 54 /* 55 * clock 56 */ 57 void delay(int); 58 59 /* 60 * wd 61 */ 62 int wdstrategy(void *, int, daddr_t, size_t, void *, size_t *); 63 int wdopen(struct open_file *, ...); 64 int wdclose(struct open_file *); 65 66 /* 67 * tlp 68 */ 69 void *tlp_init(void *); 70 int tlp_send(void *, char *, u_int); 71 int tlp_recv(void *, char *, u_int, u_int); 72 73 extern struct netif_driver ether_tlp_driver; 74 75 /* 76 * devopen 77 */ 78 int devparse(const char *, int *, uint8_t *, uint8_t *, const char **); 79 80 /* 81 * tgetc 82 */ 83 int tgets(char *); 84 85 /* 86 * cache 87 */ 88 #define CACHELINESIZE 32 89 90 void pdcache_wb(uint32_t, u_int); 91 void pdcache_inv(uint32_t, u_int); 92 void pdcache_wbinv(uint32_t, u_int); 93 94 /* 95 * pci 96 */ 97 uint32_t pcicfgread(uint32_t, uint32_t); 98 99 /* 100 * lcd 101 */ 102 void lcd_init(void); 103 void lcd_banner(void); 104 void lcd_loadfile(const char *); 105 void lcd_failed(void); 106