rammus: ignore hw echo ref for aec

Rammus had its firmware rebuilt as it went through uprev. As part of
that process it had its hardware references added. These paths have not
been vetted for AEC usage, block them accordingly.

BUG=b:276695518
TEST=Ebuild is happy and installs board.ini

Change-Id: I34afc62e971fc72f6048383d0c85afac907c3e55
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/board-overlays/+/4399714
Commit-Queue: Ben Zhang <benzh@chromium.org>
Tested-by: Per Åhgren <peah@chromium.org>
Reviewed-by: Jesse McGuire <jessemcguire@google.com>
Reviewed-by: Per Åhgren <peah@chromium.org>
Tested-by: Curtis Malainey <cujomalainey@chromium.org>
Auto-Submit: Curtis Malainey <cujomalainey@chromium.org>
Reviewed-by: Ben Zhang <benzh@chromium.org>
(cherry picked from commit 855ebce74655fe049a5572f11261d8461c0ab4fe)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/board-overlays/+/4419939
Commit-Queue: Curtis Malainey <cujomalainey@chromium.org>
Reviewed-by: Terry Cheong <htcheong@chromium.org>
Reviewed-by: Henry Sun <henrysun@google.com>
6 files changed
tree: 237654cda407393419115d33deba1530785dd13e
  1. baseboard-asurada/
  2. baseboard-brya/
  3. baseboard-cherry/
  4. baseboard-coral/
  5. baseboard-corsola/
  6. baseboard-dedede/
  7. baseboard-drallion/
  8. baseboard-fizz/
  9. baseboard-geralt/
  10. baseboard-glados/
  11. baseboard-gru/
  12. baseboard-grunt/
  13. baseboard-hatch/
  14. baseboard-herobrine/
  15. baseboard-jecht/
  16. baseboard-kalista/
  17. baseboard-keeby/
  18. baseboard-krabbylake/
  19. baseboard-kukui/
  20. baseboard-kunimitsu/
  21. baseboard-nami/
  22. baseboard-oak/
  23. baseboard-octopus/
  24. baseboard-poppy/
  25. baseboard-puff/
  26. baseboard-rammus/
  27. baseboard-reef/
  28. baseboard-rex/
  29. baseboard-sarien/
  30. baseboard-trogdor/
  31. baseboard-volteer/
  32. chipset-adl/
  33. chipset-adln/
  34. chipset-apl/
  35. chipset-bdw/
  36. chipset-cezanne/
  37. chipset-cml/
  38. chipset-glk/
  39. chipset-jsl/
  40. chipset-kbl/
  41. chipset-mendocino/
  42. chipset-mt8173/
  43. chipset-mt8183/
  44. chipset-mt8186/
  45. chipset-mt8188g/
  46. chipset-mt8192/
  47. chipset-mt8195/
  48. chipset-mtl/
  49. chipset-picasso/
  50. chipset-qc7180/
  51. chipset-rk3399/
  52. chipset-rpl/
  53. chipset-sc7280/
  54. chipset-skl/
  55. chipset-stnyridge/
  56. chipset-tgl/
  57. chipset-whl/
  58. overlay-amd64-generic/
  59. overlay-amd64-generic-embedded/
  60. overlay-amd64-generic-koosh/
  61. overlay-amd64-host/
  62. overlay-amd64-starnix/
  63. overlay-arm-generic/
  64. overlay-arm64-generic/
  65. overlay-arm64-llvmpipe/
  66. overlay-asuka/
  67. overlay-asurada/
  68. overlay-atlas/
  69. overlay-aurora/
  70. overlay-bob/
  71. overlay-brask/
  72. overlay-brya/
  73. overlay-bubs/
  74. overlay-caroline/
  75. overlay-cave/
  76. overlay-chell/
  77. overlay-cherry/
  78. overlay-cherry64/
  79. overlay-coral/
  80. overlay-corsola/
  81. overlay-dedede/
  82. overlay-draco/
  83. overlay-drallion/
  84. overlay-elm/
  85. overlay-eve/
  86. overlay-fizz/
  87. overlay-fizz-labstation/
  88. overlay-fizz-moblab/
  89. overlay-fizz-satlab/
  90. overlay-galaxy/
  91. overlay-geralt/
  92. overlay-grunt/
  93. overlay-guado/
  94. overlay-guybrush/
  95. overlay-hades/
  96. overlay-hana/
  97. overlay-hatch/
  98. overlay-herobrine/
  99. overlay-herobrine-kernelnext/
  100. overlay-jacuzzi/
  101. overlay-jacuzzi64/
  102. overlay-kalista/
  103. overlay-keeby/
  104. overlay-kevin/
  105. overlay-kevin64/
  106. overlay-kukui/
  107. overlay-lars/
  108. overlay-majolica/
  109. overlay-mushu/
  110. overlay-nami/
  111. overlay-nautilus/
  112. overlay-nissa/
  113. overlay-nocturne/
  114. overlay-octopus/
  115. overlay-palkia/
  116. overlay-passionfruit/
  117. overlay-puff/
  118. overlay-pyro/
  119. overlay-rainier/
  120. overlay-rammus/
  121. overlay-reef/
  122. overlay-reven/
  123. overlay-rex/
  124. overlay-sand/
  125. overlay-sarien/
  126. overlay-scarlet/
  127. overlay-senor/
  128. overlay-sentry/
  129. overlay-shotzo/
  130. overlay-skyrim/
  131. overlay-snappy/
  132. overlay-soraka/
  133. overlay-soraka-libcamera/
  134. overlay-strongbad/
  135. overlay-strongbad-kernelnext/
  136. overlay-strongbad64/
  137. overlay-tael/
  138. overlay-tatl/
  139. overlay-trogdor/
  140. overlay-trogdor-kernelnext/
  141. overlay-trogdor64/
  142. overlay-variant-guado-labstation/
  143. overlay-volteer/
  144. overlay-x32-generic/
  145. overlay-x86-generic/
  146. overlay-x86-generic-embedded/
  147. overlay-zork/
  148. project-labstation/
  149. project-manatee/
  150. project-mobbase/
  151. project-moblab/
  152. project-satlab/
  153. project-termina/
  154. project-wilco/
  155. .presubmitignore
  156. OWNERS
  157. OWNERS.binhosts
  158. OWNERS.metadata_cache
  159. PRESUBMIT.cfg
  160. README.md
  161. unblocked_terms.txt
README.md

This directory contains board and variant overlays. When a board is configured using setup_board --board <board> the following overlays are added to the make.conf PORTDIR_OVERLAY if they exist:

src/overlays/overlay-<board>
src/private-overlays/overlay-<board>-private

When a board is configured using setup_board --board <board> --variant <variant> or setup_board --board <board>_<variant> the following overlays are added if they exist:

src/overlays/overlay-<board>
src/overlays/overlay-variant-<board>-<variant>
src/private-overlays/overlay-<board>-private
src/private-overlays/overlay-variant-<board>-<variant>-private

If --variant is supplied to setup_board or the <board>_<variant> version of --board is supplied to setup_board then the primary variant overlay must exist.

A private board overlay can augment an existing non-private board overlay, or can serve as the primary board overlay for a board with no non-private board overlay.

All board overlays (including variants) should contain a make.conf. If this file exists it will be sourced in the order that the overlays and variants are listed above.

All board overlays should contain a toolchain.conf, specifying the toolchains required to build that board. Variants can inherit toolchain.conf from their primary board overlay.

The board and variant names can not have underscores or spaces in them.

Profiles

All overlays must contain a profiles directory with a repo_name file therein. The repo_name file provides a unique name Portage uses to identify each overlay or variant.

Overlays and variants can also contain named profiles as subdirectories of the profiles directory. If the board overlay contains a base profile, Portage will use that by default for the board; otherwise, Portage will use a profile from chromiumos-overlay.

Within a profile, a board overlay will most commonly want to specify package-specific USE flags via package.use, mask or unmask package versions via package.mask and package.unmask, or mask or unmask keywords via package.keywords. See man portage in the chroot for full details on those and other files that can appear in a profile.

Profiles in a board overlay must have a file parent, containing the full path of one of the profiles from chromiumos-overlay, as seen from the build chroot; /usr/local/portage/chromiumos/profiles in the chroot maps to src/third_party/chromiumos-overlay/profiles in the source tree. The parent must point to an architecture-appropriate profile, typically /usr/local/portage/chromiumos/profiles/default/linux/$arch/$version/chromeos. Profiles can use another profile from the same board as their parent, as long as the chain of parent profiles eventually leads to an architecture-appropriate profile from chromiumos-overlay.

Adding a base profile to a board overlay that did not previously have a profile will require re-running setup_board with --force.

layout.conf

Overlays should contain a metadata directory with a layout.conf file therein. The layout.conf file specifies the masters list. This is a list of repository names, taken from the repo_name files in the overlays. This list disambiguates the selection of ebuilds. When two overlays supply the same ebuild the overlay whose repo_name is listed later in the masters list will be used. The masters list also effects the way that portage searches for eclasses. By having the repo_name chromiumos as the last entry in the masters list portage will correctly find the chromiumos specific eclasses.

Board-specific packages

A board overlay will typically want to provide additional packages to install. ChromiumOS builds install the chromeos/chromeos package by default, whose RDEPEND brings in all the packages installed by default. chromeos/chromeos RDEPENDs on the virtual package virtual/chromeos-bsp, which exists for board overlays to override. chromiumos-overlay provides a default version of virtual/chromeos-bsp which RDEPENDs on the empty package chromeos-base/chromeos-bsp-null. Board overlays should provide a virtual/chromeos-bsp package that RDEPENDs on chromeos-base/chromeos-bsp-boardname, and a chromeos-base/chromeos-bsp-boardname package that RDEPENDs on any desired board-specific packages.

A board overlay can also provide additional packages to install in dev builds only, via similar packages virtual/chromeos-bsp-dev and chromeos-base/chromeos-bsp-dev-boardname. ChromiumOS dev builds install chromeos-base/chromeos-dev by default, which RDEPENDs on virtual/chromeos-bsp-dev.

Note that a board overlay cannot specify package-specific USE flags by using an RDEPEND with a use flag, such as section/package[useflag]; instead, add “section/package useflag” to package.use in a profile.

Private host overlays

The host (non-cross-compiling) build environment will use the following overlay if it exists:

src/private-overlays/chromeos-overlay

This overlay contains private packages needed on the host system to compile target packages used in a private overlay. Packages only needed on the target system should appear in a private board overlay. The packages in a private host overlay should typically all appear in the dependency chain of chromeos-base/hard-host-depends so that the build process will install them on the host system at the appropriate time. chromeos-base/hard-host-depends depends on the virtual package virtual/hard-host-depends-bsp to allow a private host overlay to extend the host dependencies; a private host overlay can provide a version 2 ebuild for virtual/hard-host-depends-bsp, and list any additional host dependencies in the RDEPEND of that package.

Like a board overlay, a private host overlay must include a layout.conf with masters set, so that the packages within that host overlay can reference eclasses from the parent overlays chromiumos-overlay or portage-stable.