.Nm
controllers are actual ATA controllers, the driver emulates SCSI via a
translation layer.
-.Pp
-Setting the lowest bit (0x1) of the driver flags forces
-.Nm
-to negotiate SATA 1 (1.5 Gb/s) transfer speeds only.
-It may be useful where higher speeds are unstable.
.Sh LOADER TUNABLES
The following hints may be set in
.Xr loader.conf 5
.Xr nata 4
driver will typically pick up the
.Nm
-devices, albeit under the "ad" disk name rather than the "da" disk name.
+devices, albeit under the
+.Pa ad
+disk name rather than the
+.Pa da
+disk name.
+.Bd -literal -offset indent
+hint.ahci.disabled=1
+.Ed
.Pp
The
.Nm
certain higher-level ATA commands to initialize ATA features which
some devices might not properly implement.
.Bd -literal -offset indent
-hint.ahci.disabled=1
hint.ahci.force150=1
hint.ahci.nofeatures=1
.Ed
+.Sh SYSCTL VARIABLES
+Link power management can be set with the sysctl
+.Va hw.ahci%d.%d.link_pwr_mgmt
+to 0 for `disabled', 1 for `medium', and 2 for `aggressive'.
+Link power state can be read with the sysctl
+.Va hw.ahci%d.%d.link_pwr_state .
.Sh SEE ALSO
.Xr intro 4 ,
.Xr nata 4 ,
.Dx
by
.An Matt Dillon Aq dillon@apollo.backplane.com
-who added new features such as port multiplier support.
+who added new features such as hot-plug and port multiplier support.
.Os
.Sh NAME
.Nm sili
-.Nd Silicon Image 3124/3132/3531 SATA controller
+.Nd Silicon Image 3124/3132 SATA controller
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following line in your
The
.Nm
driver provides support for SATA controllers using the Silicon Image
-3124/3132/3531 SATALink chipsets.
+3124/3132 SATALink chipsets.
.Pp
Although
.Nm
controllers are actual ATA controllers, the driver emulates SCSI via a
translation layer.
+.Sh LOADER TUNABLES
+The following hints may be set in
+.Xr loader.conf 5
+to control the
+.Nm
+driver's behavior.
+Note that the hint need only exist, so removing it requires commenting it out.
+.Pp
+Usually both the
+.Xr nata 4
+and the
+.Nm
+drivers are loaded.
+The
+.Xr nata 4
+driver will pick up any ata-like devices which the
+.Nm
+driver misses.
+If the
+.Nm
+driver is disabled the
+.Xr nata 4
+driver will typically pick up the
+.Nm
+devices, albeit under the
+.Pa ad
+disk name rather than the
+.Pa da
+disk name.
+.Bd -literal -offset indent
+hint.sili.disabled=1
+.Ed
+.Pp
+The
+.Nm
+driver can be told to force a lower-speed 1.5Gb link speed
+if necessary, and can also be told to refrain from attempting to send
+certain higher-level ATA commands to initialize ATA features which
+some devices might not properly implement.
+.Bd -literal -offset indent
+hint.sili.force150=1
+hint.sili.nofeatures=1
+.Ed
.Sh SEE ALSO
.Xr ahci 4 ,
.Xr intro 4 ,
It was ported to
.Dx
by
-.An Matt Dillon Aq dillon@apollo.backplane.com .
+.An Matt Dillon Aq dillon@apollo.backplane.com
+who added new features such as hot-plug and port multiplier support.
# with changing the parameters. MAXDSIZ is the maximum that the
# limit can be set to, and the DFLDSIZ is the default value for
# the limit. MAXSSIZ is the maximum that the stack limit can be
-# set to. You might want to set the default lower than the max,
+# set to. You might want to set the default lower than the max,
# and explicitly set the maximum with a shell command for processes
# that regularly exceed the limit like INND.
#
# do that. If this is not done on a multi-core cpu, EXTINT and NMI
# get routed to the INTR/NMI pins on *BOTH* cores simultaneously, causing
# two INTA ack cycles one of which will almost certainly result in a
-# spurious interrupt vector being presented. This is often visible as
+# spurious interrupt vector being presented. This is often visible as
# an unmaskable IRQ 7 which occurs for every normal interrupt that occurs
# on a system.
#
options MATH_EMULATE #Support for x87 emulation
\f
#####################################################################
-# COMPATIBILITY OPTIONS
+# COMPATIBILITY OPTIONS
#
# Implement system calls compatible with 4.3BSD and older versions of
# accurate scheduling of the CPU time between kernel network processing
# and other activities. The drawback is a moderate (up to 1/pollhz seconds)
# potential increase in response times. See polling(4) for further details.
-#
+#
options DEVICE_POLLING
# IFPOLL_ENABLE adds hardware queues' based polling
# Allow this many swap-devices.
#
# In order to manage swap, the system must reserve bitmap space that
-# scales with the largest mounted swap device multiplied by NSWAPDEV,
+# scales with the largest mounted swap device multiplied by NSWAPDEV,
# regardless of whether other swap devices exist or not. So it
# is not a good idea to make this value too large.
options NSWAPDEV=5
# The following options are used for debugging clock behavior only, and
# should not be used for production systems.
-#
+#
# CLK_CALIBRATION_LOOP will run the clock calibration loop at startup
# until the user presses a key.
# To include support for VESA video modes
options VESA
options VESA_DEBUG=2 # enable VESA debug output
-
+
# Splash screen at start up! Screen savers require this too.
pseudo-device splash
#
device ahci
-# Sil3124/3132/3531 driver
+# SiI3124/3132 driver
#
device sili
# PCI options
#
-#Enable pci resources left off by a "lazy" BIOS.
+#Enable pci resources left off by a "lazy" BIOS.
#
options COMPAT_OLDPCI #FreeBSD 2.2 and 3.x compatibility shims
# 82c168 and 82c169 PNIC, the Lite-On/Macronix LC82C115 PNIC II
# and the Macronix 98713/98713A/98715/98715A/98725 PMAC. This driver
# replaces the old al, ax, dm, pn and mx drivers. List of brands:
-# Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110,
-# SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX,
+# Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110,
+# SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX,
# LinkSys LNE100TX, LNE100TX V2.0, Jaton XpressNet, Alfa Inc GFC2204,
# KNE110TX.
#
#
# The `vr' device provides support for various fast ethernet adapters
# based on the VIA Technologies VT3043 `Rhine I' and VT86C100A `Rhine II'
-# chips, including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking
+# chips, including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking
# Technologies PN102TX, and the AOpen/Acer ALN-320.
#
# The `vx' device provides support for the 3Com 3C590 and 3C595
# Allows the ncr to take precedence
# 1 (1<<0) -> 810a, 860
# 2 (1<<1) -> 825a, 875, 885, 895
- # 4 (1<<2) -> 895a, 896, 1510d
+ # 4 (1<<2) -> 895a, 896, 1510d
#options SYM_SETUP_SCSI_DIFF #-HVD support for 825a, 875, 885
# disabled:0 (default), enabled:1
#options SYM_SETUP_PCI_PARITY #-PCI parity checking
# ifpi - AVM Fritz!Card PCI driver
# ifpi2 - AVM Fritz!Card PCI driver Version 2
# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
-# ifpnp - AVM Fritz!Card PnP driver
+# ifpnp - AVM Fritz!Card PnP driver
# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
#
# i4b active ISDN cards support contains the following hardware drivers:
# be uncommented to enable support for a given card !
#
# In addition to a hardware driver (and probably an option) the mandatory
-# ISDN protocol stack devices and the mandatory support device must be
+# ISDN protocol stack devices and the mandatory support device must be
# enabled as well as one or more devices from the optional devices section.
#
#---------------------------------------------------------------------------
#device isic
#
# Dynalink IS64PH
-options DYNALINK
+options DYNALINK
#device isic
#
# ELSA QuickStep 1000pro ISA
# Tune the swap zone KVA reservation, in bytes. The default is typically
# 70 MB, giving the system the ability to manage a maximum of 28GB worth
-# of swapped out data.
+# of swapped out data.
#
options VM_SWZONE_SIZE_MAX="(50*1024*1024)"
# Attempt to bypass the buffer cache and put data directly into the
# userland buffer for read operation when O_DIRECT flag is set on the
# file. Both offset and length of the read operation must be
-# multiples of the physical media sector size.
+# multiples of the physical media sector size.
#
options DIRECTIO
# SCTP
options SCTP
-options SCTP_DEBUG
+options SCTP_DEBUG
options SCTP_USE_ADLER32
options SCTP_HIGH_SPEED
options SCTP_STAT_LOGGING