Messages in this thread | | | Date | Mon, 14 Feb 2011 18:47:36 -0600 | From | Robert Hancock <> | Subject | Re: b44 driver causes panic when using swiotlb |
| |
On 01/31/2011 11:22 PM, FUJITA Tomonori wrote: > On Mon, 31 Jan 2011 21:22:23 -0600 > Robert Hancock<hancockrwd@gmail.com> wrote: > >>> Some ideas to implement something that works for such device were >>> discussed. Seems that the conclusion is that it's doesn't worth making >>> the common code complicated for such minor and insane devices. >> >> I don't think this is the only device that has sub-32-bit DMA >> restrictions, this will just lead to a bunch of duplicated code. > > Yeah, not only device but not many. > > The block layer has the own bouncing mechanism. Some network drivers > have the similar bouncing code. I don't know if there are other kinds > of drivers that have the own bouncing code. > > I thought that we can make mm/bounce.c (used for block drivers now) > work any drivers without complicating it. We could make swiotlb to do > but it's too complicated and it doesn't worth. > > >> In >> particular, how is LPC DMA supposed to work? > > LPC DMA can't do 32bit dma?
At least not if it's using ISA-style 3rd-party DMA. Some devices may do bus-mastering and be able to do 32-bit DMA, but I've never seen one, at least.
> > >> At the very least we should be allowing the driver to deal with the >> failure instead of panicing the system. Otherwise we are just leaving a >> land mine for people to trip over. > > Agreed. swiotlb shouldn't panic in this case. I'll take care of it.
| |