| 		   ========================================= | 
 | 		   PART-SPECIFIC SOURCE COMPARTMENTALISATION | 
 | 		   ========================================= | 
 |  | 
 | The sources for various parts are compartmentalised at two different levels: | 
 |  | 
 |  (1) Processor level | 
 |  | 
 |      The "processor level" is a CPU core plus the other on-silicon | 
 |      peripherals. | 
 |  | 
 |      Processor-specific header files are divided among directories in a similar | 
 |      way to the CPU level: | 
 |  | 
 | 	(*) include/asm-mn10300/proc-mn103e010/ | 
 |  | 
 | 	    Support for the AM33v2 CPU core. | 
 |  | 
 |      The appropriate processor is selected by a CONFIG_MN10300_PROC_YYYY option | 
 |      from the "Processor support" choice menu in the arch/mn10300/Kconfig file. | 
 |  | 
 |  | 
 |  (2) Unit level | 
 |  | 
 |      The "unit level" is a processor plus all the external peripherals | 
 |      controlled by that processor. | 
 |  | 
 |      Unit-specific header files are divided among directories in a similar way | 
 |      to the CPU level; not only that, but specific sources may also be | 
 |      segregated into separate directories under the arch directory: | 
 |  | 
 | 	(*) include/asm-mn10300/unit-asb2303/ | 
 | 	(*) arch/mn10300/unit-asb2303/ | 
 |  | 
 | 	    Support for the ASB2303 board with an ASB2308 daughter board. | 
 |  | 
 | 	(*) include/asm-mn10300/unit-asb2305/ | 
 | 	(*) arch/mn10300/unit-asb2305/ | 
 |  | 
 | 	    Support for the ASB2305 board. | 
 |  | 
 |      The appropriate processor is selected by a CONFIG_MN10300_UNIT_ZZZZ option | 
 |      from the "Unit type" choice menu in the arch/mn10300/Kconfig file. | 
 |  | 
 |  | 
 | ============ | 
 | COMPILE TIME | 
 | ============ | 
 |  | 
 | When the kernel is compiled, symbolic links will be made in the asm header file | 
 | directory for this arch: | 
 |  | 
 | 	include/asm-mn10300/proc => include/asm-mn10300/proc-YYYY/ | 
 | 	include/asm-mn10300/unit => include/asm-mn10300/unit-ZZZZ/ | 
 |  | 
 | So that the header files contained in those directories can be accessed without | 
 | lots of #ifdef-age. | 
 |  | 
 | The appropriate arch/mn10300/unit-ZZZZ directory will also be entered by the | 
 | compilation process; all other unit-specific directories will be ignored. |