script.bin is a board-specific binary "configuration file" used by Allwinner-specific drivers in the kernel (and also by the LiveSuit flashing program) with information on how to set-up various devices, ports and I/O pins on boards with Allwinner SoCs.
Note: This is only needed for running the legacy ("sunxi") Linux kernel, or kernels provided by the board vendor or Allwinner. For running an upstream (or "mainline") kernel, you should use the included device tree files.
See also: How to modify script.bin
Get bin2fex utility
Get sunxi-boards repository
git clone git://github.com/linux-sunxi/sunxi-boards.git
Identify your fex file from your device page
The .fex file should be clearly listed on your device page under the Manual Build section.
Edit .fex file (optional)
This step is usually not necessary.
The .fex file uses the windows standard .ini format. The entries are described in our FEX guide.
Add Ethernet MAC address
To give your device a persistent MAC address, you need to add the MAC directive to the dynamic section, like such:
[dynamic] MAC = "0123456789AB"
If no dynamic section exists, just add it to the end of the .fex file
/home/user/dir/sunxi-tools/fex2bin <your_device>.fex script.bin
Configure U-Boot to load script.bin