Home | History | Annotate | Download | only in io
      1 #
      2 # CDDL HEADER START
      3 #
      4 # The contents of this file are subject to the terms of the
      5 # Common Development and Distribution License, Version 1.0 only
      6 # (the "License").  You may not use this file except in compliance
      7 # with the License.
      8 #
      9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
     10 # or http://www.opensolaris.org/os/licensing.
     11 # See the License for the specific language governing permissions
     12 # and limitations under the License.
     13 #
     14 # When distributing Covered Code, include this CDDL HEADER in each
     15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     16 # If applicable, add the following below this CDDL HEADER, with the
     17 # fields enclosed by brackets "[]" replaced with your own identifying
     18 # information: Portions Copyright [yyyy] [name of copyright owner]
     19 #
     20 # CDDL HEADER END
     21 #
     22 # Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
     23 # Use is subject to license terms.
     24 #
     25 #pragma ident	"%Z%%M%	%I%	%E% SMI"
     26 #
     27 #-----------------------------
     28 # ON version of emul64.conf
     29 #-----------------------------
     30 #
     31 #
     32 # Define Different Drive Sizes:
     33 #
     34 #	Compute MSB blocks of X GB disk with dc(1):
     35 #		X 1024 1024 1024***512/2 32^/16op10op
     36 #	Compute LSB blocks of X GB disk with dc(1):
     37 #		X 1024 1024 1024***512/2 32^%16op10op
     38 #	With nhead = 128 and nsect = 128, Compute ncyl of X GB disk with dc(1):
     39 #		X 1024 1024 1024***512/128 128*/16op10op
     40 #	Example: for wombat-drive-1_5TB:
     41 #		# dc
     42 #		1024 512+1024 1024 1024***512/2 32^/16op10op
     43 #		0
     44 #		0
     45 #		1024 512+1024 1024 1024***512/2 32^%16op10op
     46 #		C0000000
     47 #		3221225472
     48 #		1024 512+1024 1024 1024***512/128 128*/16op10op
     49 #		30000
     50 #		196608
     51 #
     52 #	format is:	MSB, LSB		dtype, ncyl	nhead, nsect
     53 #
     54 wombat-drive-1GB=	0, 2097152,		0, 128,		128, 128;
     55 wombat-drive-1TB=	0, 2147483648,		0, 131072,	128, 128;
     56 wombat-drive-1_5TB=	0, 3221225472,		0, 196608,	128, 128;
     57 wombat-drive-2TB=	1, 0,			0, 262144,	128, 128;
     58 wombat-drive-3TB=	1, 2147483648,		0, 393216,	128, 128;
     59 wombat-drive-5TB=	2, 2147483648,		0, 655360,	128, 128;
     60 
     61 #
     62 # Define Different emul64 HBA instances and children:
     63 #
     64 #	We don't define HBAs by default, other tests that live under pshot
     65 #	(like the devfs testsuite) will fail if emul64 is enabled by default.
     66 #	The test scripts that use emul64 should enable the required 
     67 #	emul64.conf configuration (and restore a disabled emul64.conf).
     68 #
     69 # 	NOTE:	As of %E% the sd target driver does not support
     70 #		devices >= 2TB. If you configure one format will
     71 #		complain:
     72 #			The capacity of this LUN is too large.
     73 #			Reconfigure this LUN so that it is < 2TB.
     74 #
     75 #	Example:
     76 #
     77 #name="emul64" parent="pshot" bus-addr="1"
     78 #	targ_0_0=	"wombat-drive-1GB",	"WOMBAT  1_0_0:1GB";
     79 #
     80 #name="emul64" parent="pshot" bus-addr="2"
     81 #	targ_0_0=	"wombat-drive-1TB",	"WOMBAT  2_0_0:1TB"
     82 #	targ_1_0=	"wombat-drive-1_5TB",	"WOMBAT  2_1_0:1.5TB";
     83 #
     84 
     85 
     86 #
     87 # The following properties can be used to override tunables in the emul64
     88 # driver.
     89 #
     90 #	emul64_collect_stats	0 means do not collect statistics.
     91 #				Non-zero means to collect statistics.
     92 #				Default value is 1.
     93 #
     94 #	emul64_yield_enable	Non-zero means that emul64 should
     95 #				periodically yield the CPU to allow other
     96 #				activities to happen.  Default value is 1.
     97 #
     98 #	emul64_yield_period	Number of emul64 I/O operation between
     99 #				yields of the CPU.  Default is 1000.
    100 #
    101 #	emul64_yield_length	Amount of time in microseconds that emul64
    102 #				should yield the CPU during its periodic
    103 #				yields.  Default is 1000.
    104 #
    105 #	emul64_max_task		Maximum number of task elements in the task
    106 #				queue for each emul64 controller.  Default
    107 #				is 16.
    108 #
    109 #	emul64_task_nthreads	Specifies the number of threads that should
    110 #				be used to process a controller's task
    111 #				queue.  By default this is set at run time
    112 #				to the number of CPUs on the system.  It
    113 #				should probably only be set in this file
    114 #				for special purposes.
    115 #
    116 # The driver has the default values preset, so it is only necessary to
    117 # define these properties in this file if you wish to override the default
    118 # values.  The following commented lines can be used as a prototype for
    119 # setting the properties.
    120 #
    121 #emul64_collect_stats=1;
    122 #emul64_yield_enable=1;
    123 #emul64_yield_period=1000;
    124 #emul64_yield_length=1000;
    125 #emul64_max_task=16;
    126 #emul64_task_nthreads=<ncpu>;
    127