Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

Linux Kernel 2.6.37.y

9,905 bytes added, 18:02, 13 December 2016
m
Compiled binaries
__TOC__
 
= Introduction =
This article is for specific 2.6.37.y Linux kernel branch series. All the steps has been tested with [http://releases.ubuntu.com/12.04/ubuntu-12.04.5-desktop-amd64.iso Ubuntu 12.04 64b] and [http://labs.isee.biz/index.php/How_to_setup_a_cross_compiler#IGEP_OMAP3 IGEP SDK Yocto Toolchain 1.2.2-3].
The currently supported machines are as followsAll configurations support the following IGEP Expansions Boards:* IGEP0020IGEP v2 EXPANSION (IGEP0022)* IGEP0030IGEP PARIS / BERLIN (BASE0010)* IGEP0032IGEP NEW YORK (ILMS0015)
The currently supported expansion boards are as follows:* IGEP0022* BASE0010 (RevDepending the Kernel configuration used, 2.6. A & Rev37. B)* ILMS0015y series support the following IGEP OMAP3 Processor Boards:
== igep00x0_defconfig ==* IGEP v2 '''(WIFI/no WIFI)''' (IGEP0020'''RC''')* IGEP COM MODULE / ELECTRON '''(WIFI/no WIFI)''' (IGEP0030'''RE''') == igep00x0_wilink8_defconfig ==* IGEP v2 '''(WIFI/no WIFI)''' (IGEP0020'''RF''')* IGEP COM MODULE / ELECTRON '''(WIFI/no WIFI)''' (IGEP0030'''RG''') == igep00x0_nowifi_defconfig ==Alternative configuration:* IGEP v2 '''(no WIFI)'''* IGEP COM MODULE / ELECTRON '''(no WIFI)''' = Setup IGEP SDK Yocto Toolchain 1.2.2-3 = == Install == Download - [http://www.isee.biz/support/downloads/item/igep-sdk-yocto-toolchain-1-2-2-3 isee.biz] follow the next steps:*Open a terminal *Located your downloaded file, in my case is inside /home/jdoe/Downloads:<pre>jdoe@ubuntu ~ $ cd Downloads/</pre> *Extract binaries in root directory with root privileges<br><pre>jdoe@ubuntu ~/Downloads $ sudo tar jxf igep-sdk-yocto-toolchain-*.tar.bz2 -C /</pre>*Make sure that binaries are installed correctly.<pre>jdoe@ubuntu ~/Downloads $ ls /opt/poky/1.2 1.2.1 </pre> == Configure == Open a terminal and type: <pre> export PATH=/opt/poky/1.2/sysroots/i686-pokysdk-linux/usr/bin/armv7a-vfp-neon-poky-linux-gnueabi:$PATH </pre> = Compiled binaries = Binaries: latest stable kernel version IGEP OMAP3 devices is: '''2.6.37-1 12 (2012011920161206)'''
{| border="1"
|-
! '''Platform'''
! '''SourcesKernel source''' ! '''uImage zImage binary(igep00x0_defconfig)''' ! '''Modules binaries (igep00x0_defconfig)''' ! '''zImage binary(igep00x0_wilink8_defconfig)''' ! '''Modules binaries (igep00x0_wilink8_defconfig)'''! '''Compat Wireless source (only for igep00x0_wilink8_defconfig)'''! '''Firmware binaries (only for igep00x0_wilink8_defconfig)'''
|-
| &nbsp;IGEP00x0&nbsp; | [http://downloads.igepisee.esbiz/sourcespub/releases/linux_kernel/v2.6.37-12/linux-omap-2.6.37-112.tar.gz 2.6.37-112] ([http://downloads.igepisee.esbiz/pub/releases/sourceslinux_kernel/v2.6.37-12/linux-omap-2.6.37-112.tar.gz.md5 md5sum]) | [http://downloads.igepisee.esbiz/pub/binariesreleases/kernellinux_kernel/v2.6.37-112/uImagezImage-2.6.37-112.bin uImagezImage-2.6.37-112.bin] ([http://downloads.igepisee.esbiz/pub/binariesreleases/kernellinux_kernel/v2.6.37-112/uImagezImage-2.6.37-112.bin.md5 md5sum])| [http://downloads.igepisee.biz/pub/releases/linux_kernel/v2.6.37-12/modules-2.6.37-12.tar.gz modules-2.6.37-12] ([http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/modules-2.6.37-12.tar.gz.md5 md5sum)]| [http://downloads.isee.esbiz/binariespub/kernelreleases/linux_kernel/v2.6.37-112/zImage-2.6.37-112-wilink8.bin zImage-2.6.37-112-wilink8.bin] ([http://downloads.igepisee.esbiz/pub/binariesreleases/kernellinux_kernel/v2.6.37-112/zImage-2.6.37-112-wilink8.bin.md5 md5sum]) | [http://downloads.igepisee.esbiz/pub/binariesreleases/kernellinux_kernel/v2.6.37-112/modules-2.6.37-112-wilink8.tar.gz modules-2.6.37-112-wilink8] ([http://downloads.igepisee.esbiz/pub/binariesreleases/kernellinux_kernel/v2.6.37-112/modules-2.6.37-112-wilink8.tar.gz.md5 md5sum)]| [http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/compat-wireless-wilink8-0.tar.gz compat-wireless-wilink8-0] ([http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/compat-wireless-wilink8-0.tar.gz.md5 md5sum]) | [http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/ti-connectivity-wilink8-0.tar.gz ti-connectivity-wilink8-0] ([http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/ti-connectivity-wilink8-0.tar.gz.md5 md5sum)]
|}
= Build kernel from sources '''Download''' the latest stable version sources and follow next steps:   wget http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/linux-omap-2.6.37-12.tar.gz tar xzf linux-omap-2.6.37-12.tar.gz cd linux-omap-2.6.37-12 Also, it could download from GIT Repositories ([http://git.isee.biz/ http://git.isee.biz/]) and test the last unstable version at your own risk (see "''Linux mainline tree (development)''" chapter in [[The Linux kernel]]) == Important procedures == * Remove rootfs modules binaries from any previous Kernel* If you switch to another configuration, clean kernel sources with command: make mrproper == igep00x0_defconfig == '''Configure''' Linux kernel for IGEP OMAP3 old Marvell WIFI:  make ARCH=arm igep00x0_defconfig Then '''build''' the kernel and kernel modules. The result will be an ''zImage'' file in arch/arm/boot directory. Execute:   make ARCH=arm CROSS_COMPILE=[your cross compiler] zImage modules For example, if you are using IGEP SDK Yocto Toolchain then you should execute following cmdline:   make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- zImage modules You can '''install''' the kernel image to your target boot   cp arch/arm/boot/zImage /media/boot/zImage You can '''install''' the kernel modules to your target rootfs  make ARCH=arm modules_install INSTALL_MOD_PATH=[path to your target rootfs] == igep00x0_wilink8_defconfig == '''Configure''' Linux kernel for IGEP OMAP3 new WiLink 8 WIFI:  make ARCH=arm igep00x0_wilink8_defconfig Then '''build''' the kernel and kernel modules. The result will be an ''zImage'' file in arch/arm/boot directory. Execute:   make ARCH=arm CROSS_COMPILE=[your cross compiler] zImage modules
Download the latest stable version sources and follow next stepsFor example, if you are using IGEP SDK Yocto Toolchain then you should execute following cmdline:
wget http://downloads.igep.es/sources/linuxmake ARCH=arm CROSS_COMPILE=arm-omappoky-2.6.37.tar.gz tar xzf linux-omapgnueabi-2.6.37.tar.gz cd [kernel version]zImage modules
A generic configuration is provided for all IGEP machines, and You can be used as'''install''' the default bykernel image to your target boot
make ARCH=cp arch/arm CROSS_COMPILE=[your cross compiler] igep00x0_defconfig/boot/zImage /media/boot/zImage
Then build You can '''install''' the kernel with:modules to your target rootfs
make ARCH=arm CROSS_COMPILEmodules_install INSTALL_MOD_PATH=[path to your cross compilertarget rootfs] uImage modules
The result will be an uImage file in archDownload and extract Compat Wireless source:<pre>cd ..wget http://downloads.isee.biz/pub/armreleases/boot directorylinux_kernel/v2. You can install the kernel modules to your target rootfs 6.37-12/compat-wireless-wilink8-0.tar.gztar -xvf compat-wireless-wilink8-0.tar.gz</pre>
Modify the environment file (setup-env-wl18xx-rmd). Change '''KLIB_BUILD''' variable export KLIB_BUILD="Linux directory linux-omap-2.6.37-12"Load the environment file (setup-env-wl18xx-rmd):  source setup-env-wl18xx-rmd Compile the Compat-Wireless modules:  cd compat-wireless-wilink8-0 make KLIB_BUILD=${KLIB_BUILD} modules Remove old mac80211.ko and cfg80211.ko modules:  rm ${ROOTFS}/lib/modules/2.6.37-wilink8/kernel/net/mac80211/mac80211.ko rm ${ROOTFS}/lib/modules/2.6.37-wilink8/kernel/net/wireless/cfg80211.ko Install the compat-wireless modules to your target rootfs. Change '''KLIB''' and '''ROOTFS''' variables  make KLIB_BUILD=${KLIB_BUILD} KLIB=${ROOTFS} install-modules Download Wilink 8 binaries:  wget http://downloads.isee.biz/pub/releases/linux_kernel/v2.6.37-12/ti-connectivity-wilink8-0.tar.gz Copy WiLink 8 binaries to rootfs/lib/firmware:  sudo tar -xvf ti-connectivity-wilink8-0.tar.gz -C /media/rootfs/lib/firmware  == igep00x0_nowifi_defconfig == '''Configure''' Linux kernel for IGEP OMAP3 without WIFI:  make ARCH=arm igep00x0_nowifi_defconfig Then '''build''' the kernel and kernel modules. The result will be an ''zImage'' file in arch/arm/boot directory. Execute:   make ARCH=arm CROSS_COMPILE=[your cross compiler] zImage modules For example, if you are using IGEP SDK Yocto Toolchain then you should execute following cmdline:   make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- zImage modules You can '''install''' the kernel image to your target boot   cp arch/arm/boot/zImage /media/boot/zImage You can '''install''' the kernel modules to your target rootfs  make ARCH=arm modules_install INSTALL_MOD_PATH=[path to your target rootfs]
= Kernel Parameters =
= Layout =
Machine specific files are located in '''arch/arm/mach-omap2/ ''' directory withname '''board-igep*.c. Like ''' :
* '''board-igep0020.c ''': For IGEP0020 machine* '''board-igep0030.c ''': For IGEP0030 machine* '''board-igep0032.c ''': For IGEP0032 machine
Expansion board files, also are located in '''arch/arm/mach-omap2/ ''' directory withname '''exp-*.c. Like ''' :
* '''exp-igep0022.c ''': For IGEP0022 expansion board* '''exp-base0010.c ''': For BASE0010 expansion board* '''exp-ilms0015.c ''': For ILMS0015 expansion board
= Adding New Expansion Boards =
/* Add twl4030 common data */
omap3_pmic_get_config(&twl4030_pdata, TWL_COMMON_PDATA_USB |
 
= Known issues =
 
See http://processors.wiki.ti.com/index.php/AM35x-OMAP35x-PSP_04.02.00.07_Release_Notes#Known_Issues_-_AM.2FDM37x
 
== modules are not installed correctly ==
 
Try to change rootfs owner from root to your username.
<pre> sudo chown <username> -R /media/rootfs</pre>
 
== wlcore: Unknown symbol ==
 
Probably, you didn't erase old module binaries from rootfs. Open IGEP terminal and type:
<pre>depmod -a
depmod -A </pre>
 
Finally reboot the system
= Changelog =
*[http://git.igepisee.esbiz/?p=pub/scm/linux-omap-2.6.git;a=tag;h=a7fcc18d3c24e0b11d945cb8f96df22cf9099617 2016-12-06 Release 2.6.37-12]** Improved wilink8 support*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=tag;h=56ce61fa77402b3d0a0ace13ebe1cc0e75ceefda 2015-10-08 Release 2.6.37-11]** Added wilink8 support to new IGEP0020-RFxx and IGEP0030-RGxx boards*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=a9673378bab87c5a2ffec5f213cf19053c96595e 2014-07-08 Release 2.6.37-10]** Add CONFIG_DEVTMPFS kernel option that is required for newer udev** Update igep00x0_nowifi config options like igep00x0 config options (sync)** Fix: smsc911.c: fix mac0 address test*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=ba382eb78023fe7e06bcf00380bccbc3433f693a 2014-05-22 Release 2.6.37-9]** Fix sprz319 erratum 2.1 (USB)** Add mt9v034 sensor driver** Add mt9p031 sensor driver** Add TWL4030 PWM driver*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=ffcbb9e3d9dac7afbb50bcb77db6b3e581670003 2014-03-11 Release 2.6.37-8]** Add new defconfig without wifi support** Add adhoc WEP functionality for libertas driver** Change use GPMC timmings and configuration for flash*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=85c0be3cbde4bd54503408ae86ab875aea9c1be3 2014-01-31 Release 2.6.37-7]** Add TI wl12xx driver support** EDR Enhanced Drivers for Linux** Fix builds with gcc 4.7*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=8968dc4ec289bbc14dd26bcac6622e9e8d0ccc85 2013-06-10 Release 2.6.37-6]** #2: [feature] Add SPI device feature: allow configuration of CS line behavior to toggle state every transfered word** #85: [request] Add the functionality of a 9-bit UART with userspaces CMSPAR** #86: [request] Fuse module** #87: [bug] musb-hdrc musb-hdrc.0: configured as A device timeout*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=29ce94949c5ab2b850a7b58d4ec008192efa67ed 2012-11-23 Release 2.6.37-5]** #70: Compiling error on menuconfig of power management selection.** #69: Change OMAP3 video layers format, use video driver and change minimum displays.** #29: GFX_FIFO_UNDERFLOW on OMAP3530 when changing system clock speed.** #12: USB OTG only detect device one time (or first usb master plug either first slave plug).*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=72428f5f8fdeaca7c20f0072f426fa52e6db5464 2012-07-19 Release 2.6.37-4]** Fix #026: Add bridging network support.** Fix #019: omapdss DISPC error: GFX_FIFO_UNDERFLOW, disabling GFX.** Fix #021: Linux kernel doesn't detect Ethernet link after boot on OMAP3530 and IGEP0020-RC2.** Fix #027: HDMI standard resolution 720P or 480P it's not working correctly.*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=350181c115d33e2bf724eaef5b53cee960afa192 2012-05-23 Release 2.6.37-3]** Fix PM features.** Return ENODEV if touchscreen device is not found.** Fix SMSC911x issue, wait for the chip to be ready.** Fix MCP251X requesting NRESET gpio.*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=ac74968e3e401e559517211e836749a62a6c4dd2 2012-02-29 Release 2.6.37-2]** base0010: Fix mux for GPIO53** Update defconfig (disable JFFS2 SUMMARY SUPPORT)*[http://git.isee.biz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=db3cb47adf10504d3847d54927de50b2fa94c008 2012-01-19 Release 2.6.37-1]
** Fix NFS root mount option
** Add MADC support
** Add support for Battery Backup
** Fix RS485 bug when transmitting more than 16 bytes
*[http://git.igepisee.esbiz/?p=pub/scm/linux-omap-2.6.git;a=commit;h=b4332e8eedc815383081c3abf9f7a16ae4391ccc Release 2.6.37-0]
**First release for 2.6.37 series
For more information,it is interesting read [[Category:SoftwareThe_Linux_kernel|The Linux kernel article]]previously. [[Category:Linux Kernel]][[Category:How to forge]]
4,199
edits