<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm63xx/u-boot/scripts/basic/fixdep.c, branch master</title>
<subtitle>Broadcom-s U-Boot</subtitle>
<id>https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/atom?h=master</id>
<link rel='self' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/'/>
<updated>2017-10-16T13:42:51Z</updated>
<entry>
<title>fixdep: fix dependency on options surrounded by CONFIG_VAL()</title>
<updated>2017-10-16T13:42:51Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2017-10-06T01:24:43Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=7d8e9e8e24b247944bbff6ab68e03cac81fde218'/>
<id>urn:sha1:7d8e9e8e24b247944bbff6ab68e03cac81fde218</id>
<content type='text'>
CONFIG options surrounded by

  CONFIG_IS_ENABLED(...)
  CONFIG_IS_BUILTIN(...)
  CONFIG_IS_MODULE(...)
  CONFIG_VAL(...)

need special care for proper dependency tracking.

I do not remember why, but I missed to add CONFIG_VAL(...) handling.

Signed-off-by: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
</content>
</entry>
<entry>
<title>kbuild: fixdep: Check fstat(2) return value</title>
<updated>2016-05-23T15:50:21Z</updated>
<author>
<name>Tom Rini</name>
</author>
<published>2016-05-13T14:54:04Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=c1420f8b2b0f3c833c024979495ab22db34a5dbe'/>
<id>urn:sha1:c1420f8b2b0f3c833c024979495ab22db34a5dbe</id>
<content type='text'>
Coverity has recently added a check that will find when we don't check
the return code from fstat(2).  Copy/paste the checking logic that
print_deps() has with an appropriate re-wording of the perror() message.

[ Linux commit : 46fe94ad18aa7ce6b3dad8c035fb538942020f2b ]

Signed-off-by: Tom Rini &lt;trini@konsulko.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.com&gt;
</content>
</entry>
<entry>
<title>Use correct spelling of "U-Boot"</title>
<updated>2016-02-06T11:00:59Z</updated>
<author>
<name>Bin Meng</name>
</author>
<published>2016-02-06T03:30:11Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=a187559e3d586891c917279044c5386d1b2adc6e'/>
<id>urn:sha1:a187559e3d586891c917279044c5386d1b2adc6e</id>
<content type='text'>
Correct spelling of "U-Boot" shall be used in all written text
(documentation, comments in source files etc.).

Signed-off-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Reviewed-by: Heiko Schocher &lt;hs@denx.de&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Minkyu Kang &lt;mk7.kang@samsung.com&gt;
</content>
</entry>
<entry>
<title>kbuild: fixdep: drop meaningless hash table initialization</title>
<updated>2015-09-15T19:05:23Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2015-09-15T03:54:38Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=2fc1c80edefddd72b91be5fcfae0a6cb8e3f597c'/>
<id>urn:sha1:2fc1c80edefddd72b91be5fcfae0a6cb8e3f597c</id>
<content type='text'>
The clear_config() is called just once at the beginning of this
program, but the global variable hashtab[] is already zero-filled
at the start-up.

[ Linux commit: d179e22762fd38414c4108acedd5feca4cf7e0d8 ]

Signed-off-by: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.com&gt;
</content>
</entry>
<entry>
<title>linux/kconfig.h: add CPP macros useful for per-image config options</title>
<updated>2015-08-18T17:46:00Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2015-08-11T22:31:43Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=8be60f06c258df5aca5a28304a1fa1bbc47f8578'/>
<id>urn:sha1:8be60f06c258df5aca5a28304a1fa1bbc47f8578</id>
<content type='text'>
The previous commit introduced a useful macro used in makefiles,
in order to reference to different variables (CONFIG_... or
CONFIG_SPL_...) depending on the build context.

Per-image config option control is a PITA in C sources, too.
Here are some macros useful in C/CPP expressions.

CONFIG_IS_ENABLED(FOO) can be used as a shorthand for

  (!defined(CONFIG_SPL_BUILD) &amp;&amp; defined(CONFIG_FOO)) || \
   (defined(CONFIG_SPL_BUILD) &amp;&amp; defined(CONFIG_SPL_FOO))

For example, it is useful to describe C code as follows,

  #if CONFIG_IS_ENABLED(OF_CONTROL)
      (device tree code)
  #else
      (board file code)
  #endif

The ifdef conditional above is switched by CONFIG_OF_CONTROL during
the U-Boot proper building (CONFIG_SPL_BUILD is not defined), and by
CONFIG_SPL_OF_CONTROL during SPL building (CONFIG_SPL_BUILD is
defined).

The macro can be used in C context as well, so you can also write the
equivalent code as follows:

  if (CONFIG_IS_ENABLED(OF_CONTROL)) {
      (device tree code)
  } else {
      (board file code)
  }

Another useful macro is CONFIG_VALUE().
CONFIG_VALUE(FOO) is expanded into CONFIG_FOO if CONFIG_SPL_BUILD is
undefined, and into CONFIG_SPL_FOO if CONFIG_SPL_BUILD is defined.

You can write as follows:

  text_base = CONFIG_VALUE(TEXT_BASE);

instead of:

  #ifdef CONFIG_SPL_BUILD
      text_base = CONFIG_SPL_TEXT_BASE;
  #else
      text_base = CONFIG_TEXT_BASE;
  #endif

This commit also adds slight hacking on fixdep so that it can
output a correct list of fixed dependencies.

If the fixdep finds CONFIG_IS_ENABLED(FOO) in a source file,
we want
    $(wildcard include/config/foo.h)
in the U-boot proper building context, while we want
    $(wildcard include/config/spl/foo.h)
in the SPL build context.

Signed-off-by: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>kbuild: fixdep: optimize code slightly</title>
<updated>2015-08-18T17:45:59Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2015-08-11T22:31:41Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=29974f773776e40a2cd5563bd7a83fd960651c3f'/>
<id>urn:sha1:29974f773776e40a2cd5563bd7a83fd960651c3f</id>
<content type='text'>
If the target string matches "CONFIG_", move the pointer p
forward.  This saves several 7-chars adjustments.

Signed-off-by: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>fixdep: remove multiple .config support code</title>
<updated>2015-03-06T01:50:30Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2015-02-27T15:37:57Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=fc196d0e9b917762f25f6226a4adf93741339efb'/>
<id>urn:sha1:fc196d0e9b917762f25f6226a4adf93741339efb</id>
<content type='text'>
Since commit e02ee2548afe (kconfig: switch to single .config
configuration), the ".*.cmd" files are not correctly created
for SPL/TPL.  The U-Boot extension code in fixdep, which was
introduced to support the multiple .config, must be removed.

Signed-off-by: Masahiro Yamada &lt;yamada.m@jp.panasonic.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>kconfig: switch to Kconfig</title>
<updated>2014-07-30T12:48:03Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2014-07-30T05:08:17Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=51148790f26e42ef1fd4a1a8d056bf0252539525'/>
<id>urn:sha1:51148790f26e42ef1fd4a1a8d056bf0252539525</id>
<content type='text'>
This commit enables Kconfig.
Going forward, we use Kconfig for the board configuration.
mkconfig will never be used. Nor will include/config.mk be generated.

Kconfig must be adjusted for U-Boot because our situation is
a little more complicated than Linux Kernel.
We have to generate multiple boot images (Normal, SPL, TPL)
from one source tree.
Each image needs its own configuration input.

Usage:

Run "make &lt;board&gt;_defconfig" to do the board configuration.

It will create the .config file and additionally spl/.config, tpl/.config
if SPL, TPL is enabled, respectively.

You can use "make config", "make menuconfig" etc. to create
a new .config or modify the existing one.

Use "make spl/config", "make spl/menuconfig" etc. for spl/.config
and do likewise for tpl/.config file.

The generic syntax of configuration targets for SPL, TPL is:

  &lt;target_image&gt;/&lt;config_command&gt;

Here, &lt;target_image&gt; is either 'spl' or 'tpl'
      &lt;config_command&gt; is 'config', 'menuconfig', 'xconfig', etc.

When the configuration is done, run "make".
(Or "make &lt;board&gt;_defconfig all" will do the configuration and build
in one time.)

For futher information of how Kconfig works in U-Boot,
please read the comment block of scripts/multiconfig.py.

By the way, there is another item worth remarking here:
coexistence of Kconfig and board herder files.

Prior to Kconfig, we used C headers to define a set of configs.

We expect a very long term to migrate from C headers to Kconfig.
Two different infractructure must coexist in the interim.

In our former configuration scheme, include/autoconf.mk was generated
for use in makefiles.
It is still generated under include/, spl/include/, tpl/include/ directory
for the Normal, SPL, TPL image, respectively.

Signed-off-by: Masahiro Yamada &lt;yamada.m@jp.panasonic.com&gt;
Acked-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>cosmetic: kbuild: clean-up coding style (sync with Linux 3.16-rc1)</title>
<updated>2014-06-20T15:56:26Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2014-06-16T09:56:38Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=45f0ad9545578b4436fdf04ba25a10173bcb75ef'/>
<id>urn:sha1:45f0ad9545578b4436fdf04ba25a10173bcb75ef</id>
<content type='text'>
Import the following trivial commits from Linux v3.16-rc1:

 bb66fc6 kbuild: trivial - use tabs for code indent where possible
 7eb6e34 kbuild: trivial - remove trailing empty lines
 3fbb43d kbuild: trivial - fix comment block indent
 38385f8 kbuild: trivial - remove trailing spaces

Signed-off-by: Masahiro Yamada &lt;yamada.m@jp.panasonic.com&gt;
</content>
</entry>
<entry>
<title>kbuild: import more build scripts from Linux v3.13 tag</title>
<updated>2014-02-19T16:07:50Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2014-02-04T08:24:27Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/bcm63xx/u-boot/commit/?id=22433fc54b19b0578c43a9983fa45f22ca262a0f'/>
<id>urn:sha1:22433fc54b19b0578c43a9983fa45f22ca262a0f</id>
<content type='text'>
This commit imports build scripts from Linux Kernel v3.13
as they are.

I know they include some trailing spaces
but I am intentionally keeping them untouched.

Signed-off-by: Masahiro Yamada &lt;yamada.m@jp.panasonic.com&gt;
</content>
</entry>
</feed>
