[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re 6ab1e4a932 ("serial: Seperate the PCI device ids and parameters (v1)")


in that change you give bar_idx a second purpose: Originally it was
what its name say - an index into the BARs of the device. In that
change, however, you also use it to index into an individual BAR.
IOW right now we can use
- BAR0 + first_offset
- BAR1 + uart_offset + first_offset
- BAR2+ 2*uart_offset + first_offset
etc, which doesn't seem to be what we want. But of course I may
be overlooking something, assuming you tested the 2nd port of a
2-port Oxford card (the only one having .max_bars > 1).

I'm asking in the context of wanting to enable a card I have in a
new box of mine. While a single port one, it has 2-, 4-, and 8-port
siblings, with each port using the same (IO) BAR. Just like Linux
we'd need a flag indicating whether only BAR0 is to be used,
giving bar_idx back the meaning it had originally, and introducing
a more generic idx which (depending on the flag) means either.
But I'd need to know which value to give the flag for that 2-port
card. (And I'd hope you're still in possession of the card, so that
I could later ask you to test the resulting patch there.)

At the same time I noticed that the size check can't be quite right
in the MMIO path: It doesn't account for {first,uart}_offset. If
you agree, I could fix this along with the generalization of the
current logic to cover both MMIO and IO cases.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.