1*2305Sstevel /* 2*2305Sstevel * CDDL HEADER START 3*2305Sstevel * 4*2305Sstevel * The contents of this file are subject to the terms of the 5*2305Sstevel * Common Development and Distribution License (the "License"). 6*2305Sstevel * You may not use this file except in compliance with the License. 7*2305Sstevel * 8*2305Sstevel * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*2305Sstevel * or http://www.opensolaris.org/os/licensing. 10*2305Sstevel * See the License for the specific language governing permissions 11*2305Sstevel * and limitations under the License. 12*2305Sstevel * 13*2305Sstevel * When distributing Covered Code, include this CDDL HEADER in each 14*2305Sstevel * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*2305Sstevel * If applicable, add the following below this CDDL HEADER, with the 16*2305Sstevel * fields enclosed by brackets "[]" replaced with your own identifying 17*2305Sstevel * information: Portions Copyright [yyyy] [name of copyright owner] 18*2305Sstevel * 19*2305Sstevel * CDDL HEADER END 20*2305Sstevel */ 21*2305Sstevel /* 22*2305Sstevel * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23*2305Sstevel * Use is subject to license terms. 24*2305Sstevel */ 25*2305Sstevel /* 26*2305Sstevel * Copyright (c) * Copyright (c) 2001 Tadpole Technology plc 27*2305Sstevel * All rights reserved. 28*2305Sstevel */ 29*2305Sstevel 30*2305Sstevel #ifndef _SYS_CARDBUS_CFG_H 31*2305Sstevel #define _SYS_CARDBUS_CFG_H 32*2305Sstevel 33*2305Sstevel #pragma ident "%Z%%M% %I% %E% SMI" 34*2305Sstevel 35*2305Sstevel #ifdef __cplusplus 36*2305Sstevel extern "C" { 37*2305Sstevel #endif 38*2305Sstevel 39*2305Sstevel /* 40*2305Sstevel * Cardbus device identifiers 41*2305Sstevel */ 42*2305Sstevel #define CBUS_ID(vend, dev) ((uint32_t)(((uint32_t)(vend) << 16) | (dev))) 43*2305Sstevel 44*2305Sstevel #define CB_PPD_CODE 0x2441 45*2305Sstevel 46*2305Sstevel struct cardbus_parent_private_data { 47*2305Sstevel struct ddi_parent_private_data ppd; /* this format for prtconf */ 48*2305Sstevel uint16_t code; /* == CB_PPD_CODE */ 49*2305Sstevel /* pci_regspec_t *regs; */ 50*2305Sstevel }; 51*2305Sstevel 52*2305Sstevel extern kmutex_t cardbus_list_mutex; 53*2305Sstevel extern int cardbus_latency_timer; 54*2305Sstevel 55*2305Sstevel extern int cardbus_configure(cbus_t *cbp); 56*2305Sstevel extern int cardbus_unconfigure(cbus_t *cbp); 57*2305Sstevel extern int cardbus_teardown_device(dev_info_t *); 58*2305Sstevel extern int cardbus_primary_busno(dev_info_t *dip); 59*2305Sstevel 60*2305Sstevel #ifdef DEBUG 61*2305Sstevel extern void cardbus_dump_children(dev_info_t *dip, int level); 62*2305Sstevel extern void cardbus_dump_family_tree(dev_info_t *dip); 63*2305Sstevel #endif 64*2305Sstevel 65*2305Sstevel #ifdef __cplusplus 66*2305Sstevel } 67*2305Sstevel #endif 68*2305Sstevel 69*2305Sstevel #endif /* _SYS_CARDBUS_CFG_H */ 70