switch-coreboot/device
Myles Watson 0fb2a8f081 This patch simplifies the resource allocator by splitting it into distinct
phases.  One benefit of this is that it makes the call chain easier to follow.

device/device.c:
	Remove references to have_resources.
	Remove read_resources from compute allocate resources.
	Split compute_allocate_resources into two
	1. compute_resource_needs
		A. Traverse the tree depth first
		B. Sum resources
		C. Adjust limits and bases
		D. Update bridge resources sizes
	2. assign_resource_values
		A. Traverse the tree breadth first
		B. Assign resource values

device/device_util.c:
	Remove references to have_resources.

device/pci_device.c:
	Remove saved values stubs (they're not needed now.)
		1. Sizing function restores values
	Fix 64-bit flag masking.
	Add an error message for an invalid value.
	Update pci_record_bridge_resource:
		1. remove compute_allocate_resource call
		2. remove pci_set_resource call
	Update pci_bus_read_resources to read children's too.
	Update pci_set_resource:
		1. change logic for setting zero-size resources
			A. Set range to [limit->limit-2^gran]
				(Could have been any range with base > limit)
		2. remove compute_allocate_resource calls
		3. Change phase4_assign_resources ->phase4_set_resources

device/pci_ops.c:
	Change an error message to be more helpful.

device/root_device.c:
	Remove code for read_resources and set resources.
	Add a .id to the ops.

include/device/device.h:
	Remove have_resources.
	Comment out assign_resources.  I think we could comment out more here.
	Add debugging function prototypes.
	Change phase4_assign_resources to phase4_set_resources.

include/device/resource.h
	Add a IORESOURCE_BRIDGE flag.

device/cardbus_device.c
	Remove compute_allocate_resource call.
	Use probe_resource (doesn't die) instead of find_resource.

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>



git-svn-id: svn://coreboot.org/repository/coreboot-v3@1089 f3766cd6-281f-0410-b1cd-43a5c92072e9
2008-12-31 19:43:34 +00:00
..
agp_device.c This patch changes all occurrences of pci_dev_set_resources -> 2008-11-24 14:06:10 +00:00
cardbus_device.c This patch simplifies the resource allocator by splitting it into distinct 2008-12-31 19:43:34 +00:00
device.c This patch simplifies the resource allocator by splitting it into distinct 2008-12-31 19:43:34 +00:00
device_util.c This patch simplifies the resource allocator by splitting it into distinct 2008-12-31 19:43:34 +00:00
hypertransport.c This patch changes all occurrences of pci_dev_set_resources -> 2008-11-24 14:06:10 +00:00
Kconfig Subject: [PATCH 4/5] integration of biosemu (aka YABEL) into coreboot 2008-12-16 22:46:55 +00:00
Makefile This patch continues the device code cleanup. 2008-11-05 22:27:36 +00:00
pci_device.c This patch simplifies the resource allocator by splitting it into distinct 2008-12-31 19:43:34 +00:00
pci_ops.c This patch simplifies the resource allocator by splitting it into distinct 2008-12-31 19:43:34 +00:00
pci_rom.c This patch cleans up a little whitespace and makes the ID mismatch error more 2008-12-16 18:32:01 +00:00
pcie_device.c This patch changes all occurrences of pci_dev_set_resources -> 2008-11-24 14:06:10 +00:00
pcix_device.c This patch changes all occurrences of pci_dev_set_resources -> 2008-11-24 14:06:10 +00:00
pnp_device.c This patch makes all the SuperIOs build again, and reverts some breakage that 2008-12-08 20:40:02 +00:00
pnp_raw.c Fix a bunch of Doxygen warnings in v3 (trivial). 2008-10-23 18:55:01 +00:00
root_device.c This patch simplifies the resource allocator by splitting it into distinct 2008-12-31 19:43:34 +00:00
smbus_ops.c A lot of the v3 header files require other header files to be #included 2008-02-19 00:34:32 +00:00