About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / mn10300 / compartmentalisation.txt




Custom Search

Based on kernel version 3.13. Page generated on 2014-01-20 22:03 EST.

1			   =========================================
2			   PART-SPECIFIC SOURCE COMPARTMENTALISATION
3			   =========================================
4	
5	The sources for various parts are compartmentalised at two different levels:
6	
7	 (1) Processor level
8	
9	     The "processor level" is a CPU core plus the other on-silicon
10	     peripherals.
11	
12	     Processor-specific header files are divided among directories in a similar
13	     way to the CPU level:
14	
15		(*) include/asm-mn10300/proc-mn103e010/
16	
17		    Support for the AM33v2 CPU core.
18	
19	     The appropriate processor is selected by a CONFIG_MN10300_PROC_YYYY option
20	     from the "Processor support" choice menu in the arch/mn10300/Kconfig file.
21	
22	
23	 (2) Unit level
24	
25	     The "unit level" is a processor plus all the external peripherals
26	     controlled by that processor.
27	
28	     Unit-specific header files are divided among directories in a similar way
29	     to the CPU level; not only that, but specific sources may also be
30	     segregated into separate directories under the arch directory:
31	
32		(*) include/asm-mn10300/unit-asb2303/
33		(*) arch/mn10300/unit-asb2303/
34	
35		    Support for the ASB2303 board with an ASB2308 daughter board.
36	
37		(*) include/asm-mn10300/unit-asb2305/
38		(*) arch/mn10300/unit-asb2305/
39	
40		    Support for the ASB2305 board.
41	
42	     The appropriate processor is selected by a CONFIG_MN10300_UNIT_ZZZZ option
43	     from the "Unit type" choice menu in the arch/mn10300/Kconfig file.
44	
45	
46	============
47	COMPILE TIME
48	============
49	
50	When the kernel is compiled, symbolic links will be made in the asm header file
51	directory for this arch:
52	
53		include/asm-mn10300/proc => include/asm-mn10300/proc-YYYY/
54		include/asm-mn10300/unit => include/asm-mn10300/unit-ZZZZ/
55	
56	So that the header files contained in those directories can be accessed without
57	lots of #ifdef-age.
58	
59	The appropriate arch/mn10300/unit-ZZZZ directory will also be entered by the
60	compilation process; all other unit-specific directories will be ignored.
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.