Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Jan 2003 22:04:01 +0100
From:      Andrea Campi <andrea@webcom.it>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        "M. Warner Losh" <imp@bsdimp.com>, Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>, current@FreeBSD.ORG
Subject:   Re: firewire hangs on Thinkpad
Message-ID:  <20030130210401.GA715@webcom.it>
In-Reply-To: <3E385236.29718458@mindspring.com>
References:  <20030124144823.GA600@webcom.it> <20030125.115501.13766238.imp@bsdimp.com> <20030129114951.GA3635@webcom.it> <3E385236.29718458@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jan 29, 2003 at 02:14:14PM -0800, Terry Lambert wrote:
> I expect that the attach of the device creates an interrupt if
> the system is already up.  This would indicate that it was an
> order of operations problem in the driver registration for a
> "live" piece of hardware.  Probably, it needs to attach the

Unless I'm really mistaken, that's not the case:

From fwohci_pci.c:

        rid = 0;
        sc->irq_res = bus_alloc_resource(self, SYS_RES_IRQ, &rid, 0, ~0, 1,
                                     RF_SHAREABLE | RF_ACTIVE);
...

        err = bus_setup_intr(self, sc->irq_res, INTR_TYPE_NET,
                     (driver_intr_t *) fwohci_intr, sc, &sc->ih);
...

        err = fwohci_init(sc, self);

        if (!err)
                err = device_probe_and_attach(sc->fc.bdev);



fwohci_init then proceeds to muck with the hardware, and finally:

        fw_init(&sc->fc);
        fwohci_reset(sc, dev);


fwohci_reset does its business, then:

        /* Enable interrupt */
        OWRITE(sc, FWOHCI_INTMASK,
                        OHCI_INT_ERR  | OHCI_INT_PHY_SID
                        | OHCI_INT_DMA_ATRQ | OHCI_INT_DMA_ATRS
                        | OHCI_INT_DMA_PRRQ | OHCI_INT_DMA_PRRS
                        | OHCI_INT_PHY_BUS_R | OHCI_INT_PW_ERR);
        fwohci_set_intr(&sc->fc, 1);


So no, you guessed wrong this time Terry ;-)


Bye,
	Andrea


-- 
                           Reboot America.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030130210401.GA715>