[ag-automation] [RFC] OSADL Board Support Package Specification, Revision 0.1

Wolfgang Denk wd at denx.de
Wed Sep 13 13:42:01 CEST 2006


Dear Robert,

in message <20060912150514.GU10251 at pengutronix.de> you wrote:
> 
> we have put the first draft of the OSADL Board Support Package
> Specification on the web server for public review.

Thanks a lot.

Here a few initial comments:

* BSP Definition:

  IMHO the most obvious reason for creating a BSP does not get
  mentioned: implementing all the  board-specific initializations and
  configurations to get Linux running on a specific hardware.

  I tend to disagree with your statement that it "is usually the need
  to extend the Vanilla Linux Kernel"; this is not our experience. In
  most cases just hardware-specific configuration to the kernel is
  needed. Extensions only come in to play as far as driver support is
  required.

  Also I think it would be a good idea to clearly differentiate
  between the requirements we want to impose to enable easy maitenance
  of a BSP and the requirements that arise from the GPL: normally, the
  end user expects a ready-to-use source tree, and this is IMHO what
  is required by the GPL. The fact that we (additionally) require
  patches against a clearly identifyable version of a standard kernel
  tree is a different, new thing.

* Kernel Modifications Rules

  A better definition of "vanilla  kernel  version"  is  needed.  For
  example,  it  is  not  clear  if  "2.6.18-rc6-gbd314d97"  is such a
  "vanilla" version, or  if  I  have  to  use  "2.6.18-rc6"  or  even
  "2.6.17" instead.

  "Patches are never allowed to delete parts of the tree" - please
  delete this. When I find I can refactor identical code used by
  several BSP I maintain into common code I should of course be able
  to get rid of the resulting dead files.

  "Files already existing in the vanilla kernel tree are not allowed
  to be replaced by a file with the same name but other contention." -
  please delte this. This is exactly what a patch does: changing the
  content of existing files.

  " Patches should not destroy other architectures or sub
  archtectures." - please delete this; it is redundant to the
  statement " Patches are never allowed to delete parts of the tree,
  especially not other architectures." above.

  "In rare cases there may be a need to break other platform code due
  to project reasons; patches which  do  so  have  to  be  explicitly
  marked  as "uggly hack"." - I think we should not explicitely allow
  for such exceptions. Also, "ugly  hack"  comments  is  IMHO  not  a
  standard  way  to  mark  such  code,  at least I am not aware of it
  generally being accepted and/or documented for kernel code.

* Levels of Conformance

  I have to admit that I cannot make heads nor tails of this. I would
  expoect  that  the  listed  4  confoirmance  levels  are   somewhat
  hierarchical, so that for example improvements to the code could be
  added to reach better conformance levels - however, I find that the
  descriptions for the 4 levels are pretty unrelated.

  Also, I disagree with the "does not touch generic files"
  requirement. For any BSP it is a standard thing to touch generic
  files, for example you will probably always want to patch
  arch/*/Kconfig to add a configuration option for your new board.

* Toolchains

  "One important part of a BSP is the toolchain used to compile the
  kernel" - I disagree. The toolchain has *nothing* to to with a BSP.
  These should be completely orthogonal, and I would like to see an
  explixcit requirement, that any BSP that reaches any OSADL
  conformance level does *not* depend on any specific tool chain. On
  controary, it should be required that any known-to-be-working
  toolchain for this architecture and kernel version can be used.

  I suggest to remove the toolchain section from the BSP document.



Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Speed of a tortoise breaking the sound barrier         = 1 Machturtle


More information about the ag-automation mailing list