device: Add a helper function to add a downstream bus
Adding downstream busses at runtime is a common pattern so add a helper function. Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Change-Id: Ic898189b92997b93304fcbf47c73e2bb5ec09023 Reviewed-on: https://review.coreboot.org/c/coreboot/+/80210 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
parent
e4e26560ee
commit
3e99ba02a4
4 changed files with 40 additions and 17 deletions
|
|
@ -171,6 +171,7 @@ extern struct bus *free_links;
|
|||
|
||||
/* Generic device interface functions */
|
||||
struct device *alloc_dev(struct bus *parent, struct device_path *path);
|
||||
struct bus *alloc_bus(struct device *parent);
|
||||
void dev_initialize_chips(void);
|
||||
void dev_enumerate(void);
|
||||
void dev_configure(void);
|
||||
|
|
@ -229,10 +230,9 @@ void mp_init_cpus(DEVTREE_CONST struct bus *cpu_bus);
|
|||
static inline void mp_cpu_bus_init(struct device *dev)
|
||||
{
|
||||
/* Make sure the cpu cluster has a downstream bus for LAPICs to be allocated. */
|
||||
if (!dev->link_list)
|
||||
add_more_links(dev, 1);
|
||||
struct bus *bus = alloc_bus(dev);
|
||||
|
||||
mp_init_cpus(dev->link_list);
|
||||
mp_init_cpus(bus);
|
||||
}
|
||||
|
||||
/* Debug functions */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue