Compare commits
225 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9da87c5293 | |||
| a4c060c956 | |||
| 46a92832cf | |||
| ffe31cfec7 | |||
| 2084453706 | |||
| fd87c506cb | |||
| c60a357985 | |||
| 117b6c1161 | |||
| 0397064a9a | |||
| 74ebf87011 | |||
| 5f5d54f0cf | |||
| 26564c4427 | |||
| 1424a67d0a | |||
| 74399277a5 | |||
| a52018aba6 | |||
| e666b0d743 | |||
| 2abfc4ac71 | |||
| 989c7c8f7b | |||
| 42706456fc | |||
| 38a9dd649f | |||
| 892d6562d6 | |||
| 1e0fb274cd | |||
| dadf163577 | |||
| 7fb40b1468 | |||
| 15c6374a56 | |||
| 3d399c9905 | |||
| e0819662ea | |||
| 389fc65931 | |||
| a2876878c4 | |||
| f7706bb9ee | |||
| 1b545fc33d | |||
| 2134fee900 | |||
| e05dbffa07 | |||
| e0121e9477 | |||
| 195e1f1383 | |||
| 92da1d4329 | |||
| 97fcc6ef0e | |||
| 314074e743 | |||
| dea83528ef | |||
| 33e173f209 | |||
| 446d7c5371 | |||
| 47f14d9a0f | |||
| c5bcb7a201 | |||
| 20246952dd | |||
| 3ae9a618b8 | |||
| a591dafcea | |||
| 0e8dd13bf8 | |||
| c522be0d50 | |||
| 422d263a71 | |||
| 12e3327356 | |||
| fabeb698ad | |||
| ae4ec7cde6 | |||
| 8945ba4948 | |||
| 6ac463b65f | |||
| ef40ad9e3c | |||
| a2e374f3b9 | |||
| cf458ccc38 | |||
| ab52b73a66 | |||
| 2dc7323ad0 | |||
| 99d31b4da1 | |||
| b82afb7f10 | |||
| d76f143372 | |||
| 81317c9ee5 | |||
| f74be7b432 | |||
| 3e490dc836 | |||
| 3002bbcc4c | |||
| e86a176c9b | |||
| 371e42df5e | |||
| 3e36fa4c22 | |||
| fc9c97f002 | |||
| defafdf3f8 | |||
| 4b191c4e8b | |||
| 2e088c7aca | |||
| 4bba8d0b64 | |||
| e67eaafd6f | |||
| 8153c3620a | |||
| cea4406680 | |||
| 1d8411cf91 | |||
| 15d4f341ae | |||
| eae86599ca | |||
| 745e021545 | |||
| 1fe0e5d21d | |||
| 8f53218b70 | |||
| 6a826c6d23 | |||
| 0612a2231f | |||
| 143097f780 | |||
| b27f378ff7 | |||
| 99cf9381a0 | |||
| 6ab6120d69 | |||
| 3b6347fca9 | |||
| a43cd47910 | |||
| fc1f285210 | |||
| f93f4dc615 | |||
| 5045b4de6d | |||
| a51644aa58 | |||
| 898593378c | |||
| 2a80eca365 | |||
| e9d3f2e881 | |||
| f2e9430366 | |||
| 90d633e632 | |||
| a28617d676 | |||
| f976d735e9 | |||
| 6439b8dbe0 | |||
| 0a5119afa0 | |||
| 9820d4903e | |||
| 33951d7933 | |||
| 0467bb87de | |||
| f0bda6dd18 | |||
| a9479d3663 | |||
| 9112ccd069 | |||
| c2f706a260 | |||
| 43fd3fd836 | |||
| 6c129d19ac | |||
| 208aee57be | |||
| 997ac4e38b | |||
| b78b4fedb5 | |||
| 7dcc62e62f | |||
| 988f192a65 | |||
| b2992d27bd | |||
| 01b2a04486 | |||
| 5adb8c23fd | |||
| a66f789239 | |||
| 9c2f016736 | |||
| 06e2a72735 | |||
| 0009e18a52 | |||
| 0bd54a26cb | |||
| 8909b37397 | |||
| df1fe3d8e8 | |||
| 525813a9e0 | |||
| 711534ce86 | |||
| e9471cbad4 | |||
| 58559ea021 | |||
| 3171d7bc1b | |||
| 98cd43b646 | |||
| 482b0099ea | |||
| d87883dc8d | |||
| 2366533fd1 | |||
| 44edd4bd14 | |||
| 0c4cfe7131 | |||
| 1e5f4ae1f4 | |||
| 987c284d6a | |||
| b43b4f1277 | |||
| de5f4568c0 | |||
| b9adf86d9b | |||
| 92f0dbbcbd | |||
| fb37f62dfe | |||
| f331ffdaec | |||
| 0dd4dd1217 | |||
| 6d29bacb3c | |||
| 96b346cb56 | |||
| 91510a411b | |||
| 4a1adaa78b | |||
| 2d31474b95 | |||
| 5410fa69c6 | |||
| 943299ecf5 | |||
| afbdc9e32c | |||
| d804e2ce8e | |||
| 6654e556c4 | |||
| 60cf8eb431 | |||
| 14a8b811e5 | |||
| 548921598d | |||
| d24d77e3e1 | |||
| 58c0ead172 | |||
| 677c47b833 | |||
| 967bd6de55 | |||
| 2fb1522471 | |||
| 073bba9c33 | |||
| 8ff60335b5 | |||
| 881575856a | |||
| 05f62c6a08 | |||
| 88b6bb5129 | |||
| 870c1db51b | |||
| b597419ddd | |||
| 2c99676913 | |||
| b66c5d001e | |||
| 4c219b85f7 | |||
| 4258840cb9 | |||
| 5aa78bc788 | |||
| 86e8e12143 | |||
| 6a34ed56df | |||
| e5d8eda986 | |||
| 6788e82f45 | |||
| 84a9bdb30e | |||
| af8839589a | |||
| 76de77202d | |||
| dcfccfddf1 | |||
| f63050ec64 | |||
| 35dcc9ca22 | |||
| e1fe196161 | |||
| 414b4c5d86 | |||
| f91778be4d | |||
| 21278889da | |||
| 7b2625c038 | |||
| 80ca8b0a4b | |||
| fb7b9e5a72 | |||
| ae50728e76 | |||
| cf0c9830c0 | |||
| fcbce93cfc | |||
| 5dab7fc53b | |||
| 3953493873 | |||
| 38aa995347 | |||
| 8a2efbee7a | |||
| 1feb0309f9 | |||
| d3c27619bf | |||
| 61dfa6a4ef | |||
| fd0c2292f2 | |||
| 46c073662b | |||
| 44db0dba59 | |||
| 25fc940a4c | |||
| 30e5d4ebc1 | |||
| 49fcf4beeb | |||
| 34effd4a47 | |||
| ac1fa68623 | |||
| 52bdcde13c | |||
| 23fb7bbc00 | |||
| 696eb52d74 | |||
| 8c602fcfd2 | |||
| 4a8139a361 | |||
| 063ee76d29 | |||
| 079e1510bb | |||
| 9eb41375c2 | |||
| 316abbf862 | |||
| bfd2b11870 | |||
| ba6b4cd392 | |||
| 3a172b9511 |
@@ -1,797 +1,3 @@
|
||||
2022.11.1, released January 18th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Br2-external: Fix make performance issue when many (> 6)
|
||||
external trees are used together.
|
||||
|
||||
Erofs: Use fixed timestamp and UUID when BR2_REPRODUCIBLE is
|
||||
used.
|
||||
|
||||
Go: Ensure our go build and module cache is used, even for the
|
||||
download step.
|
||||
|
||||
Legal-info: Stop warning about not saving sources for local /
|
||||
override packages if <PKG>_REDISTRIBUTE is set to NO.
|
||||
|
||||
Linux: Fix build of < 5.6 kernels with host-gcc >= 10.
|
||||
|
||||
A large number of NXP related packages and defconfigs have
|
||||
been updated as upstream moved the git repositories to Github.
|
||||
|
||||
Defconfigs: zcu106, kria kv260: Fix U-Boot build
|
||||
|
||||
Updated/fixed packages: asterisk, bearssl, botan, cairo,
|
||||
capnproto, check, checkpolicy, connman, containerd, crun,
|
||||
dbus-cxx, docker-cli, docker-engine, exempi, exfat,
|
||||
exfat-utils, falcosecurity-libs, fluidsynth, fmc, fmlib,
|
||||
freeradius-server, gcc, glib-networking, go,
|
||||
gobject-introspection, gperf, i2pd, ima-evm-utils,
|
||||
imx-alsa-plugins, imx-kobs, imx-lib, imx-m4fwloader,
|
||||
imx-mkimage, intel-microcode, janus-gateway, libcurl,
|
||||
libdeflate, libftdi1, libkcapi, libksba, libmbim, libmng,
|
||||
libpjsip, libtalloc, libuwsc, libxkbcommon, lpeg, lrzsz,
|
||||
lttng-tools, lua-cqueues, mali-driver, mbedtls, mfgtools,
|
||||
moby-buildkit, mutt, opensc, php, policycoreutils, polkit,
|
||||
postgresql, pptp-linux, qcom-db410c-firmware, qemu, qoriq-rcw,
|
||||
qt5virtualkeyboard, redis, rhash, rtl8189es, rtl8192eu,
|
||||
rtl_433, ruby, sqlite, swupdate, tealdeer, tekui, tiff,
|
||||
tinyxml, tor, webkitgtk, wireshark, wpasupplicant, wpewebkit,
|
||||
xr819-xradio, xdriver_xf86-video-imx-viv, xserver_xorg-server,
|
||||
xxhash, zip
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14971: Kernel 3.10.108 fail to build in Buildroot 2022.08-rc1
|
||||
#14996: Too many directories in BR2_EXTERNAL causes hang during make
|
||||
#15161: kernel can't support SUBDIR
|
||||
#15196: Setting BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE does not work
|
||||
#15226: lsblk: not found
|
||||
|
||||
2022.11, released December 5th, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Defconfigs: Nitrogen8*: Bump rootfs size, Zynqmp
|
||||
kv260/zcu102/zcu106: Update to Xilinx 2022.2,
|
||||
|
||||
Updated/fixed packages: dash, dovecot, elf2flt, exim, gcc,
|
||||
gdb, git, kodi, libarchive, libmdbx, linuxptp, lxc,
|
||||
matchbox-keyboard, memcached, netsnmp, optee-client,
|
||||
python-scipy, python3, qt6base, qt6serialport, rtl8188eu,
|
||||
rtl8723bu, rtl8723ds, rtl8821au, vim, vlc, wilc-driver
|
||||
|
||||
Removed packages: rabbitmq-server
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15131: Target GDB uses internal zlib
|
||||
#15151: Busybox /etc/init.d scripts are not executable
|
||||
|
||||
2022.11-rc3, released November 24th, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Updated/fixed packages: asterisk, edk2, edk2-platforms,
|
||||
freerdp, gitlab-runner, gnupg2, gptfdisk, heimdal,
|
||||
igh-ethercat, iwd, libkrb5, libksba, libnss, libopenssl,
|
||||
mesa3d, nginx, nodejs, openpgm, python3, rsync, rtl8189es,
|
||||
rtl8723ds, samba4, sdl, sdl2, swupdate, sysstat, systemd,
|
||||
uboot, xen, xterm
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15141: kernel 5.16.2 (realtime patch 19) fails to build
|
||||
|
||||
2022.11-rc2, released November 16th, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Removed defconfigs: Amarule a64 relic, ARM Juno, Bananapi M1 /
|
||||
M1 plus / M2 plus / M64, FriendlyARM NanoPC T4 / A64 / M1 / M1
|
||||
plus / M4 / Neo2 / Neo4 / Neo plus2 / R1 / Orangepi PC2 / Plus
|
||||
/ Prime / rk3399 / Win, Rock PC rk3399 / PI4 / N10.
|
||||
|
||||
Updated/fixed packages: alsa-utils, arm-trusted-firmware,
|
||||
bdwgc, boost, botan, ca-certificates, crun, dbus-broker,
|
||||
docopt-cpp, dracut, efivar, freeipmi, gawk, gensio, gptfdisk,
|
||||
gsl, guile, imagemagick, ipmitool, libidn2, libkcapi,
|
||||
libopenssl, libqb, libuhttpd, libvncserver, linux,
|
||||
linux-tools, lxc, makedumpfile, matchbox-startup-monitor,
|
||||
mdio-tools, multipath-tools, mupdf, ntfs-3g, numactl,
|
||||
perl-net-ssleay, pixman, procps-ng, rpi-userland, rsync,
|
||||
s6-linux-init, socat, strongswan, sudo, swupdate, systemd,
|
||||
udisks, vlc, wavemon, wolfssl, zlib-ng
|
||||
|
||||
Removed packages: libdcadec
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15121: make nconfig failes with nvidia drivers and mesa3d selected
|
||||
|
||||
2022.11-rc1, released November 3rd, 2022
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Architecture:
|
||||
|
||||
- PowerPC: add Power9 CPU type
|
||||
- ARM: support dropped for iWMMXt processors
|
||||
|
||||
Toolchain:
|
||||
|
||||
- binutils 2.39 added, binutils 2.38 is now the default
|
||||
- gdb 12 added, gdb 11 is now the default
|
||||
- support for 5.18, 5.19 and 6.0 kernel headers
|
||||
- glibc updated to 2.36
|
||||
|
||||
Filesystem:
|
||||
|
||||
- Ability to use dracut to create an initramfs that contains a
|
||||
subset of the root filesystem contents.
|
||||
|
||||
New packages: agent-proxy, catatonit, cni-plugins, crun,
|
||||
docopt-cpp, dracut, forge, kmemd, libmanette, mdio-tools,
|
||||
open-isns, python-editables, python-hatch-fancy-pypi-readme,
|
||||
python-hatch-vcs, python-hatchling, python-libevdev,
|
||||
python-minimalmodbus, python-pathspec, qt6-serialport,
|
||||
rtl8192eu, signal-estimator, slirp4netns, tinycompress
|
||||
|
||||
More than 400 packages have been updated to a newer version.
|
||||
|
||||
New defconfigs: ls1028ardb, qemu_aarch64_ebbr, visionfive.
|
||||
|
||||
Issues resolved:
|
||||
|
||||
#11776: qt5webengine 5.12.2 build failed with arm toolchain
|
||||
and linaro toolchain
|
||||
#12131: qt5webengine builderror in the latest stable Buildroot
|
||||
2019.05.01 version
|
||||
#13216: 2020.02.6 requires GNU find utils
|
||||
#14601: Python build fails on 2022.02-rc2
|
||||
#14746: Lack of management after loading
|
||||
#14796: 64 bit time and seccomp conflict (OpenSSH server crash)
|
||||
#14921: wpewebkit build fails because of internal build order
|
||||
#14936: nodejs does not build
|
||||
#15006: toolchain Arm AArch64 toolchain 11.2-2022.02
|
||||
#15021: Buildroot not compiling with systemd and glibc.
|
||||
#15026: package/udisks: install to staging
|
||||
#15061: Node.js Package fails to build against musl i386
|
||||
#15071: RTL8723BS library is outdated
|
||||
|
||||
2022.08.2, released November 16th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Defconfig: Aspeed ast2600evb: Correct FPU config, Kontron bl
|
||||
imx8mm: Bump U-Boot to fix build issue, Pine64: Change to
|
||||
mainline ATF to fix build issue, Zynqmp zcu102 / zcu106 / kria
|
||||
kv260: Fix pmufw reset issue
|
||||
|
||||
Updated/fixed packages: arm-trusted-firmware, bind, botan,
|
||||
ca-certificates, collectd, darkhttpd, dbus, dbus-broker, dhcp,
|
||||
dnsmasq, docker-cli, docker-engine, exfatprogs, expat,
|
||||
f2fs-tools, faad2, ffmpeg, freerdp, gitlab-runner, glibc,
|
||||
gnutls, go, gpsd, gptfdisk, grub2, gsl, gst-omx,
|
||||
gst1-devtools, gst1-libav, gst1-plugins-bad,
|
||||
gst1-plugins-base, gst1-plugins-good, gst1-plugins-ugly,
|
||||
gst1-python, gst1-rtsp-server, gst1-vaapi, gstreamer1,
|
||||
gstreamer1-editing-services, hdparm, hostapd, imagemagick,
|
||||
iwd, jack2, libbpf, libcurl, libidn2, libinput, libmdbx,
|
||||
libopenssl, libosip2, libpng, libtasn1, libtorrent-rasterbar,
|
||||
libuhttpd, libvncserver, libxml2, linux, linux-tools, lldpd,
|
||||
lrzip, lz4, matchbox-startup-monitor, meson, msmtp,
|
||||
multipath-tools, mupdf, musl, mv-ddr-marvell, mxml, nodejs,
|
||||
ntfs-3g, numactl, openssh, openvmtools, oracle-mysql,
|
||||
paho-mqtt-c, perl-net-ssleay, php, pixman, poppler, procps-ng,
|
||||
python-django, python3, qdecoder, redis, rpi-userland, rsync,
|
||||
rtl8189es, rtl8189fs, rtl8723bu, rtl8723ds,
|
||||
rtl8812au-aircrack-ng, rtl8821au, rtl_433, samba4, shapelib,
|
||||
socat, sqlite, squashfs, squid, strongswan, sudo, swupdate,
|
||||
timescaledb, uclibc-ng-test, udisks, uftp, uhd, umtprd,
|
||||
usbguard, vim, vlc, volk, wavemon, wilc-driver,
|
||||
wireguard-linux-compat, wolfssl, wpa_supplicant, wpewebkit,
|
||||
zlib-ng, zsh
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14936: nodejs does not build
|
||||
#15026: package/udisks: install to staging
|
||||
#15061: Node.js Package fails to build against musl i386
|
||||
|
||||
2022.08.1, released October 2nd, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: botan, busybox, docker-cli,
|
||||
docker-engine, expat, git, haproxy, heirloom-mailx, icu,
|
||||
imx-gpu-viv, libconfuse, libmdbx, libupnp, libxml2,
|
||||
ltp-testsuite, m4, makedevs, mariadb, mesa3d, meson,
|
||||
mosquitto, ncurses, openssh, pango, python3, qlibc,
|
||||
qt5xmlpatterns, rtl8189es, rtl8723bu, rt8723ds,
|
||||
rtl8812au-aircrack-ng, runc, sox, tinyproxy, uacme, unbound,
|
||||
unzip, vim, xtables-addons
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14796: 64 bit time and seccomp conflict (OpenSSH server crash)
|
||||
#14921: wpewebkit build fails because of internal build order
|
||||
|
||||
2022.08, released September 10th, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Autotools: Drop --runstatedir=/run as it causes build issues
|
||||
with older packages
|
||||
|
||||
Defconfigs: rockpro64: Change to mainline ATF to fix build issue
|
||||
|
||||
Updated/fixed packages: dhcpd, fwup, gcc, gdb, go, linux-tools,
|
||||
minidlna, mosquitto, mv-ddr-mervell, networkd-dispatcher,
|
||||
optee-os, polkit, python-pillow, python3, sconeserver, uuu,
|
||||
wolfssl
|
||||
|
||||
2022.08-rc2, released September 1st, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
dependencies: Ensure 'find' and 'xargs' are available on the
|
||||
build host.
|
||||
|
||||
A large number of typo fixes.
|
||||
|
||||
Defconfigs: bananapi m1, olimex a20/a33/lime: Use standard FPU
|
||||
configuration, pine64_sopine: Use mainline ATF to fix build
|
||||
|
||||
Updated/fixed packages: ace, alsa-utils, busybox, cups,
|
||||
dbus-broker, directfb, domoticz, drbd-utils, edk2,
|
||||
edk2-platforms, ffmpeg, freeradius-server, freeswitch, gauche,
|
||||
gcc, gdb, glibc, gnutls, gst1-plugins-bad, gst1-plugins-good,
|
||||
hawktracer, igd-ethercat, imagemagick, intel-mediadriver,
|
||||
jack2, jose, jpeg, jquery-ui-themes, kodi, libcamera, libdill,
|
||||
libgit2, libglvnd, libgpg-error, libgpgme, libinput, libp11,
|
||||
libsepol, libtirpc, libvirtd, libvncserver, libwpe, libzlib,
|
||||
linux, linux-tools-perf, llvm, lshw, makedumpfile,
|
||||
mali-driver, memcached, minetest, mutt, ne10, netsniff-ng,
|
||||
ntpsec, ocrad, ola, opencv4, openocd, opensc, optee-os,
|
||||
pcsc-lite, postgresql, protobuf, pulseaudio, python-autobahn,
|
||||
python-paho-mqtt, python-protobuf, python-pygame, python3, qemu,
|
||||
qoriq-cadence-dp-firmware, qt5doc, qt6base, ranger, rng-tools,
|
||||
rsync, rustc, sconeserver, sdl2, snort, sqlite, squid,
|
||||
stress-ng, strongswan, sunxi-mali-utgard-driver, sysdig,
|
||||
sysklogd, syslinux, syslog-ng, tcf-agent, tcpreplay,
|
||||
tesseract-ocr, uacme, uboot-tools, uclibc, udpcast, usbguard,
|
||||
v4l2loopback, vim, webkitgtk, wolftpm, wpewebkit, xenomai,
|
||||
xserver_xorg-server, zeek, zerofree
|
||||
|
||||
2022.08-rc1, released August 12th, 2022
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Architecture
|
||||
|
||||
- Support for NDS32 removed
|
||||
- Support for C-SKY removed
|
||||
- Support for configurable page size on ARM64 added
|
||||
- Architecture menu re-organized: the MMU selection now
|
||||
appears in this architecture menu.
|
||||
|
||||
Toolchain:
|
||||
|
||||
- GCC 12.x support added, GCC 11.x is now the default
|
||||
compiler, and support for building a GCC 9.x toolchain has
|
||||
been removed.
|
||||
- glibc bumped to 2.35-134-gb6aade18a7e5719c942aa2da6cf3157aca993fa4
|
||||
- uclibc bumped to 1.0.42
|
||||
- BR2_GCC_ENABLE_LTO option removed, the toolchain is now
|
||||
always built with LTO support. The new option BR2_ENABLE_LTO
|
||||
enables the use of LTO in a subset of packages that have
|
||||
explicit handling for LTO.
|
||||
- GDB enabled on OpenRISC.
|
||||
- Toolchain menu now appears before "Build options". The
|
||||
selection of the C library now determines whether static
|
||||
library (BR2_STATIC_LIBS) will be available or not, instead
|
||||
of the other way around.
|
||||
|
||||
Filesystem:
|
||||
|
||||
- genimage.cfg files now use shortcuts from genimage for the
|
||||
GUID of well-known GPT partitions.
|
||||
|
||||
Bootloaders:
|
||||
|
||||
- U-Boot can now be built with host-gnutls as a dependency,
|
||||
needed for some configurations
|
||||
- OP-TEE can now be built with host-python-pillow as a
|
||||
dependency, needed for some configurations.
|
||||
- OP-TEE source can now be retrieved from a custom tarball
|
||||
URL.
|
||||
- Grub has been bumped to 2.06.
|
||||
|
||||
Over 390 packages updated.
|
||||
|
||||
New defconfigs: aspeed_ast2500evb, aspeed_ast2600evb,
|
||||
broadcom_northstar, canaan_kd233, qemu_riscv64_nommu_virt,
|
||||
sipeed_maix_bit, sipeed_maix_bit_sdcard, sipeed_maix_dock,
|
||||
sipeed_maix_dock_sdcard, sipeed_maix_go,
|
||||
sipeed_maix_go_sdcard, sipeed_maixduino,
|
||||
sipeed_maixduino_sdcard
|
||||
|
||||
Removed defconfigs: andes_ae300, csky_gx6605s,
|
||||
friendlyarm_nanopi_neo, minnowboard_max-graphical
|
||||
|
||||
New packages: clpeak, compiler-rt, crucible, dbus-broker, dht,
|
||||
double-conversion, dust, freeradius-server, gdal, hawktracer,
|
||||
hyperfine, libb2, libdeflate, libdill, mbw, mender-connect,
|
||||
minizip-zlib, nerdctl, ntpsec, opencl-hpp, opensc,
|
||||
python-alembic, python-appdirs, python-beniget,
|
||||
python-construct, python-dtschema, python-gast, python-kflash,
|
||||
python-lark, python-maturin, python-mypy-extensions,
|
||||
python-pylibfdt, python-pythran, python-pyrsistent,
|
||||
python-qrcode, python-rfc3987, python-rtoml,
|
||||
python-ruamel-yaml, python-scipy, python-typeguard,
|
||||
python-typing-inspect, python-zlmdb, qt6base, rtl8723ds,
|
||||
spirv-llvm-translator, tealdeer, uuu, vis-network, volk,
|
||||
wolftpm, zeek, zerofree
|
||||
|
||||
Removed packages: rtl8723bs
|
||||
|
||||
Issues resolved:
|
||||
|
||||
#14556: python-crossbar fails to build
|
||||
#14951: boost compile error when running make silently
|
||||
#14646: OpenSSH 8.9p1 compiler error under mipsel
|
||||
#14841: support/download/git fails with "fatal: No such remote
|
||||
'origin'" due to incorrect check for origin remote
|
||||
#13356: libabseil-cpp: not building for raspberry pi
|
||||
#14911: host-python3 build needs python3 on the host
|
||||
#13831: mesa3d - kmsro driver requires dri3
|
||||
#13816: xstart failed since update the x11 libraries
|
||||
#13796: Problems compiling package gst-plugins-good
|
||||
#14191: patchelf v0.9 corrupt Nvidia shared libraries
|
||||
#14891: sudo: group setup fails since commit 9b7f8da96b
|
||||
#14881: Watchdogd Package missing INSTALL_STAGING
|
||||
#14876: arm-trusted-firmware can no longer be compiled with fPIE
|
||||
|
||||
2022.05.3, released October 2nd, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Fixed compatibility issue with make 4.3 and the 'printvars' /
|
||||
'show-vars' commands.
|
||||
|
||||
Dependencies: Ensure 'find' and 'xargs' are available on the
|
||||
build host.
|
||||
|
||||
A large number of typo fixes.
|
||||
|
||||
Defconfigs: Galileo: Fix defconfig syntax, Licheepi zero: Fix
|
||||
U-Boot dependencies, Bananapi m1, Olimx a20 olinuxino lime
|
||||
1+2, a33 olinuxino: Use standard FPU configuration, Pine 64
|
||||
sopine, Rockpro 64: Change to mainline ATF to fix build issue.
|
||||
|
||||
Updated/fixed packages: ace, arm-trusted-firmware,
|
||||
babeltrace2, boost, botan, busybox, clamav, cog, containerd,
|
||||
cups, dhcpcd, directfb, docker-cli, docker-engine, connman,
|
||||
edk2, edk2-platform, elf2flt, expat, ffmpeg, ficl, freeswitch,
|
||||
gcc, gdb, git, glibc, gnutls, go, gocryptfs, graphicsmagick,
|
||||
grub2, gst1-plugins-bad, gst1-plugins-good, heirloom-mailx,
|
||||
icu, igh-ethercat, imagemagick, imx-gpu-viv, jack2, jose,
|
||||
jpeg, jquery-ui-themes, kodi, kvm-unit-tests, libcamera,
|
||||
libconfuse, libfreeimage, libglvnd, libgpg-error, libinput,
|
||||
libmdbx, libp11, libsepol, libtirpc, libupnp, libvirt,
|
||||
libvncserver, libwpe, libxml2, libzlib, linux, linux-tools,
|
||||
lshw, m4, makedevs, mali-driver, mariadb, memcached, mesa3d,
|
||||
minidlna, mosquitto, mutt, mv-ddr-marvell, ncurses, ne10,
|
||||
netsniff-ng, networkd-dispatcher, ocrad, ola, opencv4,
|
||||
openocd, openssh, openvmtools, pango, pcsc-lite, pistache,
|
||||
polkit, postgis, postgresql, python-crossbar,
|
||||
python-paho-mqtt, python-pygame, python-service-identity,
|
||||
python-txdbus, python3, qemu, qlibc,
|
||||
qoriq-cadence-dp-firmware, qt5xmlpatterns, ranger, redis,
|
||||
rng-tools, rsync, rsyslog, rtl8189es, rtl8723bu, runc, rustc,
|
||||
sconeserver, sdl2, snort, sox, sqlite, squid, stress-ng,
|
||||
strongswan, sunxi-mali-utgard-driver, sysdig, syslinux,
|
||||
syslog-ng, tcf-agent, tcpreplay, tesseract-ocr, tinyproxy,
|
||||
uacme, uboot-tools, uclibc, unzip, usbguard, v4l2loopback,
|
||||
vim, waffle, webkitgtk, weston, wolfssl, wpewebkit, xfsprogs,
|
||||
xserver_xorg-server, xtables-addons, zziplib
|
||||
|
||||
Issues resolved:
|
||||
|
||||
#13216: [Documentation] 2020.02.6 requires GNU find utils
|
||||
#14556: python-crossbar fails to build
|
||||
#14796: 64 bit time and seccomp conflict (OpenSSH server crash)
|
||||
#14951: boost compile error when running make silently
|
||||
|
||||
2022.05.2, released August 31st, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
dependencies: Ensure 'cmp' is available on the build host.
|
||||
|
||||
pkg-utils: The KCONFIG_ENABLE_OPT macro used to enforce a specific
|
||||
Kconfig option to be enabled (E.G. for kernel options needed by
|
||||
packages) no longer changes a =m (modular) with =y (built in).
|
||||
|
||||
check-host-rpath: Silence readelf warnings when clang is used
|
||||
|
||||
GCC 10.x updated to 10.4.0
|
||||
|
||||
Defconfigs: Kria kv260: Fix u-boot configuration
|
||||
|
||||
Updated/fixed packages: apg, arm-trusted-firmware, assimp,
|
||||
bayer2rgb-neon, bind, bird, cog, cwiid, diffutils, freerdp,
|
||||
fluidsynth, gcc, gdk-pixbuf, glibc, glslsandbox-player,
|
||||
gnupg2, gtest, i2pd, jack2, jquery-validation, jszip,
|
||||
kvm-unit-tests, libbsd, libcamera, libcurl, libest, libiio,
|
||||
libkrb5, libopenssl, libp11, libpsl, libwebsockets, localedef,
|
||||
luasyslog, lxc, mbedtls, mstpd, mutt, netdata, netsniff-ng,
|
||||
nodejs, nvidia-driver, ola, openssl, opkg-utils, paho-mqtt-c,
|
||||
pango, pcsc-lite, perl, perl-crypt-openssl-rsa, pimd, poppler,
|
||||
postgis, powerpc-utils, pppd, protobuf-c, pulseaudio,
|
||||
python-bottle, python-django, python-lxml, python3, qt5webkit,
|
||||
redis, rpi-userland, rsyslog, runc, rustc, sconeserver,
|
||||
sg3_utils, shadowsocks-libev, stellarium, suricata, swupdate,
|
||||
tcpreplay, uacme, uclibc, v4l2loopback, webkitgtk,
|
||||
wilc-driver, wine, wpewebkit, xdg-dbus-proxy,
|
||||
xserver_xorg-server, zeromq, zfs, zlib-ng
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#13796: Problems compiling package gst-plugins-good
|
||||
|
||||
2022.05.1, released July 24th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Disable big endian no-mmu on ARM as it is not supported by
|
||||
elf2flt.
|
||||
|
||||
Tighten dependencies for external Bootlin toolchains to ensure
|
||||
they can only be selected in compatible configurations.
|
||||
|
||||
Support external toolchains without gdbserver.
|
||||
|
||||
Updated/fixed packages: apache, avahi, bdwgc, bind, bpftool,
|
||||
cups, darkhttpd, dmalloc, ecryptfs-utils, fxload, ghostscript,
|
||||
gnutls, gst-omx, gst1-devtools, gst1-libav, gst1-plugins-base,
|
||||
gst1-plugins-bad, gst1-plugins-good, gst1-plugins-ugly,
|
||||
gst1-python, gst1-rtsp-server, gst1-vaapi, gstreamer1,
|
||||
gstreamer1-editing-services, gtest, iptables, keyutils, lcms2,
|
||||
libabseil-cpp, libcamera, libcurl, libeastl, libgpgme,
|
||||
libgtk3, libmdbx, libmediaart, libmodsecurity, libnetconf2,
|
||||
libopenssl, libpjsip, libsamplerate, libsndfile, libtalloc,
|
||||
logrotate, luajit, nginx, noip, paxtest, php, postgresql,
|
||||
procrank_linux, pure-ftpd, python-pillow, qdecoder,
|
||||
rabbitmq-server, rpi-userland, ruby, rustc, sofia-sip,
|
||||
systemd, tcpreplay, tinyproxy, tor, uacme, uboot-tools, vim,
|
||||
watchdogd, webkitgtk, weston, wireguard-linux-compat,
|
||||
wpa_supplicant, wpewebkit, zstd
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14881: Watchdogd Package missing INSTALL_STAGING
|
||||
|
||||
2022.05, released June 6th, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Rework BR2_STATIC_LIBS handling to ensure it can only be
|
||||
enabled if a suitable C library is available.
|
||||
|
||||
Updated/fixed packages: arm-trusted-firmware, at91bootstap,
|
||||
boinc, boost, cpulimit, diffutils, edk2, eigen, fbv, gcr,
|
||||
gensio, glibc, go, gtest, iucode-tool, kvm-unit-tests, libcec,
|
||||
libcurl, libks, linux, linux-tools, lttng-modules, mariadb,
|
||||
memcached, mono, musl, mutt, netdata, network-manager, nginx,
|
||||
ogre, openjpeg, openvpn, pipewire, python-crossbar, qemu,
|
||||
qpid-proton, rauc, rockchip-mali, rsyslog,
|
||||
rtl8812au-aircrack-ng, ruby, runc, rustc, samba4, tiff,
|
||||
uclibc, unrar, vim, webkitgtk, wpewebkit,
|
||||
xdriver_xf86-video-ati, xml-security-c, zchunk, zlib-ng
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14821: Samba server is failing to compile
|
||||
#14826: make qemu_x86_64_defconfig stopped working
|
||||
|
||||
2022.05-rc2, released May 30th, 2022
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Defconfigs: qemu_ppc64*: Use binutils 2.36.1 to fix build
|
||||
issue, qemu_arm_vexpress_tz: Fix optee-os build issue,
|
||||
qemu_arm_versatile_nommu: Drop now that nommu for ARMv5 is no
|
||||
longer available
|
||||
|
||||
Updated/fixed packages: dhcp, edk2, gcr, glibc, i2pd, janet,
|
||||
janus-gateway, libfreeimage, libnftnl, libnss, libodb-boost,
|
||||
libostree, libwebsockets, linux-tools, midori, ntfs-3g, ola,
|
||||
optee-client, pcsc-lite, pipewire, python-flask,
|
||||
python-service-identity, python-werkzeug, qemu, rng-tools,
|
||||
rockchip-mali, strace, xdriver_xf86-video-amdgpu
|
||||
|
||||
Removed packages: ktap
|
||||
|
||||
2022.05-rc1, released May 18th, 2022
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Toolchain:
|
||||
- glibc update to 2.35, musl updated to 1.2.3
|
||||
- gcc 11.x updated to 11.3, support for external gcc 12.x
|
||||
- binutils 2.38 added, 2.32/2.35.2 removed, default changed to 2.37
|
||||
- s390x Bootlin external toolchain added
|
||||
- 5.17.x kernel headers support added
|
||||
|
||||
Filesystem:
|
||||
- Rework OCI entrypoint/command logic to handle command arguments
|
||||
- Squashfs block size is now configurable
|
||||
|
||||
Graphs: Also generate a build time timeline graph (for top
|
||||
level parallel builds).
|
||||
|
||||
scripts/pkg-stats: Optimize memory consumption for CPE parsing
|
||||
|
||||
Fix compatibility issue with the fakeroot script logic and
|
||||
modern versions of dash.
|
||||
|
||||
Change git:// URLs pointing to Github to https://, now that
|
||||
Github has turned off support for git://
|
||||
|
||||
New defconfigs: Octavo osd32mp1_brk / osd32mp1_red
|
||||
|
||||
New packages: falcosecurity-libs, lzma-alone, octave,
|
||||
python-flit-core, python-orjson, python-pydevmem,
|
||||
qt5webengine-chromium, qt5webengine-chromium-catapult, ragel,
|
||||
tbb, wilc-driver, wtfutil
|
||||
|
||||
Wilc1000-firmware renamed to wilc-firmware
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14596: package dialog is outdated and contains a bug
|
||||
#14651: OpenSSH 8.9p1 compiler error under ARM
|
||||
#14656: Adding dependencies from an external tree does not work
|
||||
#14661: Fakeroot script relies on bash-isms, does not work with..
|
||||
#14681: QT5WEBENGINE not building
|
||||
#14686: genimage.cfg have a hard-coded .ext4 extension which..
|
||||
#14701: Multiple unresolved symbols while building kernel ..
|
||||
#14706: nodjs build problem
|
||||
#14711: nodjs build problem missing bzip
|
||||
#14721: python-argon2_cffi no longer works
|
||||
#14731: BR2_PACKAGE_IOSTAT
|
||||
#14751: LVM2 Outdated Link
|
||||
|
||||
2022.02.7, released November 17th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Defconfig: Pine64: Change to mainline ATF to fix build
|
||||
issue, Zynqmp zcu102 / zcu106: Fix pmufw reset issue
|
||||
|
||||
Updated/fixed packages: arm-trusted-firmware, bind, botan,
|
||||
collectd, darkhttpd, dbus, dhcp, dnsmasq, docker-cli,
|
||||
docker-engine, exfatprogs, expat, f2fs-tools, faad2, ffmpeg,
|
||||
freerdp, gnutls, go, gpsd, grub2, gsl, gst-omx, gst1-devtools,
|
||||
gst1-libav, gst1-plugins-bad, gst1-plugins-base,
|
||||
gst1-plugins-good, gst1-plugins-ugly, gst1-python,
|
||||
gst1-rtsp-server, gst1-vaapi, gstreamer1,
|
||||
gstreamer1-editing-services, hdparm, hostapd, imagemagick,
|
||||
iwd, jack2, libbpf, libcurl, libfribi, libidn2, libinput,
|
||||
libmdbx, libopenssl, libosip2, libpng, libtasn1,
|
||||
libtorrent-rasterbar, libuhttpd, libvncserver, libxml2, linux,
|
||||
linux-tools, lldpd, lrzip, lz4, matchbox-startup-monitor,
|
||||
msmtp, multipath-tools, mupdf, musl, mv-ddr-marvell, mxml,
|
||||
nodejs, ntfs-3g, numactl, openvmtools, oracle-mysql,
|
||||
paho-mqtt-c, perl-net-ssleay, php, pixman, poppler, procps-ng,
|
||||
python-django, python3, qdecoder, rpi-userland, rsync,
|
||||
rtl8189es, rtl8189fs, rtl8723bu, rtl8812au-aircrack-ng,
|
||||
rtl8821au, rtl_433, samba4, shapelib, socat, squid, sqlite,
|
||||
squashfs, strongswan, sudo, swupdate, timescaledb, u-boot,
|
||||
uclibc-ng-test, udisks, uftp, uhd, umtprd, vim, wavemon,
|
||||
wireguard-linux-compat, wolfssl, wpa_supplicant, wpewebkit,
|
||||
zlib-ng, zsh
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15026: package/udisks: install to staging
|
||||
#15061: Node.js Package fails to build against musl i386
|
||||
|
||||
2022.02.6, released October 2nd, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Fixed compatibility issue with make 4.3 and the 'printvars' /
|
||||
'show-vars' commands.
|
||||
|
||||
Dependencies: Ensure 'find' and 'xargs' are available on the
|
||||
build host.
|
||||
|
||||
A large number of typo fixes.
|
||||
|
||||
Defconfigs: Galileo: Fix defconfig syntax, Licheepi zero: Fix
|
||||
U-Boot dependencies, Bananapi m1, Olimx a20 olinuxino lime
|
||||
1+2, a33 olinuxino: Use standard FPU configuration, Pine 64
|
||||
sopine, Rockpro 64: Change to mainline ATF to fix build issue.
|
||||
|
||||
Updated/fixed packages: ace, arm-trusted-firmware,
|
||||
babeltrace2, boost, botan, busybox, clamav, cog, connman,
|
||||
containerd, cups, dhcpcd, directfb, docker-cli, docker-engine,
|
||||
edk2, edk2-platforms, elf2flt, expat, ffmpeg, ficl,
|
||||
freeswitch, freetype, gcc, gdb, git, gnutls, go,
|
||||
graphicsmagic, grub2, gst1-plugins-bad, gst1-plugins-good,
|
||||
heirloom-mailx, icu, igh-ethercat, imagemagick, imx-gpu-viv,
|
||||
jose, jpeg, jquery-ui-themes, kodi, libconfuse, libfreeimage,
|
||||
libglvnd, libgpg-error, libinput, libmdbx, libsepol, libtirpc,
|
||||
libupnp, libvirt, libvncserver, libwpe, libxml2, libzlib,
|
||||
linux, linux-tools, lshw, m4, makedevs, makedumpfile,
|
||||
mali-driver, mariadb, memcached, mesa3d, minidlna, mosquitto,
|
||||
mutt, mv-ddr-marvell, ncurses, ne10, netsniff-ng,
|
||||
networkd-dispatcher, ocrad, opencv4, openocd, openssh, pango,
|
||||
pcsc-lite, polkit, postgis, postgresql, python-paho-mqtt,
|
||||
python-pygame, python3, qemu, qlibc,
|
||||
qoriq-cadence-dp-firmware, qt5xmlpatterns, ranger, rng-tools,
|
||||
rsync, rsyslog, rtl8189es, rtl8723be, runc, rustc,
|
||||
sconeserver, sdl2, snort, sox, sqlite, squid, stress-ng,
|
||||
strongswan, sunxi-mali-utgard-driver, syslinux, syslog-ng,
|
||||
tcf-agent, tcpreplay, tesseract-ocr, tinyproxy, uacme,
|
||||
uboot-tools, uclibc, unzip, usbguard, v4l2loopback, vim,
|
||||
webkitgtk, wolfssl, wpewebkit, xfsprogs, xserver_xorg-server,
|
||||
xtables-addons, zziplib
|
||||
|
||||
Issues resolved:
|
||||
|
||||
#13216: [Documentation] 2020.02.6 requires GNU find utils
|
||||
#14796: 64 bit time and seccomp conflict (OpenSSH server crash)
|
||||
#14951: boost compile error when running make silently
|
||||
|
||||
2022.02.5, released August 31st, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
dependencies: Ensure 'cmp' is available on the build host.
|
||||
|
||||
pkg-utils: The KCONFIG_ENABLE_OPT macro used to enforce a specific
|
||||
Kconfig option to be enabled (E.G. for kernel options needed by
|
||||
packages) no longer changes a =m (modular) with =y (built in).
|
||||
|
||||
check-host-rpath: Silence readelf warnings when clang is used
|
||||
|
||||
GCC 10.x updated to 10.4.0
|
||||
|
||||
Updated/fixed packages: apg, arm-trusted-firmware, assimp,
|
||||
bayer2rgb-neon, bind, bird, cog, cwiid, diffutils, fluidsynth,
|
||||
freerdp, gcc, glibc, glslsandbox-player, gdk-pixbuf, gnupg2,
|
||||
gtest, i2pd, jack2, jquery-validation, jszip, libbsd, libcamera,
|
||||
libcurl, libest, libiio, libkrb5, libopenssl, libpsl,
|
||||
luasyslog, lxc, mbedtls, mstpd, mutt, netdata, netsniff-ng,
|
||||
nodejs, nvidia-driver, openssl, opkg-utils, paho-mqtt-c,
|
||||
pango, pcsc-lite, perl, pimd, poppler, postgis, powerpc-utils,
|
||||
pppd, protobuf-c, pulseaudio, python-bottle, python-django,
|
||||
python-lxml, python3, qt5webkit, rpi-userland, rsyslog, runc,
|
||||
rustc, sconeserver, sg3_utils, shadowsocks-libev, suricata,
|
||||
tcpreplay, uacme, uclibc, v4l2loopback,, webkitgtk, wine,
|
||||
wpewebkit, xdg-dbus-proxy, xserver_xorg-server, zeromq, zfs,
|
||||
zlib-ng
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#13796: Problems compiling package gst-plugins-good
|
||||
#14926: package/nodejs: build for host fails with GTEST errors
|
||||
|
||||
2022.02.4, released July 28th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Disable big endian no-mmu on ARM as it is not supported by
|
||||
elf2flt.
|
||||
|
||||
Tighten dependencies for external Bootlin toolchains to ensure
|
||||
they can only be selected in compatible configurations.
|
||||
|
||||
Support external toolchains without gdbserver.
|
||||
|
||||
Updated/fixed packages: apache, avahi, bdwgc, bind, bpftool,
|
||||
cups, darkhttpd, dmalloc, ecryptfs-utils, fxload, ghostscript,
|
||||
gnutls, gst-omx, gst1-devtools, gst1-libav, gst1-plugins-base,
|
||||
gst1-plugins-bad, gst1-plugins-good, gst1-plugins-ugly,
|
||||
gst1-python, gst1-rtsp-server, gst1-vaapi, gstreamer1,
|
||||
gstreamer1-editing-services, gtest, iptables, keyutils, lcms2,
|
||||
libabseil-cpp, libcamera, libcurl, libeastl, libgpgme,
|
||||
libgtk3, libmdbx, libmediaart, libmodsecurity, libnetconf2,
|
||||
libopenssl, libpjsip, libsamplerate, libsndfile, libtalloc,
|
||||
logrotate, luajit, nginx, noip, paxtest, php, postgresql,
|
||||
procrank_linux, pure-ftpd, python-pillow, qdecoder,
|
||||
rabbitmq-server, rpi-userland, rustc, sofia-sip, systemd,
|
||||
tcpreplay, tinyproxy, tor, uacme, uboot-tools, vim, watchdogd,
|
||||
webkitgtk, wireguard-linux-compat, wpa_supplicant, wpewebkit,
|
||||
zstd
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14881: Watchdogd Package missing INSTALL_STAGING
|
||||
|
||||
2022.02.3, released June 19th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Infrastructure: Fix building under paths containing regex
|
||||
characters (E.G. '+')
|
||||
|
||||
Toolchain: Only allow ppc64le variants for which a
|
||||
glibc/musl/uclibc toolchain is supported.
|
||||
Mark codescape mti/img mips toolchains as shared library only
|
||||
(glibc).
|
||||
|
||||
Updated/fixed packages: arm-trusted-firmware,
|
||||
at91dataflashboot, boinc, dhcp, diffutils, edk2, fbv, gensio,
|
||||
glibc, go, gtest, iucode-tool, janet, libcec, libcurl,
|
||||
libfreeimage, libnftnl, libodb-boost, linux, linux-tools,
|
||||
lttng-modules, mariadb, memcached, mono, mutt,
|
||||
network-manager, nginx, ntfs-3g, ogre, openjpeg, openvpn,
|
||||
qemu, qpid-proton, qt5webengine, rauc, rockchip-mali, rsyslog,
|
||||
ruby, runc, rustc, samba4, strace, tiff, uclibc, unrar, vim,
|
||||
webkitgtk, wpewebkit, xdriver_xf86-video-amdgpu,
|
||||
xdriver_xf86-video-ati, zlib-ng
|
||||
|
||||
New packages: qt5webengine-chromium,
|
||||
qt5webengine-chromium-catapult
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14766: package dhcp on buildroot 2022.02.1 failed
|
||||
#14821: Samba server is failing to compile
|
||||
#14826: make qemu_x86_64_defconfig stopped working
|
||||
|
||||
2022.02.2, released May 29th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Archictures: Drop sh2a, correct x86 Bonnell variant
|
||||
|
||||
Toolchain: Bump GCC 11.x to 11.3, correct pre-installed
|
||||
external toolchain logic when toolchain is available in path.
|
||||
|
||||
Rework OCI filesystem entrypoint/command logic to handle
|
||||
command arguments
|
||||
|
||||
Defconfigs: Update Zynqmp zcu102/106 to final 2022.1 release,
|
||||
fix zcu106 PLL config
|
||||
|
||||
Updated/fixed packages: adwaita-icon-theme, afboot-stm32,
|
||||
aircrack-ng, alchemy, alsa-lib, arptables, assimp, asterisk,
|
||||
aubio, avrdude, azure-iot-sdk-c, batman-adv, binutils,
|
||||
bpftool, brotli, cairo, cifs-utils, clamav, cryptodev-linux,
|
||||
dhcp, diffutils, dmalloc, duktape, e2fsprogs, elf2flt, espeak,
|
||||
expat, ffmpeg, fluidsynth, freerdp, gcc, git, glorytun,
|
||||
glslsandbox-player, gnutls, go, gst1-imx, gst1-plugins-good,
|
||||
gzip, imagemagick, janus-gateway, keepalived, kompexsqlite,
|
||||
kvm-unit-tests, libarchive, libcgi, libcurl, libevdev,
|
||||
libeXosip2, libhtp, libinput, libkcapi, libkrb5, libks,
|
||||
libmdbx, libmnl, libnpupnp, libnspr, libopenssl, liboping,
|
||||
libpjsip, libpri, libselinux, libsigsegv, libv4l,
|
||||
libwebsockets, libxml2, linux, linux-tools, ltp-testsuite,
|
||||
luajit, lvm2, mali-driver, mariadb, mc, minizip, mpd, mutt,
|
||||
netatalk, netsurf, network-manager, nodejs, numactl, nut,
|
||||
omniorb, openbox, opencv4, openjdk, openjdk-bin, openocd,
|
||||
pamtester, pango, pcre2, php, php-apcu, pinentry, pixman,
|
||||
polkit, postgis, postgresql, pure-ftpd, python-aenum,
|
||||
python-avro, python-django, python-pillow, python-simplejson,
|
||||
python-urllib3, python-zopfli, python3, qemu, qpdf, quazip,
|
||||
redis, rockchip-mali, rsync, rt-tests, rust, rtl8818eu,
|
||||
rtl8189es, rtl8189fs, rtl_433, sam-ba, samba4, sdl2_ttf,
|
||||
shadowsocks-libev, shim, subversion, sun20i-d1-spl, suricata,
|
||||
systemd, tftpd, trinity, tvheadend, udev, uftrace,
|
||||
urandom-scripts, usb_modeswitch, valgrind, vde2, vim,
|
||||
wireplumber, wolfssl, wpa_supplicant, xlib_libXfont2, xz,
|
||||
zlib, zlog
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14751: LVM2 Outdated Link
|
||||
|
||||
2022.02.1, released April 11th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
@@ -815,7 +21,7 @@
|
||||
gst1-devtools, gst1-libav, gst1-plugins-bad,
|
||||
gst1-plugins-base, gst1-plugins-good, gst1-plugins-ugly,
|
||||
gst1-python, gst1-rtsp-server, gst1-vaapi, gstreamer1,
|
||||
gstreamer1-editing-services, haproxy, htop, intel-gmmlib,
|
||||
gstreamer1-editing-services, haproxym htop, intel-gmmlib,
|
||||
ipmiutil, iwd, jack1, jack2, lftp, libabseil-cpp, libbluray,
|
||||
libcamera-apps, libcoap, libcurl, libest, libgee, libglib2,
|
||||
libgtk3, libiec61850, libkrb5, libminiupnpc, libodb,
|
||||
@@ -979,29 +185,6 @@
|
||||
#14501: lttng-modules v2.11 package fails to build
|
||||
#14531: Package EFL - build error
|
||||
|
||||
2021.11.3, released March 24th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: apache, azure-iot-sdk-c, boinc, dbus,
|
||||
directfb, docker-engine, exempi, expat, flac, gdb, gdk-pixbuf,
|
||||
gnutls, go, haproxy, libcurl, libiec61850, libminiupnpc,
|
||||
libodb, libodb-boost, libopenssl, libpjsip, libressl, librsvg,
|
||||
libsrtp, libvirt, libxml2, libxslt, lxc, mariadb, minidlna,
|
||||
odb, openblas, openvpn, oprofile, php, pppd, python-ipython,
|
||||
python-twisted, raptor, rpi-firmware, samba4, seatd,
|
||||
timescaledb, usbguard, util-linux, vim, wavpack,
|
||||
wireless-regdb, wireplumber, wireshark, wolfssl, xscreensaver,
|
||||
xterm, zsh
|
||||
|
||||
New packages: gdk-pixbuf-xlib
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#13126: make fails - bzip2-1.0.6.tar.gz and DirectFB-1.7.7.tar..
|
||||
#14636: azure-iot-sdk-c: Installed headers do not compile
|
||||
#14641: oprofile can not find the events files
|
||||
|
||||
2021.11.2, released February 28th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
@@ -1651,41 +834,6 @@
|
||||
#13751: libopenssl (static): huge drop in performance in newer ..
|
||||
#13771: package htop has undeclared dependency on host python
|
||||
|
||||
2021.02.12, released April 6th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
pkg-stats: Limit memory use for CPE matching
|
||||
|
||||
Updated/fixed packages: gdk-pixbuf, jack2, libzlib, matio,
|
||||
nbd, netatalk, opus, python-paramiko, python-treq,
|
||||
python-twisted, spidev_test, unbound, urandom-scripts, vim,
|
||||
wireshark, zlib-ng, zziplib
|
||||
|
||||
2021.02.11, released March 25th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: apache, azure-iot-sdk-c, dbus,
|
||||
directfb, docker-engine, exempi, expat, flac, gdk-pixbuf,
|
||||
gnutls, go, haproxy, libcurl, libiec61850, libminiupnpc,
|
||||
libodb, libodb-boost, libopenssl, libpjsip, libressl, librsvg,
|
||||
libsrtp, libxml2, libxslt, lxc, mariadb, odbm openblas,
|
||||
openvpn, oprofile, php, pppd, python-ipython, python-treq,
|
||||
python-twisted, python-txbus, python-txtorcon, raptor,
|
||||
rpi-firmware, samba4, timescaledb, util-linux, vim, wavpack,
|
||||
wireless-regdb, wireshark, wolfssl, xscreensaver, xterm, zsh
|
||||
|
||||
New packages: gdk-pixbuf-xlib
|
||||
|
||||
Removed packages: python-coherence
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#13126: make fails - bzip2-1.0.6.tar.gz and DirectFB-1.7.7.tar..
|
||||
#14636: azure-iot-sdk-c: Installed headers do not compile
|
||||
#14641: oprofile can not find the events files
|
||||
|
||||
2021.02.10, released February 28th, 2022
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
@@ -87,8 +87,6 @@ config BR2_NEEDS_HOST_GCC_PLUGIN_SUPPORT
|
||||
|
||||
source "arch/Config.in"
|
||||
|
||||
source "toolchain/Config.in"
|
||||
|
||||
menu "Build options"
|
||||
|
||||
menu "Commands"
|
||||
@@ -287,15 +285,14 @@ config BR2_LUAROCKS_MIRROR
|
||||
|
||||
config BR2_CPAN_MIRROR
|
||||
string "CPAN mirror (Perl packages)"
|
||||
default "https://cpan.metacpan.org"
|
||||
default "http://cpan.metacpan.org"
|
||||
help
|
||||
CPAN (Comprehensive Perl Archive Network) is a repository of
|
||||
Perl packages. It has multiple software mirrors scattered
|
||||
around the world. This option allows you to select a mirror.
|
||||
|
||||
The list of mirrors is available at:
|
||||
http://mirrors.cpan.org/ (tabular)
|
||||
http://mirrors.cpan.org/map.html (clickable world map)
|
||||
http://search.cpan.org/mirror
|
||||
|
||||
endif
|
||||
|
||||
@@ -435,7 +432,7 @@ config BR2_ENABLE_RUNTIME_DEBUG
|
||||
config BR2_STRIP_strip
|
||||
bool "strip target binaries"
|
||||
default y
|
||||
depends on BR2_BINFMT_ELF
|
||||
depends on !BR2_PACKAGE_HOST_ELF2FLT
|
||||
help
|
||||
Binaries and libraries in the target filesystem will be
|
||||
stripped using the normal 'strip' command. This allows to save
|
||||
@@ -554,25 +551,6 @@ config BR2_OPTIMIZE_FAST
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_ENABLE_LTO
|
||||
bool "build packages with link-time optimisation"
|
||||
help
|
||||
Enable the link-time optimisation (LTO) option when building
|
||||
packages. Link-time optimisation re-runs optimisations at
|
||||
link time, which allows the compiler to do interprocedural
|
||||
analysis across compilation units and thus come with better
|
||||
results: smaller size and better performance.
|
||||
|
||||
Note that this analysis is limited to statically linked
|
||||
object files and libraries.
|
||||
|
||||
This option may significantly increase build times,
|
||||
sometimes 5 times longer, with only limited gains.
|
||||
|
||||
At this time, this option only enables LTO in packages that
|
||||
have an explicit configuration option for it. Other packages
|
||||
always enable LTO, but most packages never enable LTO.
|
||||
|
||||
config BR2_GOOGLE_BREAKPAD_ENABLE
|
||||
bool "Enable google-breakpad support"
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
@@ -623,7 +601,6 @@ choice
|
||||
|
||||
config BR2_STATIC_LIBS
|
||||
bool "static only"
|
||||
depends on !BR2_TOOLCHAIN_USES_GLIBC
|
||||
help
|
||||
Build and use only static libraries. No shared libraries will
|
||||
be installed on the target. This potentially increases your
|
||||
@@ -632,9 +609,6 @@ config BR2_STATIC_LIBS
|
||||
option is enabled, due to their need for dynamic library
|
||||
support.
|
||||
|
||||
comment "static only needs a toolchain w/ uclibc or musl"
|
||||
depends on BR2_TOOLCHAIN_USES_GLIBC
|
||||
|
||||
config BR2_SHARED_LIBS
|
||||
bool "shared only"
|
||||
depends on BR2_BINFMT_SUPPORTS_SHARED
|
||||
@@ -937,6 +911,8 @@ comment "Fortify Source needs a glibc toolchain and optimization"
|
||||
depends on (!BR2_TOOLCHAIN_USES_GLIBC || BR2_OPTIMIZE_0)
|
||||
endmenu
|
||||
|
||||
source "toolchain/Config.in"
|
||||
|
||||
source "system/Config.in"
|
||||
|
||||
source "linux/Config.in"
|
||||
|
||||
@@ -144,229 +144,8 @@ endif
|
||||
|
||||
###############################################################################
|
||||
|
||||
comment "Legacy options removed in 2022.11"
|
||||
|
||||
config BR2_PACKAGE_RABBITMQ_SERVER
|
||||
bool "rabbitmq-server removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Package was removed because it was unmaintained and had
|
||||
known security issues.
|
||||
|
||||
config BR2_PACKAGE_LIBOPENSSL_ENABLE_RC5
|
||||
bool "libopenssl rc5 was never enabled"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The libopenssl option for rc5 never actually enabled rc5,
|
||||
which had always been disabled in Buildroot.
|
||||
|
||||
config BR2_PACKAGE_LIBDCADEC
|
||||
bool "package was deprecated upstream, use ffmpeg instead"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
This decoder has been fully integrated into FFmpeg master
|
||||
branch and further development will continue there. Using
|
||||
FFmpeg for DTS decoding is now recommended.
|
||||
|
||||
config BR2_KERNEL_HEADERS_5_17
|
||||
bool "kernel headers version 5.17.x are no longer supported"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 5.17.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed.
|
||||
|
||||
config BR2_iwmmxt
|
||||
bool "ARM iwmmxt variant removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for the ARM iwmmxt architecture variant in GCC has
|
||||
bitroten and is no longer maintained. GCC maintainers
|
||||
recommend to no longer use it, and suggest to use "xscale"
|
||||
as a replacement architecture variant. See
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106972
|
||||
|
||||
config BR2_PACKAGE_UHD_N230
|
||||
bool "uhd N230 support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
uhd N230 support has been dropped by upstream since version
|
||||
4.0.0.0.
|
||||
|
||||
config BR2_PACKAGE_UHD_RFNOC
|
||||
bool "uhd RFNoC support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
uhd RFNoC support has been dropped by upstream since version
|
||||
4.0.0.0.
|
||||
|
||||
config BR2_PACKAGE_GPSD_OLDSTYLE
|
||||
bool "gpsd oldstyle removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
gpsd oldstyle option has been removed by upstream in 2015.
|
||||
|
||||
config BR2_GDB_VERSION_9_2
|
||||
bool "gdb 9.2 removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for GDB 9.2 has been removed. A new version has
|
||||
automatically been selected.
|
||||
|
||||
comment "Legacy options removed in 2022.08"
|
||||
|
||||
config BR2_ECLIPSE_REGISTER
|
||||
bool "Eclipse integration removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The Buildroot integration with the Eclipse IDE has been
|
||||
removed, as the corresponding Eclipse plugin is no longer
|
||||
maintained, and is no longer usable with current versions of
|
||||
Eclipse.
|
||||
|
||||
config BR2_csky
|
||||
bool "csky architecture removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The csky architecture was removed, by lack of toolchain
|
||||
support.
|
||||
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER_I915
|
||||
bool "mesa DRI i915 driver removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The DRI i915 driver was removed upstream.
|
||||
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER_I965
|
||||
bool "mesa DRI i965 driver removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The DRI i965 driver was removed upstream.
|
||||
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU
|
||||
bool "mesa DRI nouveau driver removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The DRI radeon nouveau was removed upstream.
|
||||
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON
|
||||
bool "mesa DRI radeon r100 driver removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The DRI radeon r100 driver was removed upstream.
|
||||
|
||||
config BR2_GCC_VERSION_9_X
|
||||
bool "gcc 9.x support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for gcc version 9.x has been removed. The current
|
||||
default version (11.x or later) has been selected instead.
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_WDDX
|
||||
bool "php wddx removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The WDDX extension was removed from php.
|
||||
|
||||
config BR2_nds32
|
||||
bool "nds32 architecture removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for the nds32 architecture has been removed, due to
|
||||
its support being removed from the upstream Linux kernel,
|
||||
and its lack of maintenance in Buildroot.
|
||||
|
||||
config BR2_PACKAGE_RTL8723BS
|
||||
bool "rtl8723bs removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Package was removed because it is not compatible with latest
|
||||
kernels and is not maintained anymore: code has been removed
|
||||
in 2017 as driver is available in the linux-next tree.
|
||||
|
||||
comment "Legacy options removed in 2022.05"
|
||||
|
||||
config BR2_PACKAGE_KTAP
|
||||
bool "ktap removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Package was removed because it is not compatible with latest
|
||||
kernels and is not maintained anymore (no release since 2013).
|
||||
|
||||
config BR2_KERNEL_HEADERS_5_16
|
||||
bool "kernel headers version 5.16.x are no longer supported"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 5.16.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed.
|
||||
|
||||
config BR2_KERNEL_HEADERS_4_4
|
||||
bool "kernel headers version 4.4.x are no longer supported"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 4.4.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_32_X
|
||||
bool "binutils 2.32.x has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
binutils 2.32 has been removed, use a newer version.
|
||||
|
||||
config BR2_sh2a
|
||||
bool "sh2a architecture support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The SuperH 2A (SH2A) architecture was not maintained, and
|
||||
broken, so its support was dropped.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_35_X
|
||||
bool "binutils 2.35.x has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
binutils 2.35 has been removed, use a newer version.
|
||||
|
||||
config BR2_PACKAGE_BOOST_LAYOUT_TAGGED
|
||||
bool "boost tagged layout removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Boost tagged layout isn't handled by some packages (e.g. botan
|
||||
or libcpprestsdk).
|
||||
|
||||
config BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
|
||||
bool "boost versioned layout removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Boost versioned layout isn't handled by a number of autotools
|
||||
and cmake packages (e.g. azmq, cc-tool, i2pd).
|
||||
|
||||
comment "Legacy options removed in 2022.02"
|
||||
|
||||
config BR2_TARGET_ROOTFS_OCI_ENTRYPOINT_ARGS
|
||||
string "entrypoint argumetns has been changed as command"
|
||||
help
|
||||
The OCI image BR2_TARGET_ROOTFS_OCI_ENTRYPOINT_ARGS option
|
||||
has been renamed to BR2_TARGET_ROOTFS_OCI_CMD to better
|
||||
reflect its relation to the actual 'command' of the OCI
|
||||
image.
|
||||
|
||||
The new semantic for BR2_TARGET_ROOTFS_OCI_CMD is slightly
|
||||
differnt in relation to how it is interpreted, so be sure to
|
||||
review the help entry for it.
|
||||
|
||||
Due to this breaking change, the old value here could not be
|
||||
set to the new variable.
|
||||
|
||||
config BR2_TARGET_ROOTFS_OCI_ENTRYPOINT_ARGS_WRAP
|
||||
bool
|
||||
default y if BR2_TARGET_ROOTFS_OCI_ENTRYPOINT_ARGS != ""
|
||||
select BR2_LEGACY
|
||||
|
||||
config BR2_PACKAGE_LIBCURL_LIBNSS
|
||||
bool "libcurl NSS removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
NSS was deprecated in libcurl 7.82.0.
|
||||
|
||||
config BR2_PACKAGE_WESTON_DEFAULT_FBDEV
|
||||
bool "weston fbdev removed"
|
||||
select BR2_LEGACY
|
||||
@@ -4021,7 +3800,6 @@ config BR2_PACKAGE_ELEMENTARY
|
||||
|
||||
config BR2_LINUX_KERNEL_CUSTOM_LOCAL
|
||||
bool "Linux kernel local directory option removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The option to select a local directory as the source of the
|
||||
Linux kernel has been removed. It hurts reproducibility of
|
||||
|
||||
+154
-229
File diff suppressed because it is too large
Load Diff
@@ -92,9 +92,9 @@ all:
|
||||
.PHONY: all
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2022.11.1
|
||||
export BR2_VERSION := 2022.02.1
|
||||
# Actual time the release is cut (for reproducible builds)
|
||||
BR2_VERSION_EPOCH = 1674028000
|
||||
BR2_VERSION_EPOCH = 1649713000
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
@@ -478,7 +478,8 @@ BR_CACHE_DIR ?= $(call qstrip,$(BR2_CCACHE_DIR))
|
||||
export BR_CACHE_DIR
|
||||
HOSTCC = $(CCACHE) $(HOSTCC_NOCCACHE)
|
||||
HOSTCXX = $(CCACHE) $(HOSTCXX_NOCCACHE)
|
||||
export BR2_USE_CCACHE ?= 1
|
||||
else
|
||||
export BR_NO_CCACHE
|
||||
endif
|
||||
|
||||
# Scripts in support/ or post-build scripts may need to reference
|
||||
@@ -564,12 +565,14 @@ ifeq ($(BR_FORCE_CHECK_DEPENDENCIES),YES)
|
||||
|
||||
define CHECK_ONE_DEPENDENCY
|
||||
ifeq ($$($(2)_TYPE),target)
|
||||
ifeq ($$($(2)_IS_VIRTUAL),)
|
||||
ifneq ($$($$($(2)_KCONFIG_VAR)),y)
|
||||
$$(error $$($(2)_NAME) is in the dependency chain of $$($(1)_NAME) that \
|
||||
has added it to its _DEPENDENCIES variable without selecting it or \
|
||||
depending on it from Config.in)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endef
|
||||
|
||||
$(foreach pkg,$(call UPPERCASE,$(PACKAGES)),\
|
||||
@@ -646,6 +649,14 @@ STRIP_FIND_SPECIAL_LIBS_CMD = \
|
||||
\( -name 'ld-*.so*' -o -name 'libpthread*.so*' \) \
|
||||
-print0
|
||||
|
||||
ifeq ($(BR2_ECLIPSE_REGISTER),y)
|
||||
define TOOLCHAIN_ECLIPSE_REGISTER
|
||||
./support/scripts/eclipse-register-toolchain `readlink -f $(O)` \
|
||||
$(notdir $(TARGET_CROSS)) $(BR2_ARCH)
|
||||
endef
|
||||
TARGET_FINALIZE_HOOKS += TOOLCHAIN_ECLIPSE_REGISTER
|
||||
endif
|
||||
|
||||
# Generate locale data.
|
||||
ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y)
|
||||
GLIBC_GENERATE_LOCALES = $(call qstrip,$(BR2_GENERATE_LOCALE))
|
||||
@@ -653,7 +664,7 @@ ifneq ($(GLIBC_GENERATE_LOCALES),)
|
||||
PACKAGES += host-localedef
|
||||
|
||||
define GENERATE_GLIBC_LOCALES
|
||||
+$(MAKE) -f support/misc/gen-glibc-locales.mk \
|
||||
$(MAKE) -f support/misc/gen-glibc-locales.mk \
|
||||
ENDIAN=$(call LOWERCASE,$(BR2_ENDIAN)) \
|
||||
LOCALES="$(GLIBC_GENERATE_LOCALES)" \
|
||||
Q=$(Q)
|
||||
@@ -724,7 +735,7 @@ target-finalize: $(PACKAGES) $(TARGET_DIR) host-finalize
|
||||
rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/share/aclocal \
|
||||
$(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \
|
||||
$(TARGET_DIR)/usr/lib/cmake $(TARGET_DIR)/usr/share/cmake \
|
||||
$(TARGET_DIR)/usr/lib/rpm $(TARGET_DIR)/usr/doc
|
||||
$(TARGET_DIR)/usr/doc
|
||||
find $(TARGET_DIR)/usr/{lib,share}/ -name '*.cmake' -print0 | xargs -0 rm -f
|
||||
find $(TARGET_DIR)/lib/ $(TARGET_DIR)/usr/lib/ $(TARGET_DIR)/usr/libexec/ \
|
||||
\( -name '*.a' -o -name '*.la' -o -name '*.prl' \) -print0 | xargs -0 rm -f
|
||||
@@ -799,14 +810,6 @@ endif # merged /usr
|
||||
|
||||
touch $(TARGET_DIR)/usr
|
||||
|
||||
# Note: this will run in the filesystem context, so will use a copy
|
||||
# of target/, not the real one, so the files are still available on
|
||||
# re-builds (foo-rebuild, etc...)
|
||||
define ROOTFS_RM_HWDB_DATA
|
||||
rm -rf $(TARGET_DIR)/usr/lib/udev/hwdb.d/ $(TARGET_DIR)/etc/udev/hwdb.d/
|
||||
endef
|
||||
ROOTFS_PRE_CMD_HOOKS += ROOTFS_RM_HWDB_DATA
|
||||
|
||||
.PHONY: target-post-image
|
||||
target-post-image: $(TARGETS_ROOTFS) target-finalize staging-finalize
|
||||
@rm -f $(ROOTFS_COMMON_TAR)
|
||||
@@ -1010,18 +1013,13 @@ oldconfig syncconfig olddefconfig: $(BUILD_DIR)/buildroot-config/conf outputmake
|
||||
defconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< --defconfig$(if $(DEFCONFIG),=$(DEFCONFIG)) $(CONFIG_CONFIG_IN)
|
||||
|
||||
%_defconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@defconfig=$(or \
|
||||
$(firstword \
|
||||
$(foreach d, \
|
||||
$(call reverse,$(TOPDIR) $(BR2_EXTERNAL_DIRS)), \
|
||||
$(wildcard $(d)/configs/$@) \
|
||||
) \
|
||||
), \
|
||||
$(error "Can't find $@") \
|
||||
); \
|
||||
$(COMMON_CONFIG_ENV) BR2_DEFCONFIG=$${defconfig} \
|
||||
$< --defconfig=$${defconfig} $(CONFIG_CONFIG_IN)
|
||||
define percent_defconfig
|
||||
# Override the BR2_DEFCONFIG from COMMON_CONFIG_ENV with the new defconfig
|
||||
%_defconfig: $(BUILD_DIR)/buildroot-config/conf $(1)/configs/%_defconfig outputmakefile
|
||||
@$$(COMMON_CONFIG_ENV) BR2_DEFCONFIG=$(1)/configs/$$@ \
|
||||
$$< --defconfig=$(1)/configs/$$@ $$(CONFIG_CONFIG_IN)
|
||||
endef
|
||||
$(eval $(foreach d,$(call reverse,$(TOPDIR) $(BR2_EXTERNAL_DIRS)),$(call percent_defconfig,$(d))$(sep)))
|
||||
|
||||
update-defconfig: savedefconfig
|
||||
|
||||
@@ -1053,22 +1051,23 @@ ifeq ($(NEED_WRAPPER),y)
|
||||
$(Q)$(TOPDIR)/support/scripts/mkmakefile $(TOPDIR) $(O)
|
||||
endif
|
||||
|
||||
.PHONY: check-make-version
|
||||
check-make-version:
|
||||
ifneq ($(filter $(RUNNING_MAKE_VERSION),4.3),)
|
||||
@echo "Make 4.3 doesn't support 'printvars' and 'show-vars' recipes"
|
||||
@exit 1
|
||||
endif
|
||||
|
||||
# printvars prints all the variables currently defined in our
|
||||
# Makefiles. Alternatively, if a non-empty VARS variable is passed,
|
||||
# only the variables matching the make pattern passed in VARS are
|
||||
# displayed.
|
||||
# show-vars does the same, but as a JSON dictionnary.
|
||||
#
|
||||
# Note: we iterate of .VARIABLES and filter each variable individually,
|
||||
# to workaround a bug in make 4.3; see https://savannah.gnu.org/bugs/?59093
|
||||
.PHONY: printvars
|
||||
printvars:
|
||||
ifndef VARS
|
||||
$(error Please pass a non-empty VARS to 'make printvars')
|
||||
endif
|
||||
printvars: check-make-version
|
||||
@:
|
||||
$(foreach V, \
|
||||
$(sort $(foreach X, $(.VARIABLES), $(filter $(VARS),$(X)))), \
|
||||
$(sort $(filter $(VARS),$(.VARIABLES))), \
|
||||
$(if $(filter-out environment% default automatic, \
|
||||
$(origin $V)), \
|
||||
$(if $(QUOTED_VARS),\
|
||||
@@ -1076,29 +1075,21 @@ endif
|
||||
$(info $V=$(if $(RAW_VARS),$(value $V),$($V))))))
|
||||
# ')))) # Syntax colouring...
|
||||
|
||||
# See details above, same as for printvars
|
||||
.PHONY: show-vars
|
||||
show-vars: VARS?=%
|
||||
show-vars:
|
||||
show-vars: check-make-version
|
||||
@:
|
||||
$(foreach i, \
|
||||
$(call clean-json, { \
|
||||
$(info $(call clean-json, { \
|
||||
$(foreach V, \
|
||||
$(.VARIABLES), \
|
||||
$(and $(filter $(VARS),$(V)) \
|
||||
, \
|
||||
$(filter-out environment% default automatic, $(origin $V)) \
|
||||
, \
|
||||
$(sort $(filter $(VARS),$(.VARIABLES))), \
|
||||
$(if $(filter-out environment% default automatic, $(origin $V)), \
|
||||
"$V": { \
|
||||
"expanded": $(call mk-json-str,$($V))$(comma) \
|
||||
"raw": $(call mk-json-str,$(value $V)) \
|
||||
}$(comma) \
|
||||
) \
|
||||
) \
|
||||
} ) \
|
||||
, \
|
||||
$(info $(i)) \
|
||||
)
|
||||
} ))
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@@ -1257,8 +1248,7 @@ check-flake8:
|
||||
|
||||
check-package:
|
||||
find $(TOPDIR) -type f \( -name '*.mk' -o -name '*.hash' -o -name 'Config.*' -o -name '*.patch' \) \
|
||||
-a -not -name '*.orig' -a -not -name '*.rej' \
|
||||
-exec ./utils/check-package --exclude=Sob {} +
|
||||
-exec ./utils/check-package --exclude=Sob --exclude=HashSpaces {} +
|
||||
|
||||
include docs/manual/manual.mk
|
||||
-include $(foreach dir,$(BR2_EXTERNAL_DIRS),$(sort $(wildcard $(dir)/docs/*/*.mk)))
|
||||
|
||||
+108
-81
@@ -9,7 +9,10 @@ config BR2_KERNEL_64_USERLAND_32
|
||||
config BR2_SOFT_FLOAT
|
||||
bool
|
||||
|
||||
config BR2_USE_MMU
|
||||
config BR2_ARCH_HAS_MMU_MANDATORY
|
||||
bool
|
||||
|
||||
config BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
bool
|
||||
|
||||
choice
|
||||
@@ -20,7 +23,7 @@ choice
|
||||
|
||||
config BR2_arcle
|
||||
bool "ARC (little endian)"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
@@ -28,7 +31,7 @@ config BR2_arcle
|
||||
|
||||
config BR2_arceb
|
||||
bool "ARC (big endian)"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
@@ -46,7 +49,7 @@ config BR2_arm
|
||||
|
||||
config BR2_armeb
|
||||
bool "ARM (big endian)"
|
||||
select BR2_USE_MMU
|
||||
# MMU support is set by the subarchitecture file, arch/Config.in.arm
|
||||
help
|
||||
ARM is a 32-bit reduced instruction set computer (RISC)
|
||||
instruction set architecture (ISA) developed by ARM Holdings.
|
||||
@@ -57,6 +60,7 @@ config BR2_armeb
|
||||
config BR2_aarch64
|
||||
bool "AArch64 (little endian)"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Aarch64 is a 64-bit architecture developed by ARM Holdings.
|
||||
http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
|
||||
@@ -65,14 +69,25 @@ config BR2_aarch64
|
||||
config BR2_aarch64_be
|
||||
bool "AArch64 (big endian)"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Aarch64 is a 64-bit architecture developed by ARM Holdings.
|
||||
http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
|
||||
http://en.wikipedia.org/wiki/ARM
|
||||
|
||||
config BR2_csky
|
||||
bool "csky"
|
||||
select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
help
|
||||
csky is processor IP from china.
|
||||
http://www.c-sky.com/
|
||||
http://www.github.com/c-sky
|
||||
|
||||
config BR2_i386
|
||||
bool "i386"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Intel i386 architecture compatible microprocessor
|
||||
http://en.wikipedia.org/wiki/I386
|
||||
@@ -86,7 +101,7 @@ config BR2_m68k
|
||||
|
||||
config BR2_microblazeel
|
||||
bool "Microblaze AXI (little endian)"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Soft processor core designed for Xilinx FPGAs from Xilinx. AXI
|
||||
bus based architecture (little endian)
|
||||
@@ -95,7 +110,7 @@ config BR2_microblazeel
|
||||
|
||||
config BR2_microblazebe
|
||||
bool "Microblaze non-AXI (big endian)"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Soft processor core designed for Xilinx FPGAs from Xilinx. PLB
|
||||
bus based architecture (non-AXI, big endian)
|
||||
@@ -104,7 +119,7 @@ config BR2_microblazebe
|
||||
|
||||
config BR2_mips
|
||||
bool "MIPS (big endian)"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Big
|
||||
endian.
|
||||
@@ -113,7 +128,7 @@ config BR2_mips
|
||||
|
||||
config BR2_mipsel
|
||||
bool "MIPS (little endian)"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Little
|
||||
endian.
|
||||
@@ -123,7 +138,7 @@ config BR2_mipsel
|
||||
config BR2_mips64
|
||||
bool "MIPS64 (big endian)"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Big
|
||||
endian.
|
||||
@@ -133,16 +148,24 @@ config BR2_mips64
|
||||
config BR2_mips64el
|
||||
bool "MIPS64 (little endian)"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Little
|
||||
endian.
|
||||
http://www.mips.com/
|
||||
http://en.wikipedia.org/wiki/MIPS_Technologies
|
||||
|
||||
config BR2_nds32
|
||||
bool "nds32"
|
||||
select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
nds32 is a 32-bit architecture developed by Andes Technology.
|
||||
https://en.wikipedia.org/wiki/Andes_Technology
|
||||
|
||||
config BR2_nios2
|
||||
bool "Nios II"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Nios II is a soft core processor from Altera Corporation.
|
||||
http://www.altera.com/
|
||||
@@ -150,14 +173,14 @@ config BR2_nios2
|
||||
|
||||
config BR2_or1k
|
||||
bool "OpenRISC"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
OpenRISC is a free and open processor for embedded system.
|
||||
http://openrisc.io
|
||||
|
||||
config BR2_powerpc
|
||||
bool "PowerPC"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola
|
||||
alliance. Big endian.
|
||||
@@ -167,7 +190,7 @@ config BR2_powerpc
|
||||
config BR2_powerpc64
|
||||
bool "PowerPC64 (big endian)"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola
|
||||
alliance. Big endian.
|
||||
@@ -177,7 +200,7 @@ config BR2_powerpc64
|
||||
config BR2_powerpc64le
|
||||
bool "PowerPC64 (little endian)"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola
|
||||
alliance. Little endian.
|
||||
@@ -197,7 +220,7 @@ config BR2_riscv
|
||||
config BR2_s390x
|
||||
bool "s390x"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
s390x is a big-endian architecture made by IBM.
|
||||
http://www.ibm.com/
|
||||
@@ -205,7 +228,7 @@ config BR2_s390x
|
||||
|
||||
config BR2_sh
|
||||
bool "SuperH"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
help
|
||||
SuperH (or SH) is a 32-bit reduced instruction set computer
|
||||
(RISC) instruction set architecture (ISA) developed by
|
||||
@@ -215,7 +238,7 @@ config BR2_sh
|
||||
|
||||
config BR2_sparc
|
||||
bool "SPARC"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
SPARC (from Scalable Processor Architecture) is a RISC
|
||||
instruction set architecture (ISA) developed by Sun
|
||||
@@ -226,7 +249,7 @@ config BR2_sparc
|
||||
config BR2_sparc64
|
||||
bool "SPARC64"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
SPARC (from Scalable Processor Architecture) is a RISC
|
||||
instruction set architecture (ISA) developed by Sun
|
||||
@@ -237,7 +260,7 @@ config BR2_sparc64
|
||||
config BR2_x86_64
|
||||
bool "x86_64"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
x86-64 is an extension of the x86 instruction set (Intel i386
|
||||
architecture compatible microprocessor).
|
||||
@@ -300,10 +323,6 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_10
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_12
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
|
||||
# The following string values are defined by the individual
|
||||
# Config.in.$ARCH files
|
||||
config BR2_ARCH
|
||||
@@ -358,62 +377,6 @@ config BR2_BINFMT_SUPPORTS_SHARED
|
||||
config BR2_READELF_ARCH_NAME
|
||||
string
|
||||
|
||||
if BR2_arcle || BR2_arceb
|
||||
source "arch/Config.in.arc"
|
||||
endif
|
||||
|
||||
if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be
|
||||
source "arch/Config.in.arm"
|
||||
endif
|
||||
|
||||
if BR2_m68k
|
||||
source "arch/Config.in.m68k"
|
||||
endif
|
||||
|
||||
if BR2_microblazeel || BR2_microblazebe
|
||||
source "arch/Config.in.microblaze"
|
||||
endif
|
||||
|
||||
if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
|
||||
source "arch/Config.in.mips"
|
||||
endif
|
||||
|
||||
if BR2_nios2
|
||||
source "arch/Config.in.nios2"
|
||||
endif
|
||||
|
||||
if BR2_or1k
|
||||
source "arch/Config.in.or1k"
|
||||
endif
|
||||
|
||||
if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
|
||||
source "arch/Config.in.powerpc"
|
||||
endif
|
||||
|
||||
if BR2_riscv
|
||||
source "arch/Config.in.riscv"
|
||||
endif
|
||||
|
||||
if BR2_s390x
|
||||
source "arch/Config.in.s390x"
|
||||
endif
|
||||
|
||||
if BR2_sh
|
||||
source "arch/Config.in.sh"
|
||||
endif
|
||||
|
||||
if BR2_sparc || BR2_sparc64
|
||||
source "arch/Config.in.sparc"
|
||||
endif
|
||||
|
||||
if BR2_i386 || BR2_x86_64
|
||||
source "arch/Config.in.x86"
|
||||
endif
|
||||
|
||||
if BR2_xtensa
|
||||
source "arch/Config.in.xtensa"
|
||||
endif
|
||||
|
||||
# Set up target binary format
|
||||
choice
|
||||
prompt "Target Binary Format"
|
||||
@@ -464,4 +427,68 @@ config BR2_BINFMT_FLAT_SHARED
|
||||
|
||||
endchoice
|
||||
|
||||
if BR2_arcle || BR2_arceb
|
||||
source "arch/Config.in.arc"
|
||||
endif
|
||||
|
||||
if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be
|
||||
source "arch/Config.in.arm"
|
||||
endif
|
||||
|
||||
if BR2_csky
|
||||
source "arch/Config.in.csky"
|
||||
endif
|
||||
|
||||
if BR2_m68k
|
||||
source "arch/Config.in.m68k"
|
||||
endif
|
||||
|
||||
if BR2_microblazeel || BR2_microblazebe
|
||||
source "arch/Config.in.microblaze"
|
||||
endif
|
||||
|
||||
if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
|
||||
source "arch/Config.in.mips"
|
||||
endif
|
||||
|
||||
if BR2_nds32
|
||||
source "arch/Config.in.nds32"
|
||||
endif
|
||||
|
||||
if BR2_nios2
|
||||
source "arch/Config.in.nios2"
|
||||
endif
|
||||
|
||||
if BR2_or1k
|
||||
source "arch/Config.in.or1k"
|
||||
endif
|
||||
|
||||
if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
|
||||
source "arch/Config.in.powerpc"
|
||||
endif
|
||||
|
||||
if BR2_riscv
|
||||
source "arch/Config.in.riscv"
|
||||
endif
|
||||
|
||||
if BR2_s390x
|
||||
source "arch/Config.in.s390x"
|
||||
endif
|
||||
|
||||
if BR2_sh
|
||||
source "arch/Config.in.sh"
|
||||
endif
|
||||
|
||||
if BR2_sparc || BR2_sparc64
|
||||
source "arch/Config.in.sparc"
|
||||
endif
|
||||
|
||||
if BR2_i386 || BR2_x86_64
|
||||
source "arch/Config.in.x86"
|
||||
endif
|
||||
|
||||
if BR2_xtensa
|
||||
source "arch/Config.in.xtensa"
|
||||
endif
|
||||
|
||||
endmenu # Target options
|
||||
|
||||
+59
-33
@@ -73,26 +73,21 @@ config BR2_ARM_CPU_HAS_THUMB2
|
||||
|
||||
config BR2_ARM_CPU_ARMV4
|
||||
bool
|
||||
select BR2_USE_MMU
|
||||
|
||||
config BR2_ARM_CPU_ARMV5
|
||||
bool
|
||||
select BR2_USE_MMU
|
||||
|
||||
config BR2_ARM_CPU_ARMV6
|
||||
bool
|
||||
select BR2_USE_MMU
|
||||
|
||||
config BR2_ARM_CPU_ARMV7A
|
||||
bool
|
||||
select BR2_USE_MMU
|
||||
|
||||
config BR2_ARM_CPU_ARMV7M
|
||||
bool
|
||||
|
||||
config BR2_ARM_CPU_ARMV8A
|
||||
bool
|
||||
select BR2_USE_MMU
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
@@ -108,19 +103,23 @@ config BR2_arm920t
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_arm922t
|
||||
bool "arm922t"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_fa526
|
||||
bool "fa526/626"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_strongarm
|
||||
bool "strongarm sa110/sa1100"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
comment "armv5 cores"
|
||||
config BR2_arm926t
|
||||
@@ -129,11 +128,18 @@ config BR2_arm926t
|
||||
select BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_iwmmxt
|
||||
bool "iwmmxt"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_xscale
|
||||
bool "xscale"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
comment "armv6 cores"
|
||||
config BR2_arm1136j_s
|
||||
@@ -141,29 +147,34 @@ config BR2_arm1136j_s
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_arm1136jf_s
|
||||
bool "arm1136jf-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_VFPV2
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_arm1176jz_s
|
||||
bool "arm1176jz-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_arm1176jzf_s
|
||||
bool "arm1176jzf-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_VFPV2
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_arm11mpcore
|
||||
bool "mpcore"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
comment "armv7a cores"
|
||||
config BR2_cortex_a5
|
||||
@@ -173,6 +184,7 @@ config BR2_cortex_a5
|
||||
select BR2_ARM_CPU_MAYBE_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a7
|
||||
bool "cortex-A7"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -180,6 +192,7 @@ config BR2_cortex_a7
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a8
|
||||
bool "cortex-A8"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -187,6 +200,7 @@ config BR2_cortex_a8
|
||||
select BR2_ARM_CPU_HAS_VFPV3
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a9
|
||||
bool "cortex-A9"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -194,6 +208,7 @@ config BR2_cortex_a9
|
||||
select BR2_ARM_CPU_MAYBE_HAS_VFPV3
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a12
|
||||
bool "cortex-A12"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -201,6 +216,7 @@ config BR2_cortex_a12
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a15
|
||||
bool "cortex-A15"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -208,6 +224,7 @@ config BR2_cortex_a15
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a15_a7
|
||||
bool "cortex-A15/A7 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -215,6 +232,7 @@ config BR2_cortex_a15_a7
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
config BR2_cortex_a17
|
||||
bool "cortex-A17"
|
||||
@@ -223,6 +241,7 @@ config BR2_cortex_a17
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_cortex_a17_a7
|
||||
bool "cortex-A17/A7 big.LITTLE"
|
||||
@@ -231,15 +250,15 @@ config BR2_cortex_a17_a7
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_pj4
|
||||
bool "pj4"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_VFPV3
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
# Cortex-M cores are only supported for little endian configurations
|
||||
if BR2_arm
|
||||
comment "armv7m cores"
|
||||
config BR2_cortex_m3
|
||||
bool "cortex-M3"
|
||||
@@ -256,7 +275,6 @@ config BR2_cortex_m7
|
||||
select BR2_ARM_CPU_MAYBE_HAS_FPV5
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
endif # BR2_arm
|
||||
endif # !BR2_ARCH_IS_64
|
||||
|
||||
comment "armv8 cores"
|
||||
@@ -268,6 +286,7 @@ config BR2_cortex_a32
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a35
|
||||
bool "cortex-A35"
|
||||
@@ -276,6 +295,7 @@ config BR2_cortex_a35
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a53
|
||||
bool "cortex-A53"
|
||||
@@ -284,6 +304,7 @@ config BR2_cortex_a53
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a57
|
||||
bool "cortex-A57"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
@@ -291,6 +312,7 @@ config BR2_cortex_a57
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a57_a53
|
||||
bool "cortex-A57/A53 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
@@ -298,6 +320,7 @@ config BR2_cortex_a57_a53
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a72
|
||||
bool "cortex-A72"
|
||||
@@ -306,6 +329,7 @@ config BR2_cortex_a72
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_cortex_a72_a53
|
||||
bool "cortex-A72/A53 big.LITTLE"
|
||||
@@ -314,6 +338,7 @@ config BR2_cortex_a72_a53
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a73
|
||||
bool "cortex-A73"
|
||||
@@ -322,6 +347,7 @@ config BR2_cortex_a73
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_cortex_a73_a35
|
||||
bool "cortex-A73/A35 big.LITTLE"
|
||||
@@ -330,6 +356,7 @@ config BR2_cortex_a73_a35
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_cortex_a73_a53
|
||||
bool "cortex-A73/A53 big.LITTLE"
|
||||
@@ -338,12 +365,14 @@ config BR2_cortex_a73_a53
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_emag
|
||||
bool "emag"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_exynos_m1
|
||||
bool "exynos-m1"
|
||||
@@ -352,54 +381,63 @@ config BR2_exynos_m1
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_falkor
|
||||
bool "falkor"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_phecda
|
||||
bool "phecda"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_qdf24xx
|
||||
bool "qdf24xx"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_thunderx
|
||||
bool "thunderx (aka octeontx)"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_thunderxt81
|
||||
bool "thunderxt81 (aka octeontx81)"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderxt83
|
||||
bool "thunderxt83 (aka octeontx83)"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderxt88
|
||||
bool "thunderxt88"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderxt88p1
|
||||
bool "thunderxt88p1"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_xgene1
|
||||
bool "xgene1"
|
||||
@@ -408,6 +446,7 @@ config BR2_xgene1
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
|
||||
comment "armv8.1a cores"
|
||||
@@ -416,18 +455,21 @@ config BR2_thunderx2t99
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderx2t99p1
|
||||
bool "thunderx2t99p1"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_vulcan
|
||||
bool "vulcan"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
|
||||
comment "armv8.2a cores"
|
||||
@@ -436,18 +478,21 @@ config BR2_cortex_a55
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
||||
config BR2_cortex_a75
|
||||
bool "cortex-A75"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
||||
config BR2_cortex_a75_a55
|
||||
bool "cortex-A75/A55 big.LITTLE"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
||||
config BR2_cortex_a76
|
||||
bool "cortex-A76"
|
||||
@@ -456,6 +501,7 @@ config BR2_cortex_a76
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_cortex_a76_a55
|
||||
bool "cortex-A76/A55 big.LITTLE"
|
||||
@@ -464,6 +510,7 @@ config BR2_cortex_a76_a55
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_neoverse_n1
|
||||
bool "neoverse-N1 (aka ares)"
|
||||
@@ -472,12 +519,14 @@ config BR2_neoverse_n1
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_tsv110
|
||||
bool "tsv110"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
|
||||
comment "armv8.4a cores"
|
||||
@@ -486,6 +535,7 @@ config BR2_saphira
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
||||
endchoice
|
||||
|
||||
@@ -766,31 +816,6 @@ config BR2_ARM_INSTRUCTIONS_THUMB2
|
||||
|
||||
endchoice
|
||||
|
||||
choice
|
||||
prompt "MMU Page Size"
|
||||
default BR2_ARM64_PAGE_SIZE_4K
|
||||
depends on BR2_aarch64 || BR2_aarch64_be
|
||||
help
|
||||
The default is 4KB, and you should probably keep this unless
|
||||
you know what you are doing. In particular, the kernel
|
||||
configuration must match this choice. If your kernel is
|
||||
built by Buildroot, the kernel configuration is
|
||||
automatically adjusted, but not if you built your kernel
|
||||
outside of Buildroot.
|
||||
|
||||
config BR2_ARM64_PAGE_SIZE_4K
|
||||
bool "4KB"
|
||||
|
||||
config BR2_ARM64_PAGE_SIZE_64K
|
||||
bool "64KB"
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_ARM64_PAGE_SIZE
|
||||
string
|
||||
default "4K" if BR2_ARM64_PAGE_SIZE_4K
|
||||
default "64K" if BR2_ARM64_PAGE_SIZE_64K
|
||||
|
||||
config BR2_ARCH
|
||||
default "arm" if BR2_arm
|
||||
default "armeb" if BR2_armeb
|
||||
@@ -813,6 +838,7 @@ config BR2_GCC_TARGET_CPU
|
||||
default "strongarm" if BR2_strongarm
|
||||
# armv5
|
||||
default "arm926ej-s" if BR2_arm926t
|
||||
default "iwmmxt" if BR2_iwmmxt
|
||||
default "xscale" if BR2_xscale
|
||||
# armv6
|
||||
default "arm1136j-s" if BR2_arm1136j_s
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
default BR2_ck610
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
config BR2_ck610
|
||||
# Not supported by upstream gcc <= 9, and handled as a special
|
||||
# exception in package/gcc/Config.in.host
|
||||
bool "ck610"
|
||||
|
||||
config BR2_ck807
|
||||
bool "ck807"
|
||||
|
||||
config BR2_ck810
|
||||
bool "ck810"
|
||||
|
||||
config BR2_ck860
|
||||
bool "ck860"
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_CSKY_FPU
|
||||
bool "Enable FPU coprocessor"
|
||||
depends on BR2_ck810 || BR2_ck807 || BR2_ck860
|
||||
help
|
||||
You can say N here if your C-SKY CPU doesn't have a
|
||||
Floating-Point Coprocessor or if you don't need FPU support
|
||||
for your user-space programs.
|
||||
|
||||
config BR2_CSKY_VDSP
|
||||
bool "Enable VDSP enhanced instructions Co-processor"
|
||||
depends on BR2_CSKY_FPU
|
||||
|
||||
config BR2_GCC_TARGET_FLOAT_ABI
|
||||
default "soft" if !BR2_CSKY_FPU
|
||||
default "hard" if BR2_CSKY_FPU
|
||||
|
||||
config BR2_ARCH
|
||||
default "csky"
|
||||
|
||||
config BR2_NORMALIZED_ARCH
|
||||
default "csky"
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_READELF_ARCH_NAME
|
||||
default "CSKY"
|
||||
|
||||
# vim: ft=kconfig
|
||||
# -*- mode:kconfig; -*-
|
||||
+1
-1
@@ -26,7 +26,7 @@ choice
|
||||
config BR2_m68k_68040
|
||||
bool "68040"
|
||||
select BR2_m68k_m68k
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
|
||||
config BR2_m68k_cf5208
|
||||
bool "5208"
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
config BR2_ARCH
|
||||
default "nds32le"
|
||||
|
||||
config BR2_NORMALIZED_ARCH
|
||||
default "nds32"
|
||||
|
||||
config BR2_GCC_TARGET_ARCH
|
||||
default "v3"
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_READELF_ARCH_NAME
|
||||
default "Andes Technology compact code size embedded RISC processor family"
|
||||
|
||||
# vim: ft=kconfig
|
||||
# -*- mode:kconfig; -*-
|
||||
+31
-50
@@ -1,10 +1,6 @@
|
||||
config BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
bool
|
||||
|
||||
config BR2_POWERPC_CPU_HAS_VSX
|
||||
bool
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
|
||||
config BR2_POWERPC_CPU_HAS_SPE
|
||||
bool
|
||||
|
||||
@@ -15,135 +11,121 @@ choice
|
||||
Specific CPU variant to use
|
||||
config BR2_generic_powerpc
|
||||
bool "generic"
|
||||
# No C library supports this variant on ppc64le
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
config BR2_powerpc_401
|
||||
bool "401"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_403
|
||||
bool "403"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_405
|
||||
bool "405"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_405fp
|
||||
bool "405 with FPU"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_440
|
||||
bool "440"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_440fp
|
||||
bool "440 with FPU"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_464
|
||||
bool "464"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_464fp
|
||||
bool "464 with FPU"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_476
|
||||
bool "476"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_476fp
|
||||
bool "476 with FPU"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_505
|
||||
bool "505"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_602
|
||||
bool "602"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_603
|
||||
bool "603"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_603e
|
||||
bool "603e"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_604
|
||||
bool "604"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_604e
|
||||
bool "604e"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_620
|
||||
bool "620"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
config BR2_powerpc_630
|
||||
bool "630"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
config BR2_powerpc_740
|
||||
bool "740"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_7400
|
||||
bool "7400"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_7450
|
||||
bool "7450"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_750
|
||||
bool "750"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_821
|
||||
bool "821"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_823
|
||||
bool "823"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_860
|
||||
bool "860"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_970
|
||||
bool "970"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_8540
|
||||
bool "8540 / e500v1"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_POWERPC_CPU_HAS_SPE
|
||||
config BR2_powerpc_8548
|
||||
bool "8548 / e500v2"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_POWERPC_CPU_HAS_SPE
|
||||
config BR2_powerpc_e300c2
|
||||
bool "e300c2"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_e300c3
|
||||
bool "e300c3"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_e500mc
|
||||
bool "e500mc"
|
||||
depends on BR2_powerpc
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_e5500
|
||||
bool "e5500"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
depends on !BR2_powerpc64le
|
||||
config BR2_powerpc_e6500
|
||||
bool "e6500"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
depends on !BR2_powerpc64le
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_power4
|
||||
bool "power4"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
config BR2_powerpc_power5
|
||||
bool "power5"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
config BR2_powerpc_power6
|
||||
bool "power6"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_power7
|
||||
bool "power7"
|
||||
depends on BR2_powerpc || BR2_powerpc64
|
||||
select BR2_POWERPC_CPU_HAS_VSX
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_power8
|
||||
bool "power8"
|
||||
select BR2_POWERPC_CPU_HAS_VSX
|
||||
config BR2_powerpc_power9
|
||||
bool "power9"
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
select BR2_POWERPC_CPU_HAS_VSX
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
endchoice
|
||||
|
||||
choice
|
||||
@@ -221,7 +203,6 @@ config BR2_GCC_TARGET_CPU
|
||||
default "power6" if BR2_powerpc_power6
|
||||
default "power7" if BR2_powerpc_power7
|
||||
default "power8" if BR2_powerpc_power8
|
||||
default "power9" if BR2_powerpc_power9
|
||||
|
||||
config BR2_READELF_ARCH_NAME
|
||||
default "PowerPC" if BR2_powerpc
|
||||
|
||||
+2
-11
@@ -71,23 +71,15 @@ choice
|
||||
|
||||
config BR2_RISCV_32
|
||||
bool "32-bit"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
|
||||
config BR2_RISCV_64
|
||||
bool "64-bit"
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_RISCV_USE_MMU
|
||||
bool "MMU support"
|
||||
default y
|
||||
depends on BR2_RISCV_64
|
||||
select BR2_USE_MMU
|
||||
help
|
||||
Enable this option if your RISC-V core has a MMU (Memory
|
||||
Management Unit).
|
||||
|
||||
choice
|
||||
prompt "Target ABI"
|
||||
default BR2_RISCV_ABI_ILP32D if !BR2_ARCH_IS_64 && BR2_RISCV_ISA_RVD
|
||||
@@ -116,7 +108,6 @@ config BR2_RISCV_ABI_LP64
|
||||
config BR2_RISCV_ABI_LP64F
|
||||
bool "lp64f"
|
||||
depends on BR2_ARCH_IS_64 && BR2_RISCV_ISA_RVF
|
||||
depends on BR2_USE_MMU
|
||||
|
||||
config BR2_RISCV_ABI_LP64D
|
||||
bool "lp64d"
|
||||
|
||||
+4
-1
@@ -5,6 +5,8 @@ choice
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
config BR2_sh2a
|
||||
bool "sh2a (SH2A big endian)"
|
||||
config BR2_sh4
|
||||
bool "sh4 (SH4 little endian)"
|
||||
config BR2_sh4eb
|
||||
@@ -16,6 +18,7 @@ config BR2_sh4aeb
|
||||
endchoice
|
||||
|
||||
config BR2_ARCH
|
||||
default "sh2a" if BR2_sh2a
|
||||
default "sh4" if BR2_sh4
|
||||
default "sh4eb" if BR2_sh4eb
|
||||
default "sh4a" if BR2_sh4a
|
||||
@@ -26,7 +29,7 @@ config BR2_NORMALIZED_ARCH
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_sh4 || BR2_sh4a
|
||||
default "BIG" if BR2_sh4eb || BR2_sh4aeb
|
||||
default "BIG" if BR2_sh2a || BR2_sh4eb || BR2_sh4aeb
|
||||
|
||||
config BR2_READELF_ARCH_NAME
|
||||
default "Renesas / SuperH SH"
|
||||
|
||||
+4
-4
@@ -286,9 +286,9 @@ config BR2_x86_atom
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
help
|
||||
This option is deprecated. Since gcc 4.9, the gcc option
|
||||
"bonnell" is preferred. Use BR2_x86_bonnell instead.
|
||||
config BR2_x86_bonnell
|
||||
bool "bonnell"
|
||||
"bonnel" is preferred. Use BR2_x86_bonnel instead.
|
||||
config BR2_x86_bonnel
|
||||
bool "bonnel"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
@@ -598,7 +598,7 @@ config BR2_GCC_TARGET_ARCH
|
||||
default "broadwell" if BR2_x86_broadwell
|
||||
default "skylake" if BR2_x86_skylake
|
||||
default "atom" if BR2_x86_atom
|
||||
default "bonnell" if BR2_x86_bonnell
|
||||
default "bonnel" if BR2_x86_bonnel
|
||||
default "westmere" if BR2_x86_westmere
|
||||
default "silvermont" if BR2_x86_silvermont
|
||||
default "goldmont" if BR2_x86_goldmont
|
||||
|
||||
+2
-10
@@ -5,10 +5,11 @@ choice
|
||||
|
||||
config BR2_XTENSA_CUSTOM
|
||||
bool "Custom Xtensa processor configuration"
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
config BR2_xtensa_fsf
|
||||
bool "fsf - Default configuration"
|
||||
select BR2_USE_MMU
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
|
||||
endchoice
|
||||
|
||||
@@ -40,15 +41,6 @@ config BR2_XTENSA_BIG_ENDIAN
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_XTENSA_USE_MMU
|
||||
bool "MMU support"
|
||||
default y
|
||||
depends on BR2_XTENSA_CUSTOM
|
||||
select BR2_USE_MMU
|
||||
help
|
||||
Enable this option if your Xtensa core has a MMU (Memory
|
||||
Management Unit).
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_XTENSA_LITTLE_ENDIAN
|
||||
default "BIG" if BR2_xtensa_fsf || BR2_XTENSA_BIG_ENDIAN
|
||||
|
||||
@@ -18,16 +18,5 @@ GCC_TARGET_FPU := $(call qstrip,$(BR2_GCC_TARGET_FPU))
|
||||
GCC_TARGET_FLOAT_ABI := $(call qstrip,$(BR2_GCC_TARGET_FLOAT_ABI))
|
||||
GCC_TARGET_MODE := $(call qstrip,$(BR2_GCC_TARGET_MODE))
|
||||
|
||||
# Explicitly set LD's "max-page-size" instead of relying on some defaults
|
||||
ifeq ($(BR2_ARC_PAGE_SIZE_4K)$(BR2_ARM64_PAGE_SIZE_4K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=4096 -Wl,-z,common-page-size=4096
|
||||
else ifeq ($(BR2_ARC_PAGE_SIZE_8K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=8192 -Wl,-z,common-page-size=8192
|
||||
else ifeq ($(BR2_ARC_PAGE_SIZE_16K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=16384 -Wl,-z,common-page-size=16384
|
||||
else ifeq ($(BR2_ARM64_PAGE_SIZE_64K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=65536 -Wl,-z,common-page-size=65536
|
||||
endif
|
||||
|
||||
# Include any architecture specific makefiles.
|
||||
-include $(sort $(wildcard arch/arch.mk.*))
|
||||
|
||||
+10
-1
@@ -2,7 +2,16 @@ ifeq ($(BR2_arc),y)
|
||||
|
||||
# -matomic is always required when the ARC core has the atomic extensions
|
||||
ifeq ($(BR2_ARC_ATOMIC_EXT),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -matomic
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS = -matomic
|
||||
endif
|
||||
|
||||
# Explicitly set LD's "max-page-size" instead of relying on some defaults
|
||||
ifeq ($(BR2_ARC_PAGE_SIZE_4K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=4096
|
||||
else ifeq ($(BR2_ARC_PAGE_SIZE_8K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=8192
|
||||
else ifeq ($(BR2_ARC_PAGE_SIZE_16K),y)
|
||||
ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=16384
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
#
|
||||
# Configure the GCC_TARGET_ARCH variable and append the
|
||||
# appropriate C-SKY ISA extensions.
|
||||
#
|
||||
|
||||
ifeq ($(BR2_csky),y)
|
||||
|
||||
ifeq ($(BR2_ck610),y)
|
||||
GCC_TARGET_CPU := ck610
|
||||
else ifeq ($(BR2_ck807),y)
|
||||
GCC_TARGET_CPU := ck807
|
||||
else ifeq ($(BR2_ck810),y)
|
||||
GCC_TARGET_CPU := ck810
|
||||
else ifeq ($(BR2_ck860),y)
|
||||
GCC_TARGET_CPU := ck860
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_CSKY_FPU),y)
|
||||
GCC_TARGET_CPU := $(GCC_TARGET_CPU)f
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_CSKY_VDSP),y)
|
||||
GCC_TARGET_CPU := $(GCC_TARGET_CPU)v
|
||||
endif
|
||||
|
||||
endif
|
||||
@@ -27,13 +27,4 @@ ifeq ($(BR2_RISCV_ISA_RVC),y)
|
||||
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)c
|
||||
endif
|
||||
|
||||
# Starting from gcc 12.x, csr and fence instructions have been
|
||||
# separated from the base I instruction set, and special -march
|
||||
# suffixes are needed to enable their support. In Buildroot, we assume
|
||||
# all RISC-V cores that support Linux implement those instructions, so
|
||||
# we unconditionally enable those extensions.
|
||||
ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_12),y)
|
||||
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)_zicsr_zifencei
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
+1
-6
@@ -1,9 +1,3 @@
|
||||
BR_ARCH_XTENSA_OVERLAY_FILE = $(call qstrip,$(BR2_XTENSA_OVERLAY_FILE))
|
||||
|
||||
ifeq ($(BR_BUILDING)$(BR2_XTENSA_CUSTOM)$(BR2_TOOLCHAIN_BUILDROOT):$(BR_ARCH_XTENSA_OVERLAY_FILE),yyy:)
|
||||
$(error No xtensa overlay file provided. Check your BR2_XTENSA_OVERLAY_FILE setting)
|
||||
endif
|
||||
|
||||
################################################################################
|
||||
# This variable can be used by packages that need to extract the overlay.
|
||||
#
|
||||
@@ -15,6 +9,7 @@ endif
|
||||
# tar xf $(ARCH_XTENSA_OVERLAY_FILE) -C $(@D) --strip-components=1 gcc
|
||||
# endif
|
||||
################################################################################
|
||||
BR_ARCH_XTENSA_OVERLAY_FILE = $(call qstrip,$(BR2_XTENSA_OVERLAY_FILE))
|
||||
ifneq ($(filter http://% https://% ftp://% scp://%,$(BR_ARCH_XTENSA_OVERLAY_FILE)),)
|
||||
ARCH_XTENSA_OVERLAY_URL = $(BR_ARCH_XTENSA_OVERLAY_FILE)
|
||||
ARCH_XTENSA_OVERLAY_FILE = $($(PKG)_DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE))
|
||||
|
||||
@@ -18,7 +18,7 @@ image disk.img {
|
||||
|
||||
partition boot {
|
||||
image = "efi-part.vfat"
|
||||
partition-type-uuid = U
|
||||
partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
|
||||
offset = 32K
|
||||
bootable = true
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
label linux-4.17.0-rc3
|
||||
kernel /Image
|
||||
devicetree /sun50i-a64-amarula-relic.dtb
|
||||
append console=ttyS0,115200 earlyprintk root=/dev/mmcblk1p4 rootwait
|
||||
@@ -0,0 +1,11 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"Image",
|
||||
"sun50i-a64-amarula-relic.dtb",
|
||||
"extlinux"
|
||||
}
|
||||
}
|
||||
|
||||
size = 64M
|
||||
}
|
||||
Regular → Executable
+4
-3
@@ -1,3 +1,4 @@
|
||||
import qrcode
|
||||
import qrcode.image.svg
|
||||
img = qrcode.make('Some data here', image_factory=qrcode.image.svg.SvgImage)
|
||||
#!/bin/sh
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf
|
||||
@@ -0,0 +1,90 @@
|
||||
Amarula A64 Relic
|
||||
================
|
||||
|
||||
Amarula A64-Relic is an Allwinner A64 based IoT device, which supports:
|
||||
- Allwinner A64 Cortex-A53
|
||||
- Mali-400MP2 GPU
|
||||
- AXP803 PMIC
|
||||
- 1GB DDR3 RAM
|
||||
- 8GB eMMC
|
||||
- AP6330 Wifi/BLE
|
||||
- MIPI-DSI
|
||||
- CSI: OV5640 sensor
|
||||
- USB OTG
|
||||
- 12V DC power supply
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/Amarual+A64-Relic
|
||||
|
||||
Build
|
||||
=====
|
||||
|
||||
$ make amarula_a64_relic_defconfig
|
||||
|
||||
$ make
|
||||
|
||||
build files at output/images/:
|
||||
- sunxi-spl.bin
|
||||
- u-boot.itb
|
||||
- Image
|
||||
- sun50i-a64-amarula-relic.dtb
|
||||
- boot.vfat
|
||||
- rootfs.ext4
|
||||
|
||||
Write eMMC
|
||||
=========
|
||||
|
||||
The board comes with an operating system preloaded on the eMMC.
|
||||
To replace it with the Buildroot-built system, take the following
|
||||
steps
|
||||
|
||||
1. Connect the board UART with host and open minicom(ttyUSBx/115200N8)
|
||||
|
||||
2. Supply 12V DC for power-on the board.
|
||||
|
||||
3. Interrupt U-Boot by pressing enter
|
||||
|
||||
4. Create GPT partitions
|
||||
=> mmc dev 1
|
||||
=> gpt write mmc 1 $partitions
|
||||
|
||||
5. Connect the board USB-OTG with USB slot on the host.
|
||||
|
||||
6. Initiate fastboot
|
||||
=> fastboot 0
|
||||
|
||||
7. Write images from host onto eMMC using fastboot
|
||||
$ cd output/images
|
||||
$ sudo fastboot -i 0x1f3a flash loader1 sunxi-spl.bin
|
||||
$ sudo fastboot -i 0x1f3a flash loader2 u-boot.itb
|
||||
$ sudo fastboot -i 0x1f3a flash esp boot.vfat
|
||||
$ sudo fastboot -i 0x1f3a flash system rootfs.ext4
|
||||
|
||||
Update eMMC during Development
|
||||
==============================
|
||||
|
||||
During development, reflashing the entire filesystem image at every
|
||||
change is time consuming. A useful alternative is to directly access
|
||||
over USB the filesystem stored on the eMMC, using the USB Mass Storage
|
||||
capability of U-Boot. To achieve this:
|
||||
|
||||
1. Build U-Boot by enabling UMS
|
||||
$ make uboot-menuconfig
|
||||
(select CONFIG_CMD_USB_MASS_STORAGE=y)
|
||||
|
||||
2. Follow all 6 steps from 'Write eMMC' and mount eMMC on host
|
||||
=> mmc dev 1
|
||||
=> ums 0 mmc 1
|
||||
|
||||
WiFi
|
||||
====
|
||||
|
||||
# wpa_passphrase ACCESSPOINTNAME >> /etc/wpa_supplicant.conf
|
||||
(type password and enter)
|
||||
# wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf -B
|
||||
# udhcpc -i wlan0
|
||||
# ping google.com
|
||||
|
||||
--
|
||||
Jagan Teki <jagan@amarulasolutions.com>
|
||||
29-Jun-2018
|
||||
@@ -0,0 +1,83 @@
|
||||
#AP6330_NVRAM_V1.0_20121130
|
||||
#Sample variables file for BCM94330 SD FC AGB board
|
||||
manfid=0x2d0
|
||||
prodid=0x0547
|
||||
vendid=0x14e4
|
||||
devid=0x4360
|
||||
boardtype=0x05e1
|
||||
boardrev=0x1202
|
||||
boardflags=0x0080200
|
||||
nocrc=1
|
||||
xtalfreq=26000
|
||||
boardnum=22
|
||||
macaddr=00:90:4c:c5:12:38
|
||||
ag0=254
|
||||
aa2g=1
|
||||
ccode=ALL
|
||||
pa0itssit=0x20
|
||||
pa0b0=5587
|
||||
pa0b1=-633
|
||||
pa0b2=-158
|
||||
rssismf2g=0xa
|
||||
rssismc2g=0x3
|
||||
rssisav2g=0x7
|
||||
#rssi params for 5GHz
|
||||
rssismf5g=0x4
|
||||
rssismc5g=0x3
|
||||
rssisav5g=0x7
|
||||
#PA parameters for lower a-band
|
||||
pa1lob0=4748
|
||||
pa1lob1=-566
|
||||
pa1lob2=-180
|
||||
#PA parameters for midband
|
||||
pa1b0=4762
|
||||
pa1b1=-593
|
||||
pa1b2=-172
|
||||
#PA parameters for high band
|
||||
#pa1hib0=4596
|
||||
pa1hib0=4666
|
||||
pa1hib1=-619
|
||||
pa1hib2=-163
|
||||
rxpo5g=0
|
||||
maxp2ga0=74
|
||||
maxp5ga0=66
|
||||
maxp5gla0=66
|
||||
maxp5gha0=66
|
||||
# 2.4G Tx Power offsets
|
||||
cck2gpo=0x2222
|
||||
ofdm2gpo=0x44444444
|
||||
mcs2gpo0=0x6666
|
||||
mcs2gpo1=0x6666
|
||||
# 5G Tx Power offsets
|
||||
ofdm5gpo=0x44444444
|
||||
ofdm5glpo=0x44444444
|
||||
ofdm5ghpo=0x44444444
|
||||
mcs5gpo0=0x6666
|
||||
mcs5gpo1=0x6666
|
||||
mcs5glpo0=0x6666
|
||||
mcs5glpo1=0x6666
|
||||
mcs5ghpo0=0x6666
|
||||
mcs5ghpo1=0x6666
|
||||
sromrev=3
|
||||
il0macaddr=00:90:4c:c5:12:38
|
||||
wl0id=0x431b
|
||||
cckPwrOffset=4
|
||||
swctrlmap_2g=0x44844484,0x42824282,0x40804484,0x18282,0x1ff
|
||||
triso5g=0
|
||||
swctrlmap_5g=0x00100010,0x20202020,0x20202020,0x14202,0x0f0
|
||||
rfreg033=0x19
|
||||
rfreg033_cck=0x1f
|
||||
dacrate2g=160
|
||||
dacrate5g=160
|
||||
txalpfbyp2g=1
|
||||
bphyscale=17
|
||||
cckPwrIdxCorr=-15
|
||||
pacalidx2g=50
|
||||
#pacalidx5g=20
|
||||
noise_cal_ref_2g=53
|
||||
noise_cal_po_2g=0
|
||||
noise_cal_ref_5g=52
|
||||
noise_cal_po_5g=5,0,0
|
||||
# 4330 OOB parameter: High level trigger
|
||||
muxenab=0x10
|
||||
|
||||
@@ -1,274 +0,0 @@
|
||||
/dts-v1/;
|
||||
|
||||
/ {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
compatible = "andestech,ae350";
|
||||
model = "andestech,ax45";
|
||||
aliases {
|
||||
uart0 = &serial0;
|
||||
spi0 = &spi;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,38400n8 earlycon=sbi debug loglevel=7";
|
||||
stdout-path = "uart0:38400n8";
|
||||
};
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
timebase-frequency = <60000000>;
|
||||
CPU0: cpu@0 {
|
||||
device_type = "cpu";
|
||||
reg = <0>;
|
||||
status = "okay";
|
||||
compatible = "riscv";
|
||||
riscv,isa = "rv64i2p0m2p0a2p0f2p0d2p0c2p0xv5-1p1xdsp0p0";
|
||||
riscv,priv-major = <1>;
|
||||
riscv,priv-minor = <10>;
|
||||
mmu-type = "riscv,sv48";
|
||||
clock-frequency = <60000000>;
|
||||
i-cache-size = <0x8000>;
|
||||
i-cache-sets = <256>;
|
||||
i-cache-block-size = <64>;
|
||||
i-cache-line-size = <64>;
|
||||
d-cache-size = <0x8000>;
|
||||
d-cache-sets = <128>;
|
||||
d-cache-block-size = <64>;
|
||||
d-cache-line-size = <64>;
|
||||
next-level-cache = <&L2>;
|
||||
CPU0_intc: interrupt-controller {
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-controller;
|
||||
compatible = "riscv,cpu-intc";
|
||||
};
|
||||
};
|
||||
CPU1: cpu@1 {
|
||||
device_type = "cpu";
|
||||
reg = <1>;
|
||||
status = "okay";
|
||||
compatible = "riscv";
|
||||
riscv,isa = "rv64i2p0m2p0a2p0f2p0d2p0c2p0xv5-1p1xdsp0p0";
|
||||
riscv,priv-major = <1>;
|
||||
riscv,priv-minor = <10>;
|
||||
mmu-type = "riscv,sv48";
|
||||
clock-frequency = <60000000>;
|
||||
i-cache-size = <0x8000>;
|
||||
i-cache-sets = <256>;
|
||||
i-cache-block-size = <64>;
|
||||
i-cache-line-size = <64>;
|
||||
d-cache-size = <0x8000>;
|
||||
d-cache-sets = <128>;
|
||||
d-cache-block-size = <64>;
|
||||
d-cache-line-size = <64>;
|
||||
next-level-cache = <&L2>;
|
||||
CPU1_intc: interrupt-controller {
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-controller;
|
||||
compatible = "riscv,cpu-intc";
|
||||
};
|
||||
};
|
||||
CPU2: cpu@2 {
|
||||
device_type = "cpu";
|
||||
reg = <2>;
|
||||
status = "okay";
|
||||
compatible = "riscv";
|
||||
riscv,isa = "rv64i2p0m2p0a2p0f2p0d2p0c2p0xv5-1p1xdsp0p0";
|
||||
riscv,priv-major = <1>;
|
||||
riscv,priv-minor = <10>;
|
||||
mmu-type = "riscv,sv48";
|
||||
clock-frequency = <60000000>;
|
||||
i-cache-size = <0x8000>;
|
||||
i-cache-sets = <256>;
|
||||
i-cache-block-size = <64>;
|
||||
i-cache-line-size = <64>;
|
||||
d-cache-size = <0x8000>;
|
||||
d-cache-sets = <128>;
|
||||
d-cache-block-size = <64>;
|
||||
d-cache-line-size = <64>;
|
||||
next-level-cache = <&L2>;
|
||||
CPU2_intc: interrupt-controller {
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-controller;
|
||||
compatible = "riscv,cpu-intc";
|
||||
};
|
||||
};
|
||||
CPU3: cpu@3 {
|
||||
device_type = "cpu";
|
||||
reg = <3>;
|
||||
status = "okay";
|
||||
compatible = "riscv";
|
||||
riscv,isa = "rv64i2p0m2p0a2p0f2p0d2p0c2p0xv5-1p1xdsp0p0";
|
||||
riscv,priv-major = <1>;
|
||||
riscv,priv-minor = <10>;
|
||||
mmu-type = "riscv,sv48";
|
||||
clock-frequency = <60000000>;
|
||||
i-cache-size = <0x8000>;
|
||||
i-cache-sets = <256>;
|
||||
i-cache-block-size = <64>;
|
||||
i-cache-line-size = <64>;
|
||||
d-cache-size = <0x8000>;
|
||||
d-cache-sets = <128>;
|
||||
d-cache-block-size = <64>;
|
||||
d-cache-line-size = <64>;
|
||||
next-level-cache = <&L2>;
|
||||
CPU3_intc: interrupt-controller {
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-controller;
|
||||
compatible = "riscv,cpu-intc";
|
||||
};
|
||||
};
|
||||
};
|
||||
L2: l2-cache@e0500000 {
|
||||
compatible = "cache";
|
||||
cache-level = <2>;
|
||||
cache-size = <0x80000>;
|
||||
reg = <0x00000000 0xe0500000 0x00000000 0x00001000>;
|
||||
andes,inst-prefetch = <3>;
|
||||
andes,data-prefetch = <3>;
|
||||
// The value format is <XRAMOCTL XRAMICTL>
|
||||
andes,tag-ram-ctl = <0 0>;
|
||||
andes,data-ram-ctl = <0 0>;
|
||||
};
|
||||
memory@0 {
|
||||
reg = <0x00000000 0x00000000 0x00000000 0x80000000>;
|
||||
device_type = "memory";
|
||||
};
|
||||
soc {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
compatible = "andestech,riscv-ae350-soc", "simple-bus";
|
||||
ranges;
|
||||
plic0: interrupt-controller@e4000000 {
|
||||
compatible = "riscv,plic0";
|
||||
reg = <0x00000000 0xe4000000 0x00000000 0x02000000>;
|
||||
interrupts-extended = < &CPU0_intc 11 &CPU0_intc 9 &CPU1_intc 11 &CPU1_intc 9 &CPU2_intc 11 &CPU2_intc 9 &CPU3_intc 11 &CPU3_intc 9>;
|
||||
interrupt-controller;
|
||||
#address-cells = <2>;
|
||||
#interrupt-cells = <2>;
|
||||
riscv,ndev = <71>;
|
||||
};
|
||||
plic1: interrupt-controller@e6400000 {
|
||||
compatible = "riscv,plic1";
|
||||
reg = <0x00000000 0xe6400000 0x00000000 0x00400000>;
|
||||
interrupts-extended = < &CPU0_intc 3 &CPU1_intc 3 &CPU2_intc 3 &CPU3_intc 3>;
|
||||
interrupt-controller;
|
||||
#address-cells = <2>;
|
||||
#interrupt-cells = <2>;
|
||||
riscv,ndev = <4>;
|
||||
};
|
||||
plmt0: plmt0@e6000000 {
|
||||
compatible = "riscv,plmt0";
|
||||
reg = <0x00000000 0xe6000000 0x00000000 0x00100000>;
|
||||
interrupts-extended = < &CPU0_intc 7 &CPU1_intc 7 &CPU2_intc 7 &CPU3_intc 7>;
|
||||
};
|
||||
spiclk: virt_100mhz {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <100000000>;
|
||||
};
|
||||
timer0: timer@f0400000 {
|
||||
compatible = "andestech,atcpit100";
|
||||
reg = <0x00000000 0xf0400000 0x00000000 0x00001000>;
|
||||
interrupts = <3 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
clock-frequency = <60000000>;
|
||||
};
|
||||
pwm: pwm@f0400000 {
|
||||
compatible = "andestech,atcpit100-pwm";
|
||||
reg = <0x00000000 0xf0400000 0x00000000 0x00001000>;
|
||||
interrupts = <3 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
clock-frequency = <60000000>;
|
||||
pwm-cells = <2>;
|
||||
};
|
||||
wdt: wdt@f0500000 {
|
||||
compatible = "andestech,atcwdt200";
|
||||
reg = <0x00000000 0xf0500000 0x00000000 0x00001000>;
|
||||
interrupts = <3 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
clock-frequency = <15000000>;
|
||||
};
|
||||
serial0: serial@f0300000 {
|
||||
compatible = "andestech,uart16550", "ns16550a";
|
||||
reg = <0x00000000 0xf0300000 0x00000000 0x00001000>;
|
||||
interrupts = <9 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
clock-frequency = <19660800>;
|
||||
reg-shift = <2>;
|
||||
reg-offset = <32>;
|
||||
no-loopback-test = <1>;
|
||||
};
|
||||
rtc0: rtc@f0600000 {
|
||||
compatible = "andestech,atcrtc100";
|
||||
reg = <0x00000000 0xf0600000 0x00000000 0x00001000>;
|
||||
interrupts = <1 4 2 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
wakeup-source;
|
||||
};
|
||||
gpio: gpio@f0700000 {
|
||||
compatible = "andestech,atcgpio100";
|
||||
reg = <0x00000000 0xf0700000 0x00000000 0x00001000>;
|
||||
interrupts = <7 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
wakeup-source;
|
||||
};
|
||||
mac0: mac@e0100000 {
|
||||
compatible = "andestech,atmac100";
|
||||
reg = <0x00000000 0xe0100000 0x00000000 0x00001000>;
|
||||
interrupts = <19 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
dma-coherent;
|
||||
};
|
||||
smu: smu@f0100000 {
|
||||
compatible = "andestech,atcsmu";
|
||||
reg = <0x00000000 0xf0100000 0x00000000 0x00001000>;
|
||||
};
|
||||
mmc0: mmc@f0e00000 {
|
||||
compatible = "andestech,atfsdc010";
|
||||
reg = <0x00000000 0xf0e00000 0x00000000 0x00001000>;
|
||||
interrupts = <18 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
clock-freq-min-max = <400000 100000000>;
|
||||
max-frequency = <100000000>;
|
||||
fifo-depth = <16>;
|
||||
cap-sd-highspeed;
|
||||
dma-coherent;
|
||||
};
|
||||
dma0: dma@f0c00000 {
|
||||
compatible = "andestech,atcdmac300";
|
||||
reg = <0x00000000 0xf0c00000 0x00000000 0x00001000>;
|
||||
interrupts = <10 4 64 4 65 4 66 4 67 4 68 4 69 4 70 4 71 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
dma-channels = <8>;
|
||||
};
|
||||
lcd0: lcd@e0200000 {
|
||||
compatible = "andestech,atflcdc100";
|
||||
reg = <0x00000000 0xe0200000 0x00000000 0x00001000>;
|
||||
interrupts = <20 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
dma-coherent;
|
||||
};
|
||||
pmu: pmu {
|
||||
compatible = "riscv,andes-pmu";
|
||||
device_type = "pmu";
|
||||
};
|
||||
spi: spi@f0b00000 {
|
||||
compatible = "andestech,atcspi200";
|
||||
reg = <0x00000000 0xf0b00000 0x00000000 0x00001000>;
|
||||
interrupts = <4 4>;
|
||||
interrupt-parent = <&plic0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
num-cs = <1>;
|
||||
clocks = <&spiclk>;
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0x00000000>;
|
||||
spi-max-frequency = <50000000>;
|
||||
spi-cpol;
|
||||
spi-cpha;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,29 +0,0 @@
|
||||
From 3ccb71eeca42dbcd5e4d00ae1877a489ae82598d Mon Sep 17 00:00:00 2001
|
||||
From: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
Date: Wed, 29 Dec 2021 16:04:54 +0800
|
||||
Subject: [PATCH] Disable PIC explicitly for assembling
|
||||
|
||||
This patch is necessary if the fw_dynamic load address
|
||||
is not equal to link address.
|
||||
However, they are equal currently, since we include an u-boot
|
||||
patch for preventing fw_dynamic relocation.
|
||||
|
||||
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
---
|
||||
Makefile | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index d6f097d..441518d 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -225,6 +225,7 @@ ASFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL)
|
||||
ASFLAGS += $(GENFLAGS)
|
||||
ASFLAGS += $(platform-asflags-y)
|
||||
ASFLAGS += $(firmware-asflags-y)
|
||||
+ASFLAGS += -fno-pic
|
||||
|
||||
ARFLAGS = rcs
|
||||
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,25 +0,0 @@
|
||||
From 325328f4204b40b1fcc8db3b46c7c8805710d21c Mon Sep 17 00:00:00 2001
|
||||
From: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
Date: Thu, 30 Dec 2021 08:47:34 +0800
|
||||
Subject: [PATCH] Enable cache for opensbi jump mode
|
||||
|
||||
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
---
|
||||
firmware/fw_base.S | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/firmware/fw_base.S b/firmware/fw_base.S
|
||||
index ab33e11..155d230 100644
|
||||
--- a/firmware/fw_base.S
|
||||
+++ b/firmware/fw_base.S
|
||||
@@ -46,6 +46,8 @@
|
||||
.globl _start
|
||||
.globl _start_warm
|
||||
_start:
|
||||
+ li t0, 0x80003
|
||||
+ csrw 0x7ca, t0
|
||||
/* Find preferred boot HART id */
|
||||
MOV_3R s0, a0, s1, a1, s2, a2
|
||||
call fw_boot_hart
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,27 +0,0 @@
|
||||
From ea4675215b53d16a72d29b8a6fc6a86cccf59cf0 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
Date: Wed, 5 Jan 2022 11:00:59 +0800
|
||||
Subject: [PATCH] Fix mmc no partition table error
|
||||
|
||||
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
---
|
||||
drivers/mmc/ftsdc010_mci.c | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/drivers/mmc/ftsdc010_mci.c b/drivers/mmc/ftsdc010_mci.c
|
||||
index 570d54cf..3b1e0aa0 100644
|
||||
--- a/drivers/mmc/ftsdc010_mci.c
|
||||
+++ b/drivers/mmc/ftsdc010_mci.c
|
||||
@@ -438,10 +438,6 @@ static int ftsdc010_mmc_probe(struct udevice *dev)
|
||||
return ret;
|
||||
#endif
|
||||
|
||||
- if (dev_read_bool(dev, "cap-mmc-highspeed") || \
|
||||
- dev_read_bool(dev, "cap-sd-highspeed"))
|
||||
- chip->caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
|
||||
-
|
||||
ftsdc_setup_cfg(&plat->cfg, dev->name, chip->buswidth, chip->caps,
|
||||
priv->minmax[1] , priv->minmax[0]);
|
||||
chip->mmc = &plat->mmc;
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,27 +0,0 @@
|
||||
From 4c0c5378d032f2f95577585935624baf7b4decf3 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
Date: Wed, 5 Jan 2022 11:02:26 +0800
|
||||
Subject: [PATCH] Prevent fw_dynamic from relocation
|
||||
|
||||
This patch prevents OpenSBI relocation, load fw_dynamic to link address
|
||||
|
||||
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
---
|
||||
board/AndesTech/ax25-ae350/Kconfig | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/board/AndesTech/ax25-ae350/Kconfig b/board/AndesTech/ax25-ae350/Kconfig
|
||||
index e50f505a..385c4c11 100644
|
||||
--- a/board/AndesTech/ax25-ae350/Kconfig
|
||||
+++ b/board/AndesTech/ax25-ae350/Kconfig
|
||||
@@ -25,7 +25,7 @@ config SPL_TEXT_BASE
|
||||
default 0x800000
|
||||
|
||||
config SPL_OPENSBI_LOAD_ADDR
|
||||
- default 0x01000000
|
||||
+ default 0x0
|
||||
|
||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||
def_bool y
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,26 +0,0 @@
|
||||
From 3d09501175ae6f5e3f6520b48b1358226a99ff16 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
Date: Wed, 5 Jan 2022 18:17:39 +0800
|
||||
Subject: [PATCH] Fix u-boot proper booting issue
|
||||
|
||||
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
---
|
||||
arch/riscv/cpu/start.S | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/arch/riscv/cpu/start.S b/arch/riscv/cpu/start.S
|
||||
index 76850ec9..2ccda4f5 100644
|
||||
--- a/arch/riscv/cpu/start.S
|
||||
+++ b/arch/riscv/cpu/start.S
|
||||
@@ -139,7 +139,9 @@ call_harts_early_init:
|
||||
* accesses gd).
|
||||
*/
|
||||
mv gp, s0
|
||||
+#if !CONFIG_IS_ENABLED(RISCV_SMODE)
|
||||
bnez tp, secondary_hart_loop
|
||||
+#endif
|
||||
#endif
|
||||
|
||||
jal board_init_f_init_reserve
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,25 +0,0 @@
|
||||
From 3847a959ac4c07facbd80104ca5fa6a91fad5f35 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
Date: Thu, 6 Jan 2022 13:50:07 +0800
|
||||
Subject: [PATCH] Enable printing OpenSBI boot logo
|
||||
|
||||
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
|
||||
---
|
||||
include/opensbi.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/opensbi.h b/include/opensbi.h
|
||||
index d812cc8c..91fb8fd9 100644
|
||||
--- a/include/opensbi.h
|
||||
+++ b/include/opensbi.h
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
enum sbi_scratch_options {
|
||||
/** Disable prints during boot */
|
||||
- SBI_SCRATCH_NO_BOOT_PRINTS = (1 << 0),
|
||||
+ SBI_SCRATCH_NO_BOOT_PRINTS = 0,
|
||||
};
|
||||
|
||||
/** Representation dynamic info passed by previous booting stage */
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,3 +0,0 @@
|
||||
#!/bin/sh
|
||||
cp $BINARIES_DIR/Image $TARGET_DIR/boot
|
||||
cp $BINARIES_DIR/ae350.dtb $TARGET_DIR/boot
|
||||
@@ -1,65 +0,0 @@
|
||||
Intro
|
||||
=====
|
||||
|
||||
Andestech AE350 Platform
|
||||
|
||||
The AE350 prototype demonstrates the AE350 platform on the FPGA.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure Buildroot
|
||||
-------------------
|
||||
|
||||
$ make andes_ae350_45_defconfig
|
||||
|
||||
If you want to customize your configuration:
|
||||
|
||||
$ make menuconfig
|
||||
|
||||
Build everything
|
||||
----------------
|
||||
Note: you will need to access to the network, since Buildroot will
|
||||
download the packages' sources.
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
After building, you should obtain the following files:
|
||||
|
||||
output/images/
|
||||
|-- ae350.dtb
|
||||
|-- boot.vfat
|
||||
|-- fw_dynamic.bin
|
||||
|-- fw_dynamic.elf
|
||||
|-- fw_jump.bin
|
||||
|-- fw_jump.elf
|
||||
|-- Image
|
||||
|-- rootfs.ext2
|
||||
|-- rootfs.ext4 -> rootfs.ext2
|
||||
|-- sdcard.img
|
||||
|-- u-boot-spl.bin
|
||||
`-- u-boot.itb
|
||||
|
||||
Copy the sdcard.img to a SD card with "dd":
|
||||
|
||||
$ sudo dd if=sdcard.img of=/dev/sdX bs=4096
|
||||
$ sudo sync
|
||||
|
||||
Your SD card partition should be:
|
||||
|
||||
Disk /dev/sdb: 14.48 GiB, 15552479232 bytes, 30375936 sectors
|
||||
Disk model: Multi-Card
|
||||
Units: sectors of 1 * 512 = 512 bytes
|
||||
Sector size (logical/physical): 512 bytes / 512 bytes
|
||||
I/O size (minimum/optimal): 512 bytes / 512 bytes
|
||||
Disklabel type: dos
|
||||
Disk identifier: 0x00000000
|
||||
|
||||
Device Boot Start End Sectors Size Id Type
|
||||
/dev/sdb1 1 4096 4096 2M c W95 FAT32 (LBA)
|
||||
/dev/sdb2 * 4097 126976 122880 60M 83 Linux
|
||||
|
||||
Insert SD card and reset the board, it should boot Linux from mmc.
|
||||
@@ -1,4 +0,0 @@
|
||||
label linux
|
||||
kernel /boot/Image
|
||||
fdt /boot/ae350.dtb
|
||||
append earlycon=sbi root=/dev/mmcblk0p2 rootwait
|
||||
@@ -1,5 +0,0 @@
|
||||
CONFIG_SPL_FS_FAT=y
|
||||
CONFIG_SPL_MMC=y
|
||||
# CONFIG_SPL_RAM_SUPPORT is not set
|
||||
# CONFIG_OF_BOARD is not set
|
||||
CONFIG_OF_SEPARATE=y
|
||||
@@ -0,0 +1 @@
|
||||
CONFIG_NDS32_BUILTIN_DTB="ae3xx"
|
||||
@@ -0,0 +1,28 @@
|
||||
From 90d52d180dcc5d1300dc352ca709eb6453894143 Mon Sep 17 00:00:00 2001
|
||||
From: Nylon Chen <nylon7@andestech.com>
|
||||
Date: Wed, 28 Nov 2018 16:26:46 +0800
|
||||
Subject: [PATCH] nds32: Fix boot messages garbled
|
||||
|
||||
In order to display uart correctly we have to pass the correct setting of uart to kernel by bootarg.
|
||||
This patch will provide such settings to set the correct uart baud rate.
|
||||
|
||||
Signed-off-by: Nylon Chen <nylon7@andestech.com>
|
||||
---
|
||||
arch/nds32/boot/dts/ae3xx.dts | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/arch/nds32/boot/dts/ae3xx.dts b/arch/nds32/boot/dts/ae3xx.dts
|
||||
index bb39749a6673..aefe2090926a 100644
|
||||
--- a/arch/nds32/boot/dts/ae3xx.dts
|
||||
+++ b/arch/nds32/boot/dts/ae3xx.dts
|
||||
@@ -6,6 +6,7 @@
|
||||
interrupt-parent = <&intc>;
|
||||
|
||||
chosen {
|
||||
+ bootargs = "memblock=debug earlycon console=ttyS0,38400n8 debug loglevel=7";
|
||||
stdout-path = &serial0;
|
||||
};
|
||||
|
||||
--
|
||||
2.18.0
|
||||
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
From f9df4186c17d686f1ca38f973d7a3a49e8e37c01 Mon Sep 17 00:00:00 2001
|
||||
From: Dirk Mueller <dmueller@suse.com>
|
||||
Date: Tue, 14 Jan 2020 18:53:41 +0100
|
||||
Subject: [PATCH] scripts/dtc: Remove redundant YYLOC global declaration
|
||||
|
||||
gcc 10 will default to -fno-common, which causes this error at link
|
||||
time:
|
||||
|
||||
(.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here
|
||||
|
||||
This is because both dtc-lexer as well as dtc-parser define the same
|
||||
global symbol yyloc. Before with -fcommon those were merged into one
|
||||
defintion. The proper solution would be to to mark this as "extern",
|
||||
however that leads to:
|
||||
|
||||
dtc-lexer.l:26:16: error: redundant redeclaration of 'yylloc' [-Werror=redundant-decls]
|
||||
26 | extern YYLTYPE yylloc;
|
||||
| ^~~~~~
|
||||
In file included from dtc-lexer.l:24:
|
||||
dtc-parser.tab.h:127:16: note: previous declaration of 'yylloc' was here
|
||||
127 | extern YYLTYPE yylloc;
|
||||
| ^~~~~~
|
||||
cc1: all warnings being treated as errors
|
||||
|
||||
which means the declaration is completely redundant and can just be
|
||||
dropped.
|
||||
|
||||
Signed-off-by: Dirk Mueller <dmueller@suse.com>
|
||||
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
||||
[robh: cherry-pick from upstream]
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Rob Herring <robh@kernel.org>
|
||||
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
|
||||
---
|
||||
scripts/dtc/dtc-lexer.l | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/scripts/dtc/dtc-lexer.l b/scripts/dtc/dtc-lexer.l
|
||||
index 06c040902444..d1b3810156c7 100644
|
||||
--- a/scripts/dtc/dtc-lexer.l
|
||||
+++ b/scripts/dtc/dtc-lexer.l
|
||||
@@ -38,7 +38,6 @@ LINECOMMENT "//".*\n
|
||||
#include "srcpos.h"
|
||||
#include "dtc-parser.tab.h"
|
||||
|
||||
-YYLTYPE yylloc;
|
||||
extern bool treesource_error;
|
||||
|
||||
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
Intro
|
||||
=====
|
||||
|
||||
Andestech(nds32) AE3XX Platform
|
||||
|
||||
The AE3XX prototype demonstrates the AE3XX example platform on the FPGA.
|
||||
It is composed of one Andestech(nds32) processor and AE3XX.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure Buildroot
|
||||
-------------------
|
||||
|
||||
The andes_ae3xx_defconfig configuration is a sample configuration with
|
||||
all that is required to bring the FPGA Development Board:
|
||||
|
||||
$ make andes_ae3xx_defconfig
|
||||
|
||||
Build everything
|
||||
----------------
|
||||
Note: you will need to have access to the network, since Buildroot will
|
||||
download the packages' sources.
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
After building, you should obtain this tree:
|
||||
|
||||
output/images/
|
||||
+-- vmlinux
|
||||
+-- rootfs.cpio
|
||||
+-- rootfs.tar
|
||||
|
||||
How to run it
|
||||
=============
|
||||
|
||||
Run
|
||||
---
|
||||
|
||||
Setup the Console with the rate 38400/8-N-1.
|
||||
|
||||
$ cd output/images
|
||||
$ ../host/bin/nds32le-linux-gdb vmlinux
|
||||
$ target remote [your host]
|
||||
$ lo
|
||||
$ c
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
mkdir -p ${TARGET_DIR}/lib/firmware
|
||||
cp -f ${BUILD_DIR}/linux-custom/firmware/ppfe/* ${TARGET_DIR}/lib/firmware/
|
||||
cp -f ${BUILD_DIR}/linux-custom/br2-ucls1012a.its ${BINARIES_DIR}/
|
||||
|
||||
@@ -24,13 +24,13 @@ After building, you should obtain this tree:
|
||||
|
||||
output/images/
|
||||
+-- arc-ucls1012a.dtb
|
||||
+-- Image.gz
|
||||
+-- Image
|
||||
+-- part0-000000.itb
|
||||
+-- rootfs.cpio
|
||||
+-- rootfs.cpio.gz
|
||||
+-- rootfs.tar
|
||||
+-- u-boot.bin
|
||||
+-- br2-ucls1012a.its
|
||||
+-- ucls1012a.its
|
||||
|
||||
Flashing
|
||||
--------
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
case "$1" in
|
||||
start)
|
||||
modprobe pfe
|
||||
;;
|
||||
stop)
|
||||
;;
|
||||
restart|reload)
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
esac
|
||||
@@ -0,0 +1,169 @@
|
||||
CONFIG_SMP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_FHANDLE=y
|
||||
CONFIG_AUDIT=y
|
||||
CONFIG_NO_HZ_IDLE=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_BSD_PROCESS_ACCT_V3=y
|
||||
CONFIG_TASKSTATS=y
|
||||
CONFIG_TASK_DELAY_ACCT=y
|
||||
CONFIG_TASK_XACCT=y
|
||||
CONFIG_TASK_IO_ACCOUNTING=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_MEMCG=y
|
||||
CONFIG_MEMCG_SWAP=y
|
||||
CONFIG_MEMCG_KMEM=y
|
||||
CONFIG_CGROUP_HUGETLB=y
|
||||
CONFIG_SCHED_AUTOGROUP=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_JUMP_LABEL=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_ARCH_VEXPRESS=y
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCI_MSI=y
|
||||
CONFIG_PCI_HOST_GENERIC=y
|
||||
CONFIG_PCIEPORTBUS=y
|
||||
CONFIG_HOTPLUG_PCI_PCIE=y
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_NR_CPUS=6
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_KSM=y
|
||||
CONFIG_TRANSPARENT_HUGEPAGE=y
|
||||
CONFIG_CMA=y
|
||||
CONFIG_CMDLINE="console=ttyAMA0"
|
||||
CONFIG_COMPAT=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
CONFIG_ARM_CPUIDLE=y
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_GOV_USERSPACE=y
|
||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
|
||||
CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
|
||||
CONFIG_ARM_BIG_LITTLE_CPUFREQ=y
|
||||
CONFIG_ARM_DT_BL_CPUFREQ=y
|
||||
CONFIG_ARM_SCPI_CPUFREQ=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_DHCP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_BPF_JIT=y
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_ATA=y
|
||||
CONFIG_SATA_AHCI=y
|
||||
CONFIG_SATA_AHCI_PLATFORM=y
|
||||
CONFIG_AHCI_XGENE=y
|
||||
CONFIG_PATA_PLATFORM=y
|
||||
CONFIG_PATA_OF_PLATFORM=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_TUN=y
|
||||
CONFIG_SKY2=y
|
||||
CONFIG_SMC91X=y
|
||||
CONFIG_SMSC911X=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_SERIO_AMBAKMI=y
|
||||
CONFIG_LEGACY_PTY_COUNT=16
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_SERIAL_XILINX_PS_UART=y
|
||||
CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_DESIGNWARE_PLATFORM=y
|
||||
CONFIG_I2C_SLAVE=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_PL022=y
|
||||
CONFIG_PTP_1588_CLOCK=m
|
||||
CONFIG_GPIO_PL061=y
|
||||
CONFIG_GPIO_XGENE=y
|
||||
CONFIG_POWER_RESET_XGENE=y
|
||||
CONFIG_POWER_RESET_SYSCON=y
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_REGULATOR_VEXPRESS=m
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_I2C_NXP_TDA998X=y
|
||||
CONFIG_DRM_ARM=y
|
||||
CONFIG_DRM_HDLCD=y
|
||||
CONFIG_DRM_VIRTUAL_HDLCD=y
|
||||
CONFIG_FB_ARMCLCD=y
|
||||
CONFIG_LOGO=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_HCD_PLATFORM=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_OHCI_HCD_PLATFORM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_ISP1760=y
|
||||
CONFIG_NOP_USB_XCEIV=y
|
||||
CONFIG_USB_ULPI=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_ARMMMCI=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_MMC_SPI=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_EFI=y
|
||||
CONFIG_RTC_DRV_PL030=y
|
||||
CONFIG_RTC_DRV_PL031=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_PL330_DMA=y
|
||||
CONFIG_COMMON_CLK_SCPI=y
|
||||
CONFIG_ARM_TIMER_SP804=y
|
||||
CONFIG_MAILBOX=y
|
||||
CONFIG_ARM_MHU=y
|
||||
CONFIG_PHY_XGENE=y
|
||||
CONFIG_ARM_SCPI_PROTOCOL=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_FANOTIFY=y
|
||||
CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
|
||||
CONFIG_QUOTA=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_FUSE_FS=y
|
||||
CONFIG_CUSE=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_HUGETLBFS=y
|
||||
CONFIG_EFIVAR_FS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_KVM=y
|
||||
CONFIG_DYNAMIC_DEBUG=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_LOCKUP_DETECTOR=y
|
||||
CONFIG_SECURITY=y
|
||||
CONFIG_CRYPTO_ANSI_CPRNG=y
|
||||
CONFIG_ARM64_CRYPTO=y
|
||||
CONFIG_CRYPTO_SHA1_ARM64_CE=y
|
||||
CONFIG_CRYPTO_SHA2_ARM64_CE=y
|
||||
CONFIG_CRYPTO_GHASH_ARM64_CE=y
|
||||
CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
|
||||
CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
|
||||
CONFIG_SOUND=y
|
||||
CONFIG_SND=y
|
||||
CONFIG_SND_SOC=y
|
||||
CONFIG_SND_SIMPLE_CARD=y
|
||||
CONFIG_SND_DESIGNWARE_I2S=y
|
||||
CONFIG_CMA=y
|
||||
CONFIG_CMA_SIZE_MBYTES=64
|
||||
@@ -0,0 +1,134 @@
|
||||
ARM Juno r1/r0
|
||||
|
||||
Intro
|
||||
=====
|
||||
|
||||
These instructions apply to all models of the ARM Juno:
|
||||
- Juno r0 (does not support PCIe)
|
||||
- Juno r1 (supports PCIe)
|
||||
- Juno r2 (Big Cluster with A72)
|
||||
|
||||
Buildroot will generate the kernel image, device tree blob, bootloader binaries
|
||||
and a minimal root filesystem.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure Buildroot
|
||||
-------------------
|
||||
|
||||
Configuring Buildroot is pretty simple, just execute:
|
||||
|
||||
$ make arm_juno_defconfig
|
||||
|
||||
Build the rootfs, kernel and DTB
|
||||
--------------------------------
|
||||
|
||||
Note: you will need to have access to the network, since Buildroot will
|
||||
download the packages' sources.
|
||||
|
||||
You may now build your rootfs with:
|
||||
|
||||
$ make
|
||||
|
||||
(This may take a while)
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
After building, you should obtain this tree:
|
||||
|
||||
output/images/
|
||||
+-- rootfs.tar
|
||||
+-- juno.dtb (if Juno r0 is used)
|
||||
+-- juno-r1.dtb (if Juno r1 is used)
|
||||
+-- juno-r2.dtb (if Juno r2 is used)
|
||||
+-- Image
|
||||
+-- bl1.bin
|
||||
+-- bl2.bin
|
||||
+-- bl2u.bin
|
||||
+-- bl31.bin
|
||||
+-- fip.bin
|
||||
+-- scp-fw.bin
|
||||
+-- u-boot.bin
|
||||
|
||||
Preparing your rootfs
|
||||
======================
|
||||
|
||||
Format your pen drive as a ext3 filesystem by executing:
|
||||
|
||||
$ mkfs.ext3 /dev/<your device>
|
||||
|
||||
Preparing your rootfs
|
||||
======================
|
||||
|
||||
Format your pen drive as a ext3 filesystem by executing:
|
||||
|
||||
$ mkfs.ext3 /dev/<your device>
|
||||
|
||||
Installing your rootfs
|
||||
======================
|
||||
|
||||
After mounting the pen drive please execute the following:
|
||||
|
||||
$ sudo tar -xvf output/images/rootfs.tar -C <pen drive mount path>
|
||||
|
||||
When completed make sure to unmount the device:
|
||||
|
||||
$ umount <pen drive mount path>
|
||||
|
||||
Insert the pen drive in one of the ARM Juno' USB type A connectors.
|
||||
|
||||
Configure *.dtb in the boot configuration for Juno r0
|
||||
=====================================================
|
||||
|
||||
SITE1/HBI0262B/images.txt
|
||||
.....
|
||||
NOR3UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
|
||||
NOR3ADDRESS: 0x00C00000 ;Image Flash Address
|
||||
NOR3FILE: \SOFTWARE\juno.dtb ;Image File Name
|
||||
NOR3NAME: board.dtb ;Specify Image name to preserve file extension
|
||||
NOR3LOAD: 00000000 ;Image Load Address
|
||||
NOR3ENTRY: 00000000 ;Image Entry Point
|
||||
......
|
||||
|
||||
Configure *.dtb in the boot configuration for Juno r1
|
||||
=====================================================
|
||||
|
||||
SITE1/HBI0262C/images.txt
|
||||
......
|
||||
NOR3UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
|
||||
NOR3ADDRESS: 0x00C00000 ;Image Flash Address
|
||||
NOR3FILE: \SOFTWARE\juno-r1.dtb ;Image File Name
|
||||
NOR3NAME: board.dtb ;Specify target filename to preserve file extension
|
||||
NOR3LOAD: 00000000 ;Image Load Address
|
||||
NOR3ENTRY: 00000000 ;Image Entry Point
|
||||
......
|
||||
|
||||
Configure *.dtb in the boot configuration for Juno r2
|
||||
=====================================================
|
||||
|
||||
SITE1/HBI0262D/images.txt
|
||||
......
|
||||
NOR3UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
|
||||
NOR3ADDRESS: 0x02000000 ;Image Flash Address
|
||||
NOR3FILE: \SOFTWARE\juno-r2.dtb ;Image File Name
|
||||
NOR3NAME: board.dtb ;Specify target filename to preserve file extension
|
||||
NOR3LOAD: 00000000 ;Image Load Address
|
||||
NOR3ENTRY: 00000000 ;Image Entry Point
|
||||
......
|
||||
|
||||
Installing kernel image and DTB
|
||||
===============================
|
||||
|
||||
1. Connect to the ARM Juno UART0 and execute USB_ON in the terminal
|
||||
2. Connect a USB cable between your PC and ARM Juno USB type B connector
|
||||
A mass storage device should appear in your desktop.
|
||||
3. Open the software/ folder
|
||||
4. Copy the 'Image' file to software/
|
||||
5. Copy the 'juno-r1.dtb' (r1), 'juno.dtb' (r0) or juno-r2.dtb (r2) file to software/
|
||||
6. Copy the bootloader binaries (bl1.bin and fip.bin) to software/
|
||||
7. Press the red button in the front pannel of ARM Juno
|
||||
|
||||
At this time, the board will erase the Flash entry for each new item and
|
||||
replace it with the lastest ones.
|
||||
@@ -1,40 +0,0 @@
|
||||
#
|
||||
# This config reproduces the OpenBMC flash layout defined in Linux :
|
||||
#
|
||||
# arch/arm/boot/dts/openbmc-flash-layout.dtsi
|
||||
#
|
||||
# and included by aspeed-ast2500-evb.dts
|
||||
#
|
||||
flash nor-32M-256 {
|
||||
pebsize = 4K
|
||||
numpebs = 8K
|
||||
minimum-io-unit-size = 256
|
||||
}
|
||||
|
||||
image flash.img {
|
||||
flash {
|
||||
}
|
||||
flashtype = "nor-32M-256"
|
||||
|
||||
partition uboot {
|
||||
image = "u-boot.bin"
|
||||
size = 384K
|
||||
}
|
||||
|
||||
partition ubootenv {
|
||||
/* TODO */
|
||||
offset = 384K
|
||||
size = 128K
|
||||
}
|
||||
|
||||
partition fitimage {
|
||||
image = "image.itb"
|
||||
offset = 512K
|
||||
size = 4352K
|
||||
}
|
||||
|
||||
partition spare {
|
||||
offset = 4864K
|
||||
size = 27904K
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
CONFIG_KERNEL_XZ=y
|
||||
CONFIG_ARCH_MULTI_V7=n
|
||||
CONFIG_MACH_ASPEED_G6=n
|
||||
CONFIG_SMP=n
|
||||
CONFIG_EXT4_FS=n
|
||||
CONFIG_DEBUG_FS=n
|
||||
CONFIG_SUSPEND=n
|
||||
@@ -1,80 +0,0 @@
|
||||
Aspeed AST2500 EVB
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
The AST2500 EVB is an evaluation board for the AST2500 SoC, most
|
||||
commonly used as a Server Management Processor. It includes an 800MHz
|
||||
ARM11 processor with DDR3 or DDR4 SDRAM (up to 1GB), SPI flash memory
|
||||
devices for BMC and host firmwares and numerous controllers to drive
|
||||
the server board.
|
||||
|
||||
https://www.aspeedtech.com/server_ast2500/
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure buildroot:
|
||||
|
||||
$ make aspeed_ast2500evb_defconfig
|
||||
|
||||
Compile everything and build the rootfs image:
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
===================
|
||||
|
||||
After building, the output/images directory contains:
|
||||
|
||||
output/images/
|
||||
├── aspeed-ast2500-evb.dtb
|
||||
├── flash.img
|
||||
├── image.itb
|
||||
├── rootfs.cpio
|
||||
├── rootfs.cpio.xz
|
||||
├── rootfs.tar
|
||||
├── u-boot.bin
|
||||
└── zImage
|
||||
|
||||
Flashing the image
|
||||
==================
|
||||
|
||||
To update the contents of the first flash device, copy flash.img :
|
||||
|
||||
$ flashcp flash.img /dev/mtd0
|
||||
|
||||
or simply the boot loader:
|
||||
|
||||
$ flashcp u-boot.bin /dev/mtd1
|
||||
|
||||
Preparing the board
|
||||
===================
|
||||
|
||||
* Connect a serial line to the board
|
||||
* Power-up the board
|
||||
|
||||
Booting the board
|
||||
=================
|
||||
|
||||
The AST2500 EVB boots from the SPI flash device directly and loads a
|
||||
first bootloader (usually U-Boot). U-Boot will attempt to load a Linux
|
||||
kernel from the same flash device by default but other storage could
|
||||
be used.
|
||||
|
||||
* from U-Boot
|
||||
|
||||
The FIT image image.itb can be used to boot the board from U-Boot
|
||||
using tftp
|
||||
|
||||
* with QEMU
|
||||
|
||||
$ qemu-system-arm -M ast2500-evb \
|
||||
-drive file=output/images/flash.img,format=raw,if=mtd \
|
||||
-nographic
|
||||
|
||||
$ qemu-system-arm -M ast2500-evb \
|
||||
-kernel output/images/zImage \
|
||||
-initrd output/images/rootfs.cpio \
|
||||
-dtb output/images/aspeed-ast2500-evb.dtb \
|
||||
-nographic
|
||||
@@ -1,3 +0,0 @@
|
||||
CONFIG_BOOTCOMMAND="bootm 20080000"
|
||||
CONFIG_FIT=y
|
||||
CONFIG_SHA256=y
|
||||
@@ -1,40 +0,0 @@
|
||||
#
|
||||
# This config reproduces the OpenBMC flash layout defined in Linux :
|
||||
#
|
||||
# arch/arm/boot/dts/openbmc-flash-layout-64.dtsi
|
||||
#
|
||||
# and included by aspeed-ast2600-evb.dts
|
||||
#
|
||||
flash nor-64M-256 {
|
||||
pebsize = 4K
|
||||
numpebs = 16K
|
||||
minimum-io-unit-size = 256
|
||||
}
|
||||
|
||||
image flash.img {
|
||||
flash {
|
||||
}
|
||||
flashtype = "nor-64M-256"
|
||||
|
||||
partition uboot {
|
||||
image = "u-boot.bin"
|
||||
size = 896K
|
||||
}
|
||||
|
||||
partition ubootenv {
|
||||
/* TODO */
|
||||
offset = 896K
|
||||
size = 128K
|
||||
}
|
||||
|
||||
partition fitimage {
|
||||
image = "image.itb"
|
||||
offset = 1M
|
||||
size = 9M
|
||||
}
|
||||
|
||||
partition spare {
|
||||
offset = 10M
|
||||
size = 54M
|
||||
}
|
||||
}
|
||||
@@ -1,80 +0,0 @@
|
||||
Aspeed AST2600 EVB
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
The AST2600 EVB is an evaluation board for the AST2600 SoC, most
|
||||
commonly used as a Server Management Processor. It includes a
|
||||
Dual-core ARM Cortex A7 processor with DDR4 SDRAM (up to 2GB), SPI
|
||||
flash memory devices for BMC and host firmwares and numerous
|
||||
controllers to drive the server board.
|
||||
|
||||
https://www.aspeedtech.com/server_ast2600/
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure buildroot:
|
||||
|
||||
$ make aspeed_ast2600evb_defconfig
|
||||
|
||||
Compile everything and build the rootfs image:
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
===================
|
||||
|
||||
After building, the output/images directory contains:
|
||||
|
||||
output/images/
|
||||
├── aspeed-ast2600-evb.dtb
|
||||
├── flash.img
|
||||
├── image.itb
|
||||
├── rootfs.cpio
|
||||
├── rootfs.cpio.xz
|
||||
├── rootfs.tar
|
||||
├── u-boot.bin
|
||||
└── zImage
|
||||
|
||||
Flashing the image
|
||||
==================
|
||||
|
||||
To update the contents of the first flash device, copy flash.img :
|
||||
|
||||
$ flashcp flash.img /dev/mtd0
|
||||
|
||||
or simply the boot loader:
|
||||
|
||||
$ flashcp u-boot.bin /dev/mtd1
|
||||
|
||||
Preparing the board
|
||||
===================
|
||||
|
||||
* Connect a serial line to the board
|
||||
* Power-up the board
|
||||
|
||||
Booting the board
|
||||
=================
|
||||
|
||||
The AST2600 EVB boots from the SPI flash device directly and loads a
|
||||
first bootloader (usually U-Boot). U-Boot will attempt to load a Linux
|
||||
kernel from the same flash device by default but other storage could
|
||||
be used.
|
||||
|
||||
* from U-Boot
|
||||
|
||||
The FIT image image.itb can be used to boot the board from U-Boot
|
||||
using tftp
|
||||
|
||||
* with QEMU
|
||||
|
||||
$ qemu-system-arm -M ast2600-evb \
|
||||
-drive file=output/images/flash.img,format=raw,if=mtd \
|
||||
-nographic
|
||||
|
||||
$ qemu-system-arm -M ast2600-evb \
|
||||
-kernel output/images/zImage \
|
||||
-initrd output/images/rootfs.cpio \
|
||||
-dtb output/images/aspeed-ast2600-evb.dtb \
|
||||
-nographic
|
||||
@@ -1,56 +0,0 @@
|
||||
/dts-v1/;
|
||||
|
||||
/ {
|
||||
description = "Kernel and buildroot image";
|
||||
#address-cells = <1>;
|
||||
|
||||
images {
|
||||
kernel-1 {
|
||||
description = "Linux kernel";
|
||||
data = /incbin/("zImage");
|
||||
type = "kernel";
|
||||
arch = "arm";
|
||||
os = "linux";
|
||||
compression = "none";
|
||||
load = <0x80001000>;
|
||||
entry = <0x80001000>;
|
||||
hash-1 {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
fdt-1 {
|
||||
description = "Flattened Device Tree blob";
|
||||
data = /incbin/("%BOARD_DTB%");
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
hash-1 {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
ramdisk-1 {
|
||||
description = "ramdisk";
|
||||
data = /incbin/("rootfs.cpio.xz");
|
||||
type = "ramdisk";
|
||||
arch = "arm";
|
||||
os = "linux";
|
||||
compression = "none";
|
||||
hash-1 {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf-1";
|
||||
conf-1 {
|
||||
description = "Boot Linux kernel with FDT blob, ramdisk";
|
||||
kernel = "kernel-1";
|
||||
fdt = "fdt-1";
|
||||
ramdisk = "ramdisk-1";
|
||||
hash-1 {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,27 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
mkimage=$HOST_DIR/bin/mkimage
|
||||
|
||||
BOARD_DT=$(sed -n \
|
||||
's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9\-]*\).*"$/\1/p' \
|
||||
${BR2_CONFIG})
|
||||
|
||||
sed -e "s/%BOARD_DTB%/${BOARD_DT}.dtb/" \
|
||||
$BOARD_DIR/image.its.template > $BINARIES_DIR/image.its
|
||||
|
||||
(cd $BINARIES_DIR && $mkimage -f image.its image.itb)
|
||||
|
||||
GENIMAGE_CFG="board/aspeed/${BOARD_DT#aspeed-*}/genimage.cfg"
|
||||
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
|
||||
|
||||
rm -rf "${GENIMAGE_TMP}"
|
||||
|
||||
genimage \
|
||||
--rootpath "${TARGET_DIR}" \
|
||||
--tmppath "${GENIMAGE_TMP}" \
|
||||
--inputpath "${BINARIES_DIR}" \
|
||||
--outputpath "${BINARIES_DIR}" \
|
||||
--config "${GENIMAGE_CFG}"
|
||||
|
||||
rm -f $BINARIES_DIR/image.its
|
||||
@@ -0,0 +1,7 @@
|
||||
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
|
||||
|
||||
mmc dev 0
|
||||
fatload mmc 0 $kernel_addr_r zImage
|
||||
fatload mmc 0 $fdt_addr_r sun7i-a20-bananapi.dtb
|
||||
|
||||
bootz $kernel_addr_r - $fdt_addr_r
|
||||
@@ -1,26 +1,34 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"u-boot-spl.bin",
|
||||
"u-boot.itb",
|
||||
"ae350.dtb",
|
||||
"zImage",
|
||||
"sun7i-a20-bananapi.dtb",
|
||||
"boot.scr"
|
||||
}
|
||||
}
|
||||
size = 2M
|
||||
|
||||
size = 64M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
in-partition-table = "no"
|
||||
image = "u-boot-sunxi-with-spl.bin"
|
||||
offset = 8K
|
||||
size = 1016K # 1MB - 8KB
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
bootable = true
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
Intro
|
||||
=====
|
||||
|
||||
This default configuration will allow you to start experimenting with the
|
||||
buildroot environment for the Bananapi M1. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Bananapi M1 link:
|
||||
http://www.banana-pi.org/m1.html
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/Bananapi+M1
|
||||
|
||||
This configuration uses U-Boot mainline and kernel mainline.
|
||||
|
||||
How to build
|
||||
============
|
||||
|
||||
$ make bananapi_m1_defconfig
|
||||
$ make
|
||||
|
||||
Note: you will need access to the internet to download the required
|
||||
sources.
|
||||
|
||||
How to write the SD card
|
||||
========================
|
||||
|
||||
Once the build process is finished you will have an image called "sdcard.img"
|
||||
in the output/images/ directory.
|
||||
|
||||
Copy the bootable "sdcard.img" onto an SD card with "dd":
|
||||
|
||||
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
|
||||
$ sudo sync
|
||||
|
||||
Insert the micro SDcard in your Bananapi M1 and power it up. The console
|
||||
is on the serial line, 115200 8N1.
|
||||
@@ -0,0 +1,6 @@
|
||||
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
|
||||
|
||||
fatload mmc 0 $kernel_addr_r Image
|
||||
fatload mmc 0 $fdt_addr_r sun50i-a64-bananapi-m64.dtb
|
||||
|
||||
booti $kernel_addr_r - $fdt_addr_r
|
||||
@@ -0,0 +1,40 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"Image",
|
||||
"sun50i-a64-bananapi-m64.dtb",
|
||||
"boot.scr"
|
||||
}
|
||||
}
|
||||
|
||||
size = 64M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition spl {
|
||||
in-partition-table = "no"
|
||||
image = "sunxi-spl.bin"
|
||||
offset = 8K
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
in-partition-table = "no"
|
||||
image = "u-boot.itb"
|
||||
offset = 40K
|
||||
size = 1M # 1MB - 40KB
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
Intro
|
||||
=====
|
||||
|
||||
This default configuration will allow you to start experimenting with the
|
||||
buildroot environment for the Bananapi M64. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Bananapi M64 link:
|
||||
http://www.banana-pi.org/m64.html
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/Bananapi+M64
|
||||
|
||||
This configuration uses U-Boot mainline and kernel mainline.
|
||||
|
||||
How to build
|
||||
============
|
||||
|
||||
$ make bananapi_m64_defconfig
|
||||
$ make
|
||||
|
||||
Note: you will need access to the internet to download the required
|
||||
sources.
|
||||
|
||||
How to write the SD card
|
||||
========================
|
||||
|
||||
Once the build process is finished you will have an image called "sdcard.img"
|
||||
in the output/images/ directory.
|
||||
|
||||
Copy the bootable "sdcard.img" onto an SD card with "dd":
|
||||
|
||||
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
|
||||
$ sudo sync
|
||||
|
||||
Insert the micro SDcard in your Bananapi M64 and power it up. The console
|
||||
is on the serial line, 115200 8N1.
|
||||
@@ -17,7 +17,7 @@ Build results
|
||||
|
||||
After building, output/images contains:
|
||||
|
||||
+ bootloader-JH7100-buildroot.bin.out
|
||||
+ bootloader-BEAGLEV-buildroot.bin.out
|
||||
+ ddrinit-2133-buildroot.bin.out
|
||||
+ Image
|
||||
+ fw_payload.bin
|
||||
@@ -30,7 +30,7 @@ After building, output/images contains:
|
||||
|
||||
The four important files are:
|
||||
|
||||
- bootloader-JH7100-buildroot.bin.out, the first stage bootloader
|
||||
- bootloader-BEAGLEV-buildroot.bin.out, the first stage bootloader
|
||||
|
||||
- ddrinit-2133-buildroot.bin.out, the DDR initialization firmware
|
||||
|
||||
@@ -109,7 +109,7 @@ You can flash them as follows:
|
||||
"expert" features.
|
||||
|
||||
- Then, press 0 and send over X-modem the
|
||||
bootloader-JH7100-buildroot.bin.out file.
|
||||
bootloader-BEAGLEV-buildroot.bin.out file.
|
||||
|
||||
- Then, press 1 and send over X-modem the
|
||||
ddrinit-2133-buildroot.bin.out.
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
CONFIG_EMBEDDED=y
|
||||
CONFIG_ARCH_BCM=y
|
||||
CONFIG_ARCH_BCM_5301X=y
|
||||
CONFIG_ARCH_BCM_53573=y
|
||||
CONFIG_SMP=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_ARM_APPENDED_DTB=y
|
||||
CONFIG_CMDLINE="ubi.mtd=ubi root=ubi0:rootfs rootfstype=ubifs"
|
||||
CONFIG_CMDLINE_FORCE=y
|
||||
# CONFIG_SUSPEND is not set
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_BRIDGE=y
|
||||
CONFIG_BRIDGE_VLAN_FILTERING=y
|
||||
CONFIG_NET_DSA=y
|
||||
CONFIG_VLAN_8021Q=y
|
||||
CONFIG_PCI=y
|
||||
CONFIG_BCM47XX_NVRAM=y
|
||||
CONFIG_BCM47XX_SPROM=y
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_BCM47XX_PARTS=y
|
||||
CONFIG_MTD_PARSER_TRX=y
|
||||
CONFIG_MTD_BCM47XXSFLASH=y
|
||||
CONFIG_MTD_RAW_NAND=y
|
||||
CONFIG_MTD_NAND_BRCMNAND=y
|
||||
CONFIG_MTD_SPI_NOR=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_VXLAN=y
|
||||
CONFIG_VETH=y
|
||||
CONFIG_B53=y
|
||||
CONFIG_BGMAC_BCMA=y
|
||||
CONFIG_BROADCOM_PHY=y
|
||||
CONFIG_MDIO_BUS_MUX_MMIOREG=y
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=2
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=2
|
||||
CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_BCM47XX_WDT=y
|
||||
CONFIG_BCMA_HOST_SOC=y
|
||||
CONFIG_BCMA_DRIVER_GMAC_CMN=y
|
||||
CONFIG_BCMA_DRIVER_GPIO=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_LEDS_TRIGGER_USBPORT=y
|
||||
CONFIG_USB_XHCI_HCD=y
|
||||
CONFIG_USB_XHCI_PLATFORM=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
# CONFIG_USB_OHCI_HCD_PCI is not set
|
||||
CONFIG_USB_HCD_BCMA=y
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_TIMER=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
CONFIG_PHY_BCM_NS_USB2=y
|
||||
CONFIG_PHY_BCM_NS_USB3=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
CONFIG_DEBUG_UNCOMPRESS=y
|
||||
CONFIG_EARLY_PRINTK=y
|
||||
@@ -1,40 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# $1: images directory path
|
||||
# $2: device dts filename
|
||||
# $3: board id
|
||||
build_lxl() {
|
||||
local images="$1"
|
||||
local device="$2"
|
||||
local board="$3"
|
||||
|
||||
$HOST_DIR/bin/lzma_alone e $images/zImage.$device $images/zImage.$device.lzma -d16
|
||||
rm -f $images/zImage.$device
|
||||
$HOST_DIR/bin/otrx create $images/$device.trx -f $images/zImage.$device.lzma -a 0x20000 -f $images/rootfs.ubi
|
||||
rm -f $images/zImage.$device.lzma
|
||||
$HOST_DIR/bin/lxlfw create $images/$device.lxl -i $images/$device.trx -b "$board"
|
||||
}
|
||||
|
||||
# $1: images directory path
|
||||
# $2: device dts filename
|
||||
build_trx() {
|
||||
local images="$1"
|
||||
local device="$2"
|
||||
|
||||
$HOST_DIR/bin/lzma_alone e $images/zImage.$device $images/zImage.$device.lzma -d16
|
||||
rm -f $images/zImage.$device
|
||||
$HOST_DIR/bin/otrx create $images/$device.trx -f $images/zImage.$device.lzma -a 0x20000 -f $images/rootfs.ubi
|
||||
rm -f $images/zImage.$device.lzma
|
||||
}
|
||||
|
||||
devices="$(sed -n 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9 \-]*\)"$/\1/p' ${BR2_CONFIG})"
|
||||
for device in $devices; do
|
||||
case "$device" in
|
||||
"bcm4708-smartrg-sr400ac")
|
||||
build_trx "$1" "$device"
|
||||
;;
|
||||
"bcm47094-luxul-xwr-3150-v1")
|
||||
build_lxl "$1" "$device" "XWR-3150"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@@ -1,38 +0,0 @@
|
||||
Broadcom Northstar
|
||||
|
||||
Intro
|
||||
=====
|
||||
|
||||
This readme covers Northstar family of Broadcom SoCs. It includes:
|
||||
- BCM4708 (2 x 800 MHz)
|
||||
- BCM47081 (1 x 800 MHz)
|
||||
- BCM4709 (2 x 1 GHz)
|
||||
- BCM47094 (2 x 1 GHz) (AKA BCM4709C0)
|
||||
|
||||
Northstar platform is used in some home routers by multiple vendors. There are
|
||||
over 100 market devices based on it and they can all be supported with 1 kernel.
|
||||
|
||||
There is no point in having separated board for each model. This board code is
|
||||
meant for all supported Northstar devices.
|
||||
|
||||
All Northstar devices come with CFE bootloader by default. It's basically closed
|
||||
source as sources are available for some old releases only. There is no U-Boot (or
|
||||
any other) drop-in replacement or second stage loader with Northstar support.
|
||||
|
||||
CFE supports flashing firmware images over TFTP and HTTP (depending on vendor /
|
||||
device setup).
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
$ make broadcom_northstar_defconfig
|
||||
|
||||
$ make
|
||||
|
||||
How to flash over HTTP
|
||||
======================
|
||||
|
||||
Power on device and press (and hold) CTRL+C in serial console terminal. When CFE
|
||||
gets into prompt mode it'll automatically start built-in HTTP server. Navigate
|
||||
to http://192.168.1.1/ (unless IP was changed - verify with "ifconfig") and
|
||||
upload new firmware using a web browser.
|
||||
@@ -1,231 +0,0 @@
|
||||
#
|
||||
# Additional config changes for busybox-minimal.config
|
||||
# to reduce the size of the busybox executable.
|
||||
#
|
||||
|
||||
#
|
||||
# Settings
|
||||
#
|
||||
# CONFIG_INCLUDE_SUSv2 is not set
|
||||
# CONFIG_LONG_OPTS is not set
|
||||
# CONFIG_LFS is not set
|
||||
# CONFIG_FEATURE_DEVPTS is not set
|
||||
# CONFIG_FEATURE_SYSLOG_INFO is not set
|
||||
# CONFIG_FEATURE_SYSLOG is not set
|
||||
|
||||
#
|
||||
# Library Tuning
|
||||
#
|
||||
# CONFIG_FEATURE_RTMINMAX is not set
|
||||
# CONFIG_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS is not set
|
||||
# CONFIG_FEATURE_BUFFERS_USE_MALLOC is not set
|
||||
CONFIG_FEATURE_BUFFERS_GO_ON_STACK=y
|
||||
# CONFIG_FEATURE_EDITING_VI is not set
|
||||
# CONFIG_FEATURE_EDITING_SAVEHISTORY is not set
|
||||
# CONFIG_FEATURE_REVERSE_SEARCH is not set
|
||||
# CONFIG_FEATURE_EDITING_WINCH is not set
|
||||
# CONFIG_FEATURE_HWIB is not set
|
||||
|
||||
#
|
||||
# Archival Utilities
|
||||
#
|
||||
# CONFIG_ZCAT is not set
|
||||
# CONFIG_BZCAT is not set
|
||||
# CONFIG_LZCAT is not set
|
||||
# CONFIG_XZCAT is not set
|
||||
# CONFIG_UNLZOP is not set
|
||||
# CONFIG_LZOPCAT is not set
|
||||
|
||||
#
|
||||
# Coreutils
|
||||
#
|
||||
# CONFIG_CKSUM is not set
|
||||
# CONFIG_DOS2UNIX is not set
|
||||
# CONFIG_UNIX2DOS is not set
|
||||
# CONFIG_DU is not set
|
||||
# CONFIG_FACTOR is not set
|
||||
# CONFIG_FOLD is not set
|
||||
# CONFIG_HEAD is not set
|
||||
# CONFIG_INSTALL is not set
|
||||
# CONFIG_LINK is not set
|
||||
# CONFIG_LOGNAME is not set
|
||||
# CONFIG_MD5SUM is not set
|
||||
# CONFIG_SHA1SUM is not set
|
||||
# CONFIG_SHA256SUM is not set
|
||||
# CONFIG_SHA512SUM is not set
|
||||
# CONFIG_SHA3SUM is not set
|
||||
# CONFIG_MKFIFO is not set
|
||||
# CONFIG_NICE is not set
|
||||
# CONFIG_NL is not set
|
||||
# CONFIG_NOHUP is not set
|
||||
# CONFIG_OD is not set
|
||||
# CONFIG_PASTE is not set
|
||||
# CONFIG_SHRED is not set
|
||||
# CONFIG_SORT is not set
|
||||
# CONFIG_TAIL is not set
|
||||
# CONFIG_TEE is not set
|
||||
# CONFIG_TIMEOUT is not set
|
||||
# CONFIG_TR is not set
|
||||
# CONFIG_UNIQ is not set
|
||||
# CONFIG_UUDECODE is not set
|
||||
# CONFIG_BASE32 is not set
|
||||
# CONFIG_UUENCODE is not set
|
||||
# CONFIG_WC is not set
|
||||
# CONFIG_WHOAMI is not set
|
||||
# CONFIG_WHO is not set
|
||||
# CONFIG_W is not set
|
||||
# CONFIG_USERS is not set
|
||||
# CONFIG_YES is not set
|
||||
|
||||
#
|
||||
# Common options
|
||||
#
|
||||
# CONFIG_FEATURE_VERBOSE is not set
|
||||
|
||||
#
|
||||
# Debian Utilities
|
||||
#
|
||||
# CONFIG_RUN_PARTS is not set
|
||||
# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
|
||||
# CONFIG_START_STOP_DAEMON is not set
|
||||
# CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_START_STOP_DAEMON_FANCY is not set
|
||||
# CONFIG_WHICH is not set
|
||||
|
||||
#
|
||||
# klibc-utils
|
||||
#
|
||||
# CONFIG_NUKE is not set
|
||||
# CONFIG_RESUME is not set
|
||||
# CONFIG_RUN_INIT is not set
|
||||
|
||||
#
|
||||
# Editors
|
||||
#
|
||||
# CONFIG_SED is not set
|
||||
CONFIG_VI=y
|
||||
CONFIG_FEATURE_VI_MAX_LEN=4096
|
||||
CONFIG_FEATURE_VI_COLON=y
|
||||
CONFIG_FEATURE_VI_YANKMARK=y
|
||||
CONFIG_FEATURE_VI_USE_SIGNALS=y
|
||||
CONFIG_FEATURE_VI_DOT_CMD=y
|
||||
CONFIG_FEATURE_VI_READONLY=y
|
||||
CONFIG_FEATURE_VI_SETOPTS=y
|
||||
CONFIG_FEATURE_VI_SET=y
|
||||
CONFIG_FEATURE_VI_WIN_RESIZE=y
|
||||
CONFIG_FEATURE_VI_ASK_TERMINAL=y
|
||||
CONFIG_FEATURE_VI_UNDO=y
|
||||
|
||||
#
|
||||
# Finding Utilities
|
||||
#
|
||||
CONFIG_GREP=y
|
||||
# CONFIG_EGREP is not set
|
||||
# CONFIG_FGREP is not set
|
||||
# CONFIG_XARGS is not set
|
||||
|
||||
#
|
||||
# Init Utilities
|
||||
#
|
||||
# CONFIG_HALT is not set
|
||||
# CONFIG_POWEROFF is not set
|
||||
# CONFIG_FEATURE_WAIT_FOR_INIT is not set
|
||||
# CONFIG_FEATURE_CALL_TELINIT is not set
|
||||
# CONFIG_INIT is not set
|
||||
# CONFIG_LINUXRC is not set
|
||||
|
||||
#
|
||||
# Login/Password Management Utilities
|
||||
#
|
||||
# CONFIG_FEATURE_SHADOWPASSWDS is not set
|
||||
# CONFIG_USE_BB_CRYPT is not set
|
||||
# CONFIG_USE_BB_CRYPT_SHA is not set
|
||||
# CONFIG_ADDUSER is not set
|
||||
# CONFIG_GETTY is not set
|
||||
# CONFIG_LOGIN is not set
|
||||
# CONFIG_PASSWD is not set
|
||||
|
||||
#
|
||||
# Linux System Utilities
|
||||
#
|
||||
# CONFIG_FALLOCATE is not set
|
||||
# CONFIG_FREERAMDISK is not set
|
||||
# CONFIG_FSFREEZE is not set
|
||||
# CONFIG_GETOPT is not set
|
||||
# CONFIG_XXD is not set
|
||||
# CONFIG_MESG is not set
|
||||
# CONFIG_MKE2FS is not set
|
||||
# CONFIG_MKDOSFS is not set
|
||||
# CONFIG_FEATURE_MOUNT_CIFS is not set
|
||||
# CONFIG_FEATURE_MOUNT_FSTAB is not set
|
||||
# CONFIG_FEATURE_MOUNT_OTHERTAB is not set
|
||||
# CONFIG_NOLOGIN is not set
|
||||
# CONFIG_LINUX32 is not set
|
||||
# CONFIG_LINUX64 is not set
|
||||
# CONFIG_SETPRIV is not set
|
||||
|
||||
#
|
||||
# Common options for mount/umount
|
||||
#
|
||||
# CONFIG_FEATURE_MOUNT_LOOP is not set
|
||||
# CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set
|
||||
|
||||
#
|
||||
# Miscellaneous Utilities
|
||||
#
|
||||
# CONFIG_BC is not set
|
||||
# CONFIG_HEXEDIT is not set
|
||||
# CONFIG_I2CTRANSFER is not set
|
||||
# CONFIG_LSSCSI is not set
|
||||
# CONFIG_MIM is not set
|
||||
# CONFIG_PARTPROBE is not set
|
||||
# CONFIG_SETFATTR is not set
|
||||
# CONFIG_SETSERIAL is not set
|
||||
# CONFIG_TS is not set
|
||||
|
||||
#
|
||||
# Networking Utilities
|
||||
#
|
||||
# CONFIG_HOSTNAME is not set
|
||||
# CONFIG_DNSDOMAINNAME is not set
|
||||
# CONFIG_IFCONFIG is not set
|
||||
# CONFIG_IFUP is not set
|
||||
# CONFIG_IFDOWN is not set
|
||||
# CONFIG_IP is not set
|
||||
# CONFIG_IPADDR is not set
|
||||
# CONFIG_IPLINK is not set
|
||||
# CONFIG_IPROUTE is not set
|
||||
# CONFIG_NC is not set
|
||||
# CONFIG_NETSTAT is not set
|
||||
# CONFIG_PING is not set
|
||||
# CONFIG_ROUTE is not set
|
||||
# CONFIG_TC is not set
|
||||
# CONFIG_TELNET is not set
|
||||
# CONFIG_WGET is not set
|
||||
# CONFIG_UDHCPC is not set
|
||||
|
||||
#
|
||||
# Process Utilities
|
||||
#
|
||||
# CONFIG_KILLALL is not set
|
||||
# CONFIG_KILLALL5 is not set
|
||||
|
||||
#
|
||||
# Runit Utilities
|
||||
#
|
||||
# CONFIG_SVC is not set
|
||||
# CONFIG_SVOK is not set
|
||||
|
||||
#
|
||||
# Shells
|
||||
#
|
||||
CONFIG_BASH_IS_HUSH=y
|
||||
# CONFIG_BASH_IS_NONE is not set
|
||||
# CONFIG_HUSH_SAVEHISTORY is not set
|
||||
|
||||
#
|
||||
# Options common to all shells
|
||||
#
|
||||
# CONFIG_FEATURE_SH_READ_FRAC is not set
|
||||
# CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS is not set
|
||||
@@ -1,30 +0,0 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
file uImage {
|
||||
image = "uImage"
|
||||
}
|
||||
|
||||
file k210.dtb {
|
||||
image = "k210.dtb"
|
||||
}
|
||||
}
|
||||
size = 4M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
image = "boot.vfat"
|
||||
bootable = "true"
|
||||
offset = 4M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext2"
|
||||
size = 64M
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
CONFIG_BUILTIN_DTB=n
|
||||
CONFIG_SOC_CANAAN_K210_DTB_BUILTIN=n
|
||||
CONFIG_SOC_CANAAN_K210_DTB_SOURCE=""
|
||||
CONFIG_CMDLINE="earlycon console=ttySIF0 root=/dev/mmcblk0p2 rootwait ro"
|
||||
@@ -1,28 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
MKIMAGE=${HOST_DIR}/bin/mkimage
|
||||
|
||||
# Generate u-Boot kernel image
|
||||
${MKIMAGE} -A riscv -O linux -T kernel -C none \
|
||||
-a 0x80000000 -e 0x80000000 \
|
||||
-n Linux -d ${BINARIES_DIR}/loader.bin ${BINARIES_DIR}/uImage
|
||||
|
||||
# Link the kernel-built board dtb file to using the k210.dtb generic
|
||||
# name for use by genimage.cfg
|
||||
BOARDDTBKPATH="$(grep BR2_LINUX_KERNEL_INTREE_DTS_NAME ${BR2_CONFIG} | cut -d'=' -f2 | tr -d \")"
|
||||
|
||||
BOARDDTB="$(basename ${BOARDDTBKPATH})"
|
||||
if [ -z "${BOARDDTB}" ]; then
|
||||
echo "Board DTB file not specified"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BOARDDTB="${BINARIES_DIR}/${BOARDDTB}.dtb"
|
||||
if [ ! -f "${BOARDDTB}" ]; then
|
||||
echo "Board DTB file not found in ${BINARIES_DIR}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TARGETDTB=${BINARIES_DIR}/k210.dtb
|
||||
rm -f ${TARGETDTB}
|
||||
ln -s ${BOARDDTB} ${TARGETDTB}
|
||||
@@ -1 +0,0 @@
|
||||
/sbin/init
|
||||
@@ -1,41 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This script replaces the default busybox init process to avoid having that
|
||||
# process staying alive and sleeping in the background, (uselessly) consuming
|
||||
# precious memory.
|
||||
|
||||
# Mount procfs and sysfs
|
||||
/bin/mount -t proc proc /proc
|
||||
/bin/mount -t sysfs sysfs /sys
|
||||
|
||||
# When the kernel is directly booted, devtmpfs is not automatically mounted.
|
||||
# Manually mount it if needed.
|
||||
devmnt=$(mount | grep -c devtmpfs)
|
||||
if [ ${devmnt} -eq 0 ]; then
|
||||
/bin/mount -t devtmpfs devtmpfs /dev
|
||||
fi
|
||||
|
||||
# Use the /dev/console device node from devtmpfs if possible to not
|
||||
# confuse glibc's ttyname_r().
|
||||
# This may fail (E.G. booted with console=), and errors from exec will
|
||||
# terminate the shell, so use a subshell for the test
|
||||
if (exec 0</dev/console) 2>/dev/null; then
|
||||
exec 0</dev/console
|
||||
exec 1>/dev/console
|
||||
exec 2>/dev/console
|
||||
fi
|
||||
|
||||
# Clear memory to reduce page fragmentation
|
||||
echo 3 > /proc/sys/vm/drop_caches
|
||||
|
||||
# Print a fun logo :)
|
||||
echo " __ _"
|
||||
echo " / / (_) ____ _ _ __ __"
|
||||
echo " / / | || _ \\ | | | |\\ \\/ /"
|
||||
echo " / /___| || | | || |_| | > < "
|
||||
echo " /_____/|_||_| |_| \\____|/_/\\_\\"
|
||||
echo " 64-bits RISC-V Kendryte K210 NOMMU"
|
||||
echo ""
|
||||
|
||||
# Finally, let's start an interactive shell
|
||||
exec /bin/sh
|
||||
@@ -1 +0,0 @@
|
||||
# CONFIG_WATCHDOG_AUTOSTART is not set
|
||||
@@ -1,2 +0,0 @@
|
||||
CONFIG_SOC_CANAAN_K210_DTB_BUILTIN=y
|
||||
CONFIG_SOC_CANAAN_K210_DTB_SOURCE="canaan_kd233"
|
||||
@@ -1,149 +0,0 @@
|
||||
Canaan KD233 Board
|
||||
==================
|
||||
|
||||
The Canaan KD233 is a dual-core RISC-V 64-bits board based on the Canaan
|
||||
Kendryte K210 SoC.
|
||||
|
||||
Prerequisite
|
||||
------------
|
||||
|
||||
In order to use the kflash utility to program this board, the user must have
|
||||
access to the board USB serial device file. The simplest way to do this is to
|
||||
add your user to the same group as this device file. Assume the device file is
|
||||
/dev/ttyUSB0, first identify the device group name. In most cases, it is
|
||||
either "dialout" or "uucp". Also verify that read-write access is enabled for
|
||||
the group:
|
||||
|
||||
```
|
||||
$ ls -l /dev/ttyUSB0
|
||||
crw-rw---- 1 root dialout 188, 0 May 26 13:48 /dev/ttyUSB0
|
||||
```
|
||||
|
||||
Then add yourself to that group (dialout in this example):
|
||||
|
||||
```
|
||||
$ sudo usermod -a -G dialout $(whoami)
|
||||
```
|
||||
|
||||
To enable the above, it is sometimes necessary to logout and login again.
|
||||
|
||||
Buildroot Configuration
|
||||
-----------------------
|
||||
|
||||
Unlike other K210 based boards (Sipeed boards), U-Boot does not work on the
|
||||
KD233 board due to the different wiring for the SD-Card mmc controller. As such,
|
||||
the KD233 board can only be used by directly booting into Linux Kernel.
|
||||
|
||||
buildroot can be configured to do so using the canaan_kd233_defconfig
|
||||
configuration file. This configuration allows building a bootable kernel image
|
||||
with a built-in initramfs root file system (the board SD card is not used). The
|
||||
built kernel image can be flashed directly to the board ROM for direct booting.
|
||||
No boot loader is required.
|
||||
|
||||
Once booted, the on-board SD card can be used by Linux.
|
||||
|
||||
The configuration file will also compile and install the kflash and
|
||||
pyserial-miniterm host utilities to program bootable image files to the board
|
||||
and open a serial terminal console.
|
||||
|
||||
Direct Linux Kernel Boot
|
||||
-------------------------
|
||||
|
||||
Using the canaan_kd233_defconfig configuration, the bootable kernel binary image
|
||||
is built as follows.
|
||||
|
||||
```
|
||||
$ make canaan_kd233_defconfig
|
||||
$ make
|
||||
```
|
||||
|
||||
The bootable binary image is the output/images/loader.bin file. This image file
|
||||
can be written to the board boot flash using the kflash utility.
|
||||
|
||||
```
|
||||
$ output/host/bin/kflash -b 1500000 -p /dev/ttyUSB0 -t output/images/loader.bin
|
||||
```
|
||||
|
||||
Once the kernel image file is fully programmed, a terminal console is open and
|
||||
the board can be rebooted by pressing the reset button on the board (if it does
|
||||
not reboot automatically).
|
||||
|
||||
The output will be similar to the following.
|
||||
|
||||
```
|
||||
[ 0.000000] Linux version 5.17.0 (foo@bar.com) (riscv64-buildroot-linux-uclibc-gcc.br_real (Buildroot 2022.02-560-g6a2b542a09-dirty) 10.3.0, GNU ld (GNU Binutils) 2.32) #2 SMP Thu Apr 21 16:40:44 JST 2022
|
||||
[ 0.000000] Machine model: Kendryte KD233
|
||||
[ 0.000000] earlycon: sifive0 at MMIO 0x0000000038000000 (options '115200n8')
|
||||
[ 0.000000] printk: bootconsole [sifive0] enabled
|
||||
[ 0.000000] Zone ranges:
|
||||
[ 0.000000] DMA32 [mem 0x0000000080000000-0x00000000807fffff]
|
||||
[ 0.000000] Normal empty
|
||||
[ 0.000000] Movable zone start for each node
|
||||
[ 0.000000] Early memory node ranges
|
||||
[ 0.000000] node 0: [mem 0x0000000080000000-0x00000000807fffff]
|
||||
[ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000807fffff]
|
||||
[ 0.000000] riscv: ISA extensions acdfim
|
||||
[ 0.000000] riscv: ELF capabilities acdfim
|
||||
[ 0.000000] percpu: max_distance=0x16000 too large for vmalloc space 0x0
|
||||
[ 0.000000] percpu: Embedded 11 pages/cpu s15264 r0 d29792 u45056
|
||||
[ 0.000000] percpu: wasting 10 pages per chunk
|
||||
[ 0.000000] Built 1 zonelists, mobility grouping off. Total pages: 2020
|
||||
[ 0.000000] Kernel command line: earlycon console=ttySIF0
|
||||
[ 0.000000] Dentry cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
|
||||
[ 0.000000] Inode-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
|
||||
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
|
||||
[ 0.000000] Memory: 5984K/8192K available (964K kernel code, 137K rwdata, 205K rodata, 546K init, 66K bss, 2208K reserved, 0K cma-reserved)
|
||||
[ 0.000000] rcu: Hierarchical RCU implementation.
|
||||
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
|
||||
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
|
||||
[ 0.000000] riscv-intc: 64 local interrupts mapped
|
||||
[ 0.000000] plic: interrupt-controller@c000000: mapped 65 interrupts with 2 handlers for 4 contexts.
|
||||
[ 0.000000] k210-clk: clock-controller: CPU running at 390 MHz
|
||||
[ 0.000000] clint: timer@2000000: timer running at 7800000 Hz
|
||||
[ 0.000000] clocksource: clint_clocksource: mask: 0xffffffffffffffff max_cycles: 0x3990be68b, max_idle_ns: 881590404272 ns
|
||||
[ 0.000001] sched_clock: 64 bits at 7MHz, resolution 128ns, wraps every 4398046511054ns
|
||||
[ 0.008178] Calibrating delay loop (skipped), value calculated using timer frequency.. 15.60 BogoMIPS (lpj=31200)
|
||||
[ 0.018251] pid_max: default: 4096 minimum: 301
|
||||
[ 0.022861] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
|
||||
[ 0.029971] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
|
||||
[ 0.040234] rcu: Hierarchical SRCU implementation.
|
||||
[ 0.045110] smp: Bringing up secondary CPUs ...
|
||||
[ 0.050211] smp: Brought up 1 node, 2 CPUs
|
||||
[ 0.054340] devtmpfs: initialized
|
||||
[ 0.070401] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
|
||||
[ 0.079473] pinctrl core: initialized pinctrl subsystem
|
||||
[ 0.117795] clocksource: Switched to clocksource clint_clocksource
|
||||
[ 0.130245] workingset: timestamp_bits=62 max_order=11 bucket_order=0
|
||||
[ 0.176925] k210-sysctl 50440000.syscon: K210 system controller
|
||||
[ 0.192947] k210-rst 50440000.syscon:reset-controller: K210 reset controller
|
||||
[ 0.200870] cacheinfo: Unable to detect cache hierarchy for CPU 0
|
||||
[ 0.210947] i2c_dev: i2c /dev entries driver
|
||||
[ 0.220535] k210-fpioa 502b0000.pinmux: K210 FPIOA pin controller
|
||||
[ 0.232253] 38000000.serial: ttySIF0 at MMIO 0x38000000 (irq = 1, base_baud = 115200) is a SiFive UART v0
|
||||
[ 0.241202] printk: console [ttySIF0] enabled
|
||||
[ 0.241202] printk: console [ttySIF0] enabled
|
||||
[ 0.249818] printk: bootconsole [sifive0] disabled
|
||||
[ 0.249818] printk: bootconsole [sifive0] disabled
|
||||
[ 0.261664] panel@0 enforce active low on chipselect handle
|
||||
[ 0.275950] Freeing unused kernel image (initmem) memory: 540K
|
||||
[ 0.281098] This architecture does not have kernel memory protection.
|
||||
[ 0.287520] Run /init as init process
|
||||
__ _
|
||||
/ / (_) ____ _ _ __ __
|
||||
/ / | || _ \ | | | |\ \/ /
|
||||
/ /___| || | | || |_| | > <
|
||||
/_____/|_||_| |_| \____|/_/\_\
|
||||
64-bits RISC-V Kendryte K210 NOMMU
|
||||
|
||||
/ #
|
||||
```
|
||||
|
||||
To open a terminal console without re-flashing the board, the pyserial-miniterm
|
||||
host tool can be used.
|
||||
|
||||
```
|
||||
$ output/host/bin/pyserial-miniterm --raw --eol=LF /dev/ttyUSB0 115200
|
||||
```
|
||||
|
||||
The options "--raw" and "--eol=LF" are added here to avoid a double carriage
|
||||
return each time a command is entered.
|
||||
@@ -0,0 +1,25 @@
|
||||
tar jtag jtag://127.0.0.1:1025
|
||||
reset
|
||||
|
||||
# setup CCR (Cache Config Reg)
|
||||
# 0-1:MP,2:IE,3:DE,4:WB,5:RS,6:Z,7:BE
|
||||
set $cr18 = 0x7d
|
||||
|
||||
# vendor custom setup, double cache line & preload
|
||||
set $cr30 = 0xc
|
||||
|
||||
# pin mux for serial8250
|
||||
set *(unsigned int *) 0xa030a14c |= (1 << 22) | (1 << 23)
|
||||
|
||||
# pass devicetree blob
|
||||
# r2 is magic
|
||||
# r3 is address
|
||||
set $r2 = 0x20150401
|
||||
set $r3 = 0x92000000
|
||||
restore gx6605s.dtb binary 0x92000000
|
||||
|
||||
# flush cache
|
||||
set $cr17 = 0x33
|
||||
|
||||
load
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
model = "C-SKY gx6605s";
|
||||
compatible = "csky,gx6605s";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
memory {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x04000000>;
|
||||
};
|
||||
|
||||
soc {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "simple-bus";
|
||||
ranges;
|
||||
|
||||
dummy_apb: apb-clock {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <27000000>;
|
||||
clock-output-names = "dummy_apb";
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
intc: interrupt-controller@500000 {
|
||||
compatible = "csky,gx6605s-intc";
|
||||
reg = <0x00500000 0x400>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
};
|
||||
|
||||
timer@20a000 {
|
||||
compatible = "csky,gx6605s-timer";
|
||||
reg = <0x0020a000 0x400>;
|
||||
clocks = <&dummy_apb>;
|
||||
interrupts = <10>;
|
||||
interrupt-parent = <&intc>;
|
||||
};
|
||||
|
||||
ehci-hcd@900000 {
|
||||
compatible = "generic-ehci";
|
||||
reg = <0x00900000 0x400>;
|
||||
interrupt-parent = <&intc>;
|
||||
interrupts = <59>;
|
||||
};
|
||||
|
||||
ohci-hcd0@a00000 {
|
||||
compatible = "generic-ohci";
|
||||
reg = <0x00a00000 0x400>;
|
||||
interrupt-parent = <&intc>;
|
||||
interrupts = <58>;
|
||||
};
|
||||
|
||||
ohci-hcd1@b00000 {
|
||||
compatible = "generic-ohci";
|
||||
reg = <0x00b00000 0x400>;
|
||||
interrupt-parent = <&intc>;
|
||||
interrupts = <57>;
|
||||
};
|
||||
|
||||
serial@403000 {
|
||||
compatible = "ns16550a";
|
||||
reg = <0x00403000 0x400>;
|
||||
interrupt-parent = <&intc>;
|
||||
interrupts = <15>;
|
||||
clock-frequency = <29491200>;
|
||||
baud = <115200>;
|
||||
reg-shift = <2>;
|
||||
reg-io-width = <1>;
|
||||
};
|
||||
|
||||
gpio0: gpio@305000 {
|
||||
compatible = "wd,mbl-gpio";
|
||||
reg-names = "dirout", "dat", "set", "clr";
|
||||
reg = <0x305000 4>, <0x305004 4>, <0x305008 4>, <0x30500c 4>;
|
||||
bgpio-base = <0>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
};
|
||||
|
||||
gpio_buttons {
|
||||
compatible = "gpio-keys-polled";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
poll-interval = <100>;
|
||||
autorepeat;
|
||||
|
||||
button0 {
|
||||
label = "button8";
|
||||
linux,code = <KEY_LEFT>;
|
||||
gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
button1 {
|
||||
label = "button6";
|
||||
linux,code = <KEY_RIGHT>;
|
||||
gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
button2 {
|
||||
label = "button5";
|
||||
linux,code = <KEY_UP>;
|
||||
gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
button3 {
|
||||
label = "button9";
|
||||
linux,code = <KEY_DOWN>;
|
||||
gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
button4 {
|
||||
label = "button7";
|
||||
linux,code = <KEY_ENTER>;
|
||||
gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
gpio_leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led0 {
|
||||
label = "led10";
|
||||
gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
|
||||
led1 {
|
||||
label = "led11";
|
||||
gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "timer";
|
||||
};
|
||||
|
||||
led2 {
|
||||
label = "led12";
|
||||
gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
|
||||
led3 {
|
||||
label = "led13";
|
||||
gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200 init=/sbin/init root=/dev/sda2 rw rootwait";
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,88 @@
|
||||
C-SKY Development Kit
|
||||
|
||||
Intro
|
||||
=====
|
||||
|
||||
C-SKY is a CPU Architecture from www.c-sky.com and has it own instruction set.
|
||||
Just like arm and mips in linux/arch, it named as 'csky'.
|
||||
|
||||
gx6605s develop board is made by Hangzhou Nationalchip and C-SKY.
|
||||
|
||||
Hardware Spec:
|
||||
* CPU: ck610 up to 594Mhz
|
||||
* Integrate with 64MB ddr2 in SOC.
|
||||
* Integrate with hardware Jtag.
|
||||
* Integrate with usb-to-serial chip.
|
||||
* USB ehci controller in SOC.
|
||||
* Power Supply: DC 5V from two micro-usb.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure Buildroot
|
||||
-------------------
|
||||
|
||||
The csky_gx6605s_defconfig configuration is a sample configuration with
|
||||
all that is required to bring the gx6605s Development Board:
|
||||
|
||||
$ make csky_gx6605s_defconfig
|
||||
|
||||
Build everything
|
||||
----------------
|
||||
|
||||
Note: you will need to have access to the network, since Buildroot will
|
||||
download the packages' sources.
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
After building, you should obtain this tree:
|
||||
|
||||
output/images/
|
||||
+-- vmlinux
|
||||
+-- rootfs.ext2
|
||||
+-- <board name>.dtb
|
||||
|
||||
How to run it
|
||||
=============
|
||||
|
||||
Prepare Jtag-Server
|
||||
-------------------
|
||||
|
||||
Download the Jtag-Server here:
|
||||
|
||||
https://github.com/c-sky/tools/raw/master/DebugServerConsole-linux-x86_64-V4.2.00-20161213.tar.gz
|
||||
|
||||
Go to the unpacked directory:
|
||||
|
||||
$./DebugServerConsole -ddc -rstwait 1000 -prereset -port 1025
|
||||
|
||||
Perhaps you need to use "sudo", which need libusb to detect c510:b210
|
||||
|
||||
$ sudo ./DebugServerConsole -ddc -rstwait 1000 -prereset -port 1025
|
||||
|
||||
Prepare USB drive
|
||||
-----------------
|
||||
|
||||
You sould determine which device associated to the usb drive
|
||||
carefully. eg:
|
||||
|
||||
$ cat /proc/partitions
|
||||
8 48 1971712 sdd
|
||||
8 49 976720 sdd1
|
||||
|
||||
$ sudo dd if=rootfs.ext2 of=/dev/sdd1
|
||||
$ sudo sync
|
||||
|
||||
Run
|
||||
---
|
||||
|
||||
Plug the usb drive on gx6605s dev board.
|
||||
|
||||
Setup the Console with the rate 115200/8-N-1.
|
||||
|
||||
$ cd output/images
|
||||
$ ../host/bin/csky-linux-gdb -x ../../board/csky/gx6605s/gdbinit vmlinux
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
label RK3399RocPC linux
|
||||
kernel /boot/Image
|
||||
devicetree /boot/rk3399-roc-pc.dtb
|
||||
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk0p1 rootwait
|
||||
@@ -2,22 +2,21 @@ image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition fsbl {
|
||||
offset = 4K
|
||||
partition u-boot-tpl-spl-dtb {
|
||||
in-partition-table = "no"
|
||||
image = "bl2_sd.pbl"
|
||||
image = "idbloader.img"
|
||||
offset = 32K
|
||||
}
|
||||
|
||||
partition ssbl {
|
||||
offset = 1M
|
||||
partition u-boot-dtb {
|
||||
in-partition-table = "no"
|
||||
image = "fip.bin"
|
||||
image = "u-boot.itb"
|
||||
offset = 8M
|
||||
size = 30M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
offset = 8M
|
||||
partition-type = 0x83
|
||||
bootable = "true"
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf
|
||||
@@ -0,0 +1,40 @@
|
||||
Libre Computer Board ROC-RK3399-PC
|
||||
===================================
|
||||
|
||||
Build:
|
||||
|
||||
$ make roc_pc_rk3399_defconfig
|
||||
$ make
|
||||
|
||||
Files created in output directory
|
||||
=================================
|
||||
|
||||
output/images
|
||||
|
||||
├── bl31.elf
|
||||
├── idbloader.img
|
||||
├── Image
|
||||
├── rk3399-roc-pc.dtb
|
||||
├── rootfs.ext2
|
||||
├── rootfs.ext4 -> rootfs.ext2
|
||||
├── rootfs.tar
|
||||
├── sdcard.img
|
||||
├── u-boot.bin
|
||||
└── u-boot.itb
|
||||
|
||||
Creating bootable SD card:
|
||||
==========================
|
||||
|
||||
Simply invoke (as root)
|
||||
|
||||
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
|
||||
|
||||
Where X is your SD card device
|
||||
|
||||
Serial console
|
||||
--------------
|
||||
|
||||
Baudrate for this board is 1500000
|
||||
|
||||
Wiki link:
|
||||
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/roc-rk3399-pc.html
|
||||
@@ -9,49 +9,29 @@ main ()
|
||||
fi
|
||||
|
||||
if grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M=y$" ${BR2_CONFIG}; then
|
||||
dd if=${BINARIES_DIR}/u-boot-spl.bin of=${BINARIES_DIR}/u-boot-spl-padded.bin bs=4 conv=sync
|
||||
cat ${BINARIES_DIR}/u-boot-spl-padded.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
if grep -Eq "^BR2_TARGET_OPTEE_OS=y$" ${BR2_CONFIG}; then
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL32=${BINARIES_DIR}/tee.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin TEE_LOAD_ADDR=0xfe000000 ATF_LOAD_ADDR=0x00910000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
else
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00910000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
fi
|
||||
cat ${BINARIES_DIR}/u-boot-spl.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00910000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
${HOST_DIR}/bin/mkimage -E -p 0x3000 -f ${BINARIES_DIR}/u-boot.its ${BINARIES_DIR}/u-boot.itb
|
||||
rm -f ${BINARIES_DIR}/u-boot.its
|
||||
|
||||
${HOST_DIR}/bin/mkimage_imx8 -fit -signed_hdmi ${BINARIES_DIR}/signed_hdmi_imx8m.bin -loader ${BINARIES_DIR}/u-boot-spl-ddr.bin 0x7E1000 -second_loader ${BINARIES_DIR}/u-boot.itb 0x40200000 0x60000 -out ${BINARIES_DIR}/imx8-boot-sd.bin
|
||||
elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y$" ${BR2_CONFIG}; then
|
||||
dd if=${BINARIES_DIR}/u-boot-spl.bin of=${BINARIES_DIR}/u-boot-spl-padded.bin bs=4 conv=sync
|
||||
cat ${BINARIES_DIR}/u-boot-spl-padded.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
if grep -Eq "^BR2_TARGET_OPTEE_OS=y$" ${BR2_CONFIG}; then
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL32=${BINARIES_DIR}/tee.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin TEE_LOAD_ADDR=0xbe000000 ATF_LOAD_ADDR=0x00920000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
else
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00920000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
fi
|
||||
cat ${BINARIES_DIR}/u-boot-spl.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00920000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
${HOST_DIR}/bin/mkimage -E -p 0x3000 -f ${BINARIES_DIR}/u-boot.its ${BINARIES_DIR}/u-boot.itb
|
||||
rm -f ${BINARIES_DIR}/u-boot.its
|
||||
|
||||
${HOST_DIR}/bin/mkimage_imx8 -fit -loader ${BINARIES_DIR}/u-boot-spl-ddr.bin 0x7E1000 -second_loader ${BINARIES_DIR}/u-boot.itb 0x40200000 0x60000 -out ${BINARIES_DIR}/imx8-boot-sd.bin
|
||||
elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN=y$" ${BR2_CONFIG}; then
|
||||
dd if=${BINARIES_DIR}/u-boot-spl.bin of=${BINARIES_DIR}/u-boot-spl-padded.bin bs=4 conv=sync
|
||||
cat ${BINARIES_DIR}/u-boot-spl-padded.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
if grep -Eq "^BR2_TARGET_OPTEE_OS=y$" ${BR2_CONFIG}; then
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL32=${BINARIES_DIR}/tee.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin TEE_LOAD_ADDR=0x56000000 ATF_LOAD_ADDR=0x00960000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
else
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00960000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
fi
|
||||
cat ${BINARIES_DIR}/u-boot-spl.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00960000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
${HOST_DIR}/bin/mkimage -E -p 0x3000 -f ${BINARIES_DIR}/u-boot.its ${BINARIES_DIR}/u-boot.itb
|
||||
rm -f ${BINARIES_DIR}/u-boot.its
|
||||
|
||||
${HOST_DIR}/bin/mkimage_imx8 -v v2 -fit -loader ${BINARIES_DIR}/u-boot-spl-ddr.bin 0x912000 -second_loader ${BINARIES_DIR}/u-boot.itb 0x40200000 0x60000 -out ${BINARIES_DIR}/imx8-boot-sd.bin
|
||||
elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP=y$" ${BR2_CONFIG}; then
|
||||
dd if=${BINARIES_DIR}/u-boot-spl.bin of=${BINARIES_DIR}/u-boot-spl-padded.bin bs=4 conv=sync
|
||||
cat ${BINARIES_DIR}/u-boot-spl-padded.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
if grep -Eq "^BR2_TARGET_OPTEE_OS=y$" ${BR2_CONFIG}; then
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL32=${BINARIES_DIR}/tee.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin TEE_LOAD_ADDR=0x56000000 ATF_LOAD_ADDR=0x00970000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
else
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00970000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
fi
|
||||
cat ${BINARIES_DIR}/u-boot-spl.bin ${BINARIES_DIR}/ddr_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot-nodtb.bin ATF_LOAD_ADDR=0x00970000 ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
${HOST_DIR}/bin/mkimage -E -p 0x3000 -f ${BINARIES_DIR}/u-boot.its ${BINARIES_DIR}/u-boot.itb
|
||||
rm -f ${BINARIES_DIR}/u-boot.its
|
||||
|
||||
|
||||
@@ -54,4 +54,4 @@ Enjoy!
|
||||
|
||||
References
|
||||
==========
|
||||
[1] https://www.nxp.com/docs/en/user-guide/EVK_imx28_QuickStart.pdf
|
||||
[1] http://cache.freescale.com/files/32bit/doc/user_guide/EVK_imx28_QuickStart.pdf
|
||||
|
||||
@@ -8,15 +8,15 @@ as well as the Freescale SABRE Board for Automotive Infotainment.
|
||||
|
||||
Read the i.MX 6 SABRESD Quick Start Guide for an introduction to the
|
||||
board:
|
||||
https://www.nxp.com/files-static/32bit/doc/quick_start_guide/SABRESDB_IMX6_QSG.pdf
|
||||
http://cache.freescale.com/files/32bit/doc/quick_start_guide/SABRESDB_IMX6_QSG.pdf
|
||||
|
||||
Read the i.MX 6 SoloX SABRESD Quick Start Guide for an introduction to
|
||||
the board:
|
||||
https://www.nxp.com/files-static/32bit/doc/quick_start_guide/IMX6SOLOXQSG.pdf
|
||||
http://cache.freescale.com/files/32bit/doc/user_guide/IMX6SOLOXQSG.pdf
|
||||
|
||||
Read the SABRE for Automotive Infotainment Quick Start Guide for an
|
||||
introduction to the board:
|
||||
https://www.nxp.com/webapp/Download?colCode=IMX6SABREINFOQSG
|
||||
http://cache.freescale.com/files/32bit/doc/user_guide/IMX6SABREINFOQSG.pdf
|
||||
|
||||
Building with NXP kernel and NXP U-Boot
|
||||
=======================================
|
||||
@@ -166,6 +166,6 @@ Enjoy!
|
||||
References
|
||||
==========
|
||||
|
||||
https://community.nxp.com/docs/DOC-95015
|
||||
https://community.nxp.com/docs/DOC-95017
|
||||
https://community.nxp.com/docs/DOC-99218
|
||||
https://community.freescale.com/docs/DOC-95015
|
||||
https://community.freescale.com/docs/DOC-95017
|
||||
https://community.freescale.com/docs/DOC-99218
|
||||
|
||||
@@ -12,7 +12,7 @@ Build
|
||||
|
||||
First, configure Buildroot for your i.MX6UL EVK board:
|
||||
|
||||
In order to do so there are two supported options:
|
||||
In order to to do so there are two supported options:
|
||||
|
||||
make freescale_imx6ulevk_defconfig
|
||||
|
||||
@@ -71,4 +71,4 @@ Enjoy!
|
||||
|
||||
References
|
||||
==========
|
||||
[1] https://www.nxp.com/webapp/Download?colCode=IMX6ULTRALITEQSG
|
||||
[1] http://cache.freescale.com/files/32bit/doc/quick_start_guide/IMX6ULTRALITEQSG.pdf
|
||||
|
||||
@@ -9,7 +9,7 @@ Build
|
||||
|
||||
First, configure Buildroot for your i.MX6ULL EVK board:
|
||||
|
||||
In order to do so there are two supported options:
|
||||
In order to to do so there are two supported options:
|
||||
|
||||
make freescale_imx6ullevk_defconfig
|
||||
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
**************
|
||||
NXP LS1028ARDB
|
||||
**************
|
||||
|
||||
This file documents the Buildroot support for the LS1028A Reference Design Board.
|
||||
|
||||
for more details about the board and the QorIQ Layerscape SoC, see the following pages:
|
||||
- https://www.nxp.com/design/qoriq-developer-resources/layerscape-ls1028a-reference-design-board:LS1028ARDB
|
||||
- https://www.nxp.com/LS1028A
|
||||
|
||||
Build
|
||||
=====
|
||||
|
||||
First, configure Buildroot for the LS1028ARDB board:
|
||||
|
||||
make ls1028ardb_defconfig
|
||||
|
||||
Build all components:
|
||||
|
||||
make
|
||||
|
||||
You will find in output/images/ the following files:
|
||||
- bl2_sd.pbl
|
||||
- fip.bin
|
||||
- fsl-ls1028a-rdb.dtb
|
||||
- Image
|
||||
- PBL.bin
|
||||
- rootfs.ext2
|
||||
- rootfs.ext4 -> rootfs.ext2
|
||||
- sdcard.img
|
||||
- u-boot.bin
|
||||
|
||||
Create a bootable SD card
|
||||
=========================
|
||||
|
||||
To determine the device associated to the SD card have a look in the
|
||||
/proc/partitions file:
|
||||
|
||||
cat /proc/partitions
|
||||
|
||||
Buildroot prepares a bootable "sdcard.img" image in the output/images/
|
||||
directory, ready to be dumped on a SD card. Launch the following
|
||||
command as root:
|
||||
|
||||
dd if=output/images/sdcard.img of=/dev/sdX
|
||||
|
||||
*** WARNING! This will destroy all the card content. Use with care! ***
|
||||
|
||||
For details about the medium image layout, see the definition in
|
||||
board/freescale/ls1028ardb/genimage.cfg.
|
||||
|
||||
Boot the LS1028ARDB board
|
||||
=========================
|
||||
|
||||
To boot your newly created system:
|
||||
- insert the SD card in the SD slot of the board;
|
||||
- Configure the switches SW2[1:4] = 1000 (select SD Card boot option)
|
||||
- put a DB9F cable into the UART1 Port and connect using a terminal
|
||||
emulator at 115200 bps, 8n1;
|
||||
- power on the board.
|
||||
@@ -1,4 +0,0 @@
|
||||
label ls1028ardb-buildroot
|
||||
kernel /boot/Image
|
||||
devicetree /boot/fsl-ls1028a-rdb.dtb
|
||||
append root=/dev/mmcblk0p1 rootwait
|
||||
-16
@@ -1,16 +0,0 @@
|
||||
# ENETC rules
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.0", DRIVERS=="fsl_enetc", NAME:="eno0"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.1", DRIVERS=="fsl_enetc", NAME:="eno1"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.2", DRIVERS=="fsl_enetc", NAME:="eno2"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.6", DRIVERS=="fsl_enetc", NAME:="eno3"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.0", DRIVERS=="fsl_enetc_vf", NAME:="eno0vf0"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.1", DRIVERS=="fsl_enetc_vf", NAME:="eno0vf1"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.2", DRIVERS=="fsl_enetc_vf", NAME:="eno1vf0"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.3", DRIVERS=="fsl_enetc_vf", NAME:="eno1vf1"
|
||||
# LS1028 switch rules
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p0", NAME="swp0"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p1", NAME="swp1"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p2", NAME="swp2"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p3", NAME="swp3"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p4", NAME="swp4"
|
||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p5", NAME="swp5"
|
||||
@@ -0,0 +1,4 @@
|
||||
label RK3399_NanoPC_T4 linux
|
||||
kernel /Image
|
||||
devicetree /rk3399-nanopc-t4.dtb
|
||||
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk1p4 rootwait
|
||||
@@ -0,0 +1,39 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"Image",
|
||||
"rk3399-nanopc-t4.dtb",
|
||||
"extlinux"
|
||||
}
|
||||
}
|
||||
|
||||
size = 64M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
partition-table-type = "gpt"
|
||||
}
|
||||
|
||||
partition loader1 {
|
||||
image = "idbloader.img"
|
||||
offset = 32K
|
||||
}
|
||||
|
||||
partition loader2 {
|
||||
image = "u-boot.itb"
|
||||
offset = 8M
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
offset = 16M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
# genimage will need to find the extlinux.conf
|
||||
# in the binaries directory
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux.conf
|
||||
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf
|
||||
@@ -0,0 +1,45 @@
|
||||
FriendlyARM NANOPC-T4
|
||||
=====================
|
||||
|
||||
Build:
|
||||
|
||||
$ make friendlyarm_nanopc_t4_defconfig
|
||||
$ make
|
||||
|
||||
Files created in output directory
|
||||
=================================
|
||||
|
||||
output/images
|
||||
|
||||
├── bl31.elf
|
||||
├── boot.vfat
|
||||
├── extlinux
|
||||
├── idbloader.img
|
||||
├── Image
|
||||
├── rk3399-nanopc-t4.dtb
|
||||
├── rootfs.ext2
|
||||
├── rootfs.ext4 -> rootfs.ext2
|
||||
├── rootfs.tar
|
||||
├── sdcard.img
|
||||
├── u-boot.bin
|
||||
└── u-boot.itb
|
||||
|
||||
Creating bootable SD card:
|
||||
==========================
|
||||
|
||||
Simply invoke (as root)
|
||||
|
||||
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
|
||||
|
||||
Where X is your SD card device
|
||||
|
||||
Serial console
|
||||
--------------
|
||||
|
||||
Baudrate for this board is 1500000
|
||||
|
||||
Login:
|
||||
------
|
||||
Apply power and press the PWR button for 3 sec. Enter 'root' as login user, and the prompt is ready.
|
||||
|
||||
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/npc_t4.html
|
||||
@@ -0,0 +1,6 @@
|
||||
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
|
||||
|
||||
fatload mmc 0 $kernel_addr_r Image
|
||||
fatload mmc 0 $fdt_addr_r sun50i-a64-nanopi-a64.dtb
|
||||
|
||||
booti $kernel_addr_r - $fdt_addr_r
|
||||
@@ -0,0 +1,40 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"Image",
|
||||
"sun50i-a64-nanopi-a64.dtb",
|
||||
"boot.scr"
|
||||
}
|
||||
}
|
||||
|
||||
size = 64M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition spl {
|
||||
in-partition-table = "no"
|
||||
image = "sunxi-spl.bin"
|
||||
offset = 8K
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
in-partition-table = "no"
|
||||
image = "u-boot.itb"
|
||||
offset = 40K
|
||||
size = 1M # 1MB - 40KB
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
Intro
|
||||
=====
|
||||
|
||||
This default configuration will allow you to start experimenting with the
|
||||
buildroot environment for the Nanopi A64. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Nanopi A64 link:
|
||||
http://nanopi.io/nanopi-a64.html
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/FriendlyARM+Nanopi+A64
|
||||
|
||||
This configuration uses U-Boot mainline and kernel mainline.
|
||||
|
||||
How to build
|
||||
============
|
||||
|
||||
$ make friendlyarm_nanopi_a64_defconfig
|
||||
$ make
|
||||
|
||||
Note: you will need access to the internet to download the required
|
||||
sources.
|
||||
|
||||
How to write the SD card
|
||||
========================
|
||||
|
||||
Once the build process is finished you will have an image called "sdcard.img"
|
||||
in the output/images/ directory.
|
||||
|
||||
Copy the bootable "sdcard.img" onto an SD card with "dd":
|
||||
|
||||
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
|
||||
$ sudo sync
|
||||
|
||||
Insert the micro SDcard in your Nanopi A64 and power it up. The console
|
||||
is on the serial line, 115200 8N1.
|
||||
@@ -0,0 +1,8 @@
|
||||
setenv fdt_high ffffffff
|
||||
|
||||
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
|
||||
|
||||
fatload mmc 0 $kernel_addr_r zImage
|
||||
fatload mmc 0 $fdt_addr_r sun8i-h3-nanopi-m1-plus.dtb
|
||||
|
||||
bootz $kernel_addr_r - $fdt_addr_r
|
||||
@@ -0,0 +1,36 @@
|
||||
# Minimal SD card image for the NanoPi M1 Plus
|
||||
#
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"zImage",
|
||||
"sun8i-h3-nanopi-m1-plus.dtb",
|
||||
"boot.scr"
|
||||
}
|
||||
}
|
||||
|
||||
size = 10M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
in-partition-table = "no"
|
||||
image = "u-boot-sunxi-with-spl.bin"
|
||||
offset = 8K
|
||||
size = 1016K # 1MB - 8KB
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
NanoPi M1 Plus
|
||||
|
||||
Intro
|
||||
=====
|
||||
|
||||
This default configuration will allow you to start experimenting with the
|
||||
buildroot environment for the NanoPi M1 Plus. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure Buildroot:
|
||||
|
||||
$ make friendlyarm_nanopi_m1_plus_defconfig
|
||||
|
||||
Compile everything and build the SD card image:
|
||||
|
||||
$ make
|
||||
|
||||
How to write the SD card
|
||||
========================
|
||||
|
||||
Once the build process is finished you will have an image called "sdcard.img"
|
||||
in the output/images/ directory.
|
||||
|
||||
Copy the bootable "sdcard.img" onto an SD card with "dd":
|
||||
|
||||
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
|
||||
@@ -0,0 +1,8 @@
|
||||
setenv fdt_high ffffffff
|
||||
|
||||
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
|
||||
|
||||
fatload mmc 0 $kernel_addr_r zImage
|
||||
fatload mmc 0 $fdt_addr_r sun8i-h3-nanopi-m1.dtb
|
||||
|
||||
bootz $kernel_addr_r - $fdt_addr_r
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user