[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#621032: linux-2.6: please add armhf support



On Fri, Apr 15, 2011 at 03:45:04PM -0700, Vagrant Cascadian wrote:
> On Fri, Apr 15, 2011 at 09:36:40AM +0200, Bastian Blank wrote:
> > On Fri, Apr 15, 2011 at 12:51:29AM +0200, Hector Oron wrote:
> > >   I propose this patch which enables basic functionality of Efika MX nettop 
> > >   which it is currently in mainline 2.6.38.
> > 
> > The configs looks strange.
> 
> agreed.
> 
> 
> > - Why is network support system specific?
> 
> it isn't, and should be removed. i've been working on trimming the config
> considerably to get it closer to debian defaults...

tested the following changes, with many config options trimmed out. it boots to 
mmc ok. it probably could be even further simplified.

patch for trimmed down debian/config/armhf/*:

 debian/config/armhf/config                          |   59 +++
 debian/config/armhf/config.mx5                      |  343 ++++++++++++++++++++
 debian/config/armhf/defines                         |   17
 linux-2.6-2.6.38/debian/changelog                   |   11
 linux-2.6-2.6.38/debian/config/defines              |    1
 linux-2.6-2.6.38/debian/rules.real                  |    3
 linux-2.6-2.6.38/debian/templates/control.main.in   |    2
 linux-2.6-2.6.38/debian/templates/control.source.in |    2
 8 files changed, 435 insertions(+), 3 deletions(-)

diff -u linux-2.6-2.6.38/debian/changelog linux-2.6-2.6.38/debian/changelog
--- linux-2.6-2.6.38/debian/changelog
+++ linux-2.6-2.6.38/debian/changelog
@@ -1,3 +1,14 @@
+linux-2.6 (2.6.38-3+armhf.2) UNRELEASED; urgency=low
+
+  [ Hector Oron ]
+  * Add armhf support: enables efikamx nettop basic support. 
+
+  [ Vagrant Cascadian ]
+  * Simplify debian/config/armhf/config* 
+  * Drop check-size from debian/config/armhf/defines
+
+ -- Vagrant Cascadian <vagrant@debian.org>  Wed, 13 Apr 2011 17:51:28 -0700
+
 linux-2.6 (2.6.38-3) unstable; urgency=low
 
   [ Ben Hutchings ]
diff -u linux-2.6-2.6.38/debian/rules.real linux-2.6-2.6.38/debian/rules.real
--- linux-2.6-2.6.38/debian/rules.real
+++ linux-2.6-2.6.38/debian/rules.real
@@ -39,7 +39,7 @@
 #
 binary-arch-arch: install-headers_$(ARCH)
 binary-arch-arch: install-libc-dev_$(ARCH)
-ifneq ($(filter alpha amd64 armel hppa i386 powerpc ppc64 s390 sh4 sparc sparc64,$(ARCH)),)
+ifneq ($(filter alpha amd64 armel armhf hppa i386 powerpc ppc64 s390 sh4 sparc sparc64,$(ARCH)),)
   binary-arch-arch: install-tools_$(ARCH)
 endif
 binary-arch-featureset: install-headers_$(ARCH)_$(FEATURESET)
@@ -364,6 +364,7 @@
 
 install-image_arm_$(FEATURESET)_$(FLAVOUR)_plain_image \
 install-image_armel_$(FEATURESET)_$(FLAVOUR)_plain_image \
+install-image_armhf_$(FEATURESET)_$(FLAVOUR)_plain_image \
 install-image_sparc_$(FEATURESET)_$(FLAVOUR)_plain_image \
 install-image_sparc64_$(FEATURESET)_$(FLAVOUR)_plain_image \
 install-image_sh4_$(FEATURESET)_$(FLAVOUR)_plain_image:
diff -u linux-2.6-2.6.38/debian/templates/control.source.in linux-2.6-2.6.38/debian/templates/control.source.in
--- linux-2.6-2.6.38/debian/templates/control.source.in
+++ linux-2.6-2.6.38/debian/templates/control.source.in
@@ -3,7 +3,7 @@
 Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
 Uploaders: Bastian Blank <waldi@debian.org>, Frederik Schüler <fs@debian.org>, maximilian attems <maks@debian.org>, Ben Hutchings <ben@decadent.org.uk>
 Standards-Version: 3.9.1
-Build-Depends: debhelper (>> 7), cpio, module-init-tools, python, lzma [armel], libelf-dev, libdw-dev, binutils-dev, asciidoc, xmlto, libperl-dev, python-dev, libnewt-dev, python-support
+Build-Depends: debhelper (>> 7), cpio, module-init-tools, python, lzma [armel armhf], libelf-dev, libdw-dev, binutils-dev, asciidoc, xmlto, libperl-dev, python-dev, libnewt-dev, python-support
 Build-Depends-Indep: bzip2
 Vcs-Svn: svn://svn.debian.org/svn/kernel/dists/sid/linux-2.6/
 Vcs-Browser: http://svn.debian.org/wsvn/kernel/dists/sid/linux-2.6/?op=log
diff -u linux-2.6-2.6.38/debian/templates/control.main.in linux-2.6-2.6.38/debian/templates/control.main.in
--- linux-2.6-2.6.38/debian/templates/control.main.in
+++ linux-2.6-2.6.38/debian/templates/control.main.in
@@ -1,5 +1,5 @@
 Package: linux-tools-@version@
-Architecture: alpha amd64 armel hppa i386 powerpc ppc64 s390 sh4 sparc sparc64
+Architecture: alpha amd64 armel armhf hppa i386 powerpc ppc64 s390 sh4 sparc sparc64
 Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, ${python:Depends}
 Recommends: linux-base (>= 2.6.32-16)
 Suggests: linux-doc-@version@
diff -u linux-2.6-2.6.38/debian/config/defines linux-2.6-2.6.38/debian/config/defines
--- linux-2.6-2.6.38/debian/config/defines
+++ linux-2.6-2.6.38/debian/config/defines
@@ -6,6 +6,7 @@
  alpha
  amd64
  armel
+ armhf
  hppa
  i386
  ia64
only in patch2:
unchanged:
--- linux-2.6-2.6.38.orig/debian/config/armhf/config.mx5
+++ linux-2.6-2.6.38/debian/config/armhf/config.mx5
@@ -0,0 +1,343 @@
+##
+## file: arch/arm/Kconfig
+##
+## choice: ARM system type
+# CONFIG_ARCH_AAEC2000 is not set
+# CONFIG_ARCH_INTEGRATOR is not set
+# CONFIG_ARCH_REALVIEW is not set
+# CONFIG_ARCH_VERSATILE is not set
+# CONFIG_ARCH_AT91 is not set
+# CONFIG_ARCH_CLPS711X is not set
+# CONFIG_ARCH_EBSA110 is not set
+# CONFIG_ARCH_EP93XX is not set
+# CONFIG_ARCH_FOOTBRIDGE is not set
+CONFIG_ARCH_MXC=y
+# CONFIG_ARCH_NETX is not set
+# CONFIG_ARCH_H720X is not set
+# CONFIG_ARCH_IOP13XX is not set
+# CONFIG_ARCH_IOP32X is not set
+# CONFIG_ARCH_IOP33X is not set
+# CONFIG_ARCH_IXP23XX is not set
+# CONFIG_ARCH_IXP2000 is not set
+# CONFIG_ARCH_IXP4XX is not set
+# CONFIG_ARCH_KIRKWOOD is not set
+# CONFIG_ARCH_ORION5X is not set
+# CONFIG_ARCH_KS8695 is not set
+# CONFIG_ARCH_NS9XXX is not set
+# CONFIG_ARCH_PNX4008 is not set
+# CONFIG_ARCH_PXA is not set
+# CONFIG_ARCH_RPC is not set
+# CONFIG_ARCH_SA1100 is not set
+# CONFIG_ARCH_S3C2410 is not set
+# CONFIG_ARCH_SHARK is not set
+# CONFIG_ARCH_LH7A40X is not set
+# CONFIG_ARCH_DAVINCI is not set
+# CONFIG_ARCH_OMAP is not set
+## end choice
+CONFIG_IMX_HAVE_PLATFORM_FEC=y
+CONFIG_IMX_HAVE_PLATFORM_GPIO_KEYS=y
+CONFIG_IMX_HAVE_PLATFORM_IMX2_WDT=y
+CONFIG_IMX_HAVE_PLATFORM_IMX_I2C=y
+CONFIG_IMX_HAVE_PLATFORM_IMX_SSI=y
+CONFIG_IMX_HAVE_PLATFORM_IMX_UART=y
+CONFIG_IMX_HAVE_PLATFORM_MXC_PWM=y
+CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX=y
+CONFIG_IMX_HAVE_PLATFORM_SPI_IMX=y
+# CONFIG_IMX_HAVE_PLATFORM_IMX_IPUV3 is not set
+
+##
+## file: "arch/arm/plat-mxc/Kconfig"
+##
+CONFIG_ARCH_MX5=y
+##
+## file: "arch/arm/mach-mx5/Kconfig"
+##
+CONFIG_ARCH_MX51=y
+CONFIG_SOC_IMX51=y
+CONFIG_MACH_MX51_EFIKAMX=y
+# CONFIG_MACH_MX51_EFIKASB is not set
+##
+## file: "arch/arm/mm/Kconfig"
+##
+CONFIG_CPU_32v6K=y
+CONFIG_CPU_32v7=y
+CONFIG_CPU_ABRT_EV7=y
+CONFIG_CPU_PABRT_V7=y
+CONFIG_CPU_CACHE_V7=y
+CONFIG_CPU_CACHE_VIPT=y
+CONFIG_CPU_COPY_V6=y
+CONFIG_CPU_TLB_V7=y
+CONFIG_CPU_HAS_ASID=y
+CONFIG_CPU_CP15=y
+CONFIG_CPU_CP15_MMU=y
+# CONFIG_ARM_THUMBEE is not set
+# CONFIG_SWP_EMULATE is not set
+# CONFIG_CPU_ICACHE_DISABLE is not set
+# CONFIG_CPU_DCACHE_DISABLE is not set
+# CONFIG_CPU_BPREDICT_DISABLE is not set
+CONFIG_ARM_L1_CACHE_SHIFT=6
+CONFIG_ARM_DMA_MEM_BUFFERABLE=y
+# CONFIG_ARM_ERRATA_430973 is not set
+# CONFIG_ARM_ERRATA_458693 is not set
+# CONFIG_ARM_ERRATA_460075 is not set
+# CONFIG_ARM_ERRATA_743622 is not set
+
+# CONFIG_MXC_IRQ_PRIOR is not set
+CONFIG_MXC_TZIC=y
+# CONFIG_MXC_AVIC is not set
+CONFIG_MXC_PWM=y
+CONFIG_MXC_DEBUG_BOARD=y
+CONFIG_MXC_ULPI=y
+CONFIG_ARCH_MXC_IOMUX_V3=y
+CONFIG_ARCH_MXC_AUDMUX_V2=y
+CONFIG_CPU_HAS_PMU=y
+
+##
+## file: "kernel/time/Kconfig"
+##
+CONFIG_TICK_ONESHOT=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+
+CONFIG_VMSPLIT_3G=y
+# CONFIG_VMSPLIT_2G is not set
+# CONFIG_VMSPLIT_1G is not set
+CONFIG_PAGE_OFFSET=0xC0000000
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_VOLUNTARY=y
+# CONFIG_PREEMPT is not set
+CONFIG_HZ=100
+
+CONFIG_CMDLINE="console=ttymxc0,115200 console=tty1"
+CONFIG_ARCH_HAS_CPUFREQ=y
+CONFIG_CPU_FREQ_IMX=m
+# CONFIG_UACCESS_WITH_MEMCPY is not set
+CONFIG_ZBOOT_ROM_TEXT=0x0
+CONFIG_ZBOOT_ROM_BSS=0x0
+CONFIG_CMDLINE=""
+# CONFIG_XIP_KERNEL is not set
+CONFIG_KEXEC=y
+CONFIG_ATAGS_PROC=y
+
+# CONFIG_FPE_NWFPE_XP is not set
+# CONFIG_FPE_FASTFPE is not set
+CONFIG_NEON=y
+# CONFIG_ARTHUR is not set
+
+## file: "drivers/connector/Kconfig"
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
+
+## file: "drivers/ide/Kconfig"
+CONFIG_HAVE_IDE=y
+
+## file: "drivers/scsi/Kconfig"
+CONFIG_SCSI_MOD=y
+CONFIG_SCSI_WAIT_SCAN=m
+
+## file: "drivers/ata/Kconfig"
+CONFIG_HAVE_PATA_PLATFORM=y
+CONFIG_PATA_PLATFORM=y
+
+## file: "drivers/net/Kconfig"
+CONFIG_RT2800_LIB=y
+CONFIG_RT2X00_LIB_USB=y
+CONFIG_RT2X00_LIB=y
+CONFIG_RT2X00_LIB_HT=y
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+CONFIG_RT2X00_LIB_DEBUGFS=y
+
+## file: "drivers/input/Kconfig"
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_GPIO=y
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=y
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+CONFIG_MOUSE_PS2_ELANTECH=y
+CONFIG_SERIO=y
+CONFIG_SERIO_LIBPS2=y
+
+## file: "drivers/char/Kconfig"
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_HW_CONSOLE=y
+CONFIG_HW_RANDOM=y
+
+## file: "drivers/tty/serial/Kconfig"
+CONFIG_SERIAL_IMX=y
+CONFIG_SERIAL_IMX_CONSOLE=y
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+## file: "drivers/i2c/Kconfig"
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_ALGOBIT=y
+CONFIG_I2C_ALGOPCF=y
+CONFIG_I2C_ALGOPCA=y
+CONFIG_I2C_IMX=y
+## file: "drivers/spi/Kconfig"
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_BITBANG=y
+CONFIG_SPI_GPIO=y
+CONFIG_SPI_IMX_VER_0_7=y
+CONFIG_SPI_IMX_VER_2_3=y
+CONFIG_SPI_IMX=y
+
+## file: "drivers/pps/Kconfig"
+CONFIG_ARCH_REQUIRE_GPIOLIB=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_SYSFS=y
+
+## file: "drivers/power/Kconfig"
+CONFIG_POWER_SUPPLY=y
+# CONFIG_BATTERY_EFIKASB is not set
+
+## file: "drivers/watchdog/Kconfig"
+CONFIG_WATCHDOG=y
+CONFIG_IMX2_WDT=y
+CONFIG_SSB_POSSIBLE=y
+
+## file: "drivers/mfd/Kconfig"
+CONFIG_MFD_SUPPORT=y
+CONFIG_MFD_CORE=y
+CONFIG_MFD_MC13783=y
+CONFIG_MFD_MC13XXX=y
+# CONFIG_MFD_IMX_IPU_V3 is not set
+
+## file: "drivers/regulator/Kconfig"
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_DUMMY=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+CONFIG_REGULATOR_VIRTUAL_CONSUMER=y
+CONFIG_REGULATOR_USERSPACE_CONSUMER=y
+CONFIG_REGULATOR_MC13XXX_CORE=y
+CONFIG_REGULATOR_MC13892=y
+
+## file: "drivers/video/Kconfig"
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+# CONFIG_FB_MX5 is not set
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=y
+# CONFIG_LCD_MTL017 is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+CONFIG_BACKLIGHT_PWM=y
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+CONFIG_LOGO=y
+CONFIG_LOGO_LINUX_MONO=y
+CONFIG_LOGO_LINUX_VGA16=y
+CONFIG_LOGO_LINUX_CLUT224=y
+
+## file: "sound/Kconfig"
+CONFIG_SOUND=y
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_JACK=y
+CONFIG_SND_SEQUENCER=m
+CONFIG_SND_SEQ_DUMMY=m
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_VERBOSE_PROCFS=y
+CONFIG_SND_DRIVERS=y
+CONFIG_SND_SOC=m
+CONFIG_SND_SOC_AC97_BUS=y
+CONFIG_SND_IMX_SOC=m
+CONFIG_SND_MXC_SOC_MX2=m
+CONFIG_SND_SOC_IMX_SGTL5000=m
+CONFIG_SND_SOC_I2C_AND_SPI=m
+CONFIG_SND_SOC_SGTL5000=m
+CONFIG_AC97_BUS=m
+
+## file: "drivers/hid/Kconfig"
+CONFIG_HID_SUPPORT=y
+CONFIG_HID=y
+CONFIG_USB_HID=y
+
+## file: "drivers/usb/Kconfig"
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB_ARCH_HAS_EHCI=y
+CONFIG_USB=y
+CONFIG_USB_DEVICE_CLASS=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_EHCI_MXC=y
+CONFIG_USB_STORAGE=y
+CONFIG_USB_UAS=y
+CONFIG_USB_OTG_UTILS=y
+CONFIG_USB_ULPI=y
+CONFIG_USB_USBNET=y
+CONFIG_USB_NET_AX8817X=y
+CONFIG_USB_NET_CDC_NCM=y
+
+## file: "drivers/mmc/Kconfig"
+CONFIG_MMC=m
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_IO_ACCESSORS=y
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MMC_SDHCI_ESDHC_IMX=y
+CONFIG_MMC_MXC=y
+
+## file: "drivers/rtc/Kconfig"
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+CONFIG_RTC_INTF_DEV_UIE_EMUL=y
+CONFIG_RTC_DRV_MC13XXX=y
+CONFIG_DMADEVICES=y
+
+## file: "drivers/dma/Kconfig"
+CONFIG_IMX_SDMA=y
+CONFIG_DMA_ENGINE=y
+CONFIG_NET_DMA=y
+
+## file: "drivers/clk/Kconfig"
+CONFIG_CLKDEV_LOOKUP=y
+
+##
+## file: "security/Kconfig"
+##
+CONFIG_KEYS=y
+CONFIG_SECURITYFS=y
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_DEFAULT_SECURITY=""
+
+##
+## file: "lib/Kconfig"
+##
+CONFIG_BITREVERSE=y
+CONFIG_RATIONAL=y
+CONFIG_GENERIC_FIND_LAST_BIT=y
+CONFIG_CRC_CCITT=y
+CONFIG_CRC16=y
+CONFIG_CRC32=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_NLATTR=y
+CONFIG_AVERAGE=y
+
only in patch2:
unchanged:
--- linux-2.6-2.6.38.orig/debian/config/armhf/defines
+++ linux-2.6-2.6.38/debian/config/armhf/defines
@@ -0,0 +1,17 @@
+[base]
+flavours:
+ mx5
+kernel-arch: arm
+
+[image]
+suggests: fdutils
+
+[mx5_build]
+image-file: arch/arm/boot/zImage
+
+[mx5_description]
+hardware: Freescale MXC/iMX-based
+hardware-long: Support for Freescale MXC/iMX-based family of processors
+
+[mx5_image]
+recommends: uboot-mkimage
only in patch2:
unchanged:
--- linux-2.6-2.6.38.orig/debian/config/armhf/config
+++ linux-2.6-2.6.38/debian/config/armhf/config
@@ -0,0 +1,59 @@
+##
+## file: arch/arm/Kconfig
+##
+## choice: ARM system type
+# CONFIG_ARCH_REALVIEW is not set
+## end choice
+CONFIG_AEABI=y
+CONFIG_OABI_COMPAT=y
+
+##
+## file: arch/arm/Kconfig.debug
+##
+CONFIG_DEBUG_LL=y
+CONFIG_EARLY_PRINTK=y
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_APPLETOUCH=m
+
+##
+## file: drivers/net/wireless/ipw2x00/Kconfig
+##
+# CONFIG_IPW2100 is not set
+
+##
+## file: drivers/parport/Kconfig
+##
+#. Causes lockups on ARM (see #588164)
+# CONFIG_PARPORT_PC is not set
+
+##
+## file: init/Kconfig
+##
+## choice: Kernel compression mode
+CONFIG_KERNEL_GZIP=y 
+# CONFIG_KERNEL_BZIP2 is not set
+CONFIG_KERNEL_LZMA=y
+## end choice
+
+##
+## file: "arch/arm/mm/Kconfig"
+##
+CONFIG_CPU_V7=y
+CONFIG_ARM_THUMB=y
+
+##
+## file: "arch/arm/Kconfig"
+##
+CONFIG_VFP=y
+CONFIG_VFPv3=y


live well,
  vagrant



Reply to: