162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) 2020-2022 Loongson Technology Corporation Limited
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci#ifndef __ASM_TOPOLOGY_H
662306a36Sopenharmony_ci#define __ASM_TOPOLOGY_H
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci#include <linux/smp.h>
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci#ifdef CONFIG_NUMA
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciextern cpumask_t cpus_on_node[];
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci#define cpumask_of_node(node)  (&cpus_on_node[node])
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_cistruct pci_bus;
1762306a36Sopenharmony_ciextern int pcibus_to_node(struct pci_bus *);
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci#define cpumask_of_pcibus(bus)	(cpu_online_mask)
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ciextern unsigned char node_distances[MAX_NUMNODES][MAX_NUMNODES];
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_civoid numa_set_distance(int from, int to, int distance);
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci#define node_distance(from, to)	(node_distances[(from)][(to)])
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci#else
2862306a36Sopenharmony_ci#define pcibus_to_node(bus)	0
2962306a36Sopenharmony_ci#endif
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci#ifdef CONFIG_SMP
3262306a36Sopenharmony_ci#define topology_physical_package_id(cpu)	(cpu_data[cpu].package)
3362306a36Sopenharmony_ci#define topology_core_id(cpu)			(cpu_data[cpu].core)
3462306a36Sopenharmony_ci#define topology_core_cpumask(cpu)		(&cpu_core_map[cpu])
3562306a36Sopenharmony_ci#define topology_sibling_cpumask(cpu)		(&cpu_sibling_map[cpu])
3662306a36Sopenharmony_ci#endif
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci#include <asm-generic/topology.h>
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_cistatic inline void arch_fix_phys_package_id(int num, u32 slot) { }
4162306a36Sopenharmony_ci#endif /* __ASM_TOPOLOGY_H */
42