1#- 2# Copyright (c) 1998-2004 Doug Rabson 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions 7# are met: 8# 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24# SUCH DAMAGE. 25# |
26# $FreeBSD: head/sys/kern/bus_if.m 209154 2010-06-14 07:10:37Z mav $ |
27# 28 29#include <sys/bus.h> 30 31/** 32 * @defgroup BUS bus - KObj methods for drivers of devices with children 33 * @brief A set of methods required device drivers that support 34 * child devices. --- 7 unchanged lines hidden (view full) --- 42CODE { 43 static struct resource * 44 null_alloc_resource(device_t dev, device_t child, 45 int type, int *rid, u_long start, u_long end, 46 u_long count, u_int flags) 47 { 48 return (0); 49 } |
50 51 static int 52 null_remap_intr(device_t bus, device_t dev, u_int irq) 53 { 54 55 if (dev != NULL) 56 return (BUS_REMAP_INTR(dev, NULL, irq)); 57 return (ENXIO); 58 } |
59}; 60 61/** 62 * @brief Print a description of a child device 63 * 64 * This is called from system code which prints out a description of a 65 * device. It should describe the attachment that the child has with 66 * the parent. For instance the TurboLaser bus prints which node the --- 537 unchanged lines hidden (view full) --- 604/** 605 * @brief Notify a bus that the bus pass level has been changed 606 * 607 * @param _dev the bus device 608 */ 609METHOD void new_pass { 610 device_t _dev; 611} DEFAULT bus_generic_new_pass; |
612 613/** 614 * @brief Notify a bus that specified child's IRQ should be remapped. 615 * 616 * @param _dev the bus device 617 * @param _child the child device 618 * @param _irq the irq number 619 */ 620METHOD int remap_intr { 621 device_t _dev; 622 device_t _child; 623 u_int _irq; 624} DEFAULT null_remap_intr; |