Outils pour utilisateurs

Outils du site


olimex:kernels

Différences

Ci-dessous, les différences entre deux révisions de la page.


olimex:kernels [2024/02/09 17:10] (Version actuelle) – créée - modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +
 +====== autres sources ======
 +http://www.igorpecovnik.com/2014/11/18/olimex-lime-debian-sd-image/
 +
 +attention pas de LIME A10 ! Que de A20
 +
 +====== Debian image for A13-OLinuXino-LIME with Kernel 3.4.90+ ======
 +Description du process de construction : {{:olimex:a10_lime_kernel_3.4.90_building_description.txt|}}
 +
 +cf doc chez olimex http://olimex.wordpress.com/2014/06/23/a10-olinuxino-lime-debian-build-with-kernel-3-4-90/
 +
 +
 +====== Autres méthode d'avant ======
 +
 +
 +===== Olimex LIME kernel et modules =====
 +
 +  * {{:olimex:uimage.tgz|}} uImage 3.4.79+ script.bin, script.txt et config-3.4.79+
 +  * {{:olimex:lib-modules-3.4.79_.tgz|}}
 +  * {{:olimex:lib-firmware-3.4.79_.tgz|}}
 +
 +
 +
 +===== Olimex préparation des noyaux =====
 +===== A20 =====
 +de 
 +  * http://olimex.wordpress.com/2013/11/05/building-the-ultimate-debian-sd-card-for-linux-with-kernel-3-4-for-a20-olinuxino-micro/
 +  * https://www.olimex.com/wiki/A20-OLinuXino-MICRO
 +  * https://www.olimex.com/forum/index.php?topic=2028.0 modif acces nand
 +
 +===== U-boot =====
 +<code>
 +mkdir A20-U-boot
 +git clone -b sunxi https://github.com/linux-sunxi/u-boot-sunxi.git
 +cd u-boot-sunxi/
 +make A20-OLinuXino_MICRO_config
 +make CROSS_COMPILE=arm-linux-gnueabihf-
 +
 +ls u-boot.bin u-boot-sunxi-with-spl.bin spl/sunxi-spl.bin
 +
 +</code>
 +
 +===== Kernel =====
 +récupérer : {{:olimex:a20_defconfig.txt|}} {{:olimex:sunxi-i2c.patch.txt|}} et les mettre dans le répertoire
 +<code>
 +git clone https://github.com/linux-sunxi/linux-sunxi linux-sunxi
 +cp a20_defconfig linux-sunxi/arch/arm/configs/a20_defconfig
 +cp sunxi-i2c.patch.txt linux-sunxi/sunxi-i2c.patch
 +cd linux-sunxi
 +patch -p0 < sunxi-i2c.patch
 +make ARCH=arm a20_defconfig
 +make ARCH=arm menuconfig  # éventuellement
 +export CCFLAGS="-O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -ffast-math -mfloat-abi=hard"
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 uImage
 +mkdir out
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 INSTALL_MOD_PATH=out modules
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 INSTALL_MOD_PATH=out modules_install
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 INSTALL_MOD_PATH=out firmware_install
 +
 +# au caszou compilation en natif pour bibi
 +make ARCH=arm uImage
 +rm -rf out/*
 +mkdir -p out
 +make ARCH=arm INSTALL_MOD_PATH=out modules
 +make ARCH=arm INSTALL_MOD_PATH=out modules_install
 +make ARCH=arm INSTALL_MOD_PATH=out firmware_install
 +
 +</code>
 +
 +le fichier u-boot avec la partie configuration est dans le a20_kernel_3.4 c'est : ./u-boot-sunxi/u-boot-sunxi-with-spl.bin
 +
 +  dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8
 +
 +le kernel uImage est dans linux-sunxi/arch/arm/boot/
 +
 +les modules sont dans linux-sunxi/out/lib
 +
 +
 +===== A10 Lime =====
 +de http://olimex.wordpress.com/2014/01/15/building-debian-linux-bootable-sd-card-with-hardware-accelerated-video-decoding-and-kernel-3-4-for-a10-olinuxino-lime/
 +
 +===== U-boot =====
 +<code>
 +mkdir a10-LIME-U-boot
 +cd a10-LIME-U-boot
 +git clone -b sunxi https://github.com/linux-sunxi/u-boot-sunxi.git
 +cd u-boot-sunxi/
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- A10-OLinuXino-Lime_config
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
 +cd ..
 +</code>
 +===== Kernel =====
 +récupérer : {{:olimex:a10lime_defconfig.txt|}} , {{:olimex:sunxi-i2c.patch|}} , {{:olimex:a10_sound.patch|}} et les mettre dans le répertoire
 +<code>
 +git clone https://github.com/linux-sunxi/linux-sunxi linux-sunxi
 +cp a10lime_defconfig linux-sunxi/arch/arm/configs/a10lime_defconfig
 +cd linux-sunxi
 +patch -p0 < ../sunxi-i2c.patch
 +patch -p0 < ../a10_sound.patch
 +make ARCH=arm a10lime_defconfig
 +make ARCH=arm menuconfig  # éventuellement
 +export CCFLAGS="-O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -ffast-math -mfloat-abi=hard"
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 uImage 
 +mkdir out
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 INSTALL_MOD_PATH=out modules
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 INSTALL_MOD_PATH=out modules_install
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 INSTALL_MOD_PATH=out firmware_install
 +
 +</code>
 +certaine fois sur la LIME , kernel 3.14 {{:undefined:a10lime_3.14_defconfig.txt|}}
 +<code>
 +make uImage LOADADDR=0x40008000
 +</code>
 +
 +===== Installation de la SD sur la NAND (A20) =====
 +de 
 +https://www.olimex.com/forum/index.php?topic=2028.msg9141#msg9141
 +avec
 +{{:olimex:olinuxino-a20-flashinstall.zip|}}
 +
 +===== Ptits trucs =====
 +lire aussi : 
 +  * http://linux-sunxi.org/Kernel_arguments
 +  * http://linux-sunxi.org/Cedrus
 +
 +recupération de u-boot.bin et sunxi-spl.bin  d'une SD qui marche : ?? a verifier !
 +<code>
 + ?? dd of=u-boot.bin if=/dev/sdc bs=1 seek=32 count=227536
 +?? dd of=sunxi-spl.bin if=/dev/sdc bs=1 seek=8 count=17912
 +dd of=bootsd.bin if=/dev/sdc bs=1 seek=8 count=2039
 +</code>
 +
 +gunzip -c /media/EE1/src/A10/debian_rootfs/mele_debian_armhf_minimal.cpio.gz | cpio -i
 +
 +
 +  * http://rhombus-tech.net/allwinner_a10/hacking_the_mele_a1000/Building_Debian_From_Source_Code_for_Mele/
 +==== boot.cmd pour 512 Mo de RAM et plus de sortie graphique ====
 +
 +<code>
 +setenv bootargs console=ttyS0,115200 sunxi_g2d_mem_reserve=0  sunxi_fb_mem_reser
 +ve=0 sunxi_no_mali_mem_reserve sunxi_ve_mem_reserve=0  root=/dev/mmcblk0p2 rootw
 +ait panic=10
 +fatload mmc 0 0x43000000 script.bin
 +fatload mmc 0 0x48000000 uImage
 +bootm 0x48000000
 +</code>
 +<code>
 +#apt-get install uboot-mkimage
 +mkimage -C none -A arm -T script -d boot.cmd boot.scr
 +</code>
 +
 +{{:olimex:boot.tgz|}}
 +==== xorg ====
 +test xorg.conf pour eviter le décalage du curseur
 +<code>
 +Section "ServerLayout"
 +        Identifier      "Main Layout"
 +        Screen          "Mali Screen"
 +        InputDevice     "Sun4iTouchscreen"
 +EndSection
 +
 +#Section "Device"
 +#       Identifier "Mali FBDEV"
 +#       Driver  "mali"
 +#       Option  "fbdev"            "/dev/fb0"
 +#       Option  "DRI2"             "true"
 +#       Option  "DRI2"             "true"
 +#       Option  "DRI2_PAGE_FLIP"   "true"
 +#       Option  "DRI2_WAIT_VSYNC"  "false"
 +#EndSection
 +
 +Section "Screen"
 +        Identifier      "Mali Screen"
 +#       Device          "Mali FBDEV"
 +        DefaultDepth    24
 +EndSection
 +
 +#Section "DRI"
 +#       Mode 0666
 +#EndSection
 +
 +Section "InputDevice"
 +        Identifier      "Sun4iTouchscreen"
 +        Option          "Device" "/dev/input/event1"
 +        Driver          "tslib"
 +        Option          "ScreenNumber" "0"
 +        Option          "Rotate" "NONE"
 +        Option          "Width" "800"
 +        Option          "Height" "480"
 +        Option          "SendCoreEvents" "yes"
 +EndSection
 +</code>
 +Option "SWCursor" "True"  ??
 +
 +**Décalage du curseur par rapport à la touche, même après un ts_calibrate**
 +
 +de fait ça fonctionnne avec:
 +
 +/usr/share/X11/xorg.conf.d/20-ts.conf
 +<code>
 +Section "InputClass"
 +    Identifier "Sun4i-Touchscreen"
 +    MatchDevicePath "/dev/input/event*"
 +    MatchProduct "sun4i-ts" 
 +    Driver "tslib"
 +        Option          "ScreenNumber" "0"
 +        Option          "Rotate" "NONE"
 +        Option          "Width" "800"
 +        Option          "Height" "480"
 +        Option          "SendCoreEvents" "yes"
 +Section "InputClass"
 +</code>
 +=== Autres sources ===
 +
 +Debian Jessie packages for A10 : http://lauri.võsandi.com/2014/04/debian-jessie-sunxi-packages.html