[Kernel] Project T Kernel for ZTE Axon 7 Mini

Search This thread

TheSSJ

Senior Member
  • Feb 25, 2010
    1,725
    2,246
    Hi guys,

    I know that this forum is not widely used by ZTE Axon 7 Mini owners, but I still want to share my work the kernel used by the stock firmware.
    Most of the parts were of course already based on the work of others, so I will give credits at the end of this thread of course.

    Pre-requisites:
    Unlocked bootloader
    TWRP flashed
    Knowledge you do this all at your own risk! I tested this kernel with my EU model, so I don't know if this will work on the US models, too.

    Features:
    - Based on latest kernel source shared by ZTE (ZTE B2017G Nougat(7.1.1) Kernel(3.10.84))
    - Built with GCC 4.9 toolchain
    - UC to 499MHz for BIG and 403 MHz for LITTLE (thanks to @flar2)
    - OC to 1651 for BIG (again @flar2)
    - Additional governors: yankactive, blu-active, impulse
    - Additional IO schedulers: Sioplus, Zen, FIOPS. Tweaked Row is set as default
    - Additional TCP congestion algorithms with westwood being the default one
    - Approx. 30% faster due to CRC calculation and auditing disabling
    - Sweep2Sleep on the navigation bar
    - frandom RNG
    - Sound Control by @flar2
    - ZRAM using LZ4 optimized for ARM by default
    - Optimized power management driver by @Yank555
    - Native exFAT support without needing fuse @dorimanx)
    - KCAL
    - Vibration control
    - uses higher power CPUs to boot (got roughly 3s faster boot time)
    - Dynamic Fsync
    - Gentle Fair sleepers can be toggled via sysfs and Kernel Adiutor
    - Smaller tweaks

    To do:
    - Switch toolchain
    - Remove "dirty" from the kernel name Apparently I need to push all changes to github before compiling(or recompiling the same kernel as soon as I pushed everything)
    - Set the phone to accept the lower frequencies without having to set this up in Kernel adiutor
    - Alter interactive governor to use full frequency range
    - Add D2TS for screen and fingerprint sensor, S2W
    - Wakelock reductions
    - Maybe BLX, KCAL (even though I don't get the point to implement it) I was curious and did it now, looks nice :)
    - LED and vibration control
    - Switch hotplugging mechanism to Lazyplug, hotplugging is not that energy efficient anymore

    See the attached picture regarding the CPU stats when using yankactive for example :)

    Credits go to:
    @Lord Boeffla @flar2 @dorimanx @Yank555
    Unfortunately I didn't give proper credits on my github, I want everyone to know, that none of the features were designed and written by myself, just adapted to work on our phones!

    Download here:
    https://drive.google.com/drive/folders/0B0mn6OUqIDzBZG1DM1Y4dmxUV2c

    Flash in TWRP, root and every other ramdisk modification will be preserved (Anykernel2 by osmosis)

    Github:
    https://github.com/TheSSJ/tulip_kernel
     

    Attachments

    • Screenshot_2017-11-01-11-39-08.jpg
      Screenshot_2017-11-01-11-39-08.jpg
      237 KB · Views: 1,695
    Last edited:

    TheSSJ

    Senior Member
  • Feb 25, 2010
    1,725
    2,246
    Changelog

    V1.1: Initial version for public release!
    V1.2: KCAL support
    V1.3: Changed boot CPUs to higher power ones, added dynamic Fsync, added Quick Wakeup driver
    V1.4: Gentle Fair Sleepers can be toggled now, ROW scheduler tweaked

    NOTE: in case anyone is wondering why I didn't pick the DevDB projects: as our device is not activated to be used with DevDB, I went with normal threads
     
    Last edited:
    • Like
    Reactions: Askael

    Askael

    Senior Member
    Nov 4, 2011
    181
    27
    Samara
    V1.1: Initial version for public release!


    NOTE: in case anyone is wondering why I didn't pick the DevDB projects: as our device is not activated to be used with DevDB, I went with normal threads
    Hi! Amazing work! Thx for the job.
    Can I use this kernel with AOKP? AOKP has android 7.1.2
     

    TheSSJ

    Senior Member
  • Feb 25, 2010
    1,725
    2,246
    Hi! Amazing work! Thx for the job.
    Can I use this kernel with AOKP? AOKP has android 7.1.2
    I wouldn't exclude this, but as I am running on stock, I can't confirm or deny...
    You could make a backup of your boot and flash it and see what happens, worst thing is that you need to reboot to recovery and restore your backup :)
     
    • Like
    Reactions: Askael

    Askael

    Senior Member
    Nov 4, 2011
    181
    27
    Samara
    V1.1: Initial version for public release!


    NOTE: in case anyone is wondering why I didn't pick the DevDB projects: as our device is not activated to be used with DevDB, I went with normal threads

    I wouldn't exclude this, but as I am running on stock, I can't confirm or deny...
    You could make a backup of your boot and flash it and see what happens, worst thing is that you need to reboot to recovery and restore your backup :)
    Thank you for replay, what governor you use?
     

    tdm

    Inactive Recognized Developer
    Jun 7, 2011
    2,139
    3,666
    Seattle
    You will need to try and see.

    It uses anykernel which is good. But aokp and lineage are on android 7.1.2 while stock is on android 7.1.1. There was at least one kernel api change that may cause problems. But I'm not sure.

    I'm assuming this package has the wlan module also...?

    Hi! Amazing work! Thx for the job.
    Can I use this kernel with AOKP? AOKP has android 7.1.2
     
    Last edited:
    • Like
    Reactions: Askael

    TheSSJ

    Senior Member
  • Feb 25, 2010
    1,725
    2,246
    I'm assuming this package has the wlan module also...?

    You mean the prima wifi stuff I have seen in you github? Honestly I didn't feel the need...does it improve the wifi experience or is it just for making it compatible with LineageOS?
     

    tdm

    Inactive Recognized Developer
    Jun 7, 2011
    2,139
    3,666
    Seattle
    No, I mean the kernel module for wifi, /system/lib/modules/pronto/pronto_wlan.ko. If that doesn't match your kernel, it won't load and you won't have wifi.

    Note stock has a handful of other kernel modules, but I don't think any of them are needed Most look like they are for testing.

    You mean the prima wifi stuff I have seen in you github? Honestly I didn't feel the need...does it improve the wifi experience or is it just for making it compatible with LineageOS?
     

    TheSSJ

    Senior Member
  • Feb 25, 2010
    1,725
    2,246
    No, I mean the kernel module for wifi, /system/lib/modules/pronto/pronto_wlan.ko. If that doesn't match your kernel, it won't load and you won't have wifi.

    Note stock has a handful of other kernel modules, but I don't think any of them are needed Most look like they are for testing.
    Oh, ok...pronto driver is built into the kernel though, all other modules are really for debugging and testing as far as I could gather, so they are not included (and the phone works fine) :)
    @Askael: As for a custom kernel for Lineage/AOKP etc: as I won't have these OS's on my phone I use as my daily driver, I can of course create one, but it is always published as untested, so there is no point IMHO.
     
    • Like
    Reactions: Askael

    Askael

    Senior Member
    Nov 4, 2011
    181
    27
    Samara
    Oh, ok...pronto driver is built into the kernel though, all other modules are really for debugging and testing as far as I could gather, so they are not included (and the phone works fine) :)
    @Askael: As for a custom kernel for Lineage/AOKP etc: as I won't have these OS's on my phone I use as my daily driver, I can of course create one, but it is always published as untested, so there is no point IMHO.
    But we can test this. But if you not want - don't worry! :good:
     

    TheSSJ

    Senior Member
  • Feb 25, 2010
    1,725
    2,246
    I'm building a kernel with many of these features for the LineageOS ROM. Want me to make a thread, and then you can link it for people interested in using it in your OP? Source is here: https://github.com/djkazic/sombrax_kernel

    Hi,
    Feel free to open a new thread :) it is important to push this phone amd its potential as good as possible!
    Development will go on, i still have some items to implement :good:
     
    • Like
    Reactions: Askael

    Askael

    Senior Member
    Nov 4, 2011
    181
    27
    Samara
    You mean a custom kernel for CM builds or an update for this stock kernel?
    For the CM based one I didn't start, although applying the modifications I applied to my kernel should be working


    I was spotted :) It's a great phone, let's get the most out of it
    For this stok kernel
     

    TheSSJ

    Senior Member
  • Feb 25, 2010
    1,725
    2,246
    Updated version uploaded and available on G-Drive, boot time increased by 3s (you take what you can get :) )

    /EDIT: Next version out, small enhancements and adding the possibility to enable/disable gentle fair sleepers
     
    Last edited:
    • Like
    Reactions: rsk0416

    Top Liked Posts

    • There are no posts matching your filters.
    • 7
      Hi guys,

      I know that this forum is not widely used by ZTE Axon 7 Mini owners, but I still want to share my work the kernel used by the stock firmware.
      Most of the parts were of course already based on the work of others, so I will give credits at the end of this thread of course.

      Pre-requisites:
      Unlocked bootloader
      TWRP flashed
      Knowledge you do this all at your own risk! I tested this kernel with my EU model, so I don't know if this will work on the US models, too.

      Features:
      - Based on latest kernel source shared by ZTE (ZTE B2017G Nougat(7.1.1) Kernel(3.10.84))
      - Built with GCC 4.9 toolchain
      - UC to 499MHz for BIG and 403 MHz for LITTLE (thanks to @flar2)
      - OC to 1651 for BIG (again @flar2)
      - Additional governors: yankactive, blu-active, impulse
      - Additional IO schedulers: Sioplus, Zen, FIOPS. Tweaked Row is set as default
      - Additional TCP congestion algorithms with westwood being the default one
      - Approx. 30% faster due to CRC calculation and auditing disabling
      - Sweep2Sleep on the navigation bar
      - frandom RNG
      - Sound Control by @flar2
      - ZRAM using LZ4 optimized for ARM by default
      - Optimized power management driver by @Yank555
      - Native exFAT support without needing fuse @dorimanx)
      - KCAL
      - Vibration control
      - uses higher power CPUs to boot (got roughly 3s faster boot time)
      - Dynamic Fsync
      - Gentle Fair sleepers can be toggled via sysfs and Kernel Adiutor
      - Smaller tweaks

      To do:
      - Switch toolchain
      - Remove "dirty" from the kernel name Apparently I need to push all changes to github before compiling(or recompiling the same kernel as soon as I pushed everything)
      - Set the phone to accept the lower frequencies without having to set this up in Kernel adiutor
      - Alter interactive governor to use full frequency range
      - Add D2TS for screen and fingerprint sensor, S2W
      - Wakelock reductions
      - Maybe BLX, KCAL (even though I don't get the point to implement it) I was curious and did it now, looks nice :)
      - LED and vibration control
      - Switch hotplugging mechanism to Lazyplug, hotplugging is not that energy efficient anymore

      See the attached picture regarding the CPU stats when using yankactive for example :)

      Credits go to:
      @Lord Boeffla @flar2 @dorimanx @Yank555
      Unfortunately I didn't give proper credits on my github, I want everyone to know, that none of the features were designed and written by myself, just adapted to work on our phones!

      Download here:
      https://drive.google.com/drive/folders/0B0mn6OUqIDzBZG1DM1Y4dmxUV2c

      Flash in TWRP, root and every other ramdisk modification will be preserved (Anykernel2 by osmosis)

      Github:
      https://github.com/TheSSJ/tulip_kernel
      2
      I have no wifi in b15 firmware with this kernel.

      Known issue, unfortunately I can't fix this because ZTE didn't upload the newest kernel source

      I wish development of the kernel had continued, I'm still on this little phone.

      Yes, unfortunately I don't have lots of resources left to dedicate to development continuation :(
      If there is a new version of the kernel source (which I doubt) I will upload the next version
      2
      I'm building a kernel with many of these features for the LineageOS ROM. Want me to make a thread, and then you can link it for people interested in using it in your OP? Source is here: https://github.com/djkazic/sombrax_kernel
      2
      But we can test this. But if you not want - don't worry! :good:
      Will think about it :)

      Version 1.2 is out, now with KCAL screen control support!
      1
      Changelog

      V1.1: Initial version for public release!
      V1.2: KCAL support
      V1.3: Changed boot CPUs to higher power ones, added dynamic Fsync, added Quick Wakeup driver
      V1.4: Gentle Fair Sleepers can be toggled now, ROW scheduler tweaked

      NOTE: in case anyone is wondering why I didn't pick the DevDB projects: as our device is not activated to be used with DevDB, I went with normal threads