card_if.m revision 53855
153855Simp# 253855Simp# Copyright (c) 1999 M. Warner Losh. 353855Simp# All rights reserved. 453855Simp# 553855Simp# Redistribution and use in source and binary forms, with or without 653855Simp# modification, are permitted provided that the following conditions 753855Simp# are met: 853855Simp# 1. Redistributions of source code must retain the above copyright 953855Simp# notice, this list of conditions and the following disclaimer. 1053855Simp# 2. Redistributions in binary form must reproduce the above copyright 1153855Simp# notice, this list of conditions and the following disclaimer in the 1253855Simp# documentation and/or other materials provided with the distribution. 1353855Simp# 1453855Simp# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 1553855Simp# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1653855Simp# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1753855Simp# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 1853855Simp# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1953855Simp# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2053855Simp# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2153855Simp# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2253855Simp# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2353855Simp# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2453855Simp# SUCH DAMAGE. 2553855Simp# 2653855Simp# $FreeBSD: head/sys/dev/pccard/card_if.m 53855 1999-11-28 21:11:13Z imp $ 2753855Simp# 2853855Simp 2953855SimpINTERFACE card; 3053855Simp 3153855Simp# 3253855Simp# Companion interface for pccard. We need to set attributes for memory 3353855Simp# and i/o port mappings (as well as other types of attributes) that have 3453855Simp# a well defined meaning inside the pccard/cardbus system. The bus 3553855Simp# methods are inadequate for this because this must be done at the time the 3653855Simp# resources are set for the device, which predates their activation. Also, 3753855Simp# the driver activating the resources doesn't necessarily know or need to know 3853855Simp# these attributes. 3953855Simp# 4053855Simp# XXX A nagging doubt in the back of my mind suggests that these sorts of 4153855Simp# XXX things might be able to be done with ivars. This nagging doubt doesn't 4253855Simp# XXX offer a good way to actually do this, but remains nonetheless. 4353855Simp# 4453855SimpMETHOD int set_resource_attribute { 4553855Simp device_t dev; 4653855Simp device_t child; 4753855Simp int *rid; 4853855Simp u_int flags; 4953855Simp}; 5053855Simp 5153855SimpMETHOD int get_resource_attribute { 5253855Simp device_t dev; 5353855Simp device_t child; 5453855Simp int rid; 5553855Simp u_int *flags; 5653855Simp}; 57