summaryrefslogtreecommitdiff
path: root/conf/machine/include
diff options
context:
space:
mode:
Diffstat (limited to 'conf/machine/include')
-rw-r--r--conf/machine/include/AT91-LCD.inc15
-rw-r--r--conf/machine/include/AT91.inc51
-rw-r--r--conf/machine/include/afeb9260.inc24
-rw-r--r--conf/machine/include/davinci.inc25
-rw-r--r--conf/machine/include/dm355.inc2
-rw-r--r--conf/machine/include/dm365.inc12
-rw-r--r--conf/machine/include/dm6446.inc13
-rw-r--r--conf/machine/include/htc-msm7.inc23
-rw-r--r--conf/machine/include/initramfs-kexecboot.inc (renamed from conf/machine/include/kexecboot.inc)9
-rw-r--r--conf/machine/include/kirkwood.inc24
-rw-r--r--conf/machine/include/motorola-ezx-base.inc3
-rw-r--r--conf/machine/include/omap3.inc23
-rw-r--r--conf/machine/include/omapl137.inc1
-rw-r--r--conf/machine/include/omapl138.inc1
-rw-r--r--conf/machine/include/tune-arm1136-novfp.inc2
-rw-r--r--conf/machine/include/tune-atom.inc9
-rw-r--r--conf/machine/include/tune-ep9312.inc9
-rw-r--r--conf/machine/include/tune-geode.inc5
-rw-r--r--conf/machine/include/tune-geodelx.inc9
-rw-r--r--conf/machine/include/tune-ppce500.inc1
-rw-r--r--conf/machine/include/tune-ppce500v2.inc4
-rw-r--r--conf/machine/include/tune-sh3.inc1
-rw-r--r--conf/machine/include/tune-sh4.inc1
-rw-r--r--conf/machine/include/tune-strongarm.inc7
-rw-r--r--conf/machine/include/tune-xscale.inc9
-rw-r--r--conf/machine/include/zaurus-2.6.inc96
-rw-r--r--conf/machine/include/zaurus-kernel.inc16
27 files changed, 320 insertions, 75 deletions
diff --git a/conf/machine/include/AT91-LCD.inc b/conf/machine/include/AT91-LCD.inc
new file mode 100644
index 0000000000..3036295f48
--- /dev/null
+++ b/conf/machine/include/AT91-LCD.inc
@@ -0,0 +1,15 @@
+# Common description for Atmel ARM processors with LCD controller
+
+include conf/machine/include/AT91.inc
+
+MACHINE_FEATURES += "screen touchscreen keyboard"
+
+# Some options we disable for now
+# MACHINE_FEATURES += "apm"
+# MACHINE_FEATURES += "lcd"
+# MACHINE_FEATURES += "bluetooth wifi irda phone gps"
+# MACHINE_FEATURES += "mmc mmcroot fat"
+# MACHINE_FEATURES += "i2c spi serial"
+# MACHINE_FEATURES += "sound libogg libvorbis"
+
+
diff --git a/conf/machine/include/AT91.inc b/conf/machine/include/AT91.inc
new file mode 100644
index 0000000000..6c0f8f04ac
--- /dev/null
+++ b/conf/machine/include/AT91.inc
@@ -0,0 +1,51 @@
+# Common description for Atmel ARM processors
+
+TARGET_ARCH = "arm"
+#PACKAGE_EXTRA_ARCHS = "armv4t armv5te"
+CPU_FAMILY = "at91"
+
+PREFERRED_PROVIDER_virtual/kernel = "linux"
+PREFERRED_VERSION_linux = "2.6.32"
+
+#PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive"
+#PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive-1300"
+#PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
+#PREFERRED_PROVIDER_xserver = "xserver-xorg"
+#PREFERRED_PROVIDER_xserver = "xserver-kdrive"
+#XSERVER = "xserver-kdrive-fbdev"
+# Angstrom defines:
+#PREFERRED_VERSION_xserver-kdrive = "1.4.0.90"
+#PREFERRED_VERSION_xserver-kdrive = "1.6.1"
+
+PREFERRED_PROVIDER_at91bootstrap = "at91bootstrap_2.13"
+PREFERRED_VERSION_at91bootstrap = "2.13"
+
+PREFERRED_PROVIDER_u-boot = "u-boot_2009.08"
+PREFERRED_VERSION_u-boot = "2009.08"
+
+KERNEL_IMAGETYPE = "uImage"
+
+# PREFERRED_VERSION_mplayer = "svn"
+
+#don't try to access tty1
+USE_VT = "0"
+
+MACHINE_FEATURES = " kernel26 alsa ext2 usbgadget vfat uboot "
+EXTRA_IMAGEDEPENDS += "u-boot"
+EXTRA_IMAGEDEPENDS += "at91bootstrap"
+
+MACHINE_EXTRA_RDEPENDS += " kernel-modules "
+#MACHINE_EXTRA_RDEPENDS += " atmel-fixes "
+
+# used by sysvinit_2
+SERIAL_CONSOLE = "115200 ttyS0"
+IMAGE_FSTYPES ?= "jffs2"
+EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x20000 -n"
+#
+# Uncomment or add kernel modules that should be autoloaded
+#module_autoload_g_file_storage = ${@base_contains('MACHINE_FEATURES', 'usbgadget', 'g_file_storage', '',d)}
+#module_autoload_g_ether = ${@base_contains('MACHINE_FEATURES', 'usbgadget', 'g_ether', '',d)}
+module_autoload_g_serial = ${@base_contains('MACHINE_FEATURES', 'usbgadget', 'g_serial', '',d)}
+
+require conf/machine/include/tune-arm926ejs.inc
+
diff --git a/conf/machine/include/afeb9260.inc b/conf/machine/include/afeb9260.inc
new file mode 100644
index 0000000000..cb3ff9bbe9
--- /dev/null
+++ b/conf/machine/include/afeb9260.inc
@@ -0,0 +1,24 @@
+#@TYPE: Machine
+#@Name: AFEB9260 development board http://www.oshw.ru/
+
+TARGET_ARCH = "arm"
+#PACKAGE_EXTRA_ARCHS = "armv4t armv5te"
+
+PREFERRED_PROVIDER_virtual/kernel = "linux"
+PREFERRED_PROVIDER_xserver = "xserver-kdrive"
+XSERVER = "xserver-kdrive-fbdev"
+
+KERNEL_IMAGETYPE = "uImage"
+
+#don't try to access tty1
+USE_VT = "0"
+
+MACHINE_FEATURES = "kernel26 ext2 usbhost usbgadget"
+EXTRA_IMAGEDEPENDS += "at91bootstrap u-boot"
+
+# used by sysvinit_2
+SERIAL_CONSOLE = "115200 ttyS0"
+IMAGE_FSTYPES ?= "jffs2"
+EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x20000 -n"
+
+require conf/machine/include/tune-arm926ejs.inc
diff --git a/conf/machine/include/davinci.inc b/conf/machine/include/davinci.inc
new file mode 100644
index 0000000000..a262059d45
--- /dev/null
+++ b/conf/machine/include/davinci.inc
@@ -0,0 +1,25 @@
+require conf/machine/include/tune-arm926ejs.inc
+
+# Increase this everytime you change something in the kernel
+MACHINE_KERNEL_PR = "r32"
+
+TARGET_ARCH = "arm"
+
+KERNEL_IMAGETYPE = "uImage"
+
+PREFERRED_PROVIDER_virtual/kernel = "linux-davinci"
+
+PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
+UBOOT_MACHINE = "davinci_dvevm_config"
+
+UBOOT_ENTRYPOINT = "0x80008000"
+UBOOT_LOADADDRESS = "0x80008000"
+
+EXTRA_IMAGEDEPENDS += "u-boot"
+
+SERIAL_CONSOLE ?= "115200 ttyS0"
+EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x20000 -n"
+
+#ROOT_FLASH_SIZE = "29"
+
+MACHINE_FEATURES = "kernel26 serial ethernet usbhost usbgadget mmc alsa"
diff --git a/conf/machine/include/dm355.inc b/conf/machine/include/dm355.inc
new file mode 100644
index 0000000000..d666d5e030
--- /dev/null
+++ b/conf/machine/include/dm355.inc
@@ -0,0 +1,2 @@
+SOC_FAMILY = "dm355"
+
diff --git a/conf/machine/include/dm365.inc b/conf/machine/include/dm365.inc
new file mode 100644
index 0000000000..c53680ea63
--- /dev/null
+++ b/conf/machine/include/dm365.inc
@@ -0,0 +1,12 @@
+SOC_FAMILY = "dm365"
+
+
+# DMAI
+PLATFORM = "dm365"
+XDC_PLATFORM = ti.platforms.evmDM365
+
+# Obsoleted (CE examples rebuild)
+#GPPOS = "LINUX_GCC"
+
+# DMAI recipe
+#TARGET = "dm365_al"
diff --git a/conf/machine/include/dm6446.inc b/conf/machine/include/dm6446.inc
new file mode 100644
index 0000000000..c14e573c74
--- /dev/null
+++ b/conf/machine/include/dm6446.inc
@@ -0,0 +1,13 @@
+SOC_FAMILY = "dm6446"
+
+# TI DVSDK stuff:
+DSPCFG ?= "DM6446GEMSHMEM"
+DSPLINKDSPCFG ?= "DM6446GEMSHMEM"
+DSPLINKGPPOS ?= "MVL5G"
+DSPLINKPLATFORM ?= "DAVINCI"
+DSPLINKSOC ?= "DM6446"
+DSPPOWERSOC ?= "DM6446"
+GPPOS ?= "LINUX_GCC"
+PLATFORM ?= "dm6446"
+XDC_PLATFORM ?= "ti.platforms.evmDM6446"
+
diff --git a/conf/machine/include/htc-msm7.inc b/conf/machine/include/htc-msm7.inc
new file mode 100644
index 0000000000..5d7596f38d
--- /dev/null
+++ b/conf/machine/include/htc-msm7.inc
@@ -0,0 +1,23 @@
+# kernel
+PREFERRED_PROVIDER_virtual/kernel = "linux-msm7xxxx"
+
+# xserver
+PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive"
+XSERVER = "xserver-kdrive-fbdev"
+
+# capability database
+MACHINE_DISPLAY_WIDTH_PIXELS = "480"
+MACHINE_DISPLAY_HEIGHT_PIXELS = "640"
+
+# use this for overrides
+MACHINE_CLASS = "htc-msm7"
+
+# features
+MACHINE_FEATURES = "kernel26 touchscreen screen phone gps usb keyboard"
+
+# filesystems
+IMAGE_FSTYPES = "tar.gz"
+
+# CPU
+require conf/machine/include/tune-arm1136-novfp.inc
+
diff --git a/conf/machine/include/kexecboot.inc b/conf/machine/include/initramfs-kexecboot.inc
index 1835af4727..6ee1ddc3fa 100644
--- a/conf/machine/include/kexecboot.inc
+++ b/conf/machine/include/initramfs-kexecboot.inc
@@ -1,16 +1,13 @@
-# kexecboot specific config options
-
-# NOTE: include this file after zaurus-2.6.inc for zaurus machines
+# initramfs-kexecboot specific config options
MACHINE_FEATURES_append = " kexecboot "
-IMAGE_FSTYPES += " tar.gz "
EXTRA_IMAGEDEPENDS += "linux-kexecboot"
-# Include Kernel image in kexecboot enabled images
+# Include kernel image in kexecboot enabled images
RDEPENDS_kernel-base = "kernel-image"
-# we store kernel images in rootfs and only a minimal initramfs kernel in mtd1 for booting other kernels
+# we store kernel images in rootfs and only a minimal initramfs kernel in nand for booting other kernels
DONT_CHECK_KERNELSIZE ?= "1"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS_append = " kexecboot-cfg"
diff --git a/conf/machine/include/kirkwood.inc b/conf/machine/include/kirkwood.inc
new file mode 100644
index 0000000000..c3c59aa48b
--- /dev/null
+++ b/conf/machine/include/kirkwood.inc
@@ -0,0 +1,24 @@
+#@TYPE: Machine
+#@DESCRIPTION: Machine configuration for various different Marvell Kirkwood based devices
+
+TARGET_ARCH = "arm"
+
+MACHINE_FEATURES = "kernel26 usbhost ext2 vfat mmc"
+MACHINE_TASK_PROVIDER = "task-base"
+
+USE_DEVFS = "0"
+
+PREFERRED_PROVIDER_virtual/bootloader = ""
+PREFERRED_PROVIDER_virtual/kernel = "linux-kirkwood"
+
+MACHINE_KERNEL_PR = "r14"
+
+IMAGE_FSTYPES += "tar.gz ubi"
+SERIAL_CONSOLE = "ttyS0 115200"
+
+# Currently all the orion devices we support use uImage
+KERNEL_IMAGETYPE = "uImage"
+UBOOT_ENTRYPOINT = "0x00008000"
+UBOOT_LOADADDRESS = "0x00008000"
+
+require conf/machine/include/tune-arm926ejs.inc
diff --git a/conf/machine/include/motorola-ezx-base.inc b/conf/machine/include/motorola-ezx-base.inc
index fe28a3cb4d..75c0f42f7d 100644
--- a/conf/machine/include/motorola-ezx-base.inc
+++ b/conf/machine/include/motorola-ezx-base.inc
@@ -18,6 +18,9 @@ MACHINE_DISPLAY_HEIGHT_PIXELS = "320"
MACHINE_DISPLAY_ORIENTATION = "0"
MACHINE_DISPLAY_PPI = "180"
+# use this for overrides
+MACHINE_CLASS = "motorola-ezx"
+
XSERVER = "xserver-kdrive-fbdev"
ROOT_FLASH_SIZE = "24"
diff --git a/conf/machine/include/omap3.inc b/conf/machine/include/omap3.inc
new file mode 100644
index 0000000000..dd1188b7c5
--- /dev/null
+++ b/conf/machine/include/omap3.inc
@@ -0,0 +1,23 @@
+SOC_FAMILY = "omap3"
+
+require conf/machine/include/tune-cortexa8.inc
+PREFERRED_PROVIDER_virtual/kernel = "linux-omap"
+# Increase this everytime you change something in the kernel
+MACHINE_KERNEL_PR = "r51"
+
+KERNEL_IMAGETYPE = "uImage"
+
+UBOOT_ENTRYPOINT = "0x80008000"
+UBOOT_LOADADDRESS = "0x80008000"
+
+# Only build u-boot, xload is optional
+EXTRA_IMAGEDEPENDS += "u-boot"
+
+# TI DVSDK stuff:
+# DSPLink rebuild
+DSPLINKDSPCFG ?= "OMAP3530SHMEM"
+DSPLINKGPPOS ?= "OMAPLSP"
+DSPLINKPLATFORM ?= "OMAP3530"
+DSPLINKSOC ?= "3530"
+
+
diff --git a/conf/machine/include/omapl137.inc b/conf/machine/include/omapl137.inc
new file mode 100644
index 0000000000..cd84594f86
--- /dev/null
+++ b/conf/machine/include/omapl137.inc
@@ -0,0 +1 @@
+SOC_FAMILY = "omapl137"
diff --git a/conf/machine/include/omapl138.inc b/conf/machine/include/omapl138.inc
new file mode 100644
index 0000000000..4c222753df
--- /dev/null
+++ b/conf/machine/include/omapl138.inc
@@ -0,0 +1 @@
+SOC_FAMILY = "omapl138"
diff --git a/conf/machine/include/tune-arm1136-novfp.inc b/conf/machine/include/tune-arm1136-novfp.inc
index 372148e7a2..e1f7945a0f 100644
--- a/conf/machine/include/tune-arm1136-novfp.inc
+++ b/conf/machine/include/tune-arm1136-novfp.inc
@@ -6,3 +6,5 @@ FEED_ARCH = "armv6-novfp"
BASE_PACKAGE_ARCH = "armv6-novfp"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6-novfp"
+# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
+require conf/machine/include/tune-thumb.inc
diff --git a/conf/machine/include/tune-atom.inc b/conf/machine/include/tune-atom.inc
new file mode 100644
index 0000000000..44058c12be
--- /dev/null
+++ b/conf/machine/include/tune-atom.inc
@@ -0,0 +1,9 @@
+# GCC 4.3.0- (see Poky)
+# TARGET_CC_ARCH = "-march=i586"
+# GCC 4.3.1+ (see Gentoo)
+TARGET_CC_ARCH = "-march=core2"
+# GCC 4.4.2+ (see Fedora 12)
+#TARGET_CC_ARCH = "-march=i686 -mtune=atom"
+BASE_PACKAGE_ARCH = "i686"
+FEED_ARCH = "i686"
+PACKAGE_EXTRA_ARCHS += "x86 i386 i486 i586" \ No newline at end of file
diff --git a/conf/machine/include/tune-ep9312.inc b/conf/machine/include/tune-ep9312.inc
index cf3de9c56f..c8770e0783 100644
--- a/conf/machine/include/tune-ep9312.inc
+++ b/conf/machine/include/tune-ep9312.inc
@@ -1,11 +1,14 @@
-TARGET_CC_ARCH = "-march=ep9312 -mtune=ep9312 -mcpu=ep9312"
-# add "-mfp=maverick" for newer gcc versions > 4.0
+TARGET_CC_ARCH = "-mcpu=ep9312 -mfpu=maverick -mfloat-abi=softfp"
#set arch to ep9312 for all generated packages
-PACKAGE_EXTRA_ARCHS += "armv4 armv4t ep9312"
+PACKAGE_EXTRA_ARCHS += "armv4t ep9312"
BASE_PACKAGE_ARCH = "ep9312"
FEED_ARCH = "ep9312"
# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
require conf/machine/include/tune-thumb.inc
+FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O -fno-signed-zeros"
+DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer -g"
+SELECTED_OPTIMIZATION = "${@bb.data.getVar(['FULL_OPTIMIZATION', 'DEBUG_OPTIMIZATION'][bb.data.getVar('DEBUG_BUILD', d, 1) == '1'], d, 1)}"
+BUILD_OPTIMIZATION = "-O"
diff --git a/conf/machine/include/tune-geode.inc b/conf/machine/include/tune-geode.inc
new file mode 100644
index 0000000000..eda332a74e
--- /dev/null
+++ b/conf/machine/include/tune-geode.inc
@@ -0,0 +1,5 @@
+TARGET_CC_ARCH = "-march=geode -mtune=geode"
+BASE_PACKAGE_ARCH = "geode"
+PACKAGE_EXTRA_ARCHS += "x86 i386 geode"
+
+FEED_ARCH = "geode"
diff --git a/conf/machine/include/tune-geodelx.inc b/conf/machine/include/tune-geodelx.inc
deleted file mode 100644
index 4e146f4c04..0000000000
--- a/conf/machine/include/tune-geodelx.inc
+++ /dev/null
@@ -1,9 +0,0 @@
-# Geode CPU has it's own target in GCC 4.3
-# in older versions k6-2 is closest
-#
-TARGET_CC_ARCH = "-march=k6-2"
-BASE_PACKAGE_ARCH = "geode"
-PACKAGE_EXTRA_ARCHS += "x86 i386 i486 geode"
-
-FEED_ARCH = "geode"
-
diff --git a/conf/machine/include/tune-ppce500.inc b/conf/machine/include/tune-ppce500.inc
index 9c8c68c342..44f8742f9f 100644
--- a/conf/machine/include/tune-ppce500.inc
+++ b/conf/machine/include/tune-ppce500.inc
@@ -1,3 +1,4 @@
TARGET_CC_ARCH = "-mcpu=8540"
BASE_PACKAGE_ARCH = "ppce500"
FEED_ARCH = "ppce500"
+PACKAGE_EXTRA_ARCHS += "ppce500"
diff --git a/conf/machine/include/tune-ppce500v2.inc b/conf/machine/include/tune-ppce500v2.inc
new file mode 100644
index 0000000000..73d8e92f0a
--- /dev/null
+++ b/conf/machine/include/tune-ppce500v2.inc
@@ -0,0 +1,4 @@
+TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float -mfloat-gprs=double"
+BASE_PACKAGE_ARCH = "ppce500v2"
+FEED_ARCH = "ppce500v2"
+PACKAGE_EXTRA_ARCHS += "ppce500v2"
diff --git a/conf/machine/include/tune-sh3.inc b/conf/machine/include/tune-sh3.inc
index 65bfacf174..32801a61c3 100644
--- a/conf/machine/include/tune-sh3.inc
+++ b/conf/machine/include/tune-sh3.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-ml -m3"
FEED_ARCH = "sh3"
+BASE_PACKAGE_ARCH = "sh3"
diff --git a/conf/machine/include/tune-sh4.inc b/conf/machine/include/tune-sh4.inc
index c20b8cf5a0..5d43e4195e 100644
--- a/conf/machine/include/tune-sh4.inc
+++ b/conf/machine/include/tune-sh4.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-ml -m4"
FEED_ARCH = "sh4"
+BASE_PACKAGE_ARCH = "sh4"
diff --git a/conf/machine/include/tune-strongarm.inc b/conf/machine/include/tune-strongarm.inc
index 5745c36311..fe57c9ccc0 100644
--- a/conf/machine/include/tune-strongarm.inc
+++ b/conf/machine/include/tune-strongarm.inc
@@ -2,8 +2,7 @@
# gcc does not differentiate between the different Strongarm versions, so neither do we
# http://lists.linuxtogo.org/pipermail/openembedded-devel/2008-January/004031.html
-ARM_ABI = "oabi"
TARGET_CC_ARCH = "-march=armv4 -mtune=strongarm"
-FEED_ARCH = "arm-oabi"
-
-PACKAGE_EXTRA_ARCHS += "armv4 "
+FEED_ARCH = "armv4"
+BASE_PACKAGE_ARCH = "armv4"
+PACKAGE_EXTRA_ARCHS += "armv4"
diff --git a/conf/machine/include/tune-xscale.inc b/conf/machine/include/tune-xscale.inc
index 79d22bc794..3a6bd0e659 100644
--- a/conf/machine/include/tune-xscale.inc
+++ b/conf/machine/include/tune-xscale.inc
@@ -1,9 +1,12 @@
-FEED_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
+# this depends on fact that for ARM the TARGET_ARCH is 'arm' for little endian and 'armeb' for bigendian
+# this is the case as of now for all arm machines in OE.
+
+FEED_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
TARGET_CC_ARCH = "-march=armv5te -mtune=xscale"
TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale"
-PACKAGE_EXTRA_ARCHS += "${@['armv4b armv4tb armv5teb', 'armv4 armv4t armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
-BASE_PACKAGE_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
+PACKAGE_EXTRA_ARCHS += "${@['armv4b armv4tb armv5teb', 'armv4 armv4t armv5te'][ bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
+BASE_PACKAGE_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
require conf/machine/include/tune-thumb.inc
diff --git a/conf/machine/include/zaurus-2.6.inc b/conf/machine/include/zaurus-2.6.inc
index aeba16b67c..02a48629c8 100644
--- a/conf/machine/include/zaurus-2.6.inc
+++ b/conf/machine/include/zaurus-2.6.inc
@@ -1,73 +1,69 @@
-# Zaurus specific configuration for kernel 2.6
+# Zaurus common settings
# Additionally, clamshell specific stuff in zaurus-clamshell.inc
TARGET_ARCH = "arm"
-MACHINE_KERNEL_VERSION = "2.6"
-
ERASEBLOCKSIZE = "0x4000"
ERASEBLOCKSIZE_akita = "0x20000"
+# Warning! SL-C3000 seems to be "0x4000" (16m NAND)
+# C3100 and C3200 have same 128MB NAND device as akita
+ERASEBLOCKSIZE_spitz = "0x20000"
+
EXTRA_IMAGECMD_jffs2 = "--little-endian --eraseblock=${ERASEBLOCKSIZE} --pad --faketime -n"
-ZAURUS-UPDATER = "zaurus-updater"
-EXTRA_IMAGEDEPENDS += "${ZAURUS-UPDATER}"
+EXTRA_IMAGEDEPENDS += "zaurus-installer"
SERIAL_CONSOLE = "115200 ttyS0"
+SERIAL_CONSOLE_collie = "115200 ttySA0"
+
+# FIXME: xserver-xorg is in testing
-PREFERRED_PROVIDER_virtual/kernel = "linux-rp"
+# deprecated defaults
PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive"
+XSERVER = "xserver-kdrive-fbdev"
+
+# c7x0 uses kdrive-imageon (W100)
PREFERRED_PROVIDER_virtual/xserver_c7x0 = "xserver-kdrive-imageon"
+XSERVER_c7x0 = "xserver-kdrive-imageon"
+
+# collie uses kdrive-fbdev
+PREFERRED_PROVIDER_virtual/xserver_collie = "xserver-kdrive-fbdev"
+XSERVER_collie = "xserver-kdrive-fbdev"
+
+# FIXME xserver-kdrive 1.3.0.0 is still the only working version ?
+PREFERRED_PROVIDER_virtual/xserver_akita = "xserver-kdrive-1300"
+XSERVER_akita = "xserver-kdrive-1300-fbdev"
+
+# spitz uses xserver-xorg
+PREFERRED_PROVIDER_virtual/xserver_spitz = "xserver-xorg"
+XSERVER_spitz = "xserver-xorg xf86-input-keyboard xf86-input-mouse xf86-input-evdev"
+PREFERRED_PROVIDER_virtual/libgl_spitz = "mesa-dri"
PCMCIA_MANAGER ?= "pcmciautils"
-MACHINE_FEATURES = "kernel26 apm alsa pcmcia irda usbgadget keyboard touchscreen screen vfat"
-MACHINE_FEATURES_append_tosa = " usbhost wifi "
+IMAGE_FSTYPES += "jffs2 tar.gz"
+
+MACHINE_FEATURES = "kernel26 apm alsa pcmcia irda usbgadget keyboard touchscreen screen vfat ext2"
MACHINE_FEATURES_append_akita = " usbhost "
-MACHINE_FEATURES_append_spitz = " usbhost ext2 "
+MACHINE_FEATURES_append_spitz = " usbhost "
+MACHINE_FEATURES_append_tosa = " usbhost wifi "
+
+MACHINE_EXTRA_RDEPENDS = "zaurusd mtd-utils nandlogical"
+MACHINE_EXTRA_RDEPENDS_collie = "zaurusd"
-MACHINE_EXTRA_RDEPENDS = "zaurusd"
+# Here we just need snd modules
+# Fixme ? pcmcia and pxa2xx-cs are now compiled in kernel
+# Fixme ? module-snd for collie
+MACHINE_EXTRA_RRECOMMENDS_collie = ""
MACHINE_EXTRA_RRECOMMENDS_c7x0 = "kernel-module-snd-soc-corgi kernel-module-pxa2xx-cs kernel-module-pcmcia"
MACHINE_EXTRA_RRECOMMENDS_akita = "kernel-module-snd-soc-spitz kernel-module-pxa2xx-cs kernel-module-pcmcia"
-MACHINE_EXTRA_RRECOMMENDS_spitz = "kernel-module-snd-soc-spitz"
+MACHINE_EXTRA_RRECOMMENDS_spitz = "kernel-module-snd-soc-spitz kernel-module-pxa2xx-cs kernel-module-pcmcia"
MACHINE_EXTRA_RRECOMMENDS_poodle = "kernel-module-snd-soc-poodle kernel-module-pxa2xx-cs kernel-module-pcmcia"
+# For tosa: OHCI suspend/resume fixup
+# wlan-ng is now in kernel (2.6.29)
+# Fixme ? module-snd for tosa
+MACHINE_EXTRA_RRECOMMENDS_tosa = "apm-tosa-suspendfix"
-GUI_MACHINE_CLASS = "bigscreen"
-GUI_MACHINE_CLASS_poodle = "smallscreen"
-
-KERNEL_IMAGE_MAXSIZE = "1294336"
-
-MACHINE_POSTPROCESS_COMMAND = "zaurus_make_installkit"
-
-zaurus_make_installkit () {
- cd ${DEPLOY_DIR_IMAGE}
- rm -rf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-installkit/
- mkdir ${IMAGE_NAME}-installkit/
-
- # Get the latest kernel using the zImage-<machine>.bin symlink
- if [ "${@base_contains('MACHINE_FEATURES', 'kexecboot', 'true', 'false',d)}" = "true" ]; then
- [ -f "zImage-kexecboot-${MACHINE}.bin" ] && cp zImage-kexecboot-${MACHINE}.bin ${IMAGE_NAME}-installkit/zImage
- # we need also tgz for mmc or cf cards
- cp ${IMAGE_NAME}.rootfs.tar.gz ${IMAGE_NAME}-installkit/image.tgz
- else
- cp zImage-${MACHINE}.bin ${IMAGE_NAME}-installkit/zImage
- fi
-
- if [ "${MACHINE}" = "spitz" ]; then
- cp gnu-tar ${IMAGE_NAME}-installkit/
- cp ${IMAGE_NAME}.rootfs.tar.gz ${IMAGE_NAME}-installkit/hdimage1.tgz
- else
- [ -f ${IMAGE_NAME}.rootfs.jffs2 ] && cp ${IMAGE_NAME}.rootfs.jffs2 ${IMAGE_NAME}-installkit/initrd.bin
- fi
-
- cp updater.sh.${MACHINE} ${IMAGE_NAME}-installkit/updater.sh
-
-
- tar czf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-installkit.tgz ${IMAGE_NAME}-installkit/
- md5sum ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-installkit.tgz > ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-installkit.tgz.md5
- rm -rf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-installkit/
-}
-
-KERNEL_IMAGETYPE ?= "zImage"
-
-require conf/machine/include/kexecboot.inc
+require conf/machine/include/zaurus-kernel.inc
+require conf/machine/include/initramfs-kexecboot.inc
diff --git a/conf/machine/include/zaurus-kernel.inc b/conf/machine/include/zaurus-kernel.inc
new file mode 100644
index 0000000000..1ba4a3422d
--- /dev/null
+++ b/conf/machine/include/zaurus-kernel.inc
@@ -0,0 +1,16 @@
+# Zaurus common kernel settings
+
+MACHINE_KERNEL_VERSION = "2.6"
+
+PREFERRED_PROVIDER_virtual/kernel = "linux-rp"
+
+# Starting with 2.6.32 linux-rp is deprecated
+#PREFERRED_PROVIDER_virtual/kernel = "linux"
+PREFERRED_PROVIDER_virtual/kernel_collie = "linux"
+PREFERRED_PROVIDER_virtual/kernel_tosa = "linux"
+
+KERNEL_IMAGE_MAXSIZE = "1294336"
+KERNEL_IMAGE_MAXSIZE_collie = "1048576"
+
+ZAURUS_KERNEL_IMAGETYPE ?= "zImage"
+KERNEL_IMAGETYPE = "${ZAURUS_KERNEL_IMAGETYPE}"