Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/ieee1394 Initial checkin for fwnode support
details: https://anonhg.NetBSD.org/src/rev/da1a8ce445e3
branches: trunk
changeset: 509288:da1a8ce445e3
user: jmc <jmc%NetBSD.org@localhost>
date: Tue May 01 04:19:20 2001 +0000
description:
Initial checkin for fwnode support
diffstat:
sys/dev/ieee1394/fwnodevar.h | 99 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 99 insertions(+), 0 deletions(-)
diffs (103 lines):
diff -r d1699110cb19 -r da1a8ce445e3 sys/dev/ieee1394/fwnodevar.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/dev/ieee1394/fwnodevar.h Tue May 01 04:19:20 2001 +0000
@@ -0,0 +1,99 @@
+/* $NetBSD: fwnodevar.h,v 1.1 2001/05/01 04:19:20 jmc Exp $ */
+
+/*
+ * Copyright (c) 2000 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by James Chacon.
+ *
+ * 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.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``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 FOUNDATION 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.
+ */
+
+#ifndef _DEV_IEEE1394_FWNODEVAR_H
+#define _DEV_IEEE1394_FWNODEVAR_H
+
+struct fwnode_softc;
+
+struct configrom_data {
+ u_int8_t key_type;
+ u_int8_t key_value;
+ u_int8_t key;
+ u_int32_t val;
+ struct configrom_leafdata *leafdata;
+ TAILQ_ENTRY(configrom_data) data;
+};
+
+struct configrom_leafdata {
+ u_int8_t desc_type;
+ u_int32_t spec_id;
+ u_int8_t char_width;
+ u_int16_t char_set;
+ u_int16_t char_lang;
+ u_int32_t datalen;
+ char *text;
+};
+
+struct configrom_dir {
+ TAILQ_HEAD(, configrom_data) data_root;
+ TAILQ_HEAD(, configrom_dir) subdir_root;
+ TAILQ_ENTRY(configrom_dir) dir;
+ struct configrom_dir *parent;
+ u_int8_t dir_type;
+ u_int32_t offset;
+ u_int32_t refs;
+};
+
+struct fwnode_device_cap {
+ int (*dev_print_data)(struct configrom_data *);
+ int (*dev_print_dir)(u_int8_t);
+ void (*dev_init)(struct fwnode_softc *, struct fwnode_device_cap *);
+ void *dev_data;
+ int dev_type;
+ int dev_spec;
+ int dev_info; /* Lun, etc. */
+ int dev_valid;
+ struct device *dev_subdev;
+ TAILQ_ENTRY(fwnode_device_cap) dev_list;
+};
+
+struct fwnode_softc {
+ struct ieee1394_softc sc_sc1394;
+
+ int sc_flags;
+
+ int (*sc1394_input)(struct ieee1394_abuf *);
+ int (*sc1394_output)(struct ieee1394_abuf *);
+ int (*sc1394_inreg)(struct ieee1394_abuf *, int);
+
+ TAILQ_HEAD(, fwnode_device_cap) sc_dev_cap_head;
+ TAILQ_HEAD(, configrom_dir) sc_configrom_root;
+};
+
+#endif /* _DEV_IEEE1394_FWNODEVAR_H */
Home |
Main Index |
Thread Index |
Old Index