Messages in this thread | | | Date | Mon, 06 Aug 2007 11:31:19 +0100 | From | David Vrabel <> | Subject | Re: sdio: enhance IO_RW_EXTENDED support |
| |
Pierre Ossman wrote: > On Tue, 31 Jul 2007 16:36:30 +0100 > David Vrabel <david.vrabel@csr.com> wrote: > >> These three patches enhance the support for the SDIO IO_RW_EXTENDED >> command. The block size of functions is managed and the I/O ops >> (sdio_readsb() etc) are extended to handle arbitrary lengths of data >> (by using multiple commands). >> >> I've not yet had a chance to test this stuff as I don't (yet) have >> the time to write a Bluetooth Type-A driver so these are posted as an >> example of the sort of API I'd expect. >> > > Thanks. These are some nice improvements. I do have one suggestion > though: > > Could we design it so that sdio_io_rw_ext_helper() sets the block size > itself? That way most drivers wouldn't have to care about that detail > and the core would be free to choose optimal values.
I would expect the block size to be set once per card, and never be changed and thus it's not logically a per-transfer operation. We certainly wouldn't want to change the block size willy-nilly as it's an expensive operation.
The patch I've presented does put the selection of the block size in the core (bar one thing which I agree should be removed).
> I suspect that some transactions might require a certain block size. > But we could satisfy that by stating that any transfer small enough to > fit into one block will not be split up.
I consider it unlikely that any card would want to do anything other than always use the largest possible block size.
David -- David Vrabel, Software Engineer, Drivers group Tel: +44 (0)1223 692562 CSR plc, Churchill House, Cambridge Business Park, Cowley Road, CB4 0WZ
. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |