lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 13 Jul 2010 13:32:17 -0500
From:	Rob Landley <rob@...dley.net>
To:	Linus Torvalds <torvalds@...ux-foundation.org>
Cc:	David Brown <davidb@...eaurora.org>,
	"Uwe Kleine-König" 
	<u.kleine-koenig@...gutronix.de>,
	"Russell King - ARM Linux" <linux@....linux.org.uk>,
	Daniel Walker <dwalker@...eaurora.org>,
	Kevin Hilman <khilman@...prootsystems.com>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	linux-arm-msm@...r.kernel.org,
	linux-arm-kernel@...ts.infradead.org,
	Grant Likely <grant.likely@...retlab.ca>,
	Eric Miao <eric.miao@...onical.com>,
	linux-omap@...r.kernel.org, Nicolas Pitre <nico@...xnic.net>
Subject: Re: ARM defconfig files

On Monday 12 July 2010 18:18:01 Linus Torvalds wrote:
> 2010/7/12 David Brown <davidb@...eaurora.org>:
> > Do you have scripts or tools that you did this with, or is a manual
> > process.  We're about to add several new (ARM) targets, and it'd be
> > nice to be able to make small defconfigs for those targets as well.
>
> Uwe posted it earlier in this thread as an attachement, and I put the
> python script into the merge commit message too. And we should
> probably put it somewhere in scripts too, and/or make a 'make' target
> to create the small config files.
>
> I pushed it all out, and tagged it as -rc5.

FYI, I repeatedly submitted a bash script to do this back in 2005, with 
documentation and makefile changes to call it and so on.

  http://lwn.net/Articles/161086/

The current version of that script is is in my mercurial archive here:

  http://impactlinux.com/hg/hgwebdir.cgi/aboriginal/file/tip/sources/toys/miniconfig.sh

I'm still using it in my Aboriginal Linux project.  (Not just for the kernel, 
but for busybox and uClibc too.)

Attached are miniconfigs I use for a dozen or so QEMU targets.  (The project is 
trying to build kernels aimed at every qemu system emulation.  I've got maybe 
2/3 of them so far.  Arm, mips, sh4, x86, x86_64, sparc...)

They're used to create the system-image tarballs here:

  http://impactlinux.com/aboriginal/downloads/binaries/

You can download that for that target that interests you, extract it, and use 
run-emulator.sh to launch it under qemu.  I have a cron job that does cross-
platform regression testing, spitting /dev/console to a log file on the host.

By the way, my build is generating those miniconfigs via a common "baseconfig" 
file to which I append the target-specific stuff.  For example, my current 
baseconfig is:

CONFIG_EXPERIMENTAL=y
CONFIG_NO_HZ=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_PCI=y
CONFIG_BINFMT_ELF=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_IDE=y
CONFIG_IDE_GD=y
CONFIG_IDE_GD_ATA=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_SCSI=y
CONFIG_BLK_DEV_SD=y
CONFIG_BLK_DEV_SR=y
CONFIG_SCSI_LOWLEVEL=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_NET_PCI=y
CONFIG_8139CP=y
CONFIG_HW_RANDOM=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_DEV=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_TMPFS=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_SQUASHFS=y
CONFIG_MAGIC_SYSRQ=y

Then for mips I append:

CONFIG_MIPS_MALTA=y
CONFIG_CPU_MIPS32_R2=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
#CONFIG_PM=y
CONFIG_PCNET32=y
CONFIG_BLK_DEV_PIIX=y

Or for x86_64 it's:

CONFIG_ACPI=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_NETDEV_1000=y
CONFIG_E1000=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y

And for armv4tl it's this big long saga (yes, with comments):

# Processor config

# QEMU patch: http://www.mail-archive.com/qemu-devel@nongnu.org/msg19370.html
# and QEMU option '-cpu arm920t' enable CONFIG_CPU_ARM920T=y which is the
# processor that actually _needs_ this code.  But until then, qemu can only
# emulate an armv5 CPU...

CONFIG_CPU_ARM926T=y
CONFIG_MMU=y
CONFIG_VFP=y
CONFIG_ARM_THUMB=y
CONFIG_AEABI=y

# Versatile board

CONFIG_ARCH_VERSATILE_PB=y
CONFIG_PCI_LEGACY=y
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_RTC_DRV_PL031=y
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0
CONFIG_SCSI_SYM53C8XX_MMIO=y

Rob
-- 
GPLv3: as worthy a successor as The Phantom Meanace, as timely as Duke Nukem 
Forever, and as welcome as New Coke.

View attachment "miniconfig-armv4eb" of type "text/plain" (999 bytes)

View attachment "miniconfig-armv4l" of type "text/plain" (1381 bytes)

View attachment "miniconfig-armv4tl" of type "text/plain" (1394 bytes)

View attachment "miniconfig-armv5l" of type "text/plain" (1139 bytes)

View attachment "miniconfig-armv6l" of type "text/plain" (1134 bytes)

View attachment "miniconfig-i486" of type "text/plain" (894 bytes)

View attachment "miniconfig-i586" of type "text/plain" (894 bytes)

View attachment "miniconfig-i686" of type "text/plain" (900 bytes)

View attachment "miniconfig-mips" of type "text/plain" (903 bytes)

View attachment "miniconfig-mips64" of type "text/plain" (905 bytes)

View attachment "miniconfig-mipsel" of type "text/plain" (917 bytes)

View attachment "miniconfig-powerpc" of type "text/plain" (1711 bytes)

View attachment "miniconfig-powerpc-440fp" of type "text/plain" (1711 bytes)

View attachment "miniconfig-sh4" of type "text/plain" (3216 bytes)

View attachment "miniconfig-sparc" of type "text/plain" (879 bytes)

View attachment "miniconfig-x86_64" of type "text/plain" (881 bytes)

Powered by blists - more mailing lists