1 /* $NetBSD: firmload.h,v 1.2 2008/04/28 20:23:46 martin Exp $ */ 2 3 /* 4 * Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org> 5 */ 6 7 /* 8 * Copyright (c) 2005, 2006 The NetBSD Foundation, Inc. 9 * All rights reserved. 10 * 11 * This code is derived from software contributed to The NetBSD Foundation 12 * by Jason R. Thorpe. 13 * 14 * Redistribution and use in source and binary forms, with or without 15 * modification, are permitted provided that the following conditions 16 * are met: 17 * 1. Redistributions of source code must retain the above copyright 18 * notice, this list of conditions and the following disclaimer. 19 * 2. Redistributions in binary form must reproduce the above copyright 20 * notice, this list of conditions and the following disclaimer in the 21 * documentation and/or other materials provided with the distribution. 22 * 23 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 24 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 25 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 26 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 27 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 30 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 31 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 32 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 * POSSIBILITY OF SUCH DAMAGE. 34 */ 35 36 #ifndef _SYS_FIRMLOAD_H 37 #define _SYS_FIRMLOAD_H 38 39 #ifdef _KERNEL 40 41 #include <sys/types.h> 42 43 #ifdef __cplusplus 44 extern "C" { 45 #endif 46 47 typedef struct firmware_handle *firmware_handle_t; 48 49 extern int firmware_open(const char *, const char *, firmware_handle_t *); 50 extern int firmware_close(firmware_handle_t); 51 52 extern off_t firmware_get_size(firmware_handle_t); 53 54 extern int firmware_read(firmware_handle_t, off_t, void *, size_t); 55 56 #ifdef __cplusplus 57 } 58 #endif 59 60 #endif /* _KERNEL */ 61 62 #endif /* _SYS_FIRMLOAD_H */ 63