PERFORCE change 169983 for review
Alexander Motin
mav at FreeBSD.org
Sat Oct 31 09:16:18 UTC 2009
http://p4web.freebsd.org/chv.cgi?CH=169983
Change 169983 by mav at mav_mavbook on 2009/10/31 09:15:42
IFC
Affected files ...
.. //depot/projects/scottl-camlock/src/share/man/man4/atapicam.4#4 integrate
.. //depot/projects/scottl-camlock/src/share/man/man4/umass.4#4 integrate
.. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#112 integrate
.. //depot/projects/scottl-camlock/src/sys/cddl/compat/opensolaris/sys/vnode.h#7 integrate
.. //depot/projects/scottl-camlock/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#14 integrate
.. //depot/projects/scottl-camlock/src/sys/cddl/contrib/opensolaris/uts/common/sys/vnode.h#4 integrate
.. //depot/projects/scottl-camlock/src/sys/conf/files#52 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/aac/aac_cam.c#14 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/aac/aacreg.h#7 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/acpi_support/acpi_aiboost.c#4 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/aic7xxx/aic79xx_pci.c#9 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/ata/ata-pci.h#20 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/ata/chipsets/ata-adaptec.c#4 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/ata/chipsets/ata-marvell.c#11 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/drm/drmP.h#13 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/drm/drm_scatter.c#5 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/drm/r600_blit.c#4 integrate
.. //depot/projects/scottl-camlock/src/sys/dev/drm/radeon_cp.c#11 integrate
.. //depot/projects/scottl-camlock/src/sys/kern/kern_sig.c#26 integrate
.. //depot/projects/scottl-camlock/src/sys/netinet/sctp_output.c#19 integrate
.. //depot/projects/scottl-camlock/src/sys/powerpc/powerpc/stack_machdep.c#2 integrate
.. //depot/projects/scottl-camlock/src/sys/sys/aac_ioctl.h#3 integrate
.. //depot/projects/scottl-camlock/src/sys/sys/signalvar.h#12 integrate
.. //depot/projects/scottl-camlock/src/usr.bin/bsdiff/bsdiff/bsdiff.1#2 integrate
.. //depot/projects/scottl-camlock/src/usr.bin/bsdiff/bspatch/bspatch.1#2 integrate
.. //depot/projects/scottl-camlock/src/usr.bin/logger/logger.c#3 integrate
.. //depot/projects/scottl-camlock/src/usr.bin/vmstat/vmstat.c#3 integrate
Differences ...
==== //depot/projects/scottl-camlock/src/share/man/man4/atapicam.4#4 (text+ko) ====
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man4/atapicam.4,v 1.7 2009/10/22 11:35:12 brueffer Exp $
+.\" $FreeBSD: src/share/man/man4/atapicam.4,v 1.8 2009/10/29 15:59:27 brueffer Exp $
.\"
.Dd October 22, 2009
.Dt ATAPICAM 4
@@ -39,7 +39,6 @@
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device scbus"
-.Cd "device cam"
.Cd "device ata"
.Cd "device atapicam"
.Ed
==== //depot/projects/scottl-camlock/src/share/man/man4/umass.4#4 (text+ko) ====
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man4/umass.4,v 1.46 2009/10/22 11:35:12 brueffer Exp $
+.\" $FreeBSD: src/share/man/man4/umass.4,v 1.47 2009/10/29 15:59:27 brueffer Exp $
.\"
.Dd October 22, 2009
.Dt UMASS 4
@@ -39,7 +39,6 @@
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device scbus"
-.Cd "device cam"
.Cd "device usb"
.Cd "device umass"
.Ed
==== //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#112 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.228 2009/10/23 11:26:58 mav Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.229 2009/10/31 09:03:48 mav Exp $");
#include <sys/param.h>
#include <sys/bus.h>
==== //depot/projects/scottl-camlock/src/sys/cddl/compat/opensolaris/sys/vnode.h#7 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/cddl/compat/opensolaris/sys/vnode.h,v 1.13 2009/08/17 09:48:34 pjd Exp $
+ * $FreeBSD: src/sys/cddl/compat/opensolaris/sys/vnode.h,v 1.14 2009/10/30 23:33:06 pjd Exp $
*/
#ifndef _OPENSOLARIS_SYS_VNODE_H_
@@ -57,6 +57,8 @@
#define v_count v_usecount
+#define V_APPEND VAPPEND
+
static __inline int
vn_is_readonly(vnode_t *vp)
{
==== //depot/projects/scottl-camlock/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#14 (text+ko) ====
@@ -3989,21 +3989,33 @@
struct thread *a_td;
} */ *ap;
{
+ accmode_t accmode;
+ int error = 0;
/*
- * ZFS itself only knowns about VREAD, VWRITE and VEXEC, the rest
- * we have to handle by calling vaccess().
+ * ZFS itself only knowns about VREAD, VWRITE, VEXEC and VAPPEND,
+ */
+ accmode = ap->a_accmode & (VREAD|VWRITE|VEXEC|VAPPEND);
+ if (accmode != 0)
+ error = zfs_access(ap->a_vp, accmode, 0, ap->a_cred, NULL);
+
+ /*
+ * VADMIN has to be handled by vaccess().
*/
- if ((ap->a_accmode & ~(VREAD|VWRITE|VEXEC)) != 0) {
- vnode_t *vp = ap->a_vp;
- znode_t *zp = VTOZ(vp);
- znode_phys_t *zphys = zp->z_phys;
+ if (error == 0) {
+ accmode = ap->a_accmode & ~(VREAD|VWRITE|VEXEC|VAPPEND);
+ if (accmode != 0) {
+ vnode_t *vp = ap->a_vp;
+ znode_t *zp = VTOZ(vp);
+ znode_phys_t *zphys = zp->z_phys;
- return (vaccess(vp->v_type, zphys->zp_mode, zphys->zp_uid,
- zphys->zp_gid, ap->a_accmode, ap->a_cred, NULL));
+ error = vaccess(vp->v_type, zphys->zp_mode,
+ zphys->zp_uid, zphys->zp_gid, accmode, ap->a_cred,
+ NULL);
+ }
}
- return (zfs_access(ap->a_vp, ap->a_accmode, 0, ap->a_cred, NULL));
+ return (error);
}
static int
==== //depot/projects/scottl-camlock/src/sys/cddl/contrib/opensolaris/uts/common/sys/vnode.h#4 (text+ko) ====
@@ -304,7 +304,6 @@
* VOP_ACCESS flags
*/
#define V_ACE_MASK 0x1 /* mask represents NFSv4 ACE permissions */
-#define V_APPEND 0x2 /* want to do append only check */
/*
* Flags for vnode operations.
==== //depot/projects/scottl-camlock/src/sys/conf/files#52 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1479 2009/10/25 10:23:11 rpaulo Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1480 2009/10/29 20:53:26 mav Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -520,14 +520,14 @@
dev/ata/chipsets/ata-intel.c optional ata pci | ataintel
dev/ata/chipsets/ata-ite.c optional ata pci | ataite
dev/ata/chipsets/ata-jmicron.c optional ata pci | atajmicron
-dev/ata/chipsets/ata-marvell.c optional ata pci | atamarvell
+dev/ata/chipsets/ata-marvell.c optional ata pci | atamarvell | ataadaptec
dev/ata/chipsets/ata-micron.c optional ata pci | atamicron
dev/ata/chipsets/ata-national.c optional ata pci | atanational
dev/ata/chipsets/ata-netcell.c optional ata pci | atanetcell
dev/ata/chipsets/ata-nvidia.c optional ata pci | atanvidia
dev/ata/chipsets/ata-promise.c optional ata pci | atapromise
dev/ata/chipsets/ata-serverworks.c optional ata pci | ataserverworks
-dev/ata/chipsets/ata-siliconimage.c optional ata pci | atasiliconimage
+dev/ata/chipsets/ata-siliconimage.c optional ata pci | atasiliconimage | ataati
dev/ata/chipsets/ata-sis.c optional ata pci | atasis
dev/ata/chipsets/ata-via.c optional ata pci | atavia
dev/ata/ata-disk.c optional atadisk
==== //depot/projects/scottl-camlock/src/sys/dev/aac/aac_cam.c#14 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aac/aac_cam.c,v 1.32 2009/10/27 19:37:37 emaste Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aac/aac_cam.c,v 1.33 2009/10/29 17:14:18 emaste Exp $");
/*
* CAM front-end for communicating with non-DASD devices
@@ -211,7 +211,7 @@
{
struct aac_cam *camsc;
struct aac_softc *sc;
- struct aac_srb32 *srb;
+ struct aac_srb *srb;
struct aac_fib *fib;
struct aac_command *cm;
@@ -351,7 +351,7 @@
}
fib = cm->cm_fib;
- srb = (struct aac_srb32 *)&fib->data[0];
+ srb = (struct aac_srb *)&fib->data[0];
cm->cm_datalen = 0;
switch (ccb->ccb_h.flags & CAM_DIR_MASK) {
@@ -459,7 +459,7 @@
AAC_FIBSTATE_REXPECTED |
AAC_FIBSTATE_NORM;
fib->Header.Size = sizeof(struct aac_fib_header) +
- sizeof(struct aac_srb32);
+ sizeof(struct aac_srb);
aac_enqueue_ready(cm);
aac_startio(cm->cm_sc);
==== //depot/projects/scottl-camlock/src/sys/dev/aac/aacreg.h#7 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/aac/aacreg.h,v 1.27 2009/02/21 15:40:03 attilio Exp $
+ * $FreeBSD: src/sys/dev/aac/aacreg.h,v 1.28 2009/10/29 17:14:18 emaste Exp $
*/
/*
@@ -1363,7 +1363,7 @@
/*
* SCSI Passthrough structures
*/
-struct aac_srb32 {
+struct aac_srb {
u_int32_t function;
u_int32_t bus;
u_int32_t target;
==== //depot/projects/scottl-camlock/src/sys/dev/acpi_support/acpi_aiboost.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpi_support/acpi_aiboost.c,v 1.5 2009/09/22 18:34:23 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpi_support/acpi_aiboost.c,v 1.6 2009/10/29 18:03:16 jhb Exp $");
#include "opt_acpi.h"
#include <sys/param.h>
@@ -41,23 +41,25 @@
#include <sys/malloc.h>
#include <sys/sysctl.h>
-#define _COMPONENT ACPI_OEM
+#define _COMPONENT ACPI_OEM
ACPI_MODULE_NAME("AIBOOST")
-#define DESCSTRLEN 32
-struct acpi_aiboost_element{
+#define DESCSTRLEN 32
+
+struct acpi_aiboost_element {
uint32_t id;
- char desc[DESCSTRLEN];
+ char desc[DESCSTRLEN];
};
+
ACPI_SERIAL_DECL(aiboost, "ACPI AIBOOST");
-/**/
-struct acpi_aiboost_component{
- unsigned int num;
- struct acpi_aiboost_element elem[1];
+
+struct acpi_aiboost_component {
+ u_int num;
+ struct acpi_aiboost_element elem[0];
};
struct acpi_aiboost_softc {
- int pid;
+ int pid;
struct acpi_aiboost_component *temp;
struct acpi_aiboost_component *volt;
struct acpi_aiboost_component *fan;
@@ -65,7 +67,7 @@
static int acpi_aiboost_probe(device_t dev);
static int acpi_aiboost_attach(device_t dev);
-static int acpi_aiboost_detach(device_t dev);
+static int acpi_aiboost_detach(device_t dev);
static device_method_t acpi_aiboost_methods[] = {
/* Device interface */
@@ -85,46 +87,56 @@
static devclass_t acpi_aiboost_devclass;
DRIVER_MODULE(acpi_aiboost, acpi, acpi_aiboost_driver, acpi_aiboost_devclass,
- 0, 0);
+ 0, 0);
MODULE_DEPEND(acpi_aiboost, acpi, 1, 1, 1);
+
static char *abs_id[] = {"ATK0110", NULL};
-/*VSIF, RVLT, SVLT, TSIF, RTMP, STMP FSIF, RFAN, SFAN */
+/* VSIF, RVLT, SVLT, TSIF, RTMP, STMP, FSIF, RFAN, SFAN */
-static ACPI_STATUS acpi_aiboost_getcomponent(device_t dev, char *name, struct acpi_aiboost_component **comp)
+static ACPI_STATUS
+acpi_aiboost_getcomponent(device_t dev, char *name,
+ struct acpi_aiboost_component **comp)
{
- ACPI_BUFFER buf, buf2;
- ACPI_OBJECT *o,*elem,*subobj;
+ ACPI_BUFFER buf, buf2;
+ ACPI_OBJECT *elem, *o, *subobj;
ACPI_STATUS status;
- struct acpi_aiboost_component *c = NULL;
-
+ struct acpi_aiboost_component *c;
int i;
+ c = NULL;
buf.Pointer = NULL;
buf.Length = ACPI_ALLOCATE_BUFFER;
buf2.Pointer = NULL;
+ status = AcpiEvaluateObject(acpi_get_handle(dev), name, NULL, &buf);
- status = AcpiEvaluateObject(acpi_get_handle(dev), name, NULL, &buf);
-
- if(ACPI_FAILURE(status))
- return status;
-
+ if (ACPI_FAILURE(status))
+ return (status);
+
o = buf.Pointer;
- if(o->Type != ACPI_TYPE_PACKAGE)
+ if (o->Type != ACPI_TYPE_PACKAGE) {
+ device_printf(dev, "%s is not a package\n", name);
goto error;
-
+ }
+
elem = o->Package.Elements;
- if(elem->Type != ACPI_TYPE_INTEGER)
+ if (elem->Type != ACPI_TYPE_INTEGER) {
+ device_printf(dev, "First item in %s is not a count\n", name);
+ goto error;
+ }
+
+ if (elem->Integer.Value != o->Package.Count - 1) {
+ device_printf(dev, "Device count mismatch in %s\n", name);
goto error;
+ }
- c = malloc(sizeof(struct acpi_aiboost_component)
- + sizeof(struct acpi_aiboost_element)
- * (elem->Integer.Value -1),
- M_DEVBUF, M_ZERO|M_WAITOK);
+ c = malloc(sizeof(struct acpi_aiboost_component) +
+ sizeof(struct acpi_aiboost_element) * elem->Integer.Value, M_DEVBUF,
+ M_WAITOK | M_ZERO);
*comp = c;
c->num = elem->Integer.Value;
-
- for(i = 1 ; i < o->Package.Count; i++){
+
+ for (i = 1; i < o->Package.Count; i++) {
elem = &o->Package.Elements[i];
if (elem->Type == ACPI_TYPE_ANY) {
buf2.Pointer = NULL;
@@ -132,196 +144,195 @@
status = AcpiEvaluateObject(elem->Reference.Handle,
NULL, NULL, &buf2);
- if (ACPI_FAILURE(status)){
- printf("FETCH OBJECT\n");
+ if (ACPI_FAILURE(status)) {
+ device_printf(dev,
+ "Failed to fetch object for %s\n", name);
goto error;
}
subobj = buf2.Pointer;
} else if (elem->Type == ACPI_TYPE_PACKAGE)
subobj = elem;
else {
- printf("NO PACKAGE\n");
+ device_printf(dev,
+ "Subitem %d was not a package for %s\n", i, name);
goto error;
}
- if(ACPI_FAILURE(acpi_PkgInt32(subobj,0, &c->elem[i -1].id))){
- printf("ID FAILED\n");
+ status = acpi_PkgInt32(subobj, 0, &c->elem[i - 1].id);
+ if (ACPI_FAILURE(status)) {
+ device_printf(dev,
+ "Failed to fetch ID for subobject %d in %s\n", i,
+ name);
goto error;
}
- status = acpi_PkgStr(subobj, 1, c->elem[i - 1].desc,
- sizeof(c->elem[i - 1].desc));
- if(ACPI_FAILURE(status)){
- if(status == E2BIG){
+ status = acpi_PkgStr(subobj, 1, c->elem[i - 1].desc,
+ sizeof(c->elem[i - 1].desc));
+ if (ACPI_FAILURE(status)){
+ if (status == E2BIG) {
c->elem[i - 1].desc[DESCSTRLEN-1] = 0;
- }else{
- printf("DESC FAILED %d\n", i-1);
+ } else {
+ device_printf(dev,
+ "Failed to fetch description for subobject %d in %s\n",
+ i, name);
goto error;
}
}
-
+
if (buf2.Pointer) {
AcpiOsFree(buf2.Pointer);
buf2.Pointer = NULL;
}
}
- if(buf.Pointer)
+ if (buf.Pointer)
AcpiOsFree(buf.Pointer);
- return 0;
+ return (0);
- error:
- printf("BAD DATA\n");
- if(buf.Pointer)
+error:
+ if (buf.Pointer)
AcpiOsFree(buf.Pointer);
- if(buf2.Pointer)
+ if (buf2.Pointer)
AcpiOsFree(buf2.Pointer);
- if(c)
+ if (c)
free(c, M_DEVBUF);
- return AE_BAD_DATA;
+ return (AE_BAD_DATA);
}
-static int
+static int
acpi_aiboost_get_value(ACPI_HANDLE handle, char *path, UINT32 number)
{
ACPI_OBJECT arg1, *ret;
ACPI_OBJECT_LIST args;
ACPI_BUFFER buf;
- buf.Length = ACPI_ALLOCATE_BUFFER;
- buf.Pointer = 0;
int val;
arg1.Type = ACPI_TYPE_INTEGER;
arg1.Integer.Value = number;
args.Count = 1;
args.Pointer = &arg1;
-
- if(ACPI_FAILURE(AcpiEvaluateObject(handle, path, &args, &buf))){
- return -1;
- }
+ buf.Length = ACPI_ALLOCATE_BUFFER;
+ buf.Pointer = NULL;
+ if (ACPI_FAILURE(AcpiEvaluateObject(handle, path, &args, &buf)))
+ return (-1);
ret = buf.Pointer;
- val = (ret->Type == ACPI_TYPE_INTEGER)? ret->Integer.Value : -1;
+ if (ret->Type == ACPI_TYPE_INTEGER)
+ val = ret->Integer.Value;
+ else
+ val = -1;
AcpiOsFree(buf.Pointer);
- return val;
+ return (val);
}
-static int acpi_aiboost_temp_sysctl(SYSCTL_HANDLER_ARGS)
+static int
+acpi_aiboost_temp_sysctl(SYSCTL_HANDLER_ARGS)
{
- device_t dev = arg1;
- int function = oidp->oid_arg2;
- int error = 0, val;
+ device_t dev;
+ int error, val;
+
+ dev = arg1;
ACPI_SERIAL_BEGIN(aiboost);
- val = acpi_aiboost_get_value(acpi_get_handle(dev), "RTMP",function );
- error = sysctl_handle_int(oidp, &val, 0 , req);
+ val = acpi_aiboost_get_value(acpi_get_handle(dev), "RTMP", arg2);
+ error = sysctl_handle_int(oidp, &val, 0, req);
ACPI_SERIAL_END(aiboost);
-
- return 0;
+ return (error);
}
-static int acpi_aiboost_volt_sysctl(SYSCTL_HANDLER_ARGS)
+static int
+acpi_aiboost_volt_sysctl(SYSCTL_HANDLER_ARGS)
{
- device_t dev = arg1;
- int function = oidp->oid_arg2;
- int error = 0, val;
+ device_t dev;
+ int error, val;
+
+ dev = arg1;
ACPI_SERIAL_BEGIN(aiboost);
- val = acpi_aiboost_get_value(acpi_get_handle(dev), "RVLT", function);
- error = sysctl_handle_int(oidp, &val, 0 , req);
+ val = acpi_aiboost_get_value(acpi_get_handle(dev), "RVLT", arg2);
+ error = sysctl_handle_int(oidp, &val, 0, req);
ACPI_SERIAL_END(aiboost);
-
- return 0;
+ return (error);
}
-static int acpi_aiboost_fan_sysctl(SYSCTL_HANDLER_ARGS)
+static int
+acpi_aiboost_fan_sysctl(SYSCTL_HANDLER_ARGS)
{
- device_t dev = arg1;
- int function = oidp->oid_arg2;
- int error = 0, val;
+ device_t dev;
+ int error, val;
+
+ dev = arg1;
ACPI_SERIAL_BEGIN(aiboost);
- val = acpi_aiboost_get_value(acpi_get_handle(dev), "RFAN", function);
- error = sysctl_handle_int(oidp, &val, 0 , req);
+ val = acpi_aiboost_get_value(acpi_get_handle(dev), "RFAN", arg2);
+ error = sysctl_handle_int(oidp, &val, 0, req);
ACPI_SERIAL_END(aiboost);
-
- return 0;
+ return (error);
}
static int
acpi_aiboost_probe(device_t dev)
{
- int ret = ENXIO;
+
+ if (ACPI_ID_PROBE(device_get_parent(dev), dev, abs_id) == NULL)
+ return (ENXIO);
- if (ACPI_ID_PROBE(device_get_parent(dev), dev, abs_id)) {
- device_set_desc(dev, "ASUStek AIBOOSTER");
- ret = 0;
- }
- return (ret);
+ device_set_desc(dev, "ASUStek AIBOOSTER");
+ return (0);
}
static int
acpi_aiboost_attach(device_t dev)
{
struct acpi_aiboost_softc *sc;
- char nambuf[]="tempXXX";
+ char nambuf[16];
int i;
sc = device_get_softc(dev);
- if(ACPI_FAILURE(acpi_aiboost_getcomponent(dev, "TSIF", &sc->temp)))
+ if (ACPI_FAILURE(acpi_aiboost_getcomponent(dev, "TSIF", &sc->temp)))
goto error;
- for(i= 0; i < sc->temp->num; i++){
- sprintf(nambuf,"temp%d", i);
+ for (i = 0; i < sc->temp->num; i++) {
+ snprintf(nambuf, sizeof(nambuf), "temp%d", i);
SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev),
- SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
- OID_AUTO, nambuf,
- CTLTYPE_INT|CTLFLAG_RD, dev,
- sc->temp->elem[i].id,
- acpi_aiboost_temp_sysctl,
- "I", sc->temp->elem[i].desc);
+ SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO,
+ nambuf, CTLTYPE_INT | CTLFLAG_RD, dev, sc->temp->elem[i].id,
+ acpi_aiboost_temp_sysctl, "I", sc->temp->elem[i].desc);
}
- if(ACPI_FAILURE(acpi_aiboost_getcomponent(dev, "VSIF", &sc->volt)))
+
+ if (ACPI_FAILURE(acpi_aiboost_getcomponent(dev, "VSIF", &sc->volt)))
goto error;
-
- for(i= 0; i < sc->volt->num; i++){
- sprintf(nambuf,"volt%d", i);
+ for (i = 0; i < sc->volt->num; i++) {
+ snprintf(nambuf, sizeof(nambuf), "volt%d", i);
SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev),
- SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
- OID_AUTO, nambuf,
- CTLTYPE_INT|CTLFLAG_RD, dev,
- sc->volt->elem[i].id,
- acpi_aiboost_volt_sysctl,
- "I", sc->volt->elem[i].desc);
+ SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO,
+ nambuf, CTLTYPE_INT | CTLFLAG_RD, dev, sc->volt->elem[i].id,
+ acpi_aiboost_volt_sysctl, "I", sc->volt->elem[i].desc);
}
- if(ACPI_FAILURE(acpi_aiboost_getcomponent(dev, "FSIF", &sc->fan)))
+ if (ACPI_FAILURE(acpi_aiboost_getcomponent(dev, "FSIF", &sc->fan)))
goto error;
-
- for(i= 0; i < sc->fan->num; i++){
- sprintf(nambuf,"fan%d", i);
+ for (i = 0; i < sc->fan->num; i++) {
+ snprintf(nambuf, sizeof(nambuf), "fan%d", i);
SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev),
- SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
- OID_AUTO, nambuf,
- CTLTYPE_INT|CTLFLAG_RD, dev,
- sc->fan->elem[i].id,
- acpi_aiboost_fan_sysctl,
- "I", sc->fan->elem[i].desc);
+ SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO,
+ nambuf, CTLTYPE_INT | CTLFLAG_RD, dev, sc->fan->elem[i].id,
+ acpi_aiboost_fan_sysctl, "I", sc->fan->elem[i].desc);
}
-
return (0);
error:
- return EINVAL;
+ return (EINVAL);
}
-static int
+static int
acpi_aiboost_detach(device_t dev)
{
- struct acpi_aiboost_softc *sc = device_get_softc(dev);
+ struct acpi_aiboost_softc *sc;
- if(sc->temp)
+ sc = device_get_softc(dev);
+ if (sc->temp)
free(sc->temp, M_DEVBUF);
- if(sc->volt)
+ if (sc->volt)
free(sc->volt, M_DEVBUF);
- if(sc->fan)
+ if (sc->fan)
free(sc->fan, M_DEVBUF);
return (0);
}
==== //depot/projects/scottl-camlock/src/sys/dev/aic7xxx/aic79xx_pci.c#9 (text+ko) ====
@@ -46,7 +46,7 @@
#include "aic79xx_inline.h"
#else
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic79xx_pci.c,v 1.26 2007/04/17 06:26:24 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic79xx_pci.c,v 1.27 2009/10/30 16:23:56 brueffer Exp $");
#include <dev/aic7xxx/aic79xx_osm.h>
#include <dev/aic7xxx/aic79xx_inline.h>
#endif
@@ -89,6 +89,7 @@
#define ID_AHA_39320D_B 0x801C900500419005ull
#define ID_AHA_39320D_HP 0x8011900500AC0E11ull
#define ID_AHA_39320D_B_HP 0x801C900500AC0E11ull
+#define ID_AHA_39320LPE 0x8017900500459005ull
#define ID_AIC7902_PCI_REV_A4 0x3
#define ID_AIC7902_PCI_REV_B0 0x10
#define SUBID_HP 0x0E11
@@ -204,6 +205,12 @@
"Adaptec (HP OEM) 39320D Ultra320 SCSI adapter",
ahd_aic7902_setup
},
+ {
+ ID_AHA_39320LPE,
+ ID_ALL_MASK,
+ "Adaptec 39320LPE Ultra320 SCSI adapter",
+ ahd_aic7902_setup
+ },
/* Generic chip probes for devices we don't know 'exactly' */
{
ID_AIC7901 & ID_9005_GENERIC_MASK,
==== //depot/projects/scottl-camlock/src/sys/dev/ata/ata-pci.h#20 (text+ko) ====
@@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.110 2009/10/26 10:00:59 mav Exp $
+ * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.111 2009/10/30 20:28:49 mav Exp $
*/
/* structure holding chipset config info */
@@ -97,6 +97,7 @@
#define ATA_ADAPTEC_ID 0x9005
#define ATA_ADAPTEC_1420 0x02419005
+#define ATA_ADAPTEC_1430 0x02439005
#define ATA_ATI_ID 0x1002
#define ATA_ATI_IXP200 0x43491002
@@ -216,7 +217,9 @@
#define ATA_M88SX5080 0x508011ab
#define ATA_M88SX5081 0x508111ab
#define ATA_M88SX6041 0x604111ab
+#define ATA_M88SX6042 0x604211ab
#define ATA_M88SX6081 0x608111ab
+#define ATA_M88SX7042 0x704211ab
#define ATA_M88SX6101 0x610111ab
#define ATA_M88SX6121 0x612111ab
#define ATA_M88SX6145 0x614511ab
==== //depot/projects/scottl-camlock/src/sys/dev/ata/chipsets/ata-adaptec.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/chipsets/ata-adaptec.c,v 1.2 2009/06/24 19:49:18 mav Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/chipsets/ata-adaptec.c,v 1.3 2009/10/30 20:28:49 mav Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -53,6 +53,7 @@
/* misc defines */
#define MV_60XX 60 //must match ata_marvell.c's definition
+#define MV_7042 72 //must match ata_marvell.c's definition
/*
@@ -64,6 +65,7 @@
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
{{ ATA_ADAPTEC_1420, 0, 4, MV_60XX, ATA_SA300, "1420SA" },
+ { ATA_ADAPTEC_1430, 0, 4, MV_7042, ATA_SA300, "1430SA" },
{ 0, 0, 0, 0, 0, 0}};
if (pci_get_vendor(dev) != ATA_ADAPTEC_ID)
==== //depot/projects/scottl-camlock/src/sys/dev/ata/chipsets/ata-marvell.c#11 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/chipsets/ata-marvell.c,v 1.12 2009/09/22 11:47:21 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/chipsets/ata-marvell.c,v 1.13 2009/10/30 20:28:49 mav Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -67,6 +67,8 @@
/* misc defines */
#define MV_50XX 50
#define MV_60XX 60
+#define MV_6042 62
+#define MV_7042 72
#define MV_61XX 61
@@ -102,7 +104,9 @@
{ ATA_M88SX5080, 0, 8, MV_50XX, ATA_SA150, "88SX5080" },
{ ATA_M88SX5081, 0, 8, MV_50XX, ATA_SA150, "88SX5081" },
{ ATA_M88SX6041, 0, 4, MV_60XX, ATA_SA300, "88SX6041" },
+ { ATA_M88SX6042, 0, 4, MV_6042, ATA_SA300, "88SX6042" },
{ ATA_M88SX6081, 0, 8, MV_60XX, ATA_SA300, "88SX6081" },
+ { ATA_M88SX7042, 0, 4, MV_7042, ATA_SA300, "88SX7042" },
{ ATA_M88SX6101, 0, 1, MV_61XX, ATA_UDMA6, "88SX6101" },
{ ATA_M88SX6121, 0, 1, MV_61XX, ATA_UDMA6, "88SX6121" },
{ ATA_M88SX6145, 0, 2, MV_61XX, ATA_UDMA6, "88SX6145" },
@@ -119,6 +123,8 @@
switch (ctlr->chip->cfg2) {
case MV_50XX:
case MV_60XX:
+ case MV_6042:
+ case MV_7042:
ctlr->chipinit = ata_marvell_edma_chipinit;
break;
case MV_61XX:
@@ -251,6 +257,8 @@
ch->r_io[ATA_SCONTROL].offset = 0x00108 + ATA_MV_HOST_BASE(ch);
break;
case MV_60XX:
+ case MV_6042:
+ case MV_7042:
ch->r_io[ATA_SSTATUS].res = ctlr->r_res1;
ch->r_io[ATA_SSTATUS].offset = 0x02300 + ATA_MV_EDMA_BASE(ch);
ch->r_io[ATA_SERROR].res = ctlr->r_res1;
@@ -383,35 +391,61 @@
request->dma->sg_bus & 0xffffffff);
le32enc(bytep + 1 * sizeof(u_int32_t),
(u_int64_t)request->dma->sg_bus >> 32);
- le16enc(bytep + 4 * sizeof(u_int16_t),
- (request->flags & ATA_R_READ ? 0x01 : 0x00) | (request->tag << 1));
+ if (ctlr->chip->cfg2 != MV_6042 && ctlr->chip->cfg2 != MV_7042) {
+ le16enc(bytep + 4 * sizeof(u_int16_t),
+ (request->flags & ATA_R_READ ? 0x01 : 0x00) | (request->tag << 1));
+
+ i = 10;
+ bytep[i++] = (request->u.ata.count >> 8) & 0xff;
+ bytep[i++] = 0x10 | ATA_COUNT;
+ bytep[i++] = request->u.ata.count & 0xff;
+ bytep[i++] = 0x10 | ATA_COUNT;
+
+ bytep[i++] = (request->u.ata.lba >> 24) & 0xff;
+ bytep[i++] = 0x10 | ATA_SECTOR;
+ bytep[i++] = request->u.ata.lba & 0xff;
+ bytep[i++] = 0x10 | ATA_SECTOR;
+
+ bytep[i++] = (request->u.ata.lba >> 32) & 0xff;
+ bytep[i++] = 0x10 | ATA_CYL_LSB;
+ bytep[i++] = (request->u.ata.lba >> 8) & 0xff;
+ bytep[i++] = 0x10 | ATA_CYL_LSB;
+
+ bytep[i++] = (request->u.ata.lba >> 40) & 0xff;
+ bytep[i++] = 0x10 | ATA_CYL_MSB;
+ bytep[i++] = (request->u.ata.lba >> 16) & 0xff;
+ bytep[i++] = 0x10 | ATA_CYL_MSB;
- i = 10;
- bytep[i++] = (request->u.ata.count >> 8) & 0xff;
- bytep[i++] = 0x10 | ATA_COUNT;
- bytep[i++] = request->u.ata.count & 0xff;
- bytep[i++] = 0x10 | ATA_COUNT;
+ bytep[i++] = ATA_D_LBA | ATA_D_IBM | ((request->u.ata.lba >> 24) & 0xf);
+ bytep[i++] = 0x10 | ATA_DRIVE;
- bytep[i++] = (request->u.ata.lba >> 24) & 0xff;
- bytep[i++] = 0x10 | ATA_SECTOR;
- bytep[i++] = request->u.ata.lba & 0xff;
- bytep[i++] = 0x10 | ATA_SECTOR;
+ bytep[i++] = request->u.ata.command;
+ bytep[i++] = 0x90 | ATA_COMMAND;
+ } else {
+ le32enc(bytep + 2 * sizeof(u_int32_t),
+ (request->flags & ATA_R_READ ? 0x01 : 0x00) | (request->tag << 1));
- bytep[i++] = (request->u.ata.lba >> 32) & 0xff;
- bytep[i++] = 0x10 | ATA_CYL_LSB;
- bytep[i++] = (request->u.ata.lba >> 8) & 0xff;
- bytep[i++] = 0x10 | ATA_CYL_LSB;
+ i = 16;
+ bytep[i++] = 0;
+ bytep[i++] = 0;
+ bytep[i++] = request->u.ata.command;
+ bytep[i++] = request->u.ata.feature & 0xff;
- bytep[i++] = (request->u.ata.lba >> 40) & 0xff;
- bytep[i++] = 0x10 | ATA_CYL_MSB;
- bytep[i++] = (request->u.ata.lba >> 16) & 0xff;
- bytep[i++] = 0x10 | ATA_CYL_MSB;
+ bytep[i++] = request->u.ata.lba & 0xff;
+ bytep[i++] = (request->u.ata.lba >> 8) & 0xff;
+ bytep[i++] = (request->u.ata.lba >> 16) & 0xff;
+ bytep[i++] = ATA_D_LBA | ATA_D_IBM | ((request->u.ata.lba >> 24) & 0x0f);
- bytep[i++] = ATA_D_LBA | ATA_D_IBM | ((request->u.ata.lba >> 24) & 0xf);
- bytep[i++] = 0x10 | ATA_DRIVE;
+ bytep[i++] = (request->u.ata.lba >> 24) & 0xff;
+ bytep[i++] = (request->u.ata.lba >> 32) & 0xff;
+ bytep[i++] = (request->u.ata.lba >> 40) & 0xff;
+ bytep[i++] = (request->u.ata.feature >> 8) & 0xff;
- bytep[i++] = request->u.ata.command;
- bytep[i++] = 0x90 | ATA_COMMAND;
+ bytep[i++] = request->u.ata.count & 0xff;
+ bytep[i++] = (request->u.ata.count >> 8) & 0xff;
+ bytep[i++] = 0;
+ bytep[i++] = 0;
+ }
bus_dmamap_sync(ch->dma.work_tag, ch->dma.work_map,
BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
@@ -556,7 +590,8 @@
ch->dma.max_address = BUS_SPACE_MAXADDR;
/* chip does not reliably do 64K DMA transfers */
- ch->dma.max_iosize = 64 * DEV_BSIZE;
+ if (ctlr->chip->cfg2 == MV_50XX || ctlr->chip->cfg2 == MV_60XX)
+ ch->dma.max_iosize = 64 * DEV_BSIZE;
}
ATA_DECLARE_DRIVER(ata_marvell);
==== //depot/projects/scottl-camlock/src/sys/dev/drm/drmP.h#13 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/drmP.h,v 1.39 2009/08/23 14:33:12 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/drmP.h,v 1.40 2009/10/30 16:59:58 rnoland Exp $");
#ifndef _DRM_P_H_
#define _DRM_P_H_
@@ -223,23 +223,9 @@
* DRM_WRITEMEMORYBARRIER() prevents reordering of writes.
* DRM_MEMORYBARRIER() prevents reordering of reads and writes.
*/
-#if defined(__i386__)
-#define DRM_READMEMORYBARRIER() __asm __volatile( \
- "lock; addl $0,0(%%esp)" : : : "memory");
-#define DRM_WRITEMEMORYBARRIER() __asm __volatile("" : : : "memory");
-#define DRM_MEMORYBARRIER() __asm __volatile( \
- "lock; addl $0,0(%%esp)" : : : "memory");
-#elif defined(__alpha__)
-#define DRM_READMEMORYBARRIER() alpha_mb();
-#define DRM_WRITEMEMORYBARRIER() alpha_wmb();
-#define DRM_MEMORYBARRIER() alpha_mb();
-#elif defined(__amd64__)
-#define DRM_READMEMORYBARRIER() __asm __volatile( \
- "lock; addl $0,0(%%rsp)" : : : "memory");
-#define DRM_WRITEMEMORYBARRIER() __asm __volatile("" : : : "memory");
-#define DRM_MEMORYBARRIER() __asm __volatile( \
- "lock; addl $0,0(%%rsp)" : : : "memory");
-#endif
+#define DRM_READMEMORYBARRIER() rmb()
+#define DRM_WRITEMEMORYBARRIER() wmb()
+#define DRM_MEMORYBARRIER() mb()
#define DRM_READ8(map, offset) \
*(volatile u_int8_t *)(((vm_offset_t)(map)->handle) + \
==== //depot/projects/scottl-camlock/src/sys/dev/drm/drm_scatter.c#5 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/drm_scatter.c,v 1.10 2009/03/25 01:41:56 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/drm_scatter.c,v 1.12 2009/10/30 18:30:13 rnoland Exp $");
/** @file drm_scatter.c
* Allocation of memory for scatter-gather mappings by the graphics chip.
@@ -47,79 +47,50 @@
{
struct drm_sg_mem *entry;
struct drm_dma_handle *dmah;
- unsigned long pages;
int ret;
if (dev->sg)
return EINVAL;
entry = malloc(sizeof(*entry), DRM_MEM_SGLISTS, M_WAITOK | M_ZERO);
- if (!entry)
- return ENOMEM;
+ entry->pages = round_page(request->size) / PAGE_SIZE;
+ DRM_DEBUG("sg size=%ld pages=%d\n", request->size, entry->pages);
- pages = round_page(request->size) / PAGE_SIZE;
- DRM_DEBUG("sg size=%ld pages=%ld\n", request->size, pages);
-
- entry->pages = pages;
-
- entry->busaddr = malloc(pages * sizeof(*entry->busaddr), DRM_MEM_PAGES,
+ entry->busaddr = malloc(entry->pages * sizeof(*entry->busaddr),
+ DRM_MEM_PAGES, M_WAITOK | M_ZERO);
+ dmah = malloc(sizeof(struct drm_dma_handle), DRM_MEM_DMA,
M_WAITOK | M_ZERO);
- if (!entry->busaddr) {
- free(entry, DRM_MEM_SGLISTS);
- return ENOMEM;
- }
-
- dmah = malloc(sizeof(struct drm_dma_handle), DRM_MEM_DMA,
- M_ZERO | M_NOWAIT);
- if (dmah == NULL) {
- free(entry->busaddr, DRM_MEM_PAGES);
- free(entry, DRM_MEM_SGLISTS);
- return ENOMEM;
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list