Skip to contentSkip to conversation

tiny: Refactor tiny ktype config

PATCH In review Darren Hart 2 participants 5 messages Mar 31, 2012 – Apr 1, 2012

lore
Share & tools
lore
#0 lore raw

cover tiny: Refactor tiny ktype config

Prepare for the linux-yocto-tiny_3.2 recipe by consolidating the tiny config and factoring out what should be common functinionality.

Once included, I'll send the linux-yocto-tiny_3.2 patch against oe-core with the proper SRCREV_meta. The other linux-yocto recipes don't need an updated meta SRCREV necessarily.

The following changes since commit 867fc7a19f2ea74253d1f20c3d61b7829635175b:

common-pc: Add PCNET32 to the config (2012-03-26 09:49:06 -0400)

are available in the git repository at:
git://git.yoctoproject.org/linux-yocto-2.6.37-contrib dvhart/meta/tiny
http://git.yoctoproject.org/cgit.cgi/linux-yocto-2.6.37-contrib/log/?h=dvhart/meta/tiny

Darren Hart (3):
meta: common-pc add dependencies to cfg
tiny: Minimize the tiny config
meta: Add common-pc-tiny.scc

 .../kernel-cache/bsp/common-pc/common-pc-tiny.scc  |   12 +
 meta/cfg/kernel-cache/bsp/common-pc/common-pc.cfg  |   13 +-
 .../tiny/serial.cfg => cfg/serial-8250.cfg}        |    0
 meta/cfg/kernel-cache/ktypes/tiny/debug.cfg        |    5 -
 meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg     |    6 -
 meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg         |    1 -
 meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg         |    2 -
 meta/cfg/kernel-cache/ktypes/tiny/fb.cfg           |   16 -
 meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg         |    3 -
 meta/cfg/kernel-cache/ktypes/tiny/net.cfg          |   26 -
 meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg       |   13 -
 meta/cfg/kernel-cache/ktypes/tiny/smp.cfg          |    7 -
 meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg        |    2 -
 meta/cfg/kernel-cache/ktypes/tiny/tiny.cfg         |  613 +-------------------
 meta/cfg/kernel-cache/ktypes/tiny/tiny.scc         |   17 +-
 meta/cfg/kernel-cache/ktypes/tiny/vt.cfg           |    5 -
 .../ktypes/tiny/{core.cfg => yocto.cfg}            |   23 +-
 17 files changed, 63 insertions(+), 701 deletions(-)
 create mode 100644 meta/cfg/kernel-cache/bsp/common-pc/common-pc-tiny.scc
 rename meta/cfg/kernel-cache/{ktypes/tiny/serial.cfg => cfg/serial-8250.cfg} (100%)
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/debug.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/fb.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/net.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/smp.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/vt.cfg
 rename meta/cfg/kernel-cache/ktypes/tiny/{core.cfg => yocto.cfg} (49%)
Signature · 1 line
1.7.5.4
#1 lore raw

PATCH 1/3 meta: common-pc add dependencies to cfg

When building with the allnoconfig option, some of the common-pc CONFIG options are dropped due to missing dependencies. This machine also depended on certain default options, such as CONFIG_E1000, which are not enabled with allnoconfig.

Add the dependencies and CONFIG_E1000 explicitly.

---
 meta/cfg/kernel-cache/bsp/common-pc/common-pc.cfg |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)
meta/cfg/kernel-cache/bsp/common-pc/common-pc.cfg +11 -2
index c0c899e..f023964 100644
@@ -27,6 +27,7 @@ CONFIG_PCI=y
 CONFIG_PCI_GOANY=y
 CONFIG_PCIEPORTBUS=y
 
+CONFIG_BLOCK=y
 CONFIG_SCSI=y
 CONFIG_BLK_DEV_SD=y
 CONFIG_ATA=y
@@ -34,11 +35,19 @@ CONFIG_ATA_ACPI=y
 CONFIG_ATA_SFF=y
 CONFIG_ATA_PIIX=y
 
+CONFIG_NET_CORE=y
 CONFIG_MII=y
 
 # Enable the below for Dell Dimension 1100 PC / QEMU
+CONFIG_ETHERNET=y
+CONFIG_NET_VENDOR_BROADCOM=y
 CONFIG_TIGON3=y
+CONFIG_NET_VENDOR_ATHEROS=y
 CONFIG_ATL2=y
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E1000=y
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_PCNET32=y
 
 CONFIG_CFG80211=y
 CONFIG_MAC80211=y
@@ -46,8 +55,6 @@ CONFIG_WLAN=y
 CONFIG_ATH_COMMON=y
 CONFIG_ATH5K=y
 
-CONFIG_PCNET32=y
-
 CONFIG_INPUT=y
 CONFIG_INPUT_MOUSEDEV=y
 CONFIG_INPUT_EVDEV=y
@@ -64,8 +71,10 @@ CONFIG_FB=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=y
 
+CONFIG_VT=y
 CONFIG_VGA_CONSOLE=y
 
+CONFIG_USB_SUPPORT=y
 CONFIG_USB=y
 CONFIG_USB_DEVICEFS=y
 CONFIG_USB_EHCI_HCD=y
Signature · 1 line
1.7.5.4
#2 lore raw

PATCH 2/3 tiny: Minimize the tiny config

In reply to Darren Hart

From: Darren Hart <[email protected]>

The config fragments in the tiny ktype were simply pulled in from a collection of experimental fragments. Boil things down to a core policy (yocto.cfg) and tiny-specific configs (tiny.cfg).

---
 .../tiny/serial.cfg => cfg/serial-8250.cfg}        |    0
 meta/cfg/kernel-cache/ktypes/tiny/debug.cfg        |    5 -
 meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg     |    6 -
 meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg         |    1 -
 meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg         |    2 -
 meta/cfg/kernel-cache/ktypes/tiny/fb.cfg           |   16 -
 meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg         |    3 -
 meta/cfg/kernel-cache/ktypes/tiny/net.cfg          |   26 -
 meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg       |   13 -
 meta/cfg/kernel-cache/ktypes/tiny/smp.cfg          |    7 -
 meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg        |    2 -
 meta/cfg/kernel-cache/ktypes/tiny/tiny.cfg         |  613 +-------------------
 meta/cfg/kernel-cache/ktypes/tiny/tiny.scc         |   17 +-
 meta/cfg/kernel-cache/ktypes/tiny/vt.cfg           |    5 -
 .../ktypes/tiny/{core.cfg => yocto.cfg}            |   23 +-
 15 files changed, 40 insertions(+), 699 deletions(-)
 rename meta/cfg/kernel-cache/{ktypes/tiny/serial.cfg => cfg/serial-8250.cfg} (100%)
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/debug.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/fb.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/net.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/smp.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg
 delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/vt.cfg
 rename meta/cfg/kernel-cache/ktypes/tiny/{core.cfg => yocto.cfg} (49%)
meta/cfg/kernel-cache/cfg/serial-8250.cfg renamed from meta/cfg/kernel-cache/ktypes/tiny/serial.cfg +0 -0
similarity index 100%
rename from meta/cfg/kernel-cache/ktypes/tiny/serial.cfg
rename to meta/cfg/kernel-cache/cfg/serial-8250.cfg
meta/cfg/kernel-cache/ktypes/tiny/debug.cfg deleted +0 -5
deleted file mode 100644
index 886bfd9..0000000
@@ -1,5 +0,0 @@
-# Debug options
-# +98k bzImage
-CONFIG_PRINTK=y
-CONFIG_EARLY_PRINTK=y
-CONFIG_PRINTK_TIME=y
meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg deleted +0 -6
deleted file mode 100644
index 07632e2..0000000
@@ -1,6 +0,0 @@
-# For /dev and udev
-# Could eliminate for a static /dev tree
-# +1.5k bzImage
-CONFIG_HOTPLUG=y
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg deleted +0 -1
deleted file mode 100644
index e35c36d..0000000
@@ -1 +0,0 @@
-CONFIG_EXT2_FS=y
meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg deleted +0 -2
deleted file mode 100644
index df9dd64..0000000
@@ -1,2 +0,0 @@
-# bzImage +61k
-CONFIG_EXT3_FS=y
meta/cfg/kernel-cache/ktypes/tiny/fb.cfg deleted +0 -16
deleted file mode 100644
index 8ec9058..0000000
@@ -1,16 +0,0 @@
-# +49 bzImage
-
-CONFIG_FB=y
-CONFIG_FB_VESA=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
-# CONFIG_FONTS is not set
-CONFIG_FONT_8x8=y
-CONFIG_FONT_8x16=y
-CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_MONO is not set
-# CONFIG_LOGO_LINUX_VGA16 is not set
-CONFIG_LOGO_LINUX_CLUT224=y
-
-CONFIG_FB_BOOT_VESA_SUPPORT=y
meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg deleted +0 -3
deleted file mode 100644
index f1bafe1..0000000
@@ -1,3 +0,0 @@
-# bzImage -235k (-15% of bzImage size)
-CONFIG_KERNEL_LZMA=y
-
meta/cfg/kernel-cache/ktypes/tiny/net.cfg deleted +0 -26
deleted file mode 100644
index ab6d1ee..0000000
@@ -1,26 +0,0 @@
-# +246k bzImage
-
-# Basic socket support
-CONFIG_NET=y
-CONFIG_UNIX=y
-CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NLATTR=y
-
-# INET TCP/IP
-CONFIG_INET=y
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-
-# Disable certain new defaults
-# bzImage ~ -200k
-# Using allnoconfig internally would eliminate the need for this
-# CONFIG_XFRM is not set
-# CONFIG_IPV6 is not set
-# CONFIG_WIRELESS is not set
-# CONFIG_IPCOMP_XFRM is not set
-# IPSEC
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-#
-# CONFIG_INET_DIAG is not set
meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg deleted +0 -13
deleted file mode 100644
index f667440..0000000
@@ -1,13 +0,0 @@
-# Dependencies
-CONFIG_ACPI=y
-CONFIG_HPET=y
-CONFIG_HPET_TIMER=y
-
-CONFIG_HPET_EMULATE_RTC=y
-CONFIG_RTC_LIB=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-CONFIG_RTC_DRV_CMOS=y
meta/cfg/kernel-cache/ktypes/tiny/smp.cfg deleted +0 -7
deleted file mode 100644
index a82096e..0000000
@@ -1,7 +0,0 @@
-# bzImage +104k
-CONFIG_HOTPLUG=y
-CONFIG_HOTPLUG_CPU=y
-CONFIG_SMP=y
-CONFIG_SCHED_SMT=y
-CONFIG_SCHED_MC=y
-
meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg deleted +0 -2
deleted file mode 100644
index 321c4e8..0000000
@@ -1,2 +0,0 @@
-# bzImage +24k
-CONFIG_SYSFS=y
meta/cfg/kernel-cache/ktypes/tiny/tiny.cfg +14 -599

627 lines not on this page · raw message

meta/cfg/kernel-cache/ktypes/tiny/tiny.scc +4 -13
index a775455..37a5291 100644
@@ -1,17 +1,8 @@
 include ktypes/standard/standard-nocfg.scc
 branch tiny
 
-# baseline
-kconf required tiny.cfg
+# Minimal Yocto Kernel Policy
+kconf required yocto.cfg
 
-# feature tweaks
-kconf required core.cfg
-kconf required serial.cfg
-kconf required ext2.cfg
-kconf required rtc-pc.cfg
-kconf required sysfs.cfg
-kconf required smp.cfg 
-kconf required devtmpfs.cfg
-kconf required net.cfg
-kconf required debug.cfg
-kconf required lzma.cfg
+# Make it a bit smaller
+kconf required tiny.cfg
meta/cfg/kernel-cache/ktypes/tiny/vt.cfg deleted +0 -5
deleted file mode 100644
index 57fdd17..0000000
@@ -1,5 +0,0 @@
-# Busybox assumes /dev/tty[234] exist
-# Selects vga, ps2 input, hardware console
-# bzImage +~83k
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
meta/cfg/kernel-cache/ktypes/tiny/yocto.cfg renamed from meta/cfg/kernel-cache/ktypes/tiny/core.cfg +22 -1
similarity index 49%
rename from meta/cfg/kernel-cache/ktypes/tiny/core.cfg
rename to meta/cfg/kernel-cache/ktypes/tiny/yocto.cfg
index e041a8d..86ee092 100644
@@ -1,6 +1,6 @@
 # Basic facilities that shall be present in all kernels
-
 CONFIG_PROC_FS=y
+CONFIG_SYSFS=y
 
 # Needed to execute... anything (like init)
 CONFIG_BINFMT_ELF=y
@@ -16,3 +16,24 @@ CONFIG_UNIX98_PTYS=y
 CONFIG_SYSVIPC=y
 CONFIG_FUTEX=y
 CONFIG_RT_MUTEXES=y
+
+# Basic logging facilities
+CONFIG_PRINTK=y
+CONFIG_EARLY_PRINTK=y
+CONFIG_PRINTK_TIME=y
+
+# Provide a minimal dynamic device fs
+CONFIG_HOTPLUG=y
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+
+# Basic socket support
+CONFIG_NET=y
+CONFIG_UNIX=y
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NLATTR=y
+
+# INET TCP/IP
+CONFIG_INET=y
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_DEFAULT_TCP_CONG="cubic"
Signature · 1 line
1.7.5.4
#3 lore raw

PATCH 3/3 meta: Add common-pc-tiny.scc

In reply to Darren Hart

Create the MACHINE-KTYPE description file for common-pc and tiny. This is used by the qemux86 machine for the linux-yocto-tiny kernel recipe. Add the common-pc hardware config, but not all the features included by the common-pc-standard.scc file.

---
 .../kernel-cache/bsp/common-pc/common-pc-tiny.scc  |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)
 create mode 100644 meta/cfg/kernel-cache/bsp/common-pc/common-pc-tiny.scc
meta/cfg/kernel-cache/bsp/common-pc/common-pc-tiny.scc new file +12 -0
new file mode 100644
index 0000000..8d7a498
@@ -0,0 +1,12 @@
+define KMACHINE common-pc
+define KTYPE tiny
+define KARCH i386
+
+include ktypes/tiny
+branch common-pc
+
+# Don't include common-pc.scc directly,
+# it pulls in too many non-hardware options
+kconf hardware common-pc.cfg
+kconf hardware common-pc-gfx.cfg
+
Signature · 1 line
1.7.5.4
#4 lore raw
In reply to Darren Hart
Quoted 6 lines · Darren Hart

Prepare for the linux-yocto-tiny_3.2 recipe by consolidating the tiny config and factoring out what should be common functinionality.

Once included, I'll send the linux-yocto-tiny_3.2 patch against oe-core with the proper SRCREV_meta. The other linux-yocto recipes don't need an updated meta SRCREV necessarily.

I went ahead an bumped all the SRCREVs, best to keep them consistent, so configurations can be shared.

Merged, pushed, and a pull request sent out.

Cheers,

Bruce

Quoted 47 lines

The following changes since commit 867fc7a19f2ea74253d1f20c3d61b7829635175b:

   common-pc: Add PCNET32 to the config (2012-03-26 09:49:06 -0400)

are available in the git repository at:

   git://git.yoctoproject.org/linux-yocto-2.6.37-contrib dvhart/meta/tiny
   http://git.yoctoproject.org/cgit.cgi/linux-yocto-2.6.37-contrib/log/?h=dvhart/meta/tiny

Darren Hart (3):
meta: common-pc add dependencies to cfg
tiny: Minimize the tiny config
meta: Add common-pc-tiny.scc

  .../kernel-cache/bsp/common-pc/common-pc-tiny.scc  |   12 +
  meta/cfg/kernel-cache/bsp/common-pc/common-pc.cfg  |   13 +-
  .../tiny/serial.cfg =>  cfg/serial-8250.cfg}        |    0
  meta/cfg/kernel-cache/ktypes/tiny/debug.cfg        |    5 -
  meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg     |    6 -
  meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg         |    1 -
  meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg         |    2 -
  meta/cfg/kernel-cache/ktypes/tiny/fb.cfg           |   16 -
  meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg         |    3 -
  meta/cfg/kernel-cache/ktypes/tiny/net.cfg          |   26 -
  meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg       |   13 -
  meta/cfg/kernel-cache/ktypes/tiny/smp.cfg          |    7 -
  meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg        |    2 -
  meta/cfg/kernel-cache/ktypes/tiny/tiny.cfg         |  613 +-------------------
  meta/cfg/kernel-cache/ktypes/tiny/tiny.scc         |   17 +-
  meta/cfg/kernel-cache/ktypes/tiny/vt.cfg           |    5 -
  .../ktypes/tiny/{core.cfg =>  yocto.cfg}            |   23 +-
  17 files changed, 63 insertions(+), 701 deletions(-)

create mode 100644 meta/cfg/kernel-cache/bsp/common-pc/common-pc-tiny.scc rename meta/cfg/kernel-cache/{ktypes/tiny/serial.cfg => cfg/serial-8250.cfg} (100%) delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/debug.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/devtmpfs.cfg delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/ext2.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/ext3.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/fb.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/lzma.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/net.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/rtc-pc.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/smp.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/sysfs.cfg
delete mode 100644 meta/cfg/kernel-cache/ktypes/tiny/vt.cfg
rename meta/cfg/kernel-cache/ktypes/tiny/{core.cfg => yocto.cfg} (49%)