Deleted Added
full compact
cam_sim.h (168864) cam_sim.h (186185)
1/*-
2 * Data structures and definitions for SCSI Interface Modules (SIMs).
3 *
4 * Copyright (c) 1997 Justin T. Gibbs.
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 11 unchanged lines hidden (view full) ---

20 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 *
1/*-
2 * Data structures and definitions for SCSI Interface Modules (SIMs).
3 *
4 * Copyright (c) 1997 Justin T. Gibbs.
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 11 unchanged lines hidden (view full) ---

20 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 *
28 * $FreeBSD: head/sys/cam/cam_sim.h 168864 2007-04-19 14:28:43Z scottl $
28 * $FreeBSD: head/sys/cam/cam_sim.h 186185 2008-12-16 16:57:33Z trasz $
29 */
30
31#ifndef _CAM_CAM_SIM_H
32#define _CAM_CAM_SIM_H 1
33
34#ifdef _KERNEL
35
36/*

--- 19 unchanged lines hidden (view full) ---

56 const char *sim_name,
57 void *softc,
58 u_int32_t unit,
59 struct mtx *mtx,
60 int max_dev_transactions,
61 int max_tagged_dev_transactions,
62 struct cam_devq *queue);
63void cam_sim_free(struct cam_sim *sim, int free_devq);
29 */
30
31#ifndef _CAM_CAM_SIM_H
32#define _CAM_CAM_SIM_H 1
33
34#ifdef _KERNEL
35
36/*

--- 19 unchanged lines hidden (view full) ---

56 const char *sim_name,
57 void *softc,
58 u_int32_t unit,
59 struct mtx *mtx,
60 int max_dev_transactions,
61 int max_tagged_dev_transactions,
62 struct cam_devq *queue);
63void cam_sim_free(struct cam_sim *sim, int free_devq);
64void cam_sim_hold(struct cam_sim *sim);
65void cam_sim_release(struct cam_sim *sim);
64
65/* Optional sim attributes may be set with these. */
66void cam_sim_set_path(struct cam_sim *sim, u_int32_t path_id);
67
68
69
70/* Convenience routines for accessing sim attributes. */
71static __inline u_int32_t cam_sim_path(struct cam_sim *sim);

--- 28 unchanged lines hidden (view full) ---

100 int max_tagged_dev_openings;
101 int max_dev_openings;
102 u_int32_t flags;
103#define CAM_SIM_REL_TIMEOUT_PENDING 0x01
104#define CAM_SIM_MPSAFE 0x02
105#define CAM_SIM_ON_DONEQ 0x04
106 struct callout callout;
107 struct cam_devq *devq; /* Device Queue to use for this SIM */
66
67/* Optional sim attributes may be set with these. */
68void cam_sim_set_path(struct cam_sim *sim, u_int32_t path_id);
69
70
71
72/* Convenience routines for accessing sim attributes. */
73static __inline u_int32_t cam_sim_path(struct cam_sim *sim);

--- 28 unchanged lines hidden (view full) ---

102 int max_tagged_dev_openings;
103 int max_dev_openings;
104 u_int32_t flags;
105#define CAM_SIM_REL_TIMEOUT_PENDING 0x01
106#define CAM_SIM_MPSAFE 0x02
107#define CAM_SIM_ON_DONEQ 0x04
108 struct callout callout;
109 struct cam_devq *devq; /* Device Queue to use for this SIM */
110 int refcount; /* References to the SIM. */
108
109 /* "Pool" of inactive ccbs managed by xpt_alloc_ccb and xpt_free_ccb */
110 SLIST_HEAD(,ccb_hdr) ccb_freeq;
111 /*
112 * Maximum size of ccb pool. Modified as devices are added/removed
113 * or have their * opening counts changed.
114 */
115 u_int max_ccbs;

--- 40 unchanged lines hidden ---
111
112 /* "Pool" of inactive ccbs managed by xpt_alloc_ccb and xpt_free_ccb */
113 SLIST_HEAD(,ccb_hdr) ccb_freeq;
114 /*
115 * Maximum size of ccb pool. Modified as devices are added/removed
116 * or have their * opening counts changed.
117 */
118 u_int max_ccbs;

--- 40 unchanged lines hidden ---