Date: Fri, 30 Mar 2007 23:15:17 +0200 From: usleepless@gmail.com To: "Sean West" <sean.west@gmail.com> Cc: freebsd-multimedia@freebsd.org Subject: Re: FreeBSD 5.5, PVR500, MythTV svn Message-ID: <c39ec84c0703301415g6e84c70dma77507b1919bf870@mail.gmail.com> In-Reply-To: <c39ec84c0703292326g1a252f2cg46db6fc915382c4f@mail.gmail.com> References: <50feecaf0703250944r2a373b13waad923d872701b93@mail.gmail.com> <957626.19205.qm@web30312.mail.mud.yahoo.com> <50feecaf0703251312m52c7cd79p9392db778ed33b4@mail.gmail.com> <50feecaf0703281744o6598298ck52e8199ac7bcb7e9@mail.gmail.com> <20070329013122.GD79742@wantadilla.lemis.com> <50feecaf0703290559w15757d0dh2a5b5babbd2c86ef@mail.gmail.com> <c39ec84c0703291157o276bb2f3l99168a80e9e75bd3@mail.gmail.com> <50feecaf0703291556t4043b38an2be257b1cbd6b4e1@mail.gmail.com> <c39ec84c0703292326g1a252f2cg46db6fc915382c4f@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Sean, On 3/30/07, usleepless@gmail.com <usleepless@gmail.com> wrote: > Sean, > > On 3/30/07, Sean West <sean.west@gmail.com> wrote: > > On 3/29/07, usleepless@gmail.com <usleepless@gmail.com> wrote: > > > Sean, List, > > > > > > On 3/29/07, Sean West <sean.west@gmail.com> wrote: > > > > On 3/28/07, Greg 'groggy' Lehey <grog@freebsd.org> wrote: > > > > > On Wednesday, 28 March 2007 at 17:44:47 -0700, Sean West wrote: > > > > > > I'm stumped. Does anyone else have any suggestions? > > > > > > > > > > No. How can I? > > > > > > > > Sorry. See my first post here: > > > > > > > > > > > http://lists.freebsd.org/pipermail/freebsd-multimedia/2007-March/006262.html > > > > > > sorry i have been away for so long. > > > > > > i would like to try to fix this with you. my first question is: why > > > are you still on 5.5? > > > > Hahaha... I was actually asking myself the same question as I was > > writing the subject for the first post. I just cvsup'd 6.2-release > > lastnight and I was going to upgrade today. If you would like my to do > > some testing on 5.5, I'm all for it. > > go ahead and upgrade: i have no wish for the driver to be backwards > compatible: it uses fast interrupts and firmware(9) now, which is only > available in >6.1. > > if upgrading solves your problem, then the problem is solved. right? > > let me know, don't forget to repatch the kernel. and there is another problem: the patches from the current port don't apply cleanly to the latest source. your kernel build will fail. use the attached patch instead. regards, usleep [-- Attachment #2 --] *** dev/iicbus/iicbb.c.ORIGINAL Sun Aug 24 13:49:13 2003 --- dev/iicbus/iicbb.c Fri Jul 1 15:55:21 2005 *************** struct iicbb_softc { *** 66,71 **** --- 66,72 ---- static int iicbb_probe(device_t); static int iicbb_attach(device_t); static int iicbb_detach(device_t); + static void iicbb_child_detached(device_t, device_t); static int iicbb_print_child(device_t, device_t); static int iicbb_callback(device_t, int, caddr_t); *************** static device_method_t iicbb_methods[] = *** 82,87 **** --- 83,89 ---- DEVMETHOD(device_detach, iicbb_detach), /* bus interface */ + DEVMETHOD(bus_child_detached, iicbb_child_detached), DEVMETHOD(bus_print_child, iicbb_print_child), /* iicbus interface */ *************** static int iicbb_attach(device_t dev) *** 130,144 **** static int iicbb_detach(device_t dev) { struct iicbb_softc *sc = (struct iicbb_softc *)device_get_softc(dev); ! if (sc->iicbus) { ! bus_generic_detach(dev); ! device_delete_child(dev, sc->iicbus); ! } return (0); } static int iicbb_print_child(device_t bus, device_t dev) { --- 132,165 ---- static int iicbb_detach(device_t dev) { struct iicbb_softc *sc = (struct iicbb_softc *)device_get_softc(dev); + device_t child; ! /* ! * Detach the children before recursively deleting ! * in case a child has a pointer to a grandchild ! * which is used by the child's detach routine. ! * ! * Remember the child before detaching so we can ! * delete it (bus_generic_detach indirectly zeroes ! * sc->child_dev). ! */ ! child = sc->iicbus; ! bus_generic_detach(dev); ! if (child) ! device_delete_child(dev, child); return (0); } + static void + iicbb_child_detached( device_t dev, device_t child ) + { + struct iicbb_softc *sc = (struct iicbb_softc *)device_get_softc(dev); + + if (child == sc->iicbus) + sc->iicbus = NULL; + } + static int iicbb_print_child(device_t bus, device_t dev) { *************** static int iicbb_read(device_t dev, char *** 383,388 **** --- 404,410 ---- } DRIVER_MODULE(iicbb, bktr, iicbb_driver, iicbb_devclass, 0, 0); + DRIVER_MODULE(iicbb, cxm_iic, iicbb_driver, iicbb_devclass, 0, 0); DRIVER_MODULE(iicbb, lpbb, iicbb_driver, iicbb_devclass, 0, 0); DRIVER_MODULE(iicbb, viapm, iicbb_driver, iicbb_devclass, 0, 0); *** dev/iicbus/iiconf.h.ORIGINAL Wed Jun 16 22:51:57 2004 --- dev/iicbus/iiconf.h Mon Oct 24 00:43:41 2005 *************** extern int iicbus_started(device_t); *** 114,120 **** extern int iicbus_start(device_t, u_char, int); extern int iicbus_stop(device_t); extern int iicbus_repeated_start(device_t, u_char, int); ! extern int iicbus_write(device_t, char *, int, int *, int); extern int iicbus_read(device_t, char *, int, int *, int, int); /* single byte read/write functions, start/stop not managed */ --- 114,120 ---- extern int iicbus_start(device_t, u_char, int); extern int iicbus_stop(device_t); extern int iicbus_repeated_start(device_t, u_char, int); ! extern int iicbus_write(device_t, const char *, int, int *, int); extern int iicbus_read(device_t, char *, int, int *, int, int); /* single byte read/write functions, start/stop not managed */ *** dev/iicbus/iiconf.c.ORIGINAL Wed Jun 16 22:51:57 2004 --- dev/iicbus/iiconf.c Mon Oct 24 00:47:32 2005 *************** iicbus_stop(device_t bus) *** 234,240 **** * iicbus_start() call */ int ! iicbus_write(device_t bus, char *buf, int len, int *sent, int timeout) { struct iicbus_softc *sc = (struct iicbus_softc *)device_get_softc(bus); --- 234,240 ---- * iicbus_start() call */ int ! iicbus_write(device_t bus, const char *buf, int len, int *sent, int timeout) { struct iicbus_softc *sc = (struct iicbus_softc *)device_get_softc(bus);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?c39ec84c0703301415g6e84c70dma77507b1919bf870>
