Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

remsnet

Members
  • Joined

  • Last visited

Reputation Activity

  1. Like
    remsnet got a reaction from petrmaje in HOWTO: manual kernel build from igors lib   
    I am use igors lib to get an suffucently patches kernel source  for bana Pi R1
    and for test builds i use this script for my unattened kernel builds.
     
    This allows directly install an fresh kernel and make an backup of the old kernel.
     
    my custom kernel .config is then at $REL stored and used .
     
     
    usage path : run igors compile.sh ,
                        wait till the source download done ,
                       do an CRTL-C once the kernel wants to compile from his lib
                  
    then i.e :
     
    fw1 /t/GIT/output/linux-mainline # cp .config /t/GIT/.test5
    fw1 /t/GIT/output/linux-mainline # /t/GIT/build.sh
    Usage: /t/GIT/build.sh {build|timestamp|clean|install|install_uImage|install_dtbs|install_modules|install_uImage|install_headers|kversion|backup}
    fw1 /t/GIT/output/linux-mainline # /t/GIT/build.sh build
     
     
     
    --------------------code---------------------------------------------------------
    #!/bin/bash

    # http://piprojects.net/de/banana-pi-kernel-3-18-rc-bauen/
    #
    # debug
    #set -x
    #
    #
    GIT=/t/GIT
    OUT=$GIT/output
    SOURCES=$OUT/linux-mainline
    INST=/usr/bin/install

    REL=$GIT/.test5



    timestamp() {
         D=`date +"%Y%M%d_%H%M"`
    }    


    cp_cfg() {
        cd $SOURCES
        test -f $REL && cp -p $REL .config

    }

    k_v() {
            #
            cd $SOURCES
                    cp_cfg
            make oldconfig
            make modules_prepare
                    kversion=$(make -s kernelrelease)
                    echo $kversion
    }

    clean_kernel() {
            #
            cd $SOURCES
        #
        test -f .config && cp .config $GIT/.config-$kversion-$timestamp
        make clean
        make distclean
    }

    backup_boot() {
        test -d /boot.bak && rm -rf /boot.bak
        test -d /boot.bak || mkdir /boot.bak
        cd /boot
        cp -rp ./* /boot.bak
        cd
    }


    backup_dtb() {
                cp -rp /boot/dtb /boot.bak/
                    #
                    test -f /boot/dtb && rm -rf /boot/dtb
                    test -d /boot/dtb && rm -rf /boot/dtb
                    test -d /boot/dtb || mkdir -p /boot/dtb

    }

    compile_uImage() {
        #
        cd $SOURCES
        clean_kernel
        k_v
        #
        # https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
        CPPFLAGS="-Ofast"
        CFLAGS="-Ofast"
        #
        #
         make -j3 dtbs modules
         make -j3 LOADADDR=0x40008000 uImage
        #
        timestamp
    }

    compile_docs() {
        cd $SOURCES
        k_v
        #
        make mandocs
        #
        timestamp
    }

    install_modules() {
        cd $SOURCES
        #
        make modules_install INSTALL_MOD_PATH=/
        #
        timestamp
    }

    install_dtbs() {
        #
            cd $SOURCES
            k_v
        #
        backup_dtb
        
        if [ -d /boot/dtb ] && [ -d /boot.bak/dtb ]; then
            test -d /boot/dtb || mkdir -p /boot/dtb
                cp -rp arch/arm/boot/dts/*.dtb /boot/dtb
        else
            test -d /boot/dtb || mkdir -p /boot/dtb
            cp -rp /boot/dtb /boot.bak/
            #
            cp -rp arch/arm/boot/dts/*.dtb /boot
        fi
    }

    install_BPi_dtbs() {

            cd $SOURCES
        #
        backup_dtb
        #
        echo "Installing New sun7i-a20-bananapi.dtb "
            $INST -m 755 arch/arm/boot/dts/sun7i-a20-bananapi.dtb /boot/sun7i-a20-bananapi.dtb
        echo done
        ls -la /boot/sun7i-a20-bananapi.dtb
    }

    install_headers() {
            cd $SOURCES
            k_v
            make  headers_install ARCH=armv7l INSTALL_HDR_PATH=/usr/include
    }

    install_docs() {
            cd $SOURCES
            k_v
            make installmandocs
    }


    install_BPi_uImage() {
        #
        cd $SOURCES
        #
        backup_boot
        #
        k_v
        #
        echo "Installing New uImage"
        $INST -m 755 arch/arm/boot/uImage /boot/uImage
        $INST -m 755 arch/arm/boot/Image /boot/kernel.img

        install_BPi_dtbs
        #
        echo "Installing New uImage"
        $INST -m 644 .config /boot/config-$kversion

        echo "Installing New symvers-$kversion "
        $INST -m 644 ./Module.symvers  /boot/symvers-$kversion
        echo ""
        echo "done"
        ls -la /boot/symvers-$kversion /boot/kernel.img /boot/uImage /boot/config-$kversion /boot/sun7i-a20-bananapi.dtb
        echo ""
    }

    install_kernel() {
        #
        backup_boot
        #
        install_modules
        #
        install_BPi_dtbs
        #
        install_uImage
        #
        install_headers
        #
        install_docs
    }

    build_deb-pkg() {
        #
                #
            cd $SOURCES
            #
            backup_boot
            #
            k_v
        #
        #http://debian-handbook.info/browse/de-DE/stable/sect.kernel-compilation.html
        fakeroot-u   make deb-pkg
    }

    build_targz-pkg() {
            #
                    #
            cd $SOURCES
            #
            backup_boot
            #
            k_v
            #
            fakeroot-u make targz-pkg
    }


    case "$1" in
    build)    
        echo "Kernel build"
        compile_uImage
        echo "Kernel build done"
        timestamp
        
        ;;
    clean)    
        echo "Kernel cleanup"
        clean_kernel
            ;;
    install)
        echo "install all"
        install_kernel
            ;;
    install_uImage)
        echo "install install_uImage"
        install_BPi_uImage
            ;;
    install_dtbs)
        echo "install dtbs"
        install_BPi_dtbs
            ;;
    install_modules)
        install_modules
            ;;
    timestamp)
        timestamp
        echo "timestamp $D"
        ;;
    kversion)
        k_v
        ;;
    backup)
        backup_boot
        ;;

    *)    echo "Usage: $0 {build|timestamp|clean|install|install_uImage|install_dtbs|install_modules|install_uImage|install_headers|kversion|backup}"
            ;;
    esac
    exit 0
     
  2. Like
    remsnet got a reaction from Decker in Reason for disabled OTG   
    my answer for OTG disabling on OLD  kernels :
     
    any ARM kernel below 3.11 known to have a lot of harsch bugs  that make USB useless , system unstable.
    so STOP use kernel 3.4.
     
    - 0 read CERT allerts for OUTdated kernels
     - 0.1 most OTG bugs had been beed 2 years ago on ARM6 & 7  with kernel 3.12.x and up on rasberry PI's
      see at git //github.com/raspberrypi/linux.git for OTG armhf patches.
     
    -1 update kernel
       Kick the old 3.4.x kernels of your desk and servers.
     
     use https://github.com/igorpecovnik/lib, with
    KERNEL_ONLY="yes" and KERNEL_CONFIGURE="no" re-enable complete USB stuff , as modules , INCLUDE OTG
     
    - 2 if custom kernel modules , port them , give igor patches .
  3. Like
    @dear Igior and others
     
     
    My R1 fw1 run fine past 2 month with the 3.19.3. now its time to move to 4.0.x

    Igor - many thanks for KERNEL_CONFIGURE at your scripting implementing .
    This shortcut my work with automated rebuild kernel  an bit  -- but not fully.
     
    I have the need to been able to push my own kernel .config into your https://github.com/igorpecovnik/lib in an automated way.

    But how about to push an custom .config into that?
    welll ... My suggestion are here top add i.e at your compile.sh : KERNEL_CUSTOM_CONFIG="/path/file"
     
     
    if file env set , use it instead from default patched kernel .config

    How you think about this Idea ?

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.