linux/Documentation/mn10300/compartmentalisation.txt
<<
>>
Prefs
   1                   =========================================
   2                   PART-SPECIFIC SOURCE COMPARTMENTALISATION
   3                   =========================================
   4
   5The 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============
  47COMPILE TIME
  48============
  49
  50When the kernel is compiled, symbolic links will be made in the asm header file
  51directory 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
  56So that the header files contained in those directories can be accessed without
  57lots of #ifdef-age.
  58
  59The appropriate arch/mn10300/unit-ZZZZ directory will also be entered by the
  60compilation process; all other unit-specific directories will be ignored.
  61
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.