xref: /titanic_41/usr/src/uts/common/io/aac/README (revision 58bc78c7a7ad65c04aaa3ef379a396df23988691)
1942c5e3cSpl196000#
2942c5e3cSpl196000# CDDL HEADER START
3942c5e3cSpl196000#
4942c5e3cSpl196000# The contents of this file are subject to the terms of the
5942c5e3cSpl196000# Common Development and Distribution License (the "License").
6942c5e3cSpl196000# You may not use this file except in compliance with the License.
7942c5e3cSpl196000#
8942c5e3cSpl196000# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9942c5e3cSpl196000# or http://www.opensolaris.org/os/licensing.
10942c5e3cSpl196000# See the License for the specific language governing permissions
11942c5e3cSpl196000# and limitations under the License.
12942c5e3cSpl196000#
13942c5e3cSpl196000# When distributing Covered Code, include this CDDL HEADER in each
14942c5e3cSpl196000# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15942c5e3cSpl196000# If applicable, add the following below this CDDL HEADER, with the
16942c5e3cSpl196000# fields enclosed by brackets "[]" replaced with your own identifying
17942c5e3cSpl196000# information: Portions Copyright [yyyy] [name of copyright owner]
18942c5e3cSpl196000#
19942c5e3cSpl196000# CDDL HEADER END
20942c5e3cSpl196000#
21942c5e3cSpl196000
22942c5e3cSpl196000#
23b6094a86Sjd218194# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
24942c5e3cSpl196000# Use is subject to license terms.
25942c5e3cSpl196000#
26942c5e3cSpl196000aac driver 2.0
27942c5e3cSpl196000================
28942c5e3cSpl196000The Solaris aac driver enhancement updates the Solaris aac 1.6 driver
29942c5e3cSpl196000to a full-fledged one. The old Solaris aac driver is simple and stable,
30942c5e3cSpl196000but with limited functions.
31942c5e3cSpl196000
32942c5e3cSpl196000The new Solaris aac driver adds support of the following features:
33942c5e3cSpl1960001. New firmware support:
34942c5e3cSpl196000	New Communication interface, RawIO command, Large FIB, 64-bit LBA
35942c5e3cSpl1960002. New hardware support:
36942c5e3cSpl196000	Rocket chip based cards, such as 2820SA
37942c5e3cSpl1960003. Other features:
38942c5e3cSpl196000	64-bit DMA, Fast IO, firmware version checking, tagged-queuing
39942c5e3cSpl1960004. IOCTL
40942c5e3cSpl1960005. AIF
41942c5e3cSpl1960006. IOP reset
42942c5e3cSpl196000
43942c5e3cSpl196000The new Solaris aac 2.0 driver is mainly based on FreeBSD 6.0 aac driver.
44942c5e3cSpl196000IOP reset, AIF handling, 64-bit LBA, and some other minor features are
45942c5e3cSpl196000implemented from scratch by Adaptec engineers. They are not supported in
46942c5e3cSpl196000current FreeBSD aac driver.
47942c5e3cSpl196000
48942c5e3cSpl196000Adaptec approves Sun's intention to open source the aac RAID driver for
49942c5e3cSpl196000commercial Solaris and the Open Solaris community.
50942c5e3cSpl196000
51942c5e3cSpl196000aac driver 2.1.14
52942c5e3cSpl196000===================
53942c5e3cSpl196000UART trace support is added in this release:
54942c5e3cSpl196000        The driver can now make output through the firmware UART trace. You
55942c5e3cSpl196000        have to set AAC_DEBUG and the appropriate flags in aac_debug_flags, at
56942c5e3cSpl196000        least AACDB_FLAGS_FW_PRINT to enable the UART trace and any other flags
57942c5e3cSpl196000	to enable the output class you want to see.
58942c5e3cSpl196000	To use the tip utility to connect to the UART daughter card, a configu-
59942c5e3cSpl196000	ration line as below should be added to /etc/remote:
60942c5e3cSpl196000	aac:\
61942c5e3cSpl196000		:dv=/dev/term/a:br#115200:el=^C^S^Q^U^D:ie=%$:oe=^D:
62942c5e3cSpl196000
63942c5e3cSpl196000aac driver 2.2.0
64942c5e3cSpl196000==================
65942c5e3cSpl196000SPARC platform support is added in this release:
66942c5e3cSpl196000	To support SPARC, the driver is modified for DDI compliance. The driver
67942c5e3cSpl196000	now uses DDI compliant functions to access the device's IO and memory
68942c5e3cSpl196000	spaces for DMA transfers.
69b6094a86Sjd218194
70*58bc78c7SXin Chenaac driver 2.2.3
71b6094a86Sjd218194==================
72b6094a86Sjd218194MSI interrupts supporting is added in this release:
73b6094a86Sjd218194	Instead of supporting fixed interrupt only, the driver added the MSI
74b6094a86Sjd218194	interrupt whenever the HBA card has this feature. In the same time, the
75b6094a86Sjd218194	driver has replaced all legacy interrupt ddi interfaces callings by
76b6094a86Sjd218194	the according ddi_intr_* ones.
77b6094a86Sjd218194
78*58bc78c7SXin Chenaac driver 2.2.5
79*58bc78c7SXin Chen==================
80*58bc78c7SXin ChenTwo new features are included in this release:
81*58bc78c7SXin ChenOne is Non-DASD support:
82*58bc78c7SXin Chen	The driver now supports non-DASD(Non Direct Access Storage Device).
83*58bc78c7SXin Chen	This means you can use cdroms and other non-DASD devices with
84*58bc78c7SXin Chen	your aac card. Before trying it, make sure your card's firmware support
85*58bc78c7SXin Chen	non-DASD access. For some cards, you may need to explicitly enable it
86*58bc78c7SXin Chen	through aac BIOS. Make sure nondasd-enable property in aac.conf is
87*58bc78c7SXin Chen	switched on.
88*58bc78c7SXin ChenThe other is FIB dump:
89*58bc78c7SXin Chen	The driver now supports FIB contents dumping for driver debugging. To
90*58bc78c7SXin Chen	enable it, you need to set AAC_DEBUG and the appropriate flags in
91*58bc78c7SXin Chen	aac_debug_fib_flags.
92