Date: Thu, 16 Dec 2004 10:21:45 -0600 (CST) From: Frederick S Bruckman <fredb@immanent.net> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/75154: Please update twa driver (for 3ware 9000 series) to 9.1.5.2. Message-ID: <200412161621.iBGGLjbq008177@construction.immanent.net> Resent-Message-ID: <200412161630.iBGGUTUi049118@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 75154 >Category: kern >Synopsis: Please update twa driver (for 3ware 9000 series) to 9.1.5.2. >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Thu Dec 16 16:30:29 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Frederick S Bruckman >Release: FreeBSD 5.3-RELEASE i386 >Organization: >Environment: System: FreeBSD construction.immanent.net 5.3-RELEASE FreeBSD 5.3-RELEASE #6: Wed Dec 15 22:22:11 CST 2004 fredb@construction.immanent.net:/usr/src/sys/i386/compile/CONDUCTION i386 >Description: Please update the twa driver for AMCC/3ware 9500S series RAID cards to the latest codeset, 9.1.5.2 (driver 2.50.02.011/firmware 2.04.00.005). The new firmware is needed to properly support the Battery Backup Units, and the new driver to support the latest utilities, "tw_cli" and "3dm2". >How-To-Repeat: Please update... (just kidding). >Fix: The following mechanical diff is against the driver from AMCC's web site, which is otherwise a "drop in" replacement on FreeBSD 5.3. You can download it from: http://www.3ware.com/support/download.asp In the form, choose "3ware 9000 series", "9.1.5.2", "Driver", "FreeBSD 5.x driver source (5.2 and above)". Hopefully, it will be no harder to port to current. diff -u twa-2.50.02.011.orig/twa.h twa-2.50.02.011/twa.h --- twa-2.50.02.011.orig/twa.h Mon Nov 8 18:28:46 2004 +++ twa-2.50.02.011/twa.h Wed Dec 15 20:08:14 2004 @@ -172,7 +172,7 @@ between ioctl calls */ device_t twa_bus_dev; /* bus device */ - dev_t twa_ctrl_dev; /* control device */ + struct cdev *twa_ctrl_dev; /* control device */ struct resource *twa_io_res; /* register interface window */ bus_space_handle_t twa_bus_handle; /* bus space handle */ bus_space_tag_t twa_bus_tag; /* bus space tag */ diff -u twa-2.50.02.011.orig/twa_freebsd.c twa-2.50.02.011/twa_freebsd.c --- twa-2.50.02.011.orig/twa_freebsd.c Mon Nov 8 18:28:46 2004 +++ twa-2.50.02.011/twa_freebsd.c Wed Dec 15 22:21:42 2004 @@ -50,6 +50,8 @@ static d_ioctl_t twa_ioctl_wrapper; static struct cdevsw twa_cdevsw = { + .d_version = D_VERSION, + .d_flags = D_NEEDGIANT, .d_open = twa_open, .d_close = twa_close, .d_ioctl = twa_ioctl_wrapper, @@ -74,7 +76,7 @@ * non-zero-- failure */ static int -twa_open(dev_t dev, int flags, int fmt, d_thread_t *proc) +twa_open(struct cdev *dev, int flags, int fmt, d_thread_t *proc) { int unit = minor(dev); struct twa_softc *sc = devclass_get_softc(twa_devclass, unit); @@ -99,7 +101,7 @@ * non-zero-- failure */ static int -twa_close(dev_t dev, int flags, int fmt, d_thread_t *proc) +twa_close(struct cdev *dev, int flags, int fmt, d_thread_t *proc) { int unit = minor(dev); struct twa_softc *sc = devclass_get_softc(twa_devclass, unit); @@ -127,7 +129,7 @@ * non-zero-- failure */ static int -twa_ioctl_wrapper(dev_t dev, u_long cmd, caddr_t buf, +twa_ioctl_wrapper(struct cdev *dev, u_long cmd, caddr_t buf, int flags, d_thread_t *proc) { struct twa_softc *sc = (struct twa_softc *)(dev->si_drv1); >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412161621.iBGGLjbq008177>