xref: /titanic_52/usr/src/uts/common/io/warlock/isp.wlcmd (revision 4ebb14b236958cfe1ef4ff3b7a50216d9e51f997)
1 *4ebb14b2Sfrits#
2 *4ebb14b2Sfrits# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
3 *4ebb14b2Sfrits# Use is subject to license terms.
4 *4ebb14b2Sfrits#
5 *4ebb14b2Sfrits#ident	"%Z%%M%	%I%	%E% SMI"
6 *4ebb14b2Sfrits
7 *4ebb14b2Sfrits### Warlock commands for analyzing the isp driver alone.
8 *4ebb14b2Sfrits
9 *4ebb14b2Sfrits### Tell warlock there's only one isp struct, so that it will complain
10 *4ebb14b2Sfrits### if the lock is acquired when it is already locked.
11 *4ebb14b2Sfrits
12 *4ebb14b2Sfritsone isp
13 *4ebb14b2Sfrits
14 *4ebb14b2Sfrits### Tell warlock that isp_scsi_reset_notify(), which gets called from
15 *4ebb14b2Sfrits### the scsa stuff through the transport table, is a root function.
16 *4ebb14b2Sfrits
17 *4ebb14b2Sfritsroot isp_scsi_reset_notify isp_i_print_response
18 *4ebb14b2Sfrits
19 *4ebb14b2Sfrits### Give warlock the lock order we use to prevent deadlocks.
20 *4ebb14b2Sfrits
21 *4ebb14b2Sfritsassert order \
22 *4ebb14b2Sfrits	isp::isp_response_mutex \
23 *4ebb14b2Sfrits	isp::isp_request_mutex \
24 *4ebb14b2Sfrits	isp::isp_waitq_mutex
25 *4ebb14b2Sfrits
26 *4ebb14b2Sfrits### Tell warlock not to analyze this calling sequence, since it
27 *4ebb14b2Sfrits### never really occurs.
28 *4ebb14b2Sfrits
29 *4ebb14b2Sfritsdisallow \
30 *4ebb14b2Sfrits	isp_i_empty_waitQ \
31 *4ebb14b2Sfrits	isp_scsi_start \
32 *4ebb14b2Sfrits	isp_i_polled_cmd_start
33 *4ebb14b2Sfrits
34 *4ebb14b2Sfritsroot isp_kmem_cache_constructor isp_kmem_cache_destructor
35 *4ebb14b2Sfrits
36 *4ebb14b2Sfrits### Tell warlock where calls through pkt_comp go.
37 *4ebb14b2Sfrits
38 *4ebb14b2Sfritsadd scsi_pkt::pkt_comp targets \
39 *4ebb14b2Sfrits	isp_scsi_start \
40 *4ebb14b2Sfrits	isp_scsi_abort \
41 *4ebb14b2Sfrits	isp_scsi_reset \
42 *4ebb14b2Sfrits	isp_scsi_getcap \
43 *4ebb14b2Sfrits	isp_scsi_setcap \
44 *4ebb14b2Sfrits	isp_scsi_dmafree \
45 *4ebb14b2Sfrits	isp_scsi_sync_pkt \
46 *4ebb14b2Sfrits	isp_scsi_destroy_pkt \
47 *4ebb14b2Sfrits	isp_scsi_init_pkt
48 *4ebb14b2Sfrits
49 *4ebb14b2Sfritsadd notify_entry::callback target warlock_dummy
50 *4ebb14b2Sfrits
51 *4ebb14b2Sfrits
52 *4ebb14b2Sfritsfor ptr in `funcptrs | grep '^scsi_hba_tran::'`
53 *4ebb14b2Sfritsdo
54 *4ebb14b2Sfrits        add $ptr target warlock_dummy
55 *4ebb14b2Sfritsdone
56 *4ebb14b2Sfritsroot	scsi_hba_bus_power
57