xref: /openbmc/linux/arch/x86/pci/bus_numa.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2284f933dSYinghai Lu #ifndef __BUS_NUMA_H
3284f933dSYinghai Lu #define __BUS_NUMA_H
499935a7aSYinghai Lu /*
599935a7aSYinghai Lu  * sub bus (transparent) will use entres from 3 to store extra from
62fe2abf8SBjorn Helgaas  * root, so need to make sure we have enough slot there.
799935a7aSYinghai Lu  */
8d28e5ac2SYinghai Lu struct pci_root_res {
9d28e5ac2SYinghai Lu 	struct list_head list;
10d28e5ac2SYinghai Lu 	struct resource res;
11d28e5ac2SYinghai Lu };
12d28e5ac2SYinghai Lu 
1399935a7aSYinghai Lu struct pci_root_info {
14d28e5ac2SYinghai Lu 	struct list_head list;
1599935a7aSYinghai Lu 	char name[12];
16d28e5ac2SYinghai Lu 	struct list_head resources;
17a10bb128SYinghai Lu 	struct resource busn;
1899935a7aSYinghai Lu 	int node;
1999935a7aSYinghai Lu 	int link;
2099935a7aSYinghai Lu };
2199935a7aSYinghai Lu 
22d28e5ac2SYinghai Lu extern struct list_head pci_root_infos;
23d28e5ac2SYinghai Lu struct pci_root_info *alloc_pci_root_info(int bus_min, int bus_max,
24d28e5ac2SYinghai Lu 						int node, int link);
25b74fd238SYinghai Lu extern void update_res(struct pci_root_info *info, resource_size_t start,
26b74fd238SYinghai Lu 		      resource_size_t end, unsigned long flags, int merge);
2799935a7aSYinghai Lu #endif
28