OpenCores
URL https://opencores.org/ocsvn/or1k_soc_on_altera_embedded_dev_kit/or1k_soc_on_altera_embedded_dev_kit/trunk

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [trunk/] [linux-2.6/] [linux-2.6.24/] [Documentation/] [cputopology.txt] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 xianfeng
 
2
Export cpu topology info via sysfs. Items (attributes) are similar
3
to /proc/cpuinfo.
4
 
5
1) /sys/devices/system/cpu/cpuX/topology/physical_package_id:
6
represent the physical package id of  cpu X;
7
2) /sys/devices/system/cpu/cpuX/topology/core_id:
8
represent the cpu core id to cpu X;
9
3) /sys/devices/system/cpu/cpuX/topology/thread_siblings:
10
represent the thread siblings to cpu X in the same core;
11
4) /sys/devices/system/cpu/cpuX/topology/core_siblings:
12
represent the thread siblings to cpu X in the same physical package;
13
 
14
To implement it in an architecture-neutral way, a new source file,
15
drivers/base/topology.c, is to export the 4 attributes.
16
 
17
If one architecture wants to support this feature, it just needs to
18
implement 4 defines, typically in file include/asm-XXX/topology.h.
19
The 4 defines are:
20
#define topology_physical_package_id(cpu)
21
#define topology_core_id(cpu)
22
#define topology_thread_siblings(cpu)
23
#define topology_core_siblings(cpu)
24
 
25
The type of **_id is int.
26
The type of siblings is cpumask_t.
27
 
28
To be consistent on all architectures, the 4 attributes should have
29
default values if their values are unavailable. Below is the rule.
30
1) physical_package_id: If cpu has no physical package id, -1 is the
31
default value.
32
2) core_id: If cpu doesn't support multi-core, its core id is 0.
33
3) thread_siblings: Just include itself, if the cpu doesn't support
34
HT/multi-thread.
35
4) core_siblings: Just include itself, if the cpu doesn't support
36
multi-core and HT/Multi-thread.
37
 
38
So be careful when declaring the 4 defines in include/asm-XXX/topology.h.
39
 
40
If an attribute isn't defined on an architecture, it won't be exported.
41
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.