linux-embedded.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* "make oldconfig" kills config options when cross compiling
@ 2014-05-15 15:02 Manuel Reimer
  2014-05-15 23:26 ` Randy Dunlap
  0 siblings, 1 reply; 3+ messages in thread
From: Manuel Reimer @ 2014-05-15 15:02 UTC (permalink / raw)
  To: linux-embedded

Hello,

I want to build an up-to-date kernel (3.14.4) based on this config:

<https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/master/core/linux-olinuxino/config>

To do so, I copied this config file as ".config" into the kernel source 
tree and executed

$ make ARCH=arm CROSS_COMPILE=/path/to/compiler/ oldconfig

My problem is, that this always drops important entries like 
"CONFIG_ARCH_MXS=y".

If I start with "make mxs_defconfig" and run "make oldconfig" on this 
default config, then no entries are killed.

What's wrong with the config, I want to start with?

Thanks in advance.

Greetings,

Manuel Reimer

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: "make oldconfig" kills config options when cross compiling
  2014-05-15 15:02 "make oldconfig" kills config options when cross compiling Manuel Reimer
@ 2014-05-15 23:26 ` Randy Dunlap
  2014-05-24 19:13   ` Manuel Reimer
  0 siblings, 1 reply; 3+ messages in thread
From: Randy Dunlap @ 2014-05-15 23:26 UTC (permalink / raw)
  To: Manuel Reimer, linux-embedded

On 05/15/2014 08:02 AM, Manuel Reimer wrote:
> Hello,
> 
> I want to build an up-to-date kernel (3.14.4) based on this config:
> 
> <https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/master/core/linux-olinuxino/config>
> 
> To do so, I copied this config file as ".config" into the kernel source tree and executed
> 
> $ make ARCH=arm CROSS_COMPILE=/path/to/compiler/ oldconfig
> 
> My problem is, that this always drops important entries like "CONFIG_ARCH_MXS=y".

In 3.7 (where that original config file came from), ARCH_MXS did NOT depend on
ARCH_MULTI_V5.  Somewhere between 3.7 and 3.14, someone decided that ARCH_MXS should
depend on ARCH_MULTI_V5.  You can probably enable that kconfig option and then
enable ARCH_MXS.

> If I start with "make mxs_defconfig" and run "make oldconfig" on this default config, then no entries are killed.
> 
> What's wrong with the config, I want to start with?

as explained above.

> Thanks in advance.

Good luck.

-- 
~Randy

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: "make oldconfig" kills config options when cross compiling
  2014-05-15 23:26 ` Randy Dunlap
@ 2014-05-24 19:13   ` Manuel Reimer
  0 siblings, 0 replies; 3+ messages in thread
From: Manuel Reimer @ 2014-05-24 19:13 UTC (permalink / raw)
  To: linux-embedded

On 05/16/2014 01:26 AM, Randy Dunlap wrote:
> In 3.7 (where that original config file came from), ARCH_MXS did NOT depend on
> ARCH_MULTI_V5.  Somewhere between 3.7 and 3.14, someone decided that ARCH_MXS should
> depend on ARCH_MULTI_V5.  You can probably enable that kconfig option and then
> enable ARCH_MXS.

I had to add the following to my config:

CONFIG_ARCH_MULTI_V5=y
CONFIG_ARCH_MULTI_V6_V7=n
CONFIG_ARCH_MULTI_V7=n

With these three lines "make oldconfig" seemed to no longer kill 
important config entries.

"make uImage" failed. I got asked to specify a "LOADADDR" so I created 
my image like this:

LOADADDR=0x40008000 make uImage

But the resulting kernel fails to boot. The error message makes sense. 
Maybe a bug in imx23.dtsi? In fact the serial port "duart: 
serial@80070000" does not have a "dma-names" property:

http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx23.dtsi#n496

But is this a blocker and can cause the kernel boot to stop?

Boot log follows:

U-Boot 2013.10 (Jan 08 2014 - 14:49:21) Arch Linux ARM

CPU:   Freescale i.MX23 rev1.4 at 454 MHz
BOOT:  SSP SD/MMC #0
DRAM:  64 MiB
MMC:   MXS MMC: 0
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   Net Initialization Skipped
No ethernet found.
Hit any key to stop autoboot:  0
mmc0 is current device
SD/MMC found on device 0
170 bytes read in 101 ms (1000 Bytes/s)
Importing environment from mmc (uEnv.txt)...
Checking if uenvcmd is set ...
Running loaduimage ...
2542832 bytes read in 848 ms (2.9 MiB/s)
9888 bytes read in 124 ms (77.1 KiB/s)
Booting from mmc ...
## Booting kernel from Legacy Image at 42000000 ...
    Image Name:   Linux-3.14.4-9-ARCH
    Image Type:   ARM Linux Kernel Image (uncompressed)
    Data Size:    2542768 Bytes = 2.4 MiB
    Load Address: 40008000
    Entry Point:  40008000
    Verifying Checksum ... OK
## Flattened Device Tree blob at 41000000
    Booting using the fdt blob at 0x41000000
    Loading Kernel Image ... OK
    Loading Device Tree to 43b63000, end 43b6869f ... OK

Starting kernel ...

[    0.000000] of_irq_init: children remain, but no parents
[    1.970000] of_dma_request_slave_channel: dma-names property of node 
'/apb@80000000/apbx@80040000/serial@80070000' missing or empty


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-05-24 19:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-15 15:02 "make oldconfig" kills config options when cross compiling Manuel Reimer
2014-05-15 23:26 ` Randy Dunlap
2014-05-24 19:13   ` Manuel Reimer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).