Copyright (c) 2012 The NetBSD Foundation, Inc.
All rights reserved.
This code is derived from software contributed to The NetBSD Foundation
by Frank Wille.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
.Dd January 15, 2012 .Dt NHPOW 4 sandpoint .Os .Sh NAME .Nm nhpow .Nd driver for the NH-230/231 board control GPIO pins .Sh SYNOPSIS .Cd "nhpow0 at mainbus0" .Cd "gpio* at nhpow0" .Sh DESCRIPTION This driver initializes the LEDs and the fan speed during boot and establishes a reboot and power-off hook in the kernel.
p .Nm also detects a soft power-off condition, which is triggered by holding the front panel power button pressed for several seconds. This driver can optionally invoke .Xr powerd 8 to get a finer control over the system shutdown procedure. It is capable of reporting a power-button-pressed event. Refer to the .Xr powerd 8 manual section for more details.
p The .Nm driver provides access to its 8 bidirectional GPIO pins through the .Xr gpio 4 controller interface. The pins have the following meaning when being written: l -column "Pin" "Active level" "Function" -offset indent t Sy "Pin" Ta Sy "Active level" Ta Sy "Function" t Li "0" Ta "high" Ta "System power off" t Li "1" Ta "high" Ta "Assert system reset to all devices" t Li "2" Ta "low" Ta "Status LED" t Li "3" Ta "high" Ta "High speed fan" t Li "4" Ta "low" Ta "Debug LED 1" t Li "5" Ta "low" Ta "Debug LED 2" t Li "6" Ta "low" Ta "USB port 1 LED" t Li "7" Ta "low" Ta "USB port 2 LED" .El
p When reading, the pins have the following meaning: l -column "Pin" "Active level" "Function" -offset indent t Sy "Pin" Ta Sy "Active level" Ta Sy "Function" t Li "0" Ta "low" Ta "Power button pressed" t Li "1" Ta "low" Ta "Reset/install button pressed" t Li "4" Ta "high" Ta "H/W version bit 0" t Li "5" Ta "high" Ta "H/W version bit 1" t Li "6" Ta "high" Ta "H/W version bit 2" t Li "7" Ta "high" Ta "H/W version bit 3" .El
p .Nm attaches automatically for all .Tn NH-230/231 compatible products: l -bullet -compact t Allnet 6250 t Allnet 6260 t Encore ENNHD-1000 t Fujitsu-Siemens AMS150 t Fujitsu-Siemens SBLAN2 t Longshine LCS-8311 t Netronix NH-230 t Netronix NH-231 t Planex NAS-01G .El .Sh SYSCTL VARIABLES The following .Xr sysctl 3 variables are available: l -tag -width indent t machdep.nhpow.fan Sets the fan speed to high (1) or low (0). .El .Sh FILES l -tag -width /dev/powerX -compact t Pa /dev/power event notify channel to .Xr powerd 8 . .El .Sh SEE ALSO .Xr gpio 4 , .Xr gpioctl 8 , .Xr powerd 8 , .Xr sysctl 8 .Sh HISTORY The .Nm driver first appeared in .Nx 6.0 . .Sh AUTHORS The .Nm driver was written by .An Frank Wille .