URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
[/] [or1k/] [trunk/] [uclinux/] [uClinux-2.0.x/] [drivers/] [block/] [README.smart2] - Rev 1765
Compare with Previous | Blame | View Log
This driver is for Compaq's SMART2 Intellegent Disk Array Controllers.
WARNING:
--------
This code is distributed without warranty. Use at your own risk.
Installing:
-----------
You need to build a new kernel to use this device, even if you want to
use a loadable module. This driver requires Leonard N. Zubkoff's excellent
patches to ll_rw_blk.c (to controll the number of scatter/gather elements
sent to lower disk drivers). Visit http://www.dandelion.com/Linux/DAC960.html
to get his patches.
Apply the patch to a 2.0.36 kernel after applying Leonard's patch:
# cd linux
# patch -p1 <DAC960.patch
# patch -p1 <smart2.patch
Then build a new kernel and turn on Compaq SMART2 Disk Array support.
Create device nodes for the diskarray device:
# mkdev.ida [ctlrs]
Where ctlrs is the number of controllers you have (defaults to 1 if not
specified).
EISA Controllers:
-----------------
If you want to use an EISA controller you'll have to turn on EISA support
and supply some insmod/lilo paramaters. If the driver is compiled into the
kernel, must give it port/irq data at boot time. For example, if you had
two SMART-2/E controllers, in EISA slots 1 and 2, on irqs 15 and 5 respectively
you'd give it a boot argument like this:
smart2=0x1000,0xf,0x2000,0x5
If you were loading the driver as a module, you'd give load it like this:
insmod cpqarray.o eisa=0x1000,0xf,0x2000,0x5
You can use EISA and PCI adapters at the same time.
Booting:
--------
You'll need to use a modified lilo if you want to boot from a disk array.
Its simply a version of lilo with some code added to tell it how to
understand Compaq diskarray devices.
Device Naming:
--------------
You need some entries in /dev for the ida device. The mkdev.ida script
can make device nodes for you automatically. Currently the device setup
is as follows:
Major numbers:
72 ida0
73 ida1
74 ida2
etc...
Minor numbers:
b7 b6 b5 b4 b3 b2 b1 b0
|----+----| |----+----|
| |
| +-------- Partition ID (0=wholedev, 1-15 partition)
|
+-------------------- Logical Volume number
The suggested device naming scheme is:
/dev/ida/c0d0 Controller 0, disk 0, whole device
/dev/ida/c0d0p1 Controller 0, disk 0, partition 1
/dev/ida/c0d0p2 Controller 0, disk 0, partition 2
/dev/ida/c0d0p3 Controller 0, disk 0, partition 3
/dev/ida/c1d1 Controller 1, disk 1, whole device
/dev/ida/c1d1p1 Controller 1, disk 1, partition 1
/dev/ida/c1d1p2 Controller 1, disk 1, partition 2
/dev/ida/c1d1p3 Controller 1, disk 1, partition 3