Re: [patch 2.6.24-rc1] resource_len() utility function

From: Jeff Garzik
Date: Wed Oct 24 2007 - 23:47:13 EST


David Brownell wrote:
On Wednesday 24 October 2007, Jeff Garzik wrote:
With regards to resource reservation... IMO we should mimic struct pci_dev and add struct resource[] to struct device.

One minor difficulty: PCI has a limit on the number of BARs,
but other busses don't. It'd be better as a "struct resource *".


Just like we have pci_request_regions(), we should also be able to easily to a dev_request_regions(). the implementation should be very close to pci_request_region() and pci_release_region().

Wouldn't it be nicer to have PCI use those dev_*() calls?
Ideally pci_request_region() wraps dev_request_region()...

Absolutely...


Then a dev_iomap() analogue to pci_iomap() should be pretty straightforward to create.

Another minor nit: addressing the various resource types.
The platform bus code has multiple lookup schemes.

Calls like resource_iomap() might be more flexible, so that
lookup schemes can stay flexible.

I figured that, in the absence of a true, defined BAR concept, the struct device version would simply index into the discussed array of struct resource. That means any ordering or layout of resources should work, presuming (the usual case) that both driver and platform agree on the resource layout.

Jeff



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/