A collection of command line tools for ARM devices with Allwinner SoCs.

Overview

sunxi-tools

License Build Status Releases Commits

Copyright (C) 2012 Alejandro Mery [email protected]
For a full list of contributors, see this link or use the command git shortlog -se --no-merges.

Command line utilities to work with devices based on Allwinner SoCs: sun4i, sun5i, ... - that's why the 'x' in the package name.

sunxi-fexc

.fex file (de)compiler

Usage: ./sunxi-fexc [-vq] [-I <infmt>] [-O <outfmt>] [<input> [<output>]]

infmt:  fex, bin  (default:fex)
outfmt: fex, bin  (default:bin)

bin2fex

compatibility shortcut to call sunxi-fexc to decompile a script.bin blob back into .fex format used by Allwinner's SDK to configure the boards.

fex2bin

compatiblity shortcut to call sunxi-fexc to compile a .fex file into the binary form used by the legacy 3.4 kernel ("linux-sunxi").

sunxi-fel

script interface for USB communication with the FEL handler built in to the CPU. You usually activate FEL mode by pushing the uboot / recovery button at poweron, or by having your device "fail over" to FEL when no other boot option is available. See http://linux-sunxi.org/FEL/USBBoot for a detailed usage guide.

When called with no arguments, sunxi-fel will display a short usage summary.

Note: Unless you select a specific device using the --dev or --sid options, the tool will access the first Allwinner device (in FEL mode) that it finds. You can print a list of all FEL devices currently connected/detected with ./sunxi-fel --list --verbose.

fel-gpio

Simple wrapper (script) around sunxi-pio and sunxi-fel to allow GPIO manipulations via FEL

fel-sdboot

ARM native sdcard bootloader forcing the device into FEL mode

uart0-helloworld-sdboot

ARM native sdcard bootloader, which is only printing a short "hello" message to the UART0 serial console. Because it relies on runtime SoC type detection, this single image is bootable on a wide range of Allwinner devices and can be used for testing. Additionally, it may serve as a template/example for developing simple bare metal code (LED blinking and other similar GPIO related things).

sunxi-pio

Manipulate PIO registers/dumps

sunxi-nand-part

Tool for manipulating Allwinner NAND partition tables

sunxi-nand-image-builder

Tool used to create raw NAND images (including boot0 images)

jtag-loop.sunxi

ARM native boot helper to force the SD port into JTAG and then stop, to ease debugging of bootloaders.

sunxi-bootinfo

Dump information from Allwinner boot files (boot0 / boot1)

--type=sd	include SD boot info
--type=nand	include NAND boot info (not implemented)

phoenix_info

gives information about a phoenix image created by the phoenixcard utility and optionally extracts the embedded boot code & firmware file from their hidden partitions.

sunxi-meminfo

Tool for reading DRAM settings from registers. Compiled as a static binary for use on android and other OSes. To build this, get a toolchain and run:

make CROSS_COMPILE=arm-linux-gnueabihf- sunxi-meminfo

sunxi-script_extractor

A simple tool, which can be executed on a rooted Android device to dump the script.bin blob from RAM via reading /dev/mem. To build this, get a toolchain and run:

make CROSS_COMPILE=arm-linux-gnueabihf- sunxi-script_extractor

Building

Compilation requires the development version of libusb-1.0 (include header and library) to be installed for sunxi-fel. Unless you explicitly pass LIBUSB_CFLAGS and LIBUSB_LIBS to the make utility, pkg-config is also needed. Development versions of zlib and libfdt are also required.

To install the dependencies on Ubuntu 20.04 using package manager:

sudo apt install libusb-1.0-0-dev libz-dev libfdt-dev

Available build targets:

  • make tools builds tools that are useful on the host. This is what most people will want, and our default target (when simply using make).

  • make target-tools builds tools that are intended for the target (Allwinner SoC), using a cross-compiler. The Makefile will try to auto-detect a suitable toolchain prefix, and falls back to arm-none-eabi- otherwise. If needed, you may override this by explicitly setting CROSS_COMPILE.
    Hint: When compiling 'natively' on the target platform you may simply use an empty toolchain prefix here (make target-tools CROSS_COMPILE= or make all CROSS_COMPILE=).

  • make all builds both tools and target-tools.

  • make install-tools builds tools and then copies/installs them to a filesystem location. The destination is affected by settings for DESTDIR, PREFIX and possibly BINDIR. For details, please refer to the Makefile. You may use make install as a shortcut for this.

  • make install-target-tools builds target-tools and then copies/installs them to a filesystem location selected by DESTDIR, PREFIX and possibly BINDIR - see make install-tools above.

  • make install-all builds and installs both tools and target-tools.

  • make misc builds miscellaneous (host) utilities that are not part of our 'standard' suite. Currently this means phoenix_info and sunxi-nand-image-builder.

  • make install-misc builds misc and installs the resulting binaries.

License

This software is licensed under the terms of GPLv2+ as defined by the Free Software Foundation, details can be read in the LICENSE.md file.

Issues
  • Use sunxi-fel to boot multiple devices in parallel

    Use sunxi-fel to boot multiple devices in parallel

    Maybe I simply miss something (like the sunxi-fel's progress bar I've not noticed for a long time). We changed our build process to be able to do FEL/NFS boot and I wanted now attach up to 4 sunxi boards to my new build host to be able to test them in parallel.

    I attached two and get:

    [email protected]:~# sunxi-fel -v ver
    AWUSBFEX soc=00001680(H3) 00000001 ver=0001 44 08 scratchpad=00007e00 00000000 00000000
    
    [email protected]:~# lsusb | grep Onda
    Bus 008 Device 002: ID 1f3a:efe8 Onda (unverified) V972 tablet in flashing mode
    Bus 003 Device 002: ID 1f3a:efe8 Onda (unverified) V972 tablet in flashing mode
    

    Is there already the possibility to specify bus/device ID and is sunxi-fel prepared to be run in multiple instances at the same time?

    enhancement 
    opened by ThomasKaiser 25
  • fel: relax SCTLR check

    fel: relax SCTLR check

    On a H2+ (Orange Pi Zero), if I enter fel mode by entering "go 0xFFFF0020" on u-boot cmd line, then sunxi-fel fails with this error:

    "Unexpected SCTLR (00C5287A)"

    This does not happen when I enter fel mode directly on power-on (no sd card for eg).

    I've attempted to remove this check and sunxi-fel can work fine without it (tested uboot command successfully).

    I suggest SCTLR check is relaxed.

    opened by nunojpg 19
  • Fixes and adding a

    Fixes and adding a "Github Actions" file to replace broken Travis CI

    Some fixes for issues I stumbled upon:

    • GCC 11 issues a warning for some wrongly annotated parameter.
    • The FEX compiler cannot deal with '-' and '/' characters in section and key names. This is replacing PR #103, which had an issue that I fixed.
    • make check is broken, due to changes in mainline sunix-boards.git HEAD, which it downloads. I issued PR 70 there, but meanwhile carry a patch applied to the downloaded zip file. This can hopefully removed soon.
    • Travis CI seems to be broken (in technical and administrative ways), see the commit message. Replace it with a Github Actions file to get some CI coverage back.

    Please merge, and consider making a v1.5 release.

    opened by apritzel 15
  • sunxi-tools 1.4 doesn't install sunxi-nand-image-builder

    sunxi-tools 1.4 doesn't install sunxi-nand-image-builder

    sunxi-tools 1.4 doesn't install sunxi-nand-image-builder.

    I'm packaging sunxi-tools for Guix and it won't install sunxi-nand-image-builder that way. Did you mean to leave it off? Or is it supposed to go in TOOLS ?

    opened by daym 15
  • fexc fixes

    fexc fixes

    I'm currently experimenting with functional tests that do a "fex2bin + bin2fex cycle" on all FEX files from sunxi-boards. In doing that, two minor problems with the current code showed up. This pull request addresses those.

    fexc reviewed 
    opened by n1tehawk 12
  • Add new uart0-helloworld-sdboot.sunxi bootable test image

    Add new uart0-helloworld-sdboot.sunxi bootable test image

    This is a universal bootable image, which just prints a hello message on UART0. For example, it is useful as a test payload when debugging the SPI boot functionality.

    Still no support for A23, A33, A83T and A80, because I don't have any of these devices to test.

    Patch revision v1 (53f7f146bed21531481185b154dc62ed80ad064c).

    enhancement reviewed 
    opened by ssvb 12
  • fel: Implement

    fel: Implement "rmr" commands to force warm reset into AArch32/AArch64

    See also: http://irclog.whitequark.org/linux-sunxi/2016-05-23#16539174

    The idea is stuff like sunxi-fel -v spl ${SPL} write 0x44000 ${ATF} rmr64 0x44000, possibly augmented by suitable (64-bit) U-Boot and kernel binaries (or u-boot-with-spl.bin in place of ${SPL}).

    A first test on Pine64 with a debug ATF kindly provided by @apritzel was successful, and demonstrated smooth transition to pure 64-bit code.


    Changes in v1: Initial version

    Changes in v2:

    • Do not expose any 32-bit functionality (reset32 into AArch32) for now; we first need to better understand the requirements and implications.
    • Renamed rmr64 command to reset64.
    reviewed 
    opened by n1tehawk 11
  • Support for V536

    Support for V536

    Hi, I used sunxi-fel too to communicate with V536 based CPU but seems it's not fully supported as I'm getting:

     sudo ./sunxi-fel spiflash-info
    Warning: no 'soc_sram_info' data for your SoC (id=1816)
    SPI support not implemented yet for 0 ((null))!
    [email protected]:$ sudo ./sunxi-fel ver
    Warning: no 'soc_sram_info' data for your SoC (id=1816)
    AWUSBFEX soc=00001816(unknown) 00000001 ver=0001 44 08 scratchpad=00027e00 00000000 00000000
    [email protected]:$ sudo ./sunxi-fel sid
    Warning: no 'soc_sram_info' data for your SoC (id=1816)
    SID registers for your SoC (0x1816) are unknown or inaccessible.
    
    

    So seems support is missing? Is there anything I can help with to add support? Thanks.

    opened by nandra 10
  • sunxi-tools 1.4 make fails when building meminfo

    sunxi-tools 1.4 make fails when building meminfo

    $ make TARGET_TOOLS=meminfo
    ...cc -g -O0 -Wall -Wextra  -std=c99 -D_POSIX_C_SOURCE=200112L -D_BSD_SOURCE -D_DEFAULT_SOURCE -Iinclude/    meminfo.c Makefile common.h version.h   -o meminfo
    ....Makefile: file not recognized: File format not recognized
    

    That is because we add Makefile, common.h and version.h as dependencies to all the tools (which I think is good).

    However, the entry for sunxi-meminfo says:

    sunxi-meminfo: meminfo.c
            $(CROSS_COMPILE)gcc -g -O0 -Wall -static -o [email protected] $^
    

    And $^ will pass the Makefile to the compiler - which will barf.

    I'd pass $<

    Same for sunxi-script_extractor and sunxi-fel and the generic sunxi-% rule.

    opened by daym 10
  • Extend continous integration by adding tests framework

    Extend continous integration by adding tests framework

    My goal for this series is to implement automated functional tests for sunxi-fexc, to ensure that all .fex files from the sunxi-boards repository can be compiled to binary format (fex2bin) and decompiled back (bin2fex) from .bin sucessfully.

    I'll gradually amend the pull request, to check that the Travis CI status is fine after each commit.


    v1: Initial version

    needs review 
    opened by n1tehawk 10
  • fel-sdboot: Fix header corruption workaround

    fel-sdboot: Fix header corruption workaround

    Now that we have a better understanding of what's causing the issue that prevented entering FEL sometimes, we can adjust the workaround code to a proper solution.

    This is related to #48.


    Changes in v1: Initial version

    Changes in v2:

    • Rewrote the code in assembly, side-stepping the issues brought up in the discussion below
    • Updated binary bin/fel-sdboot.sunxi

    Changes in v3:

    • Added "Reviewed-by:" line, and squashed with the updated binary into a single commit
    reviewed 
    opened by n1tehawk 7
  • Fit image introduction breaks building for windows

    Fit image introduction breaks building for windows

    Hi, I'm able to compile and run sunxi-fel on 32bit windows including commit #5541673db88f7a0182738e514665eb908738387a After that, with the fit image support merge i cant compile anymore. Compiler has issues with fit_image.c and some libfdt references:

    fit_image.c: undefined reference to fdt_getprop fdt_get_property fdt_path_offset fdt_subnode_offset fdt_get_property fdt_path_offset fdt_first_subnode fdt_get_property fdt_next_subnode fdt_get_property fdt_first_subnode fdt_subnode_offset fdt_get_property

    Any advice on how to solve this? I'm compiling with mingw-w32 under linux and with msys2 also under windows. same results.

    opened by sgufa 0
  • T113 burn packed image?

    T113 burn packed image?

    Is there a way to write SP-NOR packed image with sunxi-fel or other source available tool? We tried to build it for ARM armv7l (A20) armbian and when try to burn: sunxi-fel -p -v spiflash-write 0 ./t113_linux_evb1_auto_nor_uart0_nor.img we get: SPI support not implemented yet for 0 ((null))! Any other way of doing this from armbian A20 linux?

    opened by thevirtualdj 3
  • Error: unknown or unhandled Soc: 0x1667 on Allwinner A33 device

    Error: unknown or unhandled Soc: 0x1667 on Allwinner A33 device

    The device i have isn't using the fex format. (i think) (somehow) I keep getting this error for some reason and I am wondering why. I really need this to work as theres no UART and FEL button only initializes boot0 and boot1 never gets initialized even with SD image

    if theres any info you need from me to figure this out please let me know

    opened by Tryzen-0 1
  • Re-implement the FEL tool, support RISC-V D1/F133 chip, support burning spi nor flash and spi nand flash

    Re-implement the FEL tool, support RISC-V D1/F133 chip, support burning spi nor flash and spi nand flash

    https://github.com/xboot/xfel

    The supported chip lists.

    extern struct chip_t a10;
    extern struct chip_t a13_a10s_r8;
    extern struct chip_t a20;
    extern struct chip_t a23;
    extern struct chip_t a31;
    extern struct chip_t a33_r16;
    extern struct chip_t a40i_r40;
    extern struct chip_t a64;
    extern struct chip_t a80;
    extern struct chip_t a83t;
    extern struct chip_t d1_f133;
    extern struct chip_t f1c100s_f1c200s_f1c500s;
    extern struct chip_t h2_h3;
    extern struct chip_t h5;
    extern struct chip_t h6;
    extern struct chip_t h616;
    extern struct chip_t r328;
    extern struct chip_t r329;
    extern struct chip_t t507;
    extern struct chip_t v3s_s3;
    extern struct chip_t v831;
    
    opened by jianjunjiang 1
  • usb_bulk_send() ERROR -7: Operation timed out on Raspberry PI 3 B+

    usb_bulk_send() ERROR -7: Operation timed out on Raspberry PI 3 B+

    When trying to boot from FEL mode on a perfectly working setup (cable and board) from a Raspberry PI 3B+ board, timeout happen:

    
    [email protected]:~/sunxi-tools-1 $ ./sunxi-fel  ver
    AWUSBFEX soc=00001667(A33) 00000001 ver=0001 44 08 scratchpad=00007e00 00000000 00000000
    
    [email protected]:~/sunxi-tools-1 $ ./sunxi-fel -v uboot u-boot-sunxi-with-spl.bin 
    Stack pointers: sp_irq=0x00002000, sp=0x00005E08
    MMU is not enabled by BROM
    => Executing the SPL... done.
    Writing image "U-Boot 2018.05 for sunxi board", 549287 bytes @ 0x4A000000.
    usb_bulk_send() ERROR -7: Operation timed out
    
    

    According to this thread, the issue may be related to the maximum transfert block size. Indeed changing from 512kib to 128kib fixes the issue.

    
    [email protected]:~/sunxi-tools-1 $ ./sunxi-fel -v uboot u-boot-sunxi-with-spl.bin 
    Stack pointers: sp_irq=0x00002000, sp=0x00005E08
    MMU is not enabled by BROM
    => Executing the SPL... done.
    Writing image "U-Boot 2018.05 for sunxi board", 549287 bytes @ 0x4A000000.
    Starting U-Boot (0x4A000000).
    [email protected]:~/sunxi-tools-1 $ 
    
    
    opened by studiofuga 1
  • usb_bulk_send() ERROR -4: No such device

    usb_bulk_send() ERROR -4: No such device

    Hello, I'm trying to boot new custom board with A64 via USB-OTG with this script (sunxi-fel v1.4.2-110-g7a6a222 compiled from source). New board uses LPDDR3, the previous board uses normal DDR3, so I'm using different SPL for each board.

    sunxi-fel -v  $DEV \
            spl $SPL \
            write 0x44000 bl31.bin \
            write 0x4a000000 u-boot.bin \
            write 0x43100000 my.env \
            write 0x4FC00000 boot.scr \
            write 0x40080000 Image \
            write 0x4FE00000 live-image.cpio.gz.bin \
            write 0x4FA00000 sun50i-a64.dtb \
            reset64 0x44000
    

    The script works on the previous boark OK. On the new one I'm getting usb_bulk_send() ERROR -4: No such device (it may have been disconnected) error. Output on PC:

    Image Name:   
    Created:      Thu Jan 21 08:12:45 2021
    Image Type:   ARM Linux Script (uncompressed)
    Data Size:    193 Bytes = 0.19 KiB = 0.00 MiB
    Load Address: 00000000
    Entry Point:  00000000
    Contents:
       Image 0: 185 Bytes = 0.18 KiB = 0.00 MiB
    Image Name:   TestLinux initramfs root
    Created:      Thu Jan 21 08:12:45 2021
    Image Type:   ARM Linux RAMDisk Image (gzip compressed)
    Data Size:    52587486 Bytes = 51354.97 KiB = 50.15 MiB
    Load Address: 00000000
    Entry Point:  00000000
    Stack pointers: sp_irq=0x00012000, sp=0x00015E08
    MMU is not enabled by BROM
    => Executing the SPL... done.
    Passing boot info via sunxi SPL: script address = 0x43100000, uEnv length = 8
    Passing boot info via sunxi SPL: script address = 0x4FC00000, uEnv length = 0
    usb_bulk_send() ERROR -4: No such device (it may have been disconnected)
    

    Otuptut from UART0:

    U-Boot SPL 2018.11-00009-g4edd8c0427 (Dec 06 2018 - 01:23:58 +0000)
    DRAM: 1024 MiB
    Trying to boot from FEL
    
    

    I'm not sure if it can be bug in sunxi-fel or electrical issue on the new board (voltage drop). Do you have any advice?

    opened by filipkotoucek 2
Releases(v1.4)
  • v1.4(Oct 26, 2016)

    A summary of the most significant changes since v1.3:

    • We've been build-testing successfully on Travis CI for quite a while now, including automated checking of new pull requests.
    • sunxi-fel has received many fixes, and gained several new features: progress indicator, some new commands, and recently the ability to affect the U-Boot environment (variables).
    • Some bugfixes were made in the .fex utilities (sunxi-fexc/bin2fex/fex2bin).
    • @ssvb implemented a UART "hello world" program that can serve as an example for "bare metal" programming of Allwinner SoCs.
    • A sunxi-nand-image-builder utility by @bbrezillon to prepare "raw" NAND images.

    A complete list of changes (excluding merge commits) since v1.3:

    Bernhard Nortmann (58):
          fel: Introduce progress framework
          fel: refactor aw_fel_write()
          fel: extend usb_bulk_send() for progress updates
          fel: implement simple progress bar for larger transfers
          fel: extend progress display with transfer rate and ETA
          fel: Add file_size() and factor out a reusable file_upload()
          fel: implement "write-with-progress" and "multiwrite"
          fel: support FEL progress gauge via dialog utility
          fel: support updating the caption for "dialog --gauge"
          fel: bugfix - revert autostart change from d99d59c
          fel: unify handling of "prefix"-type command line arguments
          fel: fix memory leak, properly shut down USB library
          fel: support selection of specific USB bus and device number
          fel: Do a clean exit(0) after printing usage help
          fel: Simplify hexdump() single character output, using putchar()
          fel: Use initializers for aw_usb_request and aw_fel_request
          fel: Remove surplus colons on perror() messages
          fexc: Improve script_decompile_bin() safeguards
          fexc: Regroup code in script_decompile_bin()
          fel: Fix a possible format/conversion error in aw_write_buffer()
          fel: Convert "needs_l2en" to boolean type
          Add Travis CI configuration file
          fel: Introduce helper function for reporting libusb errors
          Replace endian_compat.h with portable_endian.h
          Makefile: Have portable_endian.h properly expose all functions
          nand-part: Avoid Linux-only ioctl() on other platforms
          Rename README to display it as markdown
          Some markdown formatting for proper display of README.md
          travis-ci: Extend build matrix, disable email notifications
          Move list declarations from common.h into a separate list.h
          Get rid of two "unused parameter" warnings
          fexc: Clarify intent of opt_string adjustment
          Makefile: Provide a way to pass explicit _NETBSD_SOURCE
          README: Improve on (markdown) formatting
          phoenix_info: avoid -Wsometimes-uninitialized compiler warning
          fel: Avoid -Wunused-variable (iface_detached) on non-Linux platforms
          fel: Silence possible compiler warnings on "end of table" markers
          travis-ci: Be more strict on build checks
          fel: Add "readl" and "writel" commands
          fel: add "sid" command to print SID (128-bit key) on supported SoCs
          Makefile: Add "binfiles" target and simplify rule sets
          fel: Cosmetic fixes
          fexc: Don't fail silently on parse error
          fexc: Fix thinko in script decompiler
          fexc: More relaxed version data check in script_bin.c
          fexc: Warn when decompiling a malformed section entry (key string)
          fexc: Ignore lines starting with ':' when compiling .fex
          fel: Implement "reset64" command to force warm reset into AArch64
          fel-sdboot: Fix header corruption workaround, implement in assembly
          Add support for auto-updated version information
          fel: bugfix: aw_fel_writel_n() transfers need to do endian conversion
          Convert license file to Markdown syntax
          Some minor adjustments in README.md
          fel: Add the ability to pass uEnv-style data via FEL (#60)
          Have programs display version information in their usage help
          Add a release (version) badge to README.md
          fel: Minor fixup - rename "progress" to "callback" for clarity
          Prepare release v1.4
    Boris Brezillon (5):
          Add a tool to generate raw NAND images
          nand-image-builder: Fix the copyright header
          nand-image-builder: Add error messages to check_image_info()
          nand-image-builder: Rework the help context
          nand-image-builder: Fix --help/-h option
    Emmanuel Vadot (1):
          Fix building on FreeBSD
    Hans de Goede (1):
          script_extractor: Remove unnecessary size argument
    Jens Kuske (2):
          fel: only read MMU control registers if MMU is enabled
          fel: add fel spl support for Allwinner A80
    Justin Swartz (2):
          Makefile: Add sunxi-script_extractor target
          README: Cross-compilation examples
    Lourens Rozema (1):
          fel: Add release USB interface to allow proper operation on Mac OS X.
    Siarhei Siamashka (12):
          fel: Helper functions for reading/writing ARM coprocessor registers
          fel: Support for enabling MMU after running SPL on new SoC variants
          fel: Enable MMU on Allwinner-H3 to improve FEL transfer speed
          fel: Move the temporary scratch buffer under the IRQ stack
          Fix compatibility with Linaro toolchains for building ARM binaries
          fel: Move backup area to higher addresses in SRAM on A10/A13/A20
          fel: Rename the backup buffers which use AR100 (OpenRISC) SRAM
          fel: Move the backup storage to the SRAM B on A31
          fel: Move the backup storage to the SRAM section A1 on H3
          fel-sdboot.sunxi: Add support for A64 and A80
          fel: Add fel spl command support for Allwinner A64
          Add new uart0-helloworld-sdboot.sunxi bootable test image
    howientc (1):
          fel: Improve file_upload() when no progress callback is passed
    
    Source code(tar.gz)
    Source code(zip)
  • v1.3(Nov 20, 2015)

    A summary of the most significant changes since v1.2:

    • The command line tools got "sunxi-" prefix to match the renames already done by Debian and Fedora sunxi-tools packagers.
    • Added support for new "spl" and "uboot" commands in the "sunxi-fel" tool, which allow booting standard U-Boot images over USB. More information and detailed instructions can be found at http://linux-sunxi.org/FEL/USBBoot
    • Added a new meminfo tool (based on https://github.com/maxnet/a10-meminfo from @maxnet). It allows to retrieve the information about the DRAM controller configuration when run on Allwinner devices.

    A complete list of changes since v1.2:

    Andrey Kosteltsev (1):
          fixed issue #29: bad if test?
    Bartosz J (1):
          Fix issue #25: - Omit SCRIPT_VALUE_TYPE_NULL entries with no key name
    Bernhard Nortmann (10):
          sunxi-tools: extend fel utility to handle SPL + U-Boot binary
          sunxi-tools: prevent possible out-of-bounds memory access
          sunxi-tools: make "uboot_autostart" local instead of global
          fel: fix typo
          fix compiler warnings due to deprecated _BSD_SOURCE
          fel: refactor image type detection/query
          fel: implement persistent sram_info information
          fel: add a mechanism to provide boot information via FEL
          sunxi-tools: some trivial fixes
          sunxi-tools: make use of proper boolean data types
    Chen-Yu Tsai (2):
          fel: Add A80 SoC ID
          fel: Detect FEL mode bulk transfer endpoint addresses at startup
    Floris Bos (1):
          meminfo: Initial upload
    Hans de Goede (1):
          Add fel spl support for A23
    Ian Campbell (6):
          Add copyright headers to various files.
          usb-boot: Trivial typo fix s/fint/find
          fel-to-spl-thunk.S: Only depend on binutils.
          Makefile: Prefix most tools with sunxi-
          Makefile: Split out target tools rules
          Makefile: Add an install rule
    Luc Verhaegen (18):
          fexc: add some sanity checking to bin reading
          meminfo: rename and add to build
          meminfo: fix up density calculation
          meminfo: rewrite /dev/mem handling
          meminfo: fix up printing
          meminfo: rewrite pll5 retrieval
          meminfo: rewrite dram parameter reading
          meminfo: various cleanups
          meminfo: read in soc version
          meminfo: fill in tpr4 on sun7i
          meminfo: (re-)introduce fex and usage printing
          meminfo: add a33 and a80 ids
          meminfo: make dram clock code more generic
          meminfo: make existing code sun4i specific
          meminfo: move sun4i code to its own function.
          meminfo: move soc version checking to main
          meminfo: increment clock n value for sun6i/8i
          meminfo: add sun6i register printing
    Oliver Schinagl (2):
          meminfo: do not assume Memory is always 24MHz * X
          meminfo: swap PLL1 TUN2 register to proper location
    Olliver Schinagl (3):
          Exclude sunxi-meminfo-static from git
          do not store backup files
          Very quick n dirty hack to get a script.bin from /dev/mem
    Peter Korsgaard (1):
          Makefile: use force option when creating symlinks
    Reinhard Max (1):
          Allow empty sections as found in the FEX files of Ippo q8h v1.2 and FSL S8
    Siarhei Siamashka (16):
          meminfo: fix 'dram_tpr3' reporting
          meminfo: fix 'dram_clk' reporting for frequencies that are not multiples of 24
          fel: Split 'aw_fel_get_version' into 'get' and 'print' variants
          fel: New command for loading U-Boot SPL binaries in eGON format
          fel: Add --verbose option and implement transfer speed reporting
          fel: Disable MMU to get more SRAM space and fix A13 problems
          fel: Faster USB transfers via 'fel write' to DRAM
          fel: Fix USB timeout on large transfers
          fel: Set the AUXCR L2EN bit for A10/A13
          README: Remove the obsolete 'usb-boot' script
          README: Add a brief 'script-extractor' tool description
          fel: Report FEL stack pointers
          fel: get rid of the FEL_EXEC_SCRATCH_AREA constant
          fel-to-spl-thunk.S: Fix safety guard which checks for enabled cache
          Makefile: 'fel' tool depends on fel-to-spl-thunk.h
          fel: Make the SPL load address configurable instead of hardcoded 0x0
    Vishnu Patekar (4):
          fel: Handle error and don't exit if MMU is not enabled.
          fel: add fel spl support for A33
          fel: add fel spl support for A83T
          fel: add fel spl support for H3
    
    Source code(tar.gz)
    Source code(zip)
Owner
Free/Open Source Software for Allwinner SoCs (A10/A13/A10s/A20/A31/...)
Free/Open Source Software for Allwinner SoCs (A10/A13/A10s/A20/A31/...)
The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for Vulkan application developers to leverage Vulkan Profiles while developing a Vulkan application

Copyright © 2021-2022 LunarG, Inc. Vulkan Profiles Tools (BETA) The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for

The Khronos Group 56 Jul 31, 2022
Quick reference on command line tools and techniques

1. Introduction 1.1. Scope 1.2. Background 1.3. Purpose 1.4. Next steps 2. Basics 2.1. Common commands 2.2. Shortcuts 2.2.1. Navigation 2.2.2. Editing

Utsav Barman 327 Jul 26, 2022
fx is a workspace tool manager. It allows you to create consistent, discoverable, language-neutral and developer friendly command line tools.

fx is a workspace tool manager. It allows you to create consistent, discoverable, language-neutral and developer friendly command line tools.

null 18 Jun 2, 2022
Allwinner V3S Opensource

KS_V3S • Bilibili Video Introduction:https://www.bilibili.com/video/BV17z4y1S7D6 I have designed this PCB, because the sheer power of this SoC, at ver

Kevincoooool 183 Jul 20, 2022
LiteX is a Migen/MiSoC based Core/SoC builder that provides the infrastructure to easily create Cores/SoCs (with or without CPU).

LiteX is a Migen/MiSoC based Core/SoC builder that provides the infrastructure to easily create Cores/SoCs (with or without CPU). The common components of a SoC are provided directly: Buses and Streams (Wishbone, AXI, Avalon-ST), Interconnect, Common cores (RAM, ROM, Timer, UART, etc...), CPU wrappers/integration, etc... and SoC creation capabilities can be greatly extended with the ecosystem of LiteX cores (DRAM, PCIe, Ethernet, SATA, etc...) that can be integrated/simulated/build easily with LiteX.

null 1.7k Jul 30, 2022
The demo projects for Allwinner D1 SBC

D1 Demo The demo projects for Allwinner D1 SBC hello project show the basic native compiling on D1 SBC. vector example cross compiling RISC-V Vector c

RVBoards 18 Aug 2, 2022
Port of MIT's xv6 OS to the Nezha RISC-V board with Allwinner D1 SoC

xv6 is a re-implementation of Dennis Ritchie's and Ken Thompson's Unix Version 6 (v6). xv6 loosely follows the structure and style of v6, but is impl

Michael Engel 38 Jul 15, 2022
Identify I2C devices from a database of the most popular I2C sensors and other devices

I2C Detective Identify I2C devices from a database of the most popular I2C sensors and other devices. For more information see http://www.technoblogy.

David Johnson-Davies 19 Jun 11, 2022
Suckless-tools - My fork of suckless tools.

suckless-tools Here is my fork of suckless tools. I didn't include tabbed, i was using but not actively. I am using xfce4-terminal instead of st. Beca

null 2 Jan 7, 2022
A collection of tools made by the nerds @ axial

Tools created by Nerds @ AXIAL Tool Name: Vichiti Author: 0x9747 Domain: Open-source Intelligence Tool Name: FLAMES Author: Devisha Rochlani Domain: M

AXIAL 16 Oct 31, 2021
sbase is a collection of unix tools that are inherently portable across UNIX and UNIX-like systems.

sbase is a collection of unix tools that are inherently portable across UNIX and UNIX-like systems.

Anton Samokhvalov 1 Nov 1, 2021
A collection of individual tools to randomize bdsp sheets

BDSP_Randomisers A collection of tools to randomize BDSP assets Setup (Windows 10 only) Install Ubuntu 18.04 via WSL1 (plenty of tutorials on that) In

null 6 Mar 1, 2022
An open collection of tools and experiments for rendering wide-gamut scene-linear data into an image for an SDR or HDR display device.

Open Display Transform An open collection of tools and experiments for rendering wide-gamut scene-linear data into an image for an SDR or HDR display

Jed Smith 121 Aug 8, 2022
Collection of tools to manage Teensy boards

You can find these instructions on the official web page. Overview TyTools is a collection of independent tools and you only need one executable to us

Niels Martignène 169 Jul 30, 2022
A collection of tools for Multiple Alignments of DNA, RNA, Protein Sequence

T-Coffee T-Coffee is a collection of tools for Computing, Evaluating and Manipulating Multiple Alignments of DNA, RNA, Protein Sequences and Structure

Notredame Lab 67 May 26, 2022
A Visual Studio extension containing a collection of tools to help contributing code to the Chromium project.

VsChromium VsChromium is a Visual Studio Extension containing a collection of tools useful for editing, navigating and debugging code. VsChromium was

The Chromium Project 253 Jul 24, 2022
A collection of tools, libraries, and tests for Vulkan shader compilation.

Shaderc A collection of tools, libraries and tests for shader compilation. At the moment it includes: glslc, a command line compiler for GLSL/HLSL to

Google 1.4k Aug 5, 2022
Lightweight C++ command line option parser

Release versions Note that master is generally a work in progress, and you probably want to use a tagged release version. Version 3 breaking changes I

null 3.2k Aug 4, 2022
The command line interface for Piccolo

Piccolo programming language A fun, easy to embed high-level programming language. This repo contains the code for the Piccolo CLI. The core Piccolo c

null 7 Feb 14, 2022