mirror of
https://github.com/godotengine/buildroot.git
synced 2026-01-10 10:10:28 +03:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9f0610c188 | ||
|
|
c76f557eef | ||
|
|
c0c568ddd6 | ||
|
|
45c566ea5d | ||
|
|
be26df751b | ||
|
|
fa047bb052 | ||
|
|
0da6f8f518 |
@@ -15,9 +15,11 @@ BR2_i386=y
|
||||
# BR2_nios2 is not set
|
||||
# BR2_powerpc is not set
|
||||
# BR2_sh is not set
|
||||
# BR2_sh64 is not set
|
||||
# BR2_sparc is not set
|
||||
# BR2_sparc64 is not set
|
||||
# BR2_x86_64 is not set
|
||||
# BR2_x86_i386 is not set
|
||||
# BR2_x86_i486 is not set
|
||||
# BR2_x86_i586 is not set
|
||||
BR2_x86_i686=y
|
||||
|
||||
800
CHANGES
800
CHANGES
@@ -1,800 +1,12 @@
|
||||
2016.11.3, Released March 9th, 2017
|
||||
2015.11.1, Released December 5th, 2015
|
||||
|
||||
Important / security related fixes.
|
||||
Fix for issue with the host package RPATH check when a custom host
|
||||
directory (BR2_HOST_DIR=/path/to/somewhere) is used.
|
||||
|
||||
Updated/fixed packages: bind, dbus, gnutls, imagemagick,
|
||||
lcms2, libcurl, ntfs-3g, ntp, openssl, php, quagga, redis,
|
||||
squid, stunnel, tcpdump, vim, wavpack, wireshark, xlib_libXpm
|
||||
Important (and/or security related) bugfixes for busybox,
|
||||
dropbear, libpng and openssl.
|
||||
|
||||
2016.11.2, Released January 25th, 2017
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
A fix for BR2_EXTERNAL trees referenced using relative paths,
|
||||
which broke in 2016.11.
|
||||
|
||||
Updated/fixed packages: bind, docker-engine, gd, gnutls, go,
|
||||
imagemagick, irssi, libpng, libvncserver, musl, opus, php,
|
||||
php-imagick, rabbitmq-server, runc, wireshark,
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#9576: External tree with BR 2016.11 does not work anymore
|
||||
|
||||
2016.11.1, Released December 29th, 2016
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: apache, cryptopp, docker-engine,
|
||||
dovecot, exim, gdk-pixbuf, libcurl, libupnp, links, monit,
|
||||
nodejs, openssh, php, python, python-bottle, samba4, squid,
|
||||
uboot, vim, wireshark, xorg-server uboot
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#9466: VIM_REMOVE_DOCS removes rgb.txt
|
||||
|
||||
2016.11, Released November 30th, 2016
|
||||
|
||||
Minor fixes.
|
||||
|
||||
Updated/fixed packages: bzip2, gcc, jasper, sane-backends,
|
||||
uboot, uclibc
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#9451: packages/postgresql/postgresql.mk contains wrong POST...
|
||||
|
||||
2016.11-rc3, Released November 28th, 2016
|
||||
|
||||
Fixes all over the tree, including a number of security fixes.
|
||||
|
||||
The move from fakeroot to pseudo unfortunately brought a
|
||||
number of issues. The SELinux issue described in #9386 which
|
||||
triggered the move to pseudo has been investigated further and
|
||||
a workaround implemented and the pseudo changes reverted.
|
||||
|
||||
Linux kernel: update default to 4.8.11.
|
||||
|
||||
Defconfigs: Updates/fixes for imx28ek, mx6udoo, imx6ulpico,
|
||||
olimex a20 olinuxino lime mali, roseapplepi, synopsis aarch64
|
||||
vdk, axs101, axs103 and hs38 smd vdk.
|
||||
|
||||
Updated/fixed packages: autossh, chrony, dosfstools,
|
||||
dtv-scan-tables, e2fsprogs, gcc, gdb, gnuchess, gnuradio,
|
||||
gpsd, gst1-plugins-bad, gst1-plugins-good, imagemagick,
|
||||
kvm-unit-tests, libfribi, libuv, mesa3d, mpfr, mplayer, mpv,
|
||||
ntp, ola, olsr, openblas, openjpeg, openssh, postgresql,
|
||||
ptpd2python3, qemu, qextserialport, qt5base, quagga, xqwt,
|
||||
taskd, tiff, tremor, trousers, udisks, uclibc, wireshark,
|
||||
xapp_xload, xenomai, xmlstarlet
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#9386: ubinize fails with or without custom config
|
||||
#9431: A misspelling
|
||||
#9446: make raspberrypi3_defconfig compilation failure
|
||||
|
||||
2016.11-rc2, Released November 13th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Architecture: add support for MIPS XBurst cores; remove MIPS
|
||||
support for M5100 cores.
|
||||
|
||||
Updated/fixed packages: mesa3d, lttng-babeltrace, tinyalsa, pseudo,
|
||||
czmq, libxml2, makedevs, binutils, kvm-unit-tests, libnss, privoxy,
|
||||
qemu, ser2net, net-tools, ffmpeg, assimp, libmpeg2, ccache, mpv,
|
||||
libxslt, python, python3, php, valgrind, guile, domoticz, efl,
|
||||
jasper, kvmtool, go, wget, sane-backends, weston, tinymembench,
|
||||
strace, openjpeg, lcms2, quota.
|
||||
|
||||
Linux kernel: update default to 4.8.7.
|
||||
|
||||
CMake support: fix cmake wrapper to properly pass NDEBUG flag.
|
||||
|
||||
Filesystems: use a wrapper to pseudo, to better mimick the behaviour
|
||||
of fakeroot; makedevs no longer breaks of the destination already
|
||||
exists and is of the correct type/major/minor.
|
||||
|
||||
Defconfigs: a few legacy and broken defconfigs have been removed
|
||||
because they now fail to build: kb9202_defconfig, mini2440_defconfig,
|
||||
freescale_p2020ds, qmx6, calao*, atmel_sama5d4ek. Other defconfigs
|
||||
have been updated: nanopi-neo, olimex_a20_olinuxino_lime_mali,
|
||||
armadeus_apf51, armadeus_apf28, freescale_imx31_3stack, ci20,
|
||||
olimex_a20_olinuxino_lime2, atmel_at91sam9260eknf,
|
||||
atmel_at91sam9rlek, atmel_at91sam9g20dfc, atmel_at91sam9g45m10ek,
|
||||
atmel_sama5d3xek.
|
||||
|
||||
2016.11-rc1, Released November 3rd, 2016
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
It is now possible to specify multiple BR2_EXTERNAL
|
||||
directories. The required files in a BR2_EXTERNAL directory
|
||||
have changed to accomodate this feature. Refer to the
|
||||
documentation for details of how to update them. External
|
||||
trees now have a name and a description. Also, it is possible
|
||||
to override a defconfig in the external tree.
|
||||
|
||||
The default skeleton now uses UID 65534 for the "nobody"
|
||||
user instead of UID 99, like most distros do. See
|
||||
https://lwn.net/Articles/695478/ for a complete discussion.
|
||||
Programs and configuration files that explicitly refer to UID
|
||||
99 will have to be updated.
|
||||
|
||||
When the build environment already has a suitable cmake version
|
||||
(3.1 or later), that one will be used instead of building
|
||||
host-cmake. This can speed up the build significantly.
|
||||
|
||||
The ExtUtils::MakeMaker perl module is now required in the
|
||||
build environment.
|
||||
|
||||
An additional check is done during the build that files are
|
||||
not installed in the output directory within the output
|
||||
directory. This happens e.g. when the target directory is
|
||||
contained both in --prefix and in DESTDIR. The build will
|
||||
terminate with an error message that specifies which package
|
||||
and which file caused the failure.
|
||||
|
||||
The concept of "deprecated packages" and the BR2_DEPRECATED
|
||||
option have been removed. Instead, packages are removed
|
||||
immediately. Packages are only removed when they don't work
|
||||
for some reason. If you still need a removed package and
|
||||
you have a solution for the problem(s) that caused the
|
||||
removal, please contribute it.
|
||||
|
||||
Architecture: support for sh64 removed, improved support for
|
||||
MIPS core selection.
|
||||
|
||||
Toolchain: support for musl powerpc64le, mips64 and mipsr6
|
||||
toolchains, ARC toolchain components updates, gcc 6.x series
|
||||
bumped to 6.2.0, default binutils version switched to 2.26,
|
||||
default gcc version switched to gcc 5.x, Linaro toolchains
|
||||
updated, uclibc-ng bumped to 1.0.19. GCC is now always built
|
||||
with TLS support. Checking of unsafe compiler options (that
|
||||
point to host directories) has been extended with -isystem,
|
||||
-idirafter and -iquote.
|
||||
|
||||
Package infrastructure: new variable $(PKG)_DL_OPTS, addition
|
||||
of <pkg>-show-rdepends to list reverse dependencies, and
|
||||
<pkg>-graph-rdepends to graph reverse dependencies. Linux tools
|
||||
are now in a separate linux-tools package instead of in the
|
||||
kernel build. Fakeroot has been replaced by pseudo.
|
||||
|
||||
CMake support: the toolchainfile.cmake file now provides a
|
||||
definition of the CMAKE_BUILD_TYPE variable. The
|
||||
toolchainfile.cmake also no longer forces the compiler/linker
|
||||
flags defined by Buildroot.
|
||||
|
||||
New defconfigs: WaRP7, Solidrun's MX6 Cubox/Hummingboard,
|
||||
TS-4900, Grinn's liteBoard, Udoo MX6Q/DL, Qemu ARM noMMU,
|
||||
BeagleBone Qt5 demo, Digilent Zybo, FriendlyARM Nanopi NEO.
|
||||
|
||||
New packages: arm-trusted-firmware, amd-catalyst, atop, aufs,
|
||||
aufs-util, fwts, gst1-rtsp-server, libglob, libite, mfgtools,
|
||||
mksh, motion, paho-mqtt-c, php-amqp, pseudo, python-couchdb,
|
||||
python-crcmod, python-cssutils, python-docutils,
|
||||
python-futures, python-mwclient, python-mwscrape,
|
||||
python-mwscrape2slob, python-pyelftools, python-pyicu,
|
||||
python-pylru, python-pyqt5, python-requests-toolbelt,
|
||||
python-simpleaudio, python-slob, rabbitmq-server, shapelib,
|
||||
vdr, vdr-plugin-vnsiserver, vexpress-firmware, xvisor, iio and
|
||||
gpio linux tools.
|
||||
|
||||
Removed packages: binutils 2.24, fakeroot, gcc 4.7, ipkg,
|
||||
kodi-addon-xvdr, libgail, sstrip, torsmo, webkit, webkitgtk24,
|
||||
wvdial, wvstreams.
|
||||
|
||||
Documentation: the list of packages that was present in the
|
||||
Buildroot manual has been removed.
|
||||
|
||||
Legal info: the "licenses.txt" file that concatenates all
|
||||
license texts is no longer generated - it was not considered
|
||||
useful. The manifest.csv contains an empty cell instead of
|
||||
"not saved" when no license file is available.
|
||||
|
||||
Other: addition of a DEVELOPERS file listing developers taking
|
||||
care of packages or architectures.
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#7802: host-python build hangs compiling getbuildinfo.o
|
||||
#8206: mplayer uses host xorg development files
|
||||
#8516: mkcubiecard.sh uses outdated sfdisk switch -D
|
||||
#8536: Building sudo with PAM results in unusable sudo
|
||||
#8646: check-host-rpath script returns false positives when rpath
|
||||
contains symlink
|
||||
#8696: xdriver_xf86-input-mouse install header files in target
|
||||
directory
|
||||
#8811: rp-pppoe - generated scripts commands use HOST pathnames,
|
||||
not necessarily TARGET
|
||||
#8846: Orphaned/missing toolchain borks eclipse plugin
|
||||
#8856: python tornado runtime wasn't met on buildroot 2016.02
|
||||
#8901: gcc failes to build if fortran is enabled
|
||||
#8916: LDFLAGS pass to openssh
|
||||
#8941: "ls" of an NFSv4 share only works when pumped through strace
|
||||
#8946: Valgrind fails to build with stack protection turned on
|
||||
#9021: Kodi - Broken: Illegal instruction (core dumped)
|
||||
#9096: rootfs.ubi not created
|
||||
#9111: glibc 2.23: libmvec.so not copied
|
||||
#9176: minnowboard : USB not mounted
|
||||
#9196: raspberry pi 3 default build seem broken
|
||||
#9201: Permission denied make: *** [core-dependencies] Error 126 in
|
||||
Buildroot-2015.08.1
|
||||
#9216: log4cpp package build fails to build within install
|
||||
#9221: Kodi needs "Python .py and .pyc support" otherwise it crashes when
|
||||
pressing buttons.
|
||||
#9229: Firefly boot fails with: "failed to find part:boot"
|
||||
#9256: [Config file] New device: Odroid-U2/U3
|
||||
#9296: Buildroot Fails on applying patches
|
||||
#9301: U-boot fails to build with default zynq_zed_defconfig configuration
|
||||
#9316: U-boot fails to build if libssl-dev is not installed
|
||||
#9321: Vanilla libcrypt++ v5.6.3 doesn't allow to work Nvidia Tegra's
|
||||
flash utility (tegrarcm)
|
||||
#9326: Odroid-C2 build results in non-bootable image
|
||||
#9336: Improve iconv support for external toolchain based builds
|
||||
#9356: gdb package
|
||||
#9366: no link rootfs.ext4 -> rootfs.ext2
|
||||
#9371: openssl: download failes with "Only allow downloads from primary
|
||||
download site" + local server
|
||||
#9381: check-host-rpath issues
|
||||
#9386: ubinize fails with or without custom config
|
||||
|
||||
2016.08, Released September 1st, 2016
|
||||
|
||||
Minor fixes.
|
||||
|
||||
Toolchain: ARC tools updated to arc-2016.09-eng010.
|
||||
|
||||
Updated/fixed packages: libshout, luajit, mpd, mplayer
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#7520: CodeSourcery toolchain ARM: C++11 std::exception_ptr..
|
||||
#8341: Getting EGL Error: Could not create the egl surface:..
|
||||
#9121: gst1-imx for i.MX6 compile failed, cannot find PXP, ..
|
||||
|
||||
2016.08-rc3, Released August 29th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Toolchain: C++ support for the internal blackfin toolchain
|
||||
re-enabled.
|
||||
|
||||
Architecture: Default to bf532 CPU variant for blackfin,
|
||||
Fix flat one memory region support for m68k and disable flat
|
||||
seperate data support because of compatibility issues.
|
||||
|
||||
Defconfigs: Minnowboard and Raspberrypi: Fix errors with
|
||||
post-build scripts when systemd is used.
|
||||
Zynq microzed/zc706/zed: Fix u-booot configuration.
|
||||
|
||||
netbsd-queue package extended and renamed to
|
||||
musl-compat-headers. With this, a number of musl compatibility
|
||||
patches are no longer needed.
|
||||
|
||||
Updated/fixed packages: aircrack-ng, android-tools, babeld,
|
||||
bcusdk, binutils, boa, busybox, connman, cpupower,
|
||||
docker-engine, domoticz, elf2flt, ffmpeg, fwup, gcc,
|
||||
glib-networking, gnupg, hplip, igd2-for-linux, imagemagick,
|
||||
imx-uuc, iputils, jack2, kismet, kmsxx, libaio, libamcodec,
|
||||
libconfuse, libffi, libfreeimage, libgcrypt, libgpg-error,
|
||||
libiio, libraw, libsepol, libserialport, libxmlrpc, linknx,
|
||||
linux-pam, lirc-tools, lldpd, logrotate, lshw, musl, ncurses,
|
||||
neon, nettle, norm, ntfs-3g, openblas, openmpi, openswan,
|
||||
pinentry, pixman, protobuf, python-meld3, qlibc, qt, qt5base,
|
||||
quagga, rpcbind, rt-tests, runc, sane-backends, sconeserver,
|
||||
squeezelite, stella, tftpd, tinycbor, tinydtls, trace-cmd,
|
||||
trousers, tstools, uboot-tools, uclibc, ulogd, ustr, vlc,
|
||||
webkitgtk, wireshark, xdriver_xf86-video-intel
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#9101: Error on support/download/git with system git older than 1.8.4
|
||||
#9181: Compiling linux kernel fails if BR2_LINUX_KERNEL_TOOL_CPU..
|
||||
|
||||
2016.08-rc2, Released August 17th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Toolchain: disable broken C++ support for internal blackfin
|
||||
toolchains, ARC toolchain bumped to arc-2016.09-eng008 (GCC 6)
|
||||
to fix various issues.
|
||||
|
||||
System: Zoneinfo is available for the musl C library as well.
|
||||
|
||||
Updated/fixed packages: am33x-cm3, axel, barebox, bdwgc,
|
||||
blktrace, cairo, dante, enlightenment, fbterm, ffmpeg, flex,
|
||||
fontconfig, gcc, gmp, gnuplot, gnuradio, gst1-imx, hidapi,
|
||||
inotify_tools, iproute2, kmsxx, lftp, libaio, libcofi,
|
||||
libical, libpjsip, libsidplay2, libunwindow, libxml2,
|
||||
linux-zigbee, lttng-libust, mpv, mtd, ncdu, netplug, ntp,
|
||||
openblas, openipmi, owfs, php, poco, procps, qt, quota,
|
||||
sg3_utils, spidev_test, systemd-bootchart, thrift,
|
||||
uboot-tools, uclibc, webrtc-audio-processing, wayland, weston,
|
||||
xdriver_xf86-video-savage, xserver_xorg-server, xen
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#9136: make graph-size fails with "ValueError: too many values to..
|
||||
#9151: qt: fix build with ALSA >= 1.1.x
|
||||
#9156: qt: Fix missing runtime Qt3Support dependency
|
||||
#9161: modsetting patch not applied to xserver 1.18.4
|
||||
#9166: Missing overlays directory in VFAT image for raspberry pi 3
|
||||
|
||||
2016.08-rc1, Released August 6th, 2016
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Toolchain: Fortran support added. eglibc support removed, musl
|
||||
support no longer experimental. Blackfin and Microblaze
|
||||
support for internal uClibc-ng toolchain, m68k/coldfire
|
||||
improvements. The check for unsafe (build host) directories
|
||||
access (/usr/include and /usr/lib) is now enabled by default.
|
||||
Unused locales are now purged by default to save space (and
|
||||
the default list of locales shrunk). The option to control
|
||||
this has now moved from the toolchain menu to system
|
||||
configuration.
|
||||
|
||||
Legal info improvements: sources are now hardlinked instead of
|
||||
copied if possible to save space. Patches and extra downloads
|
||||
are also saved.
|
||||
|
||||
An experimental configuration knob (BR2_REPRODUCIBLE) has been
|
||||
added to make the builds more reproducible (E.G. less
|
||||
differences in the binary output between builds of the same
|
||||
configuration). This is still work in progress.
|
||||
|
||||
An option to execute a custom script inside the fakeroot
|
||||
environment used to the generate the filesystem (E.G. to tweak
|
||||
permissions or similar) has been added.
|
||||
|
||||
Git support now supports git submodules if
|
||||
<pkg>_GIT_SUBMODULES is enabled.
|
||||
|
||||
Hash files for integritry validation have been added for all
|
||||
packages.
|
||||
|
||||
Scanpypi utility to help creating packages from the Python
|
||||
package index (pypi) has been added.
|
||||
|
||||
The makedevs utility now has support for adding file
|
||||
capabilities using extended attributes.
|
||||
|
||||
New defconfigs: Arcturus uCP1020, Atmel sama5d{2,3,4} xplained
|
||||
development configs, Blackfin GDB simulator, Linksprite
|
||||
pcDuino, Minnow Board Max graphical demo, NXP i.MX25 PDK,
|
||||
i.MX51 EVK, i.MX6UL Pico, i.MX7 sabresd, QEMU MIPS32r6{,el} and
|
||||
MIPS64r6{,el} malta, Roseapple Pi, Samsung Snow chromebook,
|
||||
Toradex Apalis i.MX6 COM, TS-4800, x86-64 PC BIOS and EFI
|
||||
demos. A number of defconfigs have been updated and extended
|
||||
to generate SD card images. Synopsys HS38 VDK defconfig removed.
|
||||
|
||||
New packages: 4th, acpica, acpitool, alljoyn, alljoyn-base,
|
||||
alljoyn-tcl, alljoyn-tcl-base, argparse, babeld, batman-adv,
|
||||
circus, dante, docker-containerd, docker-engine, domoticz,
|
||||
efibootmgr, efivar, ficl, fwup, gsettings-desktop-schemas,
|
||||
gtksourceview, gupnp-dlna, gupnp-tools, igd2-for-linux,
|
||||
jemalloc, kmsxx, lapack, lft, libaacs, libamcodec, libbdplus,
|
||||
libcoap, libdvdcss, libebur128, libfastjson, libminiupnpc,
|
||||
libnatpmp, libpqxx, libuio, libvdpau, log4cpp, minissdpd,
|
||||
mxsldr, nginx-nasxi, nginx-upload, ninja, nodm, odroid-mali,
|
||||
odroid-scripts, omxplayer, openblas, openmpi, openzwave,
|
||||
p7zip, pdbg, python-argh, python-dataproperty,
|
||||
python-dateutil, python-dialog3, python-dicttoxml,
|
||||
python-dominate, python-engineio, python-flask-jsonrpc,
|
||||
python-flask-login, python-humanize, python-pathtools,
|
||||
python-pathvalidate, python-pillow, python-prompt-toolkit,
|
||||
python-pytablewriter, python-pytz, python-scapy3k,
|
||||
python-sdnotify, python-socketio, python-tomako,
|
||||
python-ubjson, python-u-msgpack, python-watchdog,
|
||||
python-wcwidth, python-xlrd, python-xlsxwriter,
|
||||
python-xlutils, python-xlwt, rs485conf, runc, sdl2_gfx,
|
||||
sdl2_image, sdl2_ttf, shellinabox, sphinxbase, stella,
|
||||
supertuxkart, systemd-bootchart, tekui, terminology, tinycbor,
|
||||
tinydtls, ti-sgx-demos, ti-sgx-km, ti-sgx-um, tunctl, wavemon,
|
||||
wiringpi, xen
|
||||
|
||||
Deprecated packages: ipkg, sstrip
|
||||
|
||||
Removed packages: sunxi-mali-prop
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#8931: segment fault when compile argp-help.c using aarch64-bu...
|
||||
#8966: eglfs error. buildroot don't compile the library libeglfs.so
|
||||
#8971: build for beaglebone fails
|
||||
#8986: qt5imageformats fails to build on AArch64
|
||||
#8991: grub2 fails to compile
|
||||
#9001: Nodejs option not available
|
||||
#9006: gcc with c++ support v4 and v5 fail to compile on fedora 24
|
||||
#9016: arceb-buildroot-linux-uclibc ld uses incorrect default format
|
||||
#9066: 8139TOO - faulty behaviour
|
||||
#9086: Syntax Error (missing ")" in boot/uboot/uboot.mk on line 203)
|
||||
#9091: U-Boot fails to boot with large ramdisk
|
||||
|
||||
2016.05, Released May 31st, 2016
|
||||
|
||||
Minor fixes.
|
||||
|
||||
External toolchain: Fix for symlink handling when copying
|
||||
links to target.
|
||||
|
||||
Updated/fixed packages: gcc, grantlee, gst-ffmpeg,
|
||||
ipsec-tools, iptraf-ng, libcurl, libdrm, libsigsegv, ltris,
|
||||
lttng-babeltrace, mbedtls, mesa3d, moarvm, mplayer, mtools,
|
||||
net-tools, openpowerlink, pulseview, rpm, tinyalsa,
|
||||
xdriver_xf86-video-fbturbo, xserver_xorg-server
|
||||
|
||||
2016.05-rc3, Released May 26th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Tweaks for SSP handling for external toolchains.
|
||||
|
||||
Updated/fixed packages: aircrack-ng, bluez5_utils, connman,
|
||||
cups, erlang-p1-stringprep, expat, ffmpeg, flann, flannel, go,
|
||||
gst1-libav, hidapi, hplip, iptraf-ng, jamvm, kodi,
|
||||
kodi-screensaver-matrixtrails, libcurl, libepoxy, libgpgme,
|
||||
libsemanage, libxslt, liquid-dsp, ltris, lxc, mesa3d, midori,
|
||||
mpg123, mtr, openpgm, openpowerlink, oprofile, php,
|
||||
postgresql, putty, python-service-identity, python-treq,
|
||||
qlibc, qt5serialbus, ruby, stress-ng, strongswan, time, tinc,
|
||||
ustr, valgrind, webkitgtk, libxml2, xorriso,
|
||||
xserver_xorg-server
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#8936: Aircrack-ng - Alot of missing dependencies
|
||||
|
||||
2016.05-rc2, Released May 17th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Rootfs overlay handling now refuses to overwrite
|
||||
/{usr,bin,sbin,lib} symlinks from BR2_ROOTFS_MERGED_USR option
|
||||
even if these directories are present in the overlay.
|
||||
|
||||
External toolchain: Unbreak user provided libraries deployment
|
||||
(BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS) handling after refactoring.
|
||||
|
||||
QEMU coldfire: Fix for signal handling kernel issue, enable
|
||||
networking support.
|
||||
|
||||
Updated/fixed packages: android-tools, assimp, boost, gcc,
|
||||
glibc, glmark2, gmrender-resurrect, go, go-bootstrap, iputils,
|
||||
jack2, kodi-screensaver-asterwave, kodi-screensaver-rsxs,
|
||||
kodi-visualisation-shadertoy, libarchive, libinput, libpjsip,
|
||||
mali-t76x, mtr, nginx, opencv, openvpn, python-coherence,
|
||||
qt5multimeda, quagga, samba4, sg3-utils, stress-ng, turbolua
|
||||
|
||||
2016.05-rc1, Released May 10th, 2016
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Architectures: new ARM variants: Cortex A17 and M4, improved
|
||||
nonmmu (cortex-M) support, m68k has been re-enabled with
|
||||
support for ColdFire. For x86, support for the i386 variant
|
||||
has been dropped.
|
||||
|
||||
Toolchain: Add GCC 6 support, remove GCC 4.5, mark GCC 4.7 as
|
||||
deprecated. Go programming language support, Add Binutils 2.26
|
||||
support. Old Sourcery PowerPC external toolchains removed,
|
||||
Sourcery MIPS 2016.06-8, AMD64 2015.11-139, NiosII 2015.11-130
|
||||
added, Linaro ARM/ARMeb/Aarch64 toolchains updated.
|
||||
|
||||
New defconfigs: Firefly RK3288, Boundary Devices i.MX7 Nitrogen7,
|
||||
STM32F429 and STM32F469 Discovery boards, Hardkernel ODROID-C2,
|
||||
Raspberry Pi Zero and Raspberry Pi 3. Some Qemu defconfigs were
|
||||
added for m68k, eXtensa-nommu and ColdFire.
|
||||
|
||||
Linux: use zImage by default on ARM, subversion repository
|
||||
support (for u-boot as well).
|
||||
|
||||
New packages: aer-inject, android-tools, cannelloni,
|
||||
cbootimage, cgroupfs-mount, connman-gtk, crudini, dt,
|
||||
gmrender-resurrect, flannel, font-awesome, freeswitch, go,
|
||||
go-bootstrap, gr-osmosdr, granite, i7z, imx-uuc,
|
||||
kodi-adsp-basic, kodi-adsp-freesurround,
|
||||
kodi-audiodecoder-opus, kodi-pvr-hdhomerun,
|
||||
kodi-screensaver-asterwave, kodi-screensaver-cpblobs,
|
||||
kodi-screensaver-matrixtrails, kodi-screensaver-planestate,
|
||||
kodi-screensaver-rsxs, kodi-visualisation-fishbmc,
|
||||
kodi-visualisation-fountain, kodi-visualisation-goom, libgee,
|
||||
libimxvpuapi, libpjsip, libtomcrypt, libtommath, libusbgx,
|
||||
lksctp-tools, mali-t76x, mkpimage, mpv, msr-tools, nload,
|
||||
norm, nvme, owfs, pound, privoxy, procrank_linux, putty,
|
||||
python-autobahn, python-characteristic, python-crossbar,
|
||||
python-cryptography, python-iniparse, python-iowait,
|
||||
python-lmdb, python-pexpect, python-ptyprocess,
|
||||
python-pyasn-modules, python-pygments, python-pymysql,
|
||||
python-pynacl, python-pyopenssl, python-pysocks,
|
||||
python-pytrie, python-rpi-gpio, python-service-identity,
|
||||
python-setproctitle, python-shutilwhich, python-treq,
|
||||
python-txaio, python-ujson, python-wsaccel, qt5canvas3d,
|
||||
qt5location, qt5quickcontrols2, qt5serialbus, qt5tools,
|
||||
raptor, scrub, taskd, tegrarcm, turbolua, valijson,
|
||||
wayland-protocols, webkitgtk, wilc1000-firmware, wpan-tools,
|
||||
xdriver_xf86-video-amdgpu
|
||||
|
||||
Removed packages: foomatic-filters, python-m2crypto,
|
||||
qt5quick1, qt5webkit-examples, samba, xdriver_xf86-input-void
|
||||
|
||||
Issues resolved (http://bugs.buildroot.org):
|
||||
|
||||
#6830: Qt5: no fonts are installed
|
||||
#7562: musl buildroot-toolchain and BR2_MIPS_SOFT_FLOAT break
|
||||
#7580: Invalid filesystem in Pandaboard defconfig
|
||||
#8346: wf111 package removes all kernel module dependencies
|
||||
#8436: xserver_xorg-server Segmentation fault
|
||||
#8736: IPV6 forced on in busybox
|
||||
#8746: At startup system stops with 'cannot set terminal proces..
|
||||
#8751: make fail [fio does not build on sh]
|
||||
#8766: Compiling host-gcc-final-4.9.3 broken on i386
|
||||
#8771: make savedefconfig modifies sources
|
||||
#8781: Unable to build uboot for imx28evk
|
||||
#8786: gdb fails to build with xz and expat support at the same
|
||||
#8801: Compilation of Buildroot 2016.2 for Raspberry Pi with...
|
||||
#8806: Buildroot 2016.2 for Raspberry Pi requires that ext4...
|
||||
#8836: Can't select Vim in menuconfig
|
||||
#8851: Make sure fio can compile with libaio support if it...
|
||||
#8861: With buildroot 2016.02 trying to build for corei7-avx
|
||||
fails while trying to build host-binutils
|
||||
#8866: Making an USB flash bootable with extlinux build with
|
||||
buildroot does not work
|
||||
|
||||
2016.02, Released March 1st, 2016
|
||||
|
||||
Minor fixes, mostly security related.
|
||||
|
||||
Circular dependency issue with same-as-kernel linux-headers
|
||||
option fixed.
|
||||
|
||||
Updated/fixed packages: bluez5_utils, heirloom-mailx,
|
||||
imx-gpu-viv, kodi-pvr-argustv, kodi-pvr-mediaportal-tvserver,
|
||||
kodi-pvr-nextpvr, libfcgi, openssl, pifmrds, powerpc-utils,
|
||||
python-m2crypto, slang, sox, squid, tn5250, xerces, zsh
|
||||
|
||||
2016.02-rc3, Released February 27th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Defconfigs: Ensure EABIhf is correctly enabled for ARM cores
|
||||
where VFP is optional (but present on the specific hw). Fix
|
||||
ARM variant selection for freescale_imx31_3stack_defconfig.
|
||||
|
||||
Ensure tarballs of downloaded git trees do not contain a
|
||||
timestamp.
|
||||
|
||||
Clarify license of patches in COPYING.
|
||||
|
||||
Updated/fixed package: avahi, binutils, cairo, can-festival,
|
||||
chrony, cifs-utils, dnsmasq, dvdauthor, e2fsprogs, efl,
|
||||
erlang-rebar, eudev, fbterm, gawk, gnupg2, gnuradio, gpm,
|
||||
gst1-plugins-good, hostapd, imagemagick, iproute2, iputils,
|
||||
jack2, kexec, kismet, lftp, libarchive, libeXosip2, libfm,
|
||||
libglib2, libsoil, libssh, libssh2, libuci, links, lshw, lxc,
|
||||
mediastreamer, mono, mraa, mutt, nfs-utils, numactl, ofono,
|
||||
omniorb, openipmi, openobex, patch, pax-utils, perf,
|
||||
pulseaudio, pure-ftp, qhull, qt, quagga, quota, sdl_sound,
|
||||
shairport-sync, spice, sysklogd, syslog-ng, trace-cmd,
|
||||
trousers, tvheadend, util-linux, vim, webkitgtk24, wireshark,
|
||||
wpa_supplicant, xerces, zsh
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#8651: libMonoPosixHelper.so wrong link reference in buildroot..
|
||||
|
||||
2016.02-rc2, Released February 18th, 2016
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Toolchain: PR19405 backport to binutils 2.25.1 to fix NIOS ld
|
||||
crash, backport of Xtensa .init/.fini literals handling.
|
||||
glibc security patches for CVE-2014-8121, CVE-2015-1781
|
||||
and CVE-2015-7547.
|
||||
|
||||
Defconfigs for Acmesystems Arietta g25 added.
|
||||
|
||||
Updated/fixed packages: binutils, boost, chrony, dovecot,
|
||||
e2fsprogs, fio, gdb, glibc, graphite2, icu, kbd, libbsd,
|
||||
libcue, libgcrypt, libraw, links, mc, mosquitto, nodejs,
|
||||
postgresql, pptp-linux, pulseaudio, samba4, spice, squid,
|
||||
sysklogd, systemd, tiff, uclibc, ulogd, util-linux, valgrind.
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#8576: Building embedded Linux for Atmel SAMA5D4_Xplained...
|
||||
#8606: Problem compiling on Arch Linux
|
||||
#8681: kbd 2.0.3 does not build on rpi
|
||||
|
||||
2016.02-rc1, Released February 10th, 2016
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Toolchain: Support for GCC 5.3.x. ARC toolchain updated to
|
||||
arc-2015.12. Support for legacy uClibc dropped, default to
|
||||
uClibc-ng instead. Added sys/queue.h implementation for MUSL
|
||||
for compatibility. Updated versions of Code sourcery and
|
||||
Linaro toolchains. MIPS Codescape toolchains added. Version
|
||||
selection for preconfigured external toolchains removed.
|
||||
|
||||
New Defconfigs: ARM Juno r0/r1 development boards, Freescale
|
||||
i.MX6UL Evaluation Kit, Intel Galileo Gen 2, Orange Pi PC.
|
||||
A number of defconfigs have been extended to generate complete
|
||||
system images using genimage.
|
||||
|
||||
Linux: Automatically patch timeconst.pl for <3.9 kernels,
|
||||
which isn't compatible with modern perl versions, breaking the
|
||||
build when building on recent (Fedora 23, Debian
|
||||
Testing/Unstable, ..) distributions.
|
||||
|
||||
Makedevs utility now accepts textual (non-numerical) user and
|
||||
group names.
|
||||
|
||||
Vagrant file to easily setup a working development environment
|
||||
in a VM has been added.
|
||||
|
||||
Size-stats-compare script to compare rootfs sizes between
|
||||
builds has been added.
|
||||
|
||||
Infozip package renamed to zip. EFL packages restructured.
|
||||
|
||||
Updated/fixed packages: aespipe, aiccu, alsa-lib, alsa-utils,
|
||||
angularjs, apache, apr, argp-standalone, armadillo, arptables,
|
||||
at, atk, audiofile, aumix, autoconf-archive, avahi, bash, bc,
|
||||
bcache-tools, bdwgc, beecrypt, bind, binutils, bluez5_utils,
|
||||
bluez_utils, bonnie, boost, busybox, cairo, cdrkit, chrony,
|
||||
clamav, cmake, collectd, connman, coreutils, cppcms, crda,
|
||||
cryptodev-linux, cryptsetup, cups, cwiid, cxxtest, dbus,
|
||||
dbus-cpp, dbus-glib, debianutils, dhcp, dhcpcd, dhrystone,
|
||||
dillo, directfb, directfb-examples, dmraid, dnsmasq, doom-wad,
|
||||
dovecot, dovecot-pigeonhole, dropbear, dtv-scan-tables,
|
||||
dvb-apps, dvbsnoop, ecryptfs-utils, eigen, ejabberd,
|
||||
elementary, elfutils, enlightenment, erlang, espeak, eudev,
|
||||
eventlog, exfat, exfat-utils, exiv2, expedite, faifa,
|
||||
fakeroot, fastd, fbgrab, fetchmail, ffmpeg, findutils, fio,
|
||||
firmware-imx, flann, flashrom, flite, flot, fmlib, freerdp,
|
||||
freescale-imx, freetype, gauche, gawk, gcc, gcc-final, gcr,
|
||||
gdb, gdk-pixbuf, geoip, gesftpserver, gettext, giflib, git,
|
||||
glibc, glibmm, glog, gmp, gnupg, gnupg2, gnutls, gob2, gpsd,
|
||||
gptfdisk, grep, gst1-libav, gst1-plugins-{bad,base,good,ugly},
|
||||
gst-ffmpeg, gst-plugins-{bad,base,good,ugly}, gstreamer,
|
||||
gstreamer1, guile, gvfs, gzip, harfbuzz, haserl, hiawatha,
|
||||
hostapd, hplip, icu, ifupdown, imagemagick, imx-gpu-viv,
|
||||
imx-kobs, imx-lib, input-tools, intel-microcode, iperf3,
|
||||
ipmitool, iproute2, iprutils, ipsec-tools, ipset, iptables,
|
||||
iputils, irda-utils, irssi, iucode-tool, jack2, janus-gateway,
|
||||
jpeg-turbo, jquery-datetimepicker, jquery-keyboard,
|
||||
jquery-sparkline, jquery-ui, jquery-ui-themes,
|
||||
jquery-validation, json-c, kbd, kernel-module-imx-gpu-viv,
|
||||
keyutils, kmod, knock, kodi, lcdproc, lcms2, leafnode2,
|
||||
leafpad, libass, libatomic_ops, libbroadvoice, libbsd,
|
||||
libcap-ng, libcdaudio, libcue, libcurl, libdrm, libecore,
|
||||
libedbus, libedit, libedje, libeet, libefreet, libeina,
|
||||
libeio, libelementary, libembryo, libepoxy, libethumb, libev,
|
||||
libevas, libevas-generic-loaders, libevdev, libevent, libffi,
|
||||
libfm, libfribidi, libfslcodec, libfslparser, libfslvpuwrap,
|
||||
libftdi, libfuse, libgail, libglew, libglib2, libgtk2,
|
||||
libgtk3, libgudev, libhttpparser, libidn, libinput, libiscsi,
|
||||
libjpeg, liblinear, libmbim, libmicrohttpd, libndp, libnspr,
|
||||
libnss, liboauth, liboping, libpciaccess, libplist, libpng,
|
||||
libraw, libraw1394, librsvg, libseccomp, libsecret,
|
||||
libserialport, libsigc, libsigrok, libsigrokdecode,
|
||||
libsndfile, libsoc, libsodium, libsoup, libssh2, libsvg,
|
||||
libsvg-cairo, libtasn1, libtirpc, libtorrent, libungif,
|
||||
libunwind, libupnpp, liburcu, libuv, libv4l, libva,
|
||||
libva-intel-driver, libvips, libvncserver, libxml2, libxmlpp,
|
||||
lightning, lighttpd, linknx, linux-firmware, linux-fusion,
|
||||
linux-headers, liquid-dsp, lirc-tools, live555, lm-sensors,
|
||||
lockdev, lshw, ltp-testsuite, ltrace, lttng-babeltrace,
|
||||
lttng-libust, lttng-modules, lttng-tools, lua, luabitop,
|
||||
luarocks, luv, lvm2, lxc, makedevs, mc, memcached, memtest86,
|
||||
mesa3d, mesa3d-demos, mesa3d-headers, micropython,
|
||||
micropython-lib, minicom, minidlna, mjpg-streamer, mke2img,
|
||||
moarvm, modem-manager, mongoose, mongrel2, monkey, mono,
|
||||
monolite, mosh, mosquitto, mpd, mplayer, msgpack, mtdev2tuio,
|
||||
musepack, musl, mysql, nano, nasm, nbd, neard, netatalk,
|
||||
netsnmp, nettle, net-tools, network-manager, nfs-utils, nginx,
|
||||
nmap, nodejs, ntfs-3g, ntp, numactl, nut, nvidia-driver,
|
||||
odhcp6c, ofono, ola, olsr, omniorb, opencv, opencv3, openipmi,
|
||||
openldap, openntpd, openobex, openocd, openpgm,
|
||||
open-plc-utils, openpowerlink, openssh, openssl, openswan,
|
||||
openvpn, opkg, oprofile, opus, opusfile, p11-kit, package,
|
||||
pango, pax-utils, pciutils, pcmanfm, perl, perl-db-file,
|
||||
perl-io-socket-ssl, perl-libwww-perl, perl-net-dns, perl-uri,
|
||||
perl-xml-libxml, php, php-ssh2, picocom, pinentry, pixman,
|
||||
polarssl, popt, portaudio, pppd, procps-ng, proftpd, protobuf,
|
||||
psmisc, ptpd2, pulseaudio, pulseview, pv, python, python3,
|
||||
python-alsaaudio, python-can, python-cffi, python-cherrypy,
|
||||
python-httplib2, python-jinja2, python-lxml, python-m2crypto,
|
||||
python-mako, python-msgpack, python-psutil, python-pyasn,
|
||||
python-pycparser, python-pydal, python-pyftpdlib,
|
||||
python-pyroute2, python-pyxml, python-pyzmq, python-requests,
|
||||
python-serial, python-setuptools, python-six, python-spidev,
|
||||
python-tornado, python-twisted, python-web2py, python-webpy,
|
||||
python-werkzeug, python-zope-interface, qemu, qhull, qpdf, qt,
|
||||
qt5, qt5base, qt5connectivity, qt5declarative, qt5enginio,
|
||||
qt5graphicaleffects, qt5imageformats, qt5multimedia,
|
||||
qt5quick1, qt5quickcontrols, qt5script, qt5sensors,
|
||||
qt5serialport, qt5svg, qt5webchannel, qt5webkit,
|
||||
qt5webkit-examples, qt5websockets, qt5x11extras,
|
||||
qt5xmlpatterns, qt-webkit-kiosk, racehound, radvd, read-edid,
|
||||
readline, redis, rpcbind, rpi-firmware, rpi-userland, rrdtool,
|
||||
rsync, rsyslog, rtai, rtorrent, rt-tests, rubix, ruby, samba4,
|
||||
sconeserver, setools, shairport-sync, sigrok-cli, skeleton,
|
||||
smack, snowball-init, socat, sp-oops-extract, sqlite,
|
||||
squashfs, squeezelite, squid, sredird, sshfs,
|
||||
start-stop-daemon, strace, strongswan, stunnel, subversion,
|
||||
sunxi-tools, swig, sysdig, syslog-ng, sysstat, systemd,
|
||||
sysvinit, taglib, tcl, tcpreplay, thrift, ti-gfx, tinyalsa,
|
||||
tor, torsmo, trace-cmd, transmission, tremor, triggerhappy,
|
||||
trinity, tvheadend, tzdata, uboot-tools, uclibc, udisks,
|
||||
udpcast, unionfs, upmpdcli, usb_modeswitch,
|
||||
usb_modeswitch_data, ustr, util-linux, vala, valgrind,
|
||||
vboot-utils, vde2, vlc, vnstat, webkit, webkitgtk24, weston,
|
||||
wget, whetstone, whois, wine, wipe, wireless-regdb, wireshark,
|
||||
wpa_supplicant, w_scan, x11r7, xapp_xbacklight, xapp_xcompmgr,
|
||||
xapp_xinput, xapp_xkbcomp, xdriver_xf86-input-evdev,
|
||||
xdriver_xf86-input-libinput, xdriver_xf86-input-synaptics,
|
||||
xdriver_xf86-video-ati, xdriver_xf86-video-fbturbo,
|
||||
xdriver_xf86-video-imx-viv, xdriver_xf86-video-intel,
|
||||
xfont_encodings, xfont_font-adobe-100dpi,
|
||||
xfont_font-adobe-75dpi, xfont_font-adobe-utopia-100dpi,
|
||||
xfont_font-adobe-utopia-75dpi, xfont_font-adobe-utopia-type1,
|
||||
xfont_font-alias, xfont_font-arabic-misc,
|
||||
xfont_font-bh-100dpi, xfont_font-bh-75dpi,
|
||||
xfont_font-bh-lucidatypewriter-100dpi,
|
||||
xfont_font-bh-lucidatypewriter-75dpi, xfont_font-bh-ttf,
|
||||
xfont_font-bh-type1, xfont_font-bitstream-100dpi,
|
||||
xfont_font-bitstream-75dpi, xfont_font-bitstream-type1,
|
||||
xfont_font-cronyx-cyrillic, xfont_font-cursor-misc,
|
||||
xfont_font-daewoo-misc, xfont_font-dec-misc,
|
||||
xfont_font-ibm-type1, xfont_font-isas-misc,
|
||||
xfont_font-jis-misc, xfont_font-micro-misc,
|
||||
xfont_font-misc-cyrillic, xfont_font-misc-ethiopic,
|
||||
xfont_font-misc-meltho, xfont_font-misc-misc,
|
||||
xfont_font-mutt-misc, xfont_font-schumacher-misc,
|
||||
xfont_font-screen-cyrillic, xfont_font-sony-misc,
|
||||
xfont_font-sun-misc, xfont_font-winitzki-cyrillic,
|
||||
xfont_font-xfree86-type1, xfsprogs, xkeyboard-config, xl2tp,
|
||||
xlib_libfontenc, xlib_libXi, xmlstarlet, xscreensaver,
|
||||
xserver_xorg-server, xtables-addons, xvkbd, xz, yad, yasm,
|
||||
ympd, zeromq, zic, znc, zsh,
|
||||
|
||||
New packages: acsccid, assimp, atkmm, autofs, bcm2835,
|
||||
cairomm, cantarell, chocolate-doom, comix-cursors, cxxtest,
|
||||
edid-decode, emlog, gcr, gtkmm3, hidapi, jquery-sidebar,
|
||||
kernel-module-imx-gpu-viv, libasplib, libcroco, libdvbpsi,
|
||||
libfreeglut, libgdiplus, libglfw, libhdhomerun, libnet,
|
||||
libsoil, lldpd, luvi, mbedtls, minizip, miraclecast, mongodb,
|
||||
mraa, netbsd-queue, netsniff-ng, nss-pam-ldapd,
|
||||
obsidian-cursors, openal, openbox, pangomm,
|
||||
python-backports-abc, python-beautifulsoup4, python-cbor,
|
||||
python-click, python-cssselect, python-ecdsa, python-html5lib,
|
||||
python-idna, python-ipaddress, python-mistune, python-netaddr,
|
||||
python-paho-mqtt, python-paramiko, python-pyparted,
|
||||
python-pysmb, python-pyudev, python-singledispatch,
|
||||
python-smbus-cffi, python-urllib3, qt53d, rabbitmq-c, rfkill,
|
||||
sbc, spi-tools, tpm-tools, trousers, ubus, unrar, unscd,
|
||||
unzip, v4l2grab, xdriver_xf86-video-nouveau, xdotool, zbar
|
||||
|
||||
Removed packages: libungif, python-pyxml,
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#7886: gettext: link failure with locally-installed libxml2
|
||||
#7892: systemd-journald is broken
|
||||
#8066: nodejs crashes when built with gcc 4.9
|
||||
#8296: nodejs 0.12.7 - npm crashes (seg core dump)
|
||||
#8501: gunzip fails to uncompress files
|
||||
#8541: fail to build host-fakeroot-1.20.2
|
||||
#8546: build instructions for raspberry pi don't work
|
||||
#8571: strace for ARC compile error
|
||||
#8581: pciutils.mk PCIUTILS_MAKE_OPTS typo
|
||||
#8616: Fail to build for raspberrypi_defconfig with big endian
|
||||
#8621: sqlite package, properly enable readline
|
||||
Updated/fixed packages: busybox, dropbear, gawk, libpng, openssl
|
||||
|
||||
2015.11, Released November 30th, 2015
|
||||
|
||||
|
||||
16
COPYING
16
COPYING
@@ -1,19 +1,3 @@
|
||||
With the exceptions below, Buildroot is distributed under the terms of
|
||||
the GNU General Public License, reproduced below; either version 2 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
Some files in Buildroot contain a different license statement. Those
|
||||
files are licensed under the license contained in the file itself.
|
||||
|
||||
Buildroot also bundles patch files, which are applied to the sources
|
||||
of the various packages. Those patches are not covered by the license
|
||||
of Buildroot. Instead, they are covered by the license of the software
|
||||
to which the patches are applied. When said software is available
|
||||
under multiple licenses, the Buildroot patches are only provided under
|
||||
the publicly accessible licenses.
|
||||
|
||||
-----------------------------------------------------------------
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
|
||||
464
Config.in
464
Config.in
@@ -14,48 +14,9 @@ config BR2_HOSTARCH
|
||||
string
|
||||
option env="HOSTARCH"
|
||||
|
||||
config BR2_BUILD_DIR
|
||||
config BR2_EXTERNAL
|
||||
string
|
||||
option env="BUILD_DIR"
|
||||
|
||||
# Hidden config symbols for packages to check system gcc version
|
||||
config BR2_HOST_GCC_VERSION
|
||||
string
|
||||
option env="HOST_GCC_VERSION"
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_4_5
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "4 5"
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_4_6
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "4 6"
|
||||
select BR2_HOST_GCC_AT_LEAST_4_5
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_4_7
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "4 7"
|
||||
select BR2_HOST_GCC_AT_LEAST_4_6
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_4_8
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "4 8"
|
||||
select BR2_HOST_GCC_AT_LEAST_4_7
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_4_9
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "4 9"
|
||||
select BR2_HOST_GCC_AT_LEAST_4_8
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_5
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "5"
|
||||
select BR2_HOST_GCC_AT_LEAST_4_9
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_6
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "6"
|
||||
select BR2_HOST_GCC_AT_LEAST_5
|
||||
option env="BR2_EXTERNAL"
|
||||
|
||||
# Hidden boolean selected by packages in need of Java in order to build
|
||||
# (example: xbmc)
|
||||
@@ -130,9 +91,9 @@ config BR2_ZCAT
|
||||
string "zcat command"
|
||||
default "gzip -d -c"
|
||||
help
|
||||
Command to be used to extract a gzip'ed file to stdout. zcat
|
||||
is identical to gunzip -c except that the former may not be
|
||||
available on your system.
|
||||
Command to be used to extract a gzip'ed file to stdout.
|
||||
zcat is identical to gunzip -c except that the former may
|
||||
not be available on your system.
|
||||
Default is "gzip -d -c"
|
||||
Other possible values include "gunzip -c" or "zcat".
|
||||
|
||||
@@ -172,8 +133,8 @@ config BR2_DEFCONFIG
|
||||
default BR2_DEFCONFIG_FROM_ENV if BR2_DEFCONFIG_FROM_ENV != ""
|
||||
default "$(CONFIG_DIR)/defconfig"
|
||||
help
|
||||
When running 'make savedefconfig', the defconfig file will be
|
||||
saved in this location.
|
||||
When running 'make savedefconfig', the defconfig file will be saved
|
||||
in this location.
|
||||
|
||||
config BR2_DL_DIR
|
||||
string "Download dir"
|
||||
@@ -181,8 +142,7 @@ config BR2_DL_DIR
|
||||
help
|
||||
Directory to store all the source files that we need to fetch.
|
||||
If the Linux shell environment has defined the BR2_DL_DIR
|
||||
environment variable, then this overrides this configuration
|
||||
item.
|
||||
environment variable, then this overrides this configuration item.
|
||||
|
||||
The default is $(TOPDIR)/dl
|
||||
|
||||
@@ -190,9 +150,9 @@ config BR2_HOST_DIR
|
||||
string "Host dir"
|
||||
default "$(BASE_DIR)/host"
|
||||
help
|
||||
Directory to store all the binary files that are built for the
|
||||
host. This includes the cross compilation toolchain when
|
||||
building the internal buildroot toolchain.
|
||||
Directory to store all the binary files that are built for the host.
|
||||
This includes the cross compilation toolchain when building the
|
||||
internal buildroot toolchain.
|
||||
|
||||
The default is $(BASE_DIR)/host
|
||||
|
||||
@@ -202,13 +162,11 @@ config BR2_PRIMARY_SITE
|
||||
string "Primary download site"
|
||||
default ""
|
||||
help
|
||||
Primary site to download from. If this option is set then
|
||||
buildroot will try to download package source first from this
|
||||
site and try the default if the file is not found.
|
||||
Valid URIs are:
|
||||
- URIs recognized by $(WGET)
|
||||
- local URIs of the form file://absolutepath
|
||||
- scp URIs of the form scp://[user@]host:path.
|
||||
Primary site to download from. If this option is set then buildroot
|
||||
will try to download package source first from this site and try the
|
||||
default if the file is not found.
|
||||
Valid URIs are URIs recognized by $(WGET) and scp URIs of the form
|
||||
scp://[user@]host:path.
|
||||
|
||||
config BR2_PRIMARY_SITE_ONLY
|
||||
bool "Only allow downloads from primary download site"
|
||||
@@ -217,11 +175,11 @@ config BR2_PRIMARY_SITE_ONLY
|
||||
If this option is enabled, downloads will only be attempted
|
||||
from the primary download site. Other locations, like the
|
||||
package's official download location or the backup download
|
||||
site, will not be considered. Therefore, if the package is not
|
||||
present on the primary site, the download fails.
|
||||
site, will not be considered. Therefore, if the package is
|
||||
not present on the primary site, the download fails.
|
||||
|
||||
This is useful for project developers who want to ensure that
|
||||
the project can be built even if the upstream tarball
|
||||
This is useful for project developers who want to ensure
|
||||
that the project can be built even if the upstream tarball
|
||||
locations disappear.
|
||||
|
||||
if !BR2_PRIMARY_SITE_ONLY
|
||||
@@ -230,36 +188,32 @@ config BR2_BACKUP_SITE
|
||||
string "Backup download site"
|
||||
default "http://sources.buildroot.net"
|
||||
help
|
||||
Backup site to download from. If this option is set then
|
||||
buildroot will fall back to download package sources from here
|
||||
if the normal location fails.
|
||||
Backup site to download from. If this option is set then buildroot
|
||||
will fall back to download package sources from here if the
|
||||
normal location fails.
|
||||
|
||||
config BR2_KERNEL_MIRROR
|
||||
string "Kernel.org mirror"
|
||||
default "https://cdn.kernel.org/pub"
|
||||
default "https://www.kernel.org/pub"
|
||||
help
|
||||
kernel.org is mirrored on a number of servers around the
|
||||
world. The following allows you to select your preferred
|
||||
mirror. By default, a CDN is used, which automatically
|
||||
redirects to a mirror geographically close to you.
|
||||
kernel.org is mirrored on a number of servers around the world.
|
||||
The following allows you to select your preferred mirror.
|
||||
|
||||
Have a look on the kernel.org site for a list of mirrors, then
|
||||
enter the URL to the base directory. Examples:
|
||||
Have a look on the kernel.org site for a list of mirrors, then enter
|
||||
the URL to the base directory. Examples:
|
||||
|
||||
http://www.XX.kernel.org/pub (XX = country code)
|
||||
http://mirror.aarnet.edu.au/pub/ftp.kernel.org
|
||||
|
||||
config BR2_GNU_MIRROR
|
||||
string "GNU Software mirror"
|
||||
default "http://ftpmirror.gnu.org"
|
||||
default "http://ftp.gnu.org/pub/gnu"
|
||||
help
|
||||
GNU has multiple software mirrors scattered around the
|
||||
world. The following allows you to select your preferred
|
||||
mirror. By default, a generic address is used, which
|
||||
automatically selects an up-to-date and local mirror.
|
||||
GNU has multiple software mirrors scattered around the world.
|
||||
The following allows you to select your preferred mirror.
|
||||
|
||||
Have a look on the gnu.org site for a list of mirrors, then
|
||||
enter the URL to the base directory. Examples:
|
||||
Have a look on the gnu.org site for a list of mirrors, then enter
|
||||
the URL to the base directory. Examples:
|
||||
|
||||
http://ftp.gnu.org/pub/gnu
|
||||
http://mirror.aarnet.edu.au/pub/gnu
|
||||
@@ -276,8 +230,8 @@ config BR2_CPAN_MIRROR
|
||||
string "CPAN mirror (Perl packages)"
|
||||
default "http://cpan.metacpan.org"
|
||||
help
|
||||
CPAN (Comprehensive Perl Archive Network) is a repository of
|
||||
Perl packages. It has multiple software mirrors scattered
|
||||
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:
|
||||
@@ -291,22 +245,24 @@ config BR2_JLEVEL
|
||||
int "Number of jobs to run simultaneously (0 for auto)"
|
||||
default "0"
|
||||
help
|
||||
Number of jobs to run simultaneously. If 0, determine
|
||||
automatically according to number of CPUs on the host system.
|
||||
Number of jobs to run simultaneously. If 0, determine
|
||||
automatically according to number of CPUs on the host
|
||||
system.
|
||||
|
||||
config BR2_CCACHE
|
||||
bool "Enable compiler cache"
|
||||
help
|
||||
This option will enable the use of ccache, a compiler cache.
|
||||
It will cache the result of previous builds to speed up future
|
||||
builds. By default, the cache is stored in
|
||||
This option will enable the use of ccache, a compiler
|
||||
cache. It will cache the result of previous builds to speed
|
||||
up future builds. By default, the cache is stored in
|
||||
$HOME/.buildroot-ccache.
|
||||
|
||||
Note that Buildroot does not try to invalidate the cache
|
||||
contents when the compiler changes in an incompatible way.
|
||||
Therefore, if you make a change to the compiler version and/or
|
||||
configuration, you are responsible for purging the ccache
|
||||
cache by removing the $HOME/.buildroot-ccache directory.
|
||||
contents when the compiler changes in an incompatible
|
||||
way. Therefore, if you make a change to the compiler version
|
||||
and/or configuration, you are responsible for purging the
|
||||
ccache cache by removing the $HOME/.buildroot-ccache
|
||||
directory.
|
||||
|
||||
if BR2_CCACHE
|
||||
|
||||
@@ -319,19 +275,16 @@ config BR2_CCACHE_DIR
|
||||
config BR2_CCACHE_INITIAL_SETUP
|
||||
string "Compiler cache initial setup"
|
||||
help
|
||||
Initial ccache settings to apply, such as --max-files or
|
||||
--max-size.
|
||||
Initial ccache settings to apply, such as --max-files or --max-size.
|
||||
|
||||
For example, if your project is known to require more space
|
||||
than the default max cache size, then you might want to
|
||||
increase the cache size to a suitable amount using the -M
|
||||
(--max-size) option.
|
||||
For example, if your project is known to require more space than the
|
||||
default max cache size, then you might want to increase the cache size
|
||||
to a suitable amount using the -M (--max-size) option.
|
||||
|
||||
The string you specify here is passed verbatim to ccache.
|
||||
Refer to ccache documentation for more details.
|
||||
The string you specify here is passed verbatim to ccache. Refer to
|
||||
ccache documentation for more details.
|
||||
|
||||
These initial settings are applied after ccache has been
|
||||
compiled.
|
||||
These initial settings are applied after ccache has been compiled.
|
||||
|
||||
config BR2_CCACHE_USE_BASEDIR
|
||||
bool "Use relative paths"
|
||||
@@ -340,25 +293,47 @@ config BR2_CCACHE_USE_BASEDIR
|
||||
Allow ccache to convert absolute paths within the output
|
||||
directory into relative paths.
|
||||
|
||||
During the build, many -I include directives are given with an
|
||||
absolute path. These absolute paths end up in the hashes that
|
||||
are computed by ccache. Therefore, when you build from a
|
||||
different directory, the hash will be different and the cached
|
||||
object will not be used.
|
||||
During the build, many -I include directives are given with
|
||||
an absolute path. These absolute paths end up in the hashes
|
||||
that are computed by ccache. Therefore, when you build from a
|
||||
different directory, the hash will be different and the
|
||||
cached object will not be used.
|
||||
|
||||
To improve cache performance, set this option to y. This
|
||||
allows ccache to rewrite absolute paths within the output
|
||||
directory into relative paths. Note that only paths within the
|
||||
output directory will be rewritten; therefore, if you change
|
||||
BR2_HOST_DIR to point outside the output directory and
|
||||
directory into relative paths. Note that only paths within
|
||||
the output directory will be rewritten; therefore, if you
|
||||
change BR2_HOST_DIR to point outside the output directory and
|
||||
subsequently move it to a different location, this will lead
|
||||
to cache misses.
|
||||
|
||||
This option has as a result that the debug information in the
|
||||
object files also has only relative paths. Therefore, make
|
||||
sure you cd to the build directory before starting gdb. See
|
||||
the section "COMPILING IN DIFFERENT DIRECTORIES" in the ccache
|
||||
manual for more information.
|
||||
the section "COMPILING IN DIFFERENT DIRECTORIES" in the
|
||||
ccache manual for more information.
|
||||
|
||||
endif
|
||||
|
||||
config BR2_DEPRECATED
|
||||
bool "Show options and packages that are deprecated or obsolete"
|
||||
help
|
||||
This option shows outdated/obsolete versions of packages and
|
||||
options that are otherwise hidden.
|
||||
|
||||
if BR2_DEPRECATED
|
||||
|
||||
config BR2_DEPRECATED_SINCE_2015_02
|
||||
bool
|
||||
default y
|
||||
|
||||
config BR2_DEPRECATED_SINCE_2015_05
|
||||
bool
|
||||
default y
|
||||
|
||||
config BR2_DEPRECATED_SINCE_2015_08
|
||||
bool
|
||||
default y
|
||||
|
||||
endif
|
||||
|
||||
@@ -382,11 +357,11 @@ choice
|
||||
config BR2_DEBUG_1
|
||||
bool "debug level 1"
|
||||
help
|
||||
Debug level 1 produces minimal information, enough for making
|
||||
backtraces in parts of the program that you don't plan to
|
||||
debug. This includes descriptions of functions and external
|
||||
variables, but no information about local variables and no
|
||||
line numbers.
|
||||
Debug level 1 produces minimal information, enough
|
||||
for making backtraces in parts of the program that
|
||||
you don't plan to debug. This includes descriptions
|
||||
of functions and external variables, but no information
|
||||
about local variables and no line numbers.
|
||||
|
||||
config BR2_DEBUG_2
|
||||
bool "debug level 2"
|
||||
@@ -396,9 +371,9 @@ config BR2_DEBUG_2
|
||||
config BR2_DEBUG_3
|
||||
bool "debug level 3"
|
||||
help
|
||||
Level 3 includes extra information, such as all the macro
|
||||
definitions present in the program. Some debuggers support
|
||||
macro expansion when you use -g3.
|
||||
Level 3 includes extra information, such as all the
|
||||
macro definitions present in the program. Some debuggers
|
||||
support macro expansion when you use -g3.
|
||||
endchoice
|
||||
endif
|
||||
|
||||
@@ -411,15 +386,16 @@ config BR2_STRIP_strip
|
||||
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
|
||||
space, mainly by removing debugging symbols. Debugging symbols
|
||||
on the target are needed for native debugging, but not when
|
||||
remote debugging is used.
|
||||
stripped using the normal 'strip' command. This allows to
|
||||
save space, mainly by removing debugging symbols. Debugging
|
||||
symbols on the target are needed for native debugging, but
|
||||
not when remote debugging is used.
|
||||
|
||||
config BR2_STRIP_none
|
||||
bool "none"
|
||||
help
|
||||
Do not strip binaries and libraries in the target filesystem.
|
||||
Do not strip binaries and libraries in the target
|
||||
filesystem.
|
||||
endchoice
|
||||
|
||||
config BR2_STRIP_EXCLUDE_FILES
|
||||
@@ -427,19 +403,19 @@ config BR2_STRIP_EXCLUDE_FILES
|
||||
depends on !BR2_STRIP_none
|
||||
default ""
|
||||
help
|
||||
You may specify a space-separated list of binaries and
|
||||
libraries here that should not be stripped on the target.
|
||||
You may specify a space-separated list of binaries and libraries
|
||||
here that should not be stripped on the target.
|
||||
|
||||
config BR2_STRIP_EXCLUDE_DIRS
|
||||
string "directories that should be skipped when stripping"
|
||||
depends on !BR2_STRIP_none
|
||||
default ""
|
||||
help
|
||||
You may specify a space-separated list of directories that
|
||||
should be skipped when stripping. Binaries and libraries in
|
||||
these directories will not be touched. The directories should
|
||||
be specified relative to the target directory, without leading
|
||||
slash.
|
||||
You may specify a space-separated list of directories that should
|
||||
be skipped when stripping. Binaries and libraries in these
|
||||
directories will not be touched.
|
||||
The directories should be specified relative to the target directory,
|
||||
without leading slash.
|
||||
|
||||
choice
|
||||
prompt "gcc optimization level"
|
||||
@@ -455,67 +431,54 @@ config BR2_OPTIMIZE_0
|
||||
config BR2_OPTIMIZE_1
|
||||
bool "optimization level 1"
|
||||
help
|
||||
Optimize. Optimizing compilation takes somewhat more time, and
|
||||
a lot more memory for a large function. With -O, the compiler
|
||||
tries to reduce code size and execution time, without
|
||||
performing any optimizations that take a great deal of
|
||||
compilation time. -O turns on the following optimization
|
||||
Optimize. Optimizing compilation takes somewhat more time,
|
||||
and a lot more memory for a large function. With -O, the
|
||||
compiler tries to reduce code size and execution time,
|
||||
without performing any optimizations that take a great deal
|
||||
of compilation time. -O turns on the following optimization
|
||||
flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
|
||||
-fcprop-registers -floop-optimize -fif-conversion
|
||||
-fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
|
||||
-ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
|
||||
-ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants. -O
|
||||
also turns on -fomit-frame-pointer on machines where doing so
|
||||
does not interfere with debugging.
|
||||
-ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
|
||||
-O also turns on -fomit-frame-pointer on machines where doing
|
||||
so does not interfere with debugging.
|
||||
|
||||
config BR2_OPTIMIZE_2
|
||||
bool "optimization level 2"
|
||||
help
|
||||
Optimize even more. GCC performs nearly all supported
|
||||
optimizations that do not involve a space-speed tradeoff. The
|
||||
compiler does not perform loop unrolling or function inlining
|
||||
when you specify -O2. As compared to -O, this option increases
|
||||
both compilation time and the performance of the generated
|
||||
code. -O2 turns on all optimization flags specified by -O. It
|
||||
also turns on the following optimization flags:
|
||||
-fthread-jumps -fcrossjumping -foptimize-sibling-calls
|
||||
Optimize even more. GCC performs nearly all supported optimizations
|
||||
that do not involve a space-speed tradeoff. The compiler does not
|
||||
perform loop unrolling or function inlining when you specify -O2.
|
||||
As compared to -O, this option increases both compilation time and
|
||||
the performance of the generated code. -O2 turns on all optimization
|
||||
flags specified by -O. It also turns on the following optimization
|
||||
flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
|
||||
-fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm
|
||||
-fexpensive-optimizations -fstrength-reduce
|
||||
-frerun-cse-after-loop -frerun-loop-opt -fcaller-saves
|
||||
-fpeephole2 -fschedule-insns -fschedule-insns2
|
||||
-fsched-interblock -fsched-spec -fregmove -fstrict-aliasing
|
||||
-fdelete-null-pointer-checks -freorder-blocks
|
||||
-freorder-functions -falign-functions -falign-jumps
|
||||
-falign-loops -falign-labels -ftree-vrp -ftree-pre. Please
|
||||
note the warning under -fgcse about invoking -O2 on programs
|
||||
-fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
|
||||
-frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
|
||||
-fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
|
||||
-fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
|
||||
-freorder-functions -falign-functions -falign-jumps -falign-loops
|
||||
-falign-labels -ftree-vrp -ftree-pre
|
||||
Please note the warning under -fgcse about invoking -O2 on programs
|
||||
that use computed gotos.
|
||||
|
||||
config BR2_OPTIMIZE_3
|
||||
bool "optimization level 3"
|
||||
help
|
||||
Optimize yet more. -O3 turns on all optimizations specified by
|
||||
-O2 and also turns on the -finline-functions, -funswitch-loops
|
||||
and -fgcse-after-reload options.
|
||||
|
||||
config BR2_OPTIMIZE_G
|
||||
bool "optimize for debugging"
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
help
|
||||
Optimize for debugging. This enables optimizations that do not
|
||||
interfere with debugging. It should be the optimization level
|
||||
of choice for the standard edit-compile-debug cycle, offering
|
||||
a reasonable level of optimization while maintaining fast
|
||||
compilation and a good debugging experience.
|
||||
Optimize yet more. -O3 turns on all optimizations specified by -O2
|
||||
and also turns on the -finline-functions, -funswitch-loops and
|
||||
-fgcse-after-reload options.
|
||||
|
||||
config BR2_OPTIMIZE_S
|
||||
bool "optimize for size"
|
||||
help
|
||||
Optimize for size. -Os enables all -O2 optimizations that do
|
||||
not typically increase code size. It also performs further
|
||||
optimizations designed to reduce code size. -Os disables the
|
||||
following optimization flags: -falign-functions -falign-jumps
|
||||
-falign-loops -falign-labels -freorder-blocks
|
||||
-freorder-blocks-and-partition -fprefetch-loop-arrays
|
||||
Optimize for size. -Os enables all -O2 optimizations that do not
|
||||
typically increase code size. It also performs further optimizations
|
||||
designed to reduce code size. -Os disables the following optimization
|
||||
flags: -falign-functions -falign-jumps -falign-loops -falign-labels
|
||||
-freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
|
||||
-ftree-vect-loop-version
|
||||
|
||||
endchoice
|
||||
@@ -524,18 +487,16 @@ config BR2_GOOGLE_BREAKPAD_ENABLE
|
||||
bool "Enable google-breakpad support"
|
||||
select BR2_PACKAGE_GOOGLE_BREAKPAD
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_USE_WCHAR
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on (BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC)
|
||||
depends on BR2_TOOLCHAIN_USES_GLIBC
|
||||
depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS
|
||||
help
|
||||
This option will enable the use of google breakpad, a library
|
||||
and tool suite that allows you to distribute an application to
|
||||
users with compiler-provided debugging information removed,
|
||||
record crashes in compact "minidump" files, send them back to
|
||||
your server and produce C and C++ stack traces from these
|
||||
minidumps. Breakpad can also write minidumps on request for
|
||||
programs that have not crashed.
|
||||
This option will enable the use of google breakpad, a
|
||||
library and tool suite that allows you to distribute an
|
||||
application to users with compiler-provided debugging
|
||||
information removed, record crashes in compact "minidump"
|
||||
files, send them back to your server and produce C and C++
|
||||
stack traces from these minidumps. Breakpad can also write
|
||||
minidumps on request for programs that have not crashed.
|
||||
|
||||
if BR2_GOOGLE_BREAKPAD_ENABLE
|
||||
|
||||
@@ -555,59 +516,21 @@ config BR2_GOOGLE_BREAKPAD_INCLUDE_FILES
|
||||
|
||||
endif
|
||||
|
||||
choice
|
||||
config BR2_ENABLE_SSP
|
||||
bool "build code with Stack Smashing Protection"
|
||||
default BR2_SSP_ALL if BR2_ENABLE_SSP # legacy
|
||||
depends on BR2_TOOLCHAIN_HAS_SSP
|
||||
help
|
||||
Enable stack smashing protection support using GCC's
|
||||
-fstack-protector option family.
|
||||
Enable stack smashing protection support using GCCs
|
||||
-fstack-protector-all option.
|
||||
|
||||
See
|
||||
http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
|
||||
See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
|
||||
for details.
|
||||
|
||||
Note that this requires the toolchain to have SSP support.
|
||||
This is always the case for glibc and eglibc toolchain, but is
|
||||
optional in uClibc toolchains.
|
||||
Note that this requires the toolchain to have SSP
|
||||
support. This is always the case for glibc and eglibc
|
||||
toolchain, but is optional in uClibc toolchains.
|
||||
|
||||
config BR2_SSP_NONE
|
||||
bool "None"
|
||||
help
|
||||
Disable stack-smashing protection.
|
||||
|
||||
config BR2_SSP_REGULAR
|
||||
bool "-fstack-protector"
|
||||
help
|
||||
Emit extra code to check for buffer overflows, such as stack
|
||||
smashing attacks. This is done by adding a guard variable to
|
||||
functions with vulnerable objects. This includes functions
|
||||
that call alloca, and functions with buffers larger than 8
|
||||
bytes. The guards are initialized when a function is entered
|
||||
and then checked when the function exits. If a guard check
|
||||
fails, an error message is printed and the program exits.
|
||||
|
||||
config BR2_SSP_STRONG
|
||||
bool "-fstack-protector-strong"
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
help
|
||||
Like -fstack-protector but includes additional functions to be
|
||||
protected - those that have local array definitions, or have
|
||||
references to local frame addresses.
|
||||
|
||||
comment "Stack Smashing Protection strong needs a toolchain w/ gcc >= 4.9"
|
||||
depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
|
||||
config BR2_SSP_ALL
|
||||
bool "-fstack-protector-all"
|
||||
help
|
||||
Like -fstack-protector except that all functions are
|
||||
protected. This option might have a significant performance
|
||||
impact on the compiled binaries.
|
||||
|
||||
endchoice
|
||||
|
||||
comment "Stack Smashing Protection needs a toolchain w/ SSP"
|
||||
comment "enabling Stack Smashing Protection requires support in the toolchain"
|
||||
depends on !BR2_TOOLCHAIN_HAS_SSP
|
||||
|
||||
choice
|
||||
@@ -617,19 +540,20 @@ choice
|
||||
help
|
||||
Select the type of libraries you want to use on the target.
|
||||
|
||||
The default is to build dynamic libraries and use those on the
|
||||
target filesystem, except when the architecture and/or the
|
||||
selected binary format does not support shared libraries.
|
||||
The default is to build dynamic libraries and use those on
|
||||
the target filesystem, except when the architecture and/or
|
||||
the selected binary format does not support shared
|
||||
libraries.
|
||||
|
||||
config BR2_STATIC_LIBS
|
||||
bool "static only"
|
||||
help
|
||||
Build and use only static libraries. No shared libraries will
|
||||
be installed on the target. This potentially increases your
|
||||
code size and should only be used if you know what you are
|
||||
doing. Note that some packages may not be available when this
|
||||
option is enabled, due to their need for dynamic library
|
||||
support.
|
||||
Build and use only static libraries. No shared libraries
|
||||
will be instaled on the target. This potentially increases
|
||||
your code size and should only be used if you know what you
|
||||
are doing. Note that some packages may not be available when
|
||||
this option is enabled, due to their need for dynamic
|
||||
library support.
|
||||
|
||||
config BR2_SHARED_LIBS
|
||||
bool "shared only"
|
||||
@@ -655,60 +579,47 @@ config BR2_PACKAGE_OVERRIDE_FILE
|
||||
default "$(CONFIG_DIR)/local.mk"
|
||||
help
|
||||
A package override file is a short makefile that contains
|
||||
variable definitions of the form <pkg>_OVERRIDE_SRCDIR, which
|
||||
allows to tell Buildroot to use an existing directory as the
|
||||
source directory for a particular package. See the Buildroot
|
||||
documentation for more details on this feature.
|
||||
variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
|
||||
which allows to tell Buildroot to use an existing directory
|
||||
as the source directory for a particular package. See the
|
||||
Buildroot documentation for more details on this feature.
|
||||
|
||||
config BR2_GLOBAL_PATCH_DIR
|
||||
string "global patch directories"
|
||||
help
|
||||
You may specify a space separated list of one or more
|
||||
directories containing global package patches. For a specific
|
||||
version <packageversion> of a specific package <packagename>,
|
||||
patches are applied as follows:
|
||||
You may specify a space separated list of one or more directories
|
||||
containing global package patches. For a specific version
|
||||
<packageversion> of a specific package <packagename>, patches are
|
||||
applied as follows:
|
||||
|
||||
First, the default Buildroot patch set for the package is
|
||||
applied from the package's directory in Buildroot.
|
||||
First, the default Buildroot patch set for the package is applied
|
||||
from the package's directory in Buildroot.
|
||||
|
||||
Then for every directory - <global-patch-dir> - that exists in
|
||||
BR2_GLOBAL_PATCH_DIR, if the directory
|
||||
<global-patch-dir>/<packagename>/<packageversion>/ exists,
|
||||
then all *.patch files in this directory will be applied.
|
||||
<global-patch-dir>/<packagename>/<packageversion>/ exists, then all
|
||||
*.patch files in this directory will be applied.
|
||||
|
||||
Otherwise, if the directory <global-patch-dir>/<packagename>
|
||||
exists, then all *.patch files in the directory will be
|
||||
applied.
|
||||
Otherwise, if the directory <global-patch-dir>/<packagename> exists,
|
||||
then all *.patch files in the directory will be applied.
|
||||
|
||||
menu "Advanced"
|
||||
|
||||
config BR2_COMPILER_PARANOID_UNSAFE_PATH
|
||||
bool "paranoid check of library/header paths"
|
||||
default y
|
||||
help
|
||||
By default, when this option is disabled, when the Buildroot
|
||||
cross-compiler will encounter an unsafe library or header path
|
||||
(such as /usr/include, or /usr/lib), the compiler will display
|
||||
a warning.
|
||||
cross-compiler will encounter an unsafe library or header
|
||||
path (such as /usr/include, or /usr/lib), the compiler will
|
||||
display a warning.
|
||||
|
||||
By enabling this option, this warning is turned into an error,
|
||||
which will completely abort the build when such unsafe paths
|
||||
are encountered.
|
||||
By enabling this option, this warning is turned into an
|
||||
error, which will completely abort the build when such
|
||||
unsafe paths are encountered.
|
||||
|
||||
Note that this mechanism is available for both the internal
|
||||
toolchain (through the toolchain wrapper and binutils patches)
|
||||
and external toolchain backends (through the toolchain wrapper).
|
||||
|
||||
config BR2_REPRODUCIBLE
|
||||
bool "Make the build reproducible (experimental)"
|
||||
help
|
||||
This option will remove all sources of non-reproducibility
|
||||
from the build process. For a given Buildroot configuration,
|
||||
this allows to generate exactly identical binaries from one
|
||||
build to the other, including on different machines.
|
||||
|
||||
This is labeled as an experimental feature, as not all
|
||||
packages behave properly to ensure reproducibility.
|
||||
toolchain (through gcc and binutils patches) and external
|
||||
toolchain backends (through the external toolchain wrapper).
|
||||
|
||||
endmenu
|
||||
|
||||
@@ -730,4 +641,9 @@ source "package/Config.in.host"
|
||||
|
||||
source "Config.in.legacy"
|
||||
|
||||
source "$BR2_BUILD_DIR/.br2-external.in"
|
||||
menu "User-provided options"
|
||||
depends on BR2_EXTERNAL != "support/dummy-external"
|
||||
|
||||
source "$BR2_EXTERNAL/Config.in"
|
||||
|
||||
endmenu
|
||||
|
||||
798
Config.in.legacy
798
Config.in.legacy
@@ -16,77 +16,39 @@
|
||||
# is informed at build-time about selected legacy options.
|
||||
# If there is an equivalent (set of) new symbols, these should be select'ed by
|
||||
# the old symbol for backwards compatibility.
|
||||
# It is not possible to select an option that is part of a choice. In that
|
||||
# case, the new option should use the old symbol as default. This requires a
|
||||
# change outside of Config.in.legacy, and this should be clearly marked as such
|
||||
# in a comment, so that removal of legacy options also include the removal of
|
||||
# these external references.
|
||||
#
|
||||
# [Example: renaming a bool option that is part of a choice from FOO to BAR]
|
||||
# original choice:
|
||||
# choice
|
||||
# prompt "Choose foobar"
|
||||
# config BR2_FOO_1
|
||||
# bool "foobar 1"
|
||||
# config BR2_FOO_2
|
||||
# bool "foobar 2"
|
||||
# endchoice
|
||||
#
|
||||
# becomes:
|
||||
# choice
|
||||
# prompt "Choose foobar"
|
||||
# default BR2_BAR_1 if BR2_FOO_1 # legacy
|
||||
# default BR2_BAR_2 if BR2_FOO_2 # legacy
|
||||
# config BR2_BAR_1
|
||||
# bool "foobar 1"
|
||||
# config BR2_BAR_2
|
||||
# bool "foobar 2"
|
||||
# endchoice
|
||||
#
|
||||
# and in Config.in.legacy:
|
||||
# config BR2_FOO_1
|
||||
# bool "foobar 1 has been renamed"
|
||||
# help
|
||||
# <suitable help text>
|
||||
# # Note: BR2_FOO_1 is still referenced from package/foo/Config.in
|
||||
# config BR2_FOO_2
|
||||
# bool "foobar 2 has been renamed"
|
||||
# help
|
||||
# <suitable help text>
|
||||
# # Note: BR2_FOO_2 is still referenced from package/foo/Config.in
|
||||
#
|
||||
# [End of example]
|
||||
#
|
||||
# For string options, it is not possible to directly select another symbol. In
|
||||
# this case, a hidden wrap bool option has to be added, that defaults to y if
|
||||
# the old string is not set at its default value. The wrap symbol should select
|
||||
# BR2_LEGACY.
|
||||
# If the original symbol has been renamed, the new symbol should use the value
|
||||
# of the old symbol as default. Like for choice options, a comment should be
|
||||
# added to flag that the symbol is still used in another file.
|
||||
# of the old symbol as default. This requires a change outside of
|
||||
# Config.in.legacy, and this should be clearly marked as such below, so that
|
||||
# removal of legacy options also include the removal of these external
|
||||
# references.
|
||||
#
|
||||
# [Example: renaming a string option from FOO to BAR]
|
||||
# original symbol:
|
||||
# config BR2_FOO_STRING
|
||||
# string "Some foo string"
|
||||
# config BR2_FOO_STRING
|
||||
# string "Some foo string"
|
||||
#
|
||||
# becomes:
|
||||
# config BR2_BAR_STRING
|
||||
# string "Some bar string"
|
||||
# default BR2_FOO_STRING if BR2_FOO_STRING != "" # legacy
|
||||
# config BR2_BAR_STRING
|
||||
# string "Some bar string"
|
||||
# default BR2_FOO_STRING if BR2_FOO_STRING != "" # legacy
|
||||
#
|
||||
# and in Config.in.legacy:
|
||||
# config BR2_FOO_STRING
|
||||
# string "The foo string has been renamed"
|
||||
# help
|
||||
# <suitable help text>
|
||||
# config BR2_FOO_STRING
|
||||
# string "The foo string has been renamed"
|
||||
# help
|
||||
# <suitable help text>
|
||||
#
|
||||
# config BR2_FOO_STRING_WRAP
|
||||
# bool
|
||||
# default y if BR2_FOO_STRING != ""
|
||||
# select BR2_LEGACY
|
||||
# config BR2_FOO_STRING_WRAP
|
||||
# bool
|
||||
# default y if BR2_FOO_STRING != ""
|
||||
# select BR2_LEGACY
|
||||
#
|
||||
# # Note: BR2_FOO_STRING is still referenced from package/foo/Config.in
|
||||
# # Note: BR2_FOO_STRING is still referenced from package/foo/Config.in
|
||||
#
|
||||
# [End of example]
|
||||
|
||||
@@ -142,685 +104,6 @@ comment "build, or run, in unpredictable ways. "
|
||||
comment "----------------------------------------------------"
|
||||
endif
|
||||
|
||||
###############################################################################
|
||||
comment "Legacy options removed in 2016.11"
|
||||
|
||||
config BR2_PACKAGE_PHP_SAPI_CLI_CGI
|
||||
bool "PHP CGI and CLI options are now seperate"
|
||||
select BR2_PACKAGE_PHP_SAPI_CLI
|
||||
select BR2_PACKAGE_PHP_SAPI_CGI
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The PHP Interface options have been split up into a
|
||||
separate option for each interface.
|
||||
|
||||
config BR2_PACKAGE_PHP_SAPI_CLI_FPM
|
||||
bool "PHP CLI and FPM options are now separate"
|
||||
select BR2_PACKAGE_PHP_SAPI_CLI
|
||||
select BR2_PACKAGE_PHP_SAPI_FPM
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The PHP Interface options have been split up into a
|
||||
separate option for each interface.
|
||||
|
||||
config BR2_PACKAGE_WVSTREAMS
|
||||
bool "wvstreams removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
wvstreams is not maintained anymore since about 2009. It also
|
||||
doesn't build anymore with recent compilers (GCC 5+).
|
||||
|
||||
config BR2_PACKAGE_WVDIAL
|
||||
bool "wvdial removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
wvdial is not maintained anymore since about 2009. It also
|
||||
doesn't build anymore with recent compilers (GCC 5+).
|
||||
|
||||
config BR2_PACKAGE_WEBKITGTK24
|
||||
bool "webkitgtk 2.4.x removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
This legacy package only existed because some other packages
|
||||
depended on that specific version of webkitgtk. However, the
|
||||
other packages have been fixed. webkitgtk 2.4 is full of
|
||||
security issues so it needs to be removed.
|
||||
|
||||
config BR2_PACKAGE_TORSMO
|
||||
bool "torsmo removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
torsmo has been unmaintained for a long time, and nobody
|
||||
seems to be interested in it.
|
||||
|
||||
config BR2_PACKAGE_SSTRIP
|
||||
bool "sstrip removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
sstrip is unmaintained and potentially harmful. It doesn't
|
||||
save so much compared to normal binutils strip, and there is
|
||||
a big risk of binaries that don't work. Use normal strip
|
||||
instead.
|
||||
|
||||
config BR2_KERNEL_HEADERS_4_3
|
||||
bool "kernel headers version 4.3.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_4_1
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 4.3.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed. As an alternative,
|
||||
version 4.1.x of the headers have been automatically
|
||||
selected in your configuration.
|
||||
|
||||
config BR2_KERNEL_HEADERS_4_2
|
||||
bool "kernel headers version 4.2.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_4_1
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 4.2.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed. As an alternative,
|
||||
version 4.1.x of the headers have been automatically
|
||||
selected in your configuration.
|
||||
|
||||
config BR2_PACKAGE_KODI_ADDON_XVDR
|
||||
bool "kodi-addon-xvdr removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
According to the github project page:
|
||||
https://github.com/pipelka/xbmc-addon-xvdr
|
||||
this package is discontinued.
|
||||
|
||||
config BR2_PACKAGE_IPKG
|
||||
bool "ipkg removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
ipkg dates back to the early 2000s when Compaq started the
|
||||
handhelds.org project and it hasn't seen development since 2006.
|
||||
Use opkg as a replacement.
|
||||
|
||||
config BR2_GCC_VERSION_4_7_X
|
||||
bool "gcc 4.7.x support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for gcc version 4.7.x has been removed. The current
|
||||
default version (4.9.x or later) has been selected instead.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_24_X
|
||||
bool "binutils version 2.24 support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for binutils version 2.24 has been removed. The
|
||||
current default version (2.26 or later) has been selected
|
||||
instead.
|
||||
|
||||
config BR2_PACKAGE_WESTON_RPI
|
||||
bool "Weston propietary RPI support is gone"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Upstream decided the propietary (rpi-userland) weston composer
|
||||
support wasn't worth the effort so it was removed. Switch to
|
||||
the open VC4 support.
|
||||
|
||||
config BR2_LINUX_KERNEL_TOOL_CPUPOWER
|
||||
bool "linux-tool cpupower"
|
||||
depends on BR2_LINUX_KERNEL
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_LINUX_TOOLS_CPUPOWER
|
||||
help
|
||||
Linux tool cpupower option was renamed.
|
||||
|
||||
config BR2_LINUX_KERNEL_TOOL_PERF
|
||||
bool "linux-tool perf"
|
||||
depends on BR2_LINUX_KERNEL
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_LINUX_TOOLS_PERF
|
||||
help
|
||||
Linux tool perf option was renamed.
|
||||
|
||||
config BR2_LINUX_KERNEL_TOOL_SELFTESTS
|
||||
bool "linux-tool selftests"
|
||||
depends on BR2_LINUX_KERNEL
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_LINUX_TOOLS_SELFTESTS
|
||||
help
|
||||
Linux tool selftests option was renamed.
|
||||
|
||||
config BR2_GCC_VERSION_4_8_ARC
|
||||
bool "gcc arc option renamed"
|
||||
select BR2_LEGACY
|
||||
select BR2_GCC_VERSION_ARC
|
||||
help
|
||||
The option that selects the gcc version for the ARC
|
||||
architecture has been renamed to BR2_GCC_VERSION_ARC.
|
||||
|
||||
config BR2_KERNEL_HEADERS_4_0
|
||||
bool "kernel headers version 4.0.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_18
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 4.0.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.18.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_19
|
||||
bool "kernel headers version 3.19.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_18
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.19.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.18.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS
|
||||
bool "libevas-generic-loaders package removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.18, libevas-generic-loaders is now provided by the efl
|
||||
package.
|
||||
|
||||
config BR2_PACKAGE_ELEMENTARY
|
||||
bool "elementary package removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.18, elementary is now provided by the efl package.
|
||||
|
||||
config BR2_LINUX_KERNEL_CUSTOM_LOCAL
|
||||
bool "Linux kernel local directory option removed"
|
||||
help
|
||||
The option to select a local directory as the source of the Linux
|
||||
kernel has been removed. It hurts reproducibility of builds.
|
||||
|
||||
In case you were using this option during development of your
|
||||
Linux kernel, use the override mechanism instead.
|
||||
|
||||
###############################################################################
|
||||
comment "Legacy options removed in 2016.08"
|
||||
|
||||
config BR2_PACKAGE_SYSTEMD_COMPAT
|
||||
bool "systemd compatibility libraries have been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The systemd option to enable the compatibility libraries has
|
||||
been removed. Theses libraries have been useless since a few
|
||||
version, and have been fully dropped from the source since
|
||||
v230.
|
||||
|
||||
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIVEADDER
|
||||
bool "gst1-plugins-bad liveadder plugin removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUDIOMIXER
|
||||
help
|
||||
The functionality of the liveadder plugin of the
|
||||
gst1-plugins-bad package has been merged into audiomixer.
|
||||
|
||||
config BR2_PACKAGE_LIBFSLVPUWRAP
|
||||
bool "libfslvpuwrap has been renamed to imx-vpuwrap"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_IMX_VPUWRAP
|
||||
help
|
||||
The libfslvpuwrap has been renamed to match the renamed package.
|
||||
|
||||
config BR2_PACKAGE_LIBFSLPARSER
|
||||
bool "libfslparser has been renamed to imx-parser"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_IMX_PARSER
|
||||
help
|
||||
The libfslparser has been renamed to match the renamed package.
|
||||
|
||||
config BR2_PACKAGE_LIBFSLCODEC
|
||||
bool "libfslcodec has been renamed to imx-codec"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_IMX_CODEC
|
||||
help
|
||||
The libfslcodec has been renamed to match the renamed package.
|
||||
|
||||
config BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT
|
||||
bool "FIT support in uboot-tools has been refactored"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_DTC
|
||||
select BR2_PACKAGE_DTC_PROGRAMS
|
||||
select BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT
|
||||
select BR2_PACKAGE_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT
|
||||
select BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE
|
||||
help
|
||||
This option has been removed in favor of a more fine-grained
|
||||
configuration, which is recommended. Selecting this option
|
||||
enables FIT and FIT signature support for the target packages.
|
||||
It will also select the dtc and openssl packages.
|
||||
|
||||
config BR2_PTHREADS_OLD
|
||||
bool "linuxthreads (stable/old)"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Linuxthreads have been reworked, BR2_PTHREADS_OLD is now
|
||||
BR2_PTHREADS and the old BR2_PTHREADS - LT.new got removed.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_23_X
|
||||
bool "binutils 2.23 removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Binutils 2.23 has been removed, using a newer version is
|
||||
recommended.
|
||||
|
||||
config BR2_TOOLCHAIN_BUILDROOT_EGLIBC
|
||||
bool "eglibc support has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The eglibc project no longer exists, as it has been merged
|
||||
back into the glibc project. Therefore, support for eglibc
|
||||
has been removed, and glibc should be used instead.
|
||||
|
||||
config BR2_GDB_VERSION_7_8
|
||||
bool "gdb 7.8 has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The 7.8 version of gdb has been removed. Use a newer version
|
||||
instead.
|
||||
|
||||
###############################################################################
|
||||
comment "Legacy options removed in 2016.05"
|
||||
|
||||
config BR2_PACKAGE_OPENVPN_CRYPTO_POLARSSL
|
||||
bool "openvpn polarssl crypto backend removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The OpenVPN polarssl crypto backend option has been removed.
|
||||
Version from 2.3.10 onwards need polarssl >= 1.3.8 but aren't
|
||||
compatible with mbedtls (polarssl) series 2.x which is the
|
||||
version provided in buildroot. And both can't coexist.
|
||||
It now uses OpenSSL as the only option.
|
||||
|
||||
|
||||
config BR2_PACKAGE_NGINX_HTTP_SPDY_MODULE
|
||||
bool "nginx http spdy module removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_NGINX_HTTP_V2_MODULE
|
||||
help
|
||||
The ngx_http_spdy_module has been superseded by the
|
||||
ngx_http_v2_module since nginx v1.9.5. The
|
||||
ngx_http_v2_module modules has been automatically selected
|
||||
in your configuration.
|
||||
|
||||
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTP
|
||||
bool "gst1-plugins-bad rtp plugin moved to good"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The rtp plugin has been moved from gst1-plugins-base to
|
||||
gst1-plugins-good.
|
||||
|
||||
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPG123
|
||||
bool "gst1-plugins-bad mpg123 plugin moved to ugly"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The mpg123 plugin has been moved from gst1-plugins-bad to
|
||||
gst1-plugins-ugly.
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC
|
||||
bool "PowerPC Sourcery toolchain has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The Sourcery CodeBench toolchain for the PowerPC
|
||||
architecture has been removed, as it was very old, not
|
||||
maintained, and causing numerous build failures with modern
|
||||
userspace packages.
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2
|
||||
bool "PowerPC Sourcery E500v2 toolchain has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The Sourcery CodeBench toolchain for the PowerPC E500v2
|
||||
architecture has been removed, as it was very old, not
|
||||
maintained, and causing numerous build failures with modern
|
||||
userspace packages.
|
||||
|
||||
config BR2_x86_i386
|
||||
bool "x86 i386 support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The support for the i386 processors of the x86 architecture
|
||||
has been removed.
|
||||
|
||||
config BR2_PACKAGE_QT5WEBKIT_EXAMPLES
|
||||
bool "qt5webkit-examples package removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The qt5webkit-examples package has been removed, since it
|
||||
was removed from upstream starting from Qt 5.6.
|
||||
|
||||
config BR2_PACKAGE_QT5QUICK1
|
||||
bool "qt5quick1 package removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The qt5quick1 package has been removed, since it was removed
|
||||
from upstream starting from Qt 5.6.
|
||||
|
||||
config BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR
|
||||
string "uboot custom patch dir has been removed"
|
||||
help
|
||||
The uboot custom patch directory option has been removed. Use
|
||||
the improved BR2_TARGET_UBOOT_PATCH option instead.
|
||||
|
||||
config BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR_WRAP
|
||||
bool
|
||||
default y if BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR != ""
|
||||
select BR2_LEGACY
|
||||
|
||||
# Note: BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR is still referenced from
|
||||
# boot/uboot/Config.in
|
||||
|
||||
config BR2_PACKAGE_XDRIVER_XF86_INPUT_VOID
|
||||
bool "xf86-input-void removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The xf86-input-void package has been removed, there's no need
|
||||
for it in any modern (post-2007) xorg server.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_17
|
||||
bool "kernel headers version 3.17.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_14
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.17.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.14.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_GDB_VERSION_7_7
|
||||
bool "gdb 7.7 has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The 7.7 version of gdb has been removed. Use a newer version
|
||||
instead.
|
||||
|
||||
config BR2_PACKAGE_FOOMATIC_FILTERS
|
||||
bool "foomatic-filters"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The foomatic-filters package was removed.
|
||||
|
||||
config BR2_PACKAGE_SAMBA
|
||||
bool "samba"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The samba package was removed in favour of samba4 since the
|
||||
3.x series isn't supported by upstream any longer.
|
||||
|
||||
config BR2_PACKAGE_KODI_WAVPACK
|
||||
bool "wavpack"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
wavpack support was removed in favour of ffmpeg:
|
||||
https://github.com/xbmc/xbmc/commit/7916902c9e6f7a523265594f3ad7f921f93f1cd4
|
||||
|
||||
config BR2_PACKAGE_KODI_RSXS
|
||||
bool "rsxs support in Kodi was moved to an addon"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_KODI_SCREENSAVER_RSXS
|
||||
help
|
||||
rsxs support in Kodi was moved to an addon
|
||||
|
||||
config BR2_PACKAGE_KODI_GOOM
|
||||
bool "Goom support in Kodi was moved to an addon"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_KODI_VISUALISATION_GOOM
|
||||
help
|
||||
Goom support in Kodi was moved to an addon
|
||||
|
||||
config BR2_PACKAGE_SYSTEMD_ALL_EXTRAS
|
||||
bool "systemd all extras option has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_XZ
|
||||
select BR2_PACKAGE_LIBGCRYPT
|
||||
help
|
||||
The systemd option to enable "all extras" has been
|
||||
removed. To get the same features, the libgcrypt and xz
|
||||
package should now be enabled.
|
||||
|
||||
config BR2_GCC_VERSION_4_5_X
|
||||
bool "gcc 4.5.x has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The 4.5.x version of gcc has been removed. Use a newer
|
||||
version instead.
|
||||
|
||||
config BR2_PACKAGE_SQLITE_READLINE
|
||||
bool "command-line editing support was updated"
|
||||
select BR2_PACKAGE_NCURSES
|
||||
select BR2_PACKAGE_READLINE
|
||||
select BR2_LEGACY
|
||||
help
|
||||
This option was removed in favour of the sqlite package
|
||||
deciding itself depending on the enabled packages whether
|
||||
command-line editing should be enabled, it also also takes
|
||||
libedit into account.
|
||||
|
||||
###############################################################################
|
||||
comment "Legacy options removed in 2016.02"
|
||||
|
||||
config BR2_PACKAGE_DOVECOT_BZIP2
|
||||
bool "bzip2 support option has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_BZIP2
|
||||
help
|
||||
Bzip2 support is built if the bzip2 package is selected.
|
||||
|
||||
config BR2_PACKAGE_DOVECOT_ZLIB
|
||||
bool "zlib support option has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_ZLIB
|
||||
help
|
||||
Zlib support is built if the zlib package is selected.
|
||||
|
||||
config BR2_PACKAGE_E2FSPROGS_FINDFS
|
||||
bool "e2fsprogs findfs option has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
This option attempted to enable findfs capabilities from
|
||||
e2fsprogs but has not worked since July 2015 (due to
|
||||
packaging changes). One can use BusyBox's findfs support or
|
||||
enable the BR2_PACKAGE_UTIL_LINUX_FINDFS option.
|
||||
|
||||
config BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL
|
||||
bool "openpowerlink debug option has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
This option depends on BR2_ENABLE_DEBUG which should not be used
|
||||
by packages anymore.
|
||||
|
||||
config BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE
|
||||
bool "openpowerlink package has been updated"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB
|
||||
help
|
||||
openpowerlink kernel modules are built if the
|
||||
kernel stack library is selected.
|
||||
|
||||
config BR2_PACKAGE_OPENPOWERLINK_LIBPCAP
|
||||
bool "openpowerlink package has been updated"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB
|
||||
help
|
||||
The user space support has been split in two part:
|
||||
- a monolitic user space library
|
||||
- a user spae deamon driver
|
||||
|
||||
config BR2_LINUX_KERNEL_SAME_AS_HEADERS
|
||||
bool "using the linux headers version for the kernel has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The option to use the version of the kernel headers for the
|
||||
kernel to build has been removed.
|
||||
|
||||
There is now the converse, better-suited and more versatile
|
||||
option to use the kernel version for the linux headers.
|
||||
|
||||
config BR2_PACKAGE_CUPS_PDFTOPS
|
||||
bool "Pdftops support has been removed from Cups"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Pdftops support has been removed from the cups package
|
||||
It is now part of the cups-filters package.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_16
|
||||
bool "kernel headers version 3.16.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_14
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.16.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.14.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_PACKAGE_PYTHON_PYXML
|
||||
bool "python-pyxml package has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
PyXML is obsolete and its functionality is covered either via
|
||||
native Python XML support or python-lxml package.
|
||||
|
||||
# BR2_ENABLE_SSP is still referenced in Config.in (default in choice)
|
||||
config BR2_ENABLE_SSP
|
||||
bool "Stack Smashing protection now has different levels"
|
||||
help
|
||||
The protection offered by SSP can now be selected from different
|
||||
protection levels. Be sure to review the SSP level in the build
|
||||
options menu.
|
||||
|
||||
config BR2_PACKAGE_DIRECTFB_CLE266
|
||||
bool "cle266 driver for directfb removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The cle266 directfb driver support has been removed.
|
||||
It doesn't build in the latest version and it's unlikely
|
||||
anyone has any use for it.
|
||||
|
||||
config BR2_PACKAGE_DIRECTFB_UNICHROME
|
||||
bool "unichrome driver for directfb removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
The unichrome directfb driver support has been removed.
|
||||
It doesn't build in the latest version and it's unlikely
|
||||
anyone has any use for it.
|
||||
|
||||
config BR2_PACKAGE_LIBELEMENTARY
|
||||
bool "libelementary has been renamed to elementary"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_ELEMENTARY
|
||||
help
|
||||
The libelementary package has been renamed to match the upstream
|
||||
name.
|
||||
|
||||
config BR2_PACKAGE_LIBEINA
|
||||
bool "libeina package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libeina is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEET
|
||||
bool "libeet package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libeet is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEVAS
|
||||
bool "libevas package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libevas is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBECORE
|
||||
bool "libecore package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libecore is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEDBUS
|
||||
bool "libedbus package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libedbus is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEFREET
|
||||
bool "libefreet package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libefreet is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEIO
|
||||
bool "libeio package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libeio is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEMBRYO
|
||||
bool "libembryo package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libembryo is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBEDJE
|
||||
bool "libedje package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libedje is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_LIBETHUMB
|
||||
bool "libethumb package has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_EFL
|
||||
help
|
||||
With EFL 1.15, libethumb is now provided by the efl package.
|
||||
|
||||
config BR2_PACKAGE_INFOZIP
|
||||
bool "infozip option has been renamed to zip"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_ZIP
|
||||
help
|
||||
Info-Zip's Zip package has been renamed from infozip to zip,
|
||||
to avoid ambiguities with Info-Zip's UnZip which has been added
|
||||
in the unzip package.
|
||||
|
||||
config BR2_BR2_PACKAGE_NODEJS_0_10_X
|
||||
bool "nodejs 0.10.x option removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_NODEJS
|
||||
help
|
||||
nodejs 0.10.x option has been removed. 0.10.x is now
|
||||
automatically chosen for ARMv5 architectures only and the latest
|
||||
nodejs for all other supported architectures. The correct nodejs
|
||||
version has been automatically selected in your configuration.
|
||||
|
||||
config BR2_BR2_PACKAGE_NODEJS_0_12_X
|
||||
bool "nodejs version 0.12.x has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_NODEJS
|
||||
help
|
||||
nodejs version 0.12.x has been removed. As an alternative,
|
||||
the latest nodejs version has been automatically selected in
|
||||
your configuration.
|
||||
|
||||
config BR2_BR2_PACKAGE_NODEJS_4_X
|
||||
bool "nodejs version 4.x has been removed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_NODEJS
|
||||
help
|
||||
nodejs version 4.x has been removed. As an alternative,
|
||||
the latest nodejs version has been automatically selected in
|
||||
your configuration.
|
||||
|
||||
###############################################################################
|
||||
comment "Legacy options removed in 2015.11"
|
||||
|
||||
@@ -883,32 +166,32 @@ config BR2_KERNEL_HEADERS_3_0
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_11
|
||||
bool "kernel headers version 3.11.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_10
|
||||
select BR2_KERNEL_HEADERS_3_12
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.11.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.10.x of the headers have been
|
||||
As an alternative, version 3.12.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_13
|
||||
bool "kernel headers version 3.13.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_12
|
||||
select BR2_KERNEL_HEADERS_3_14
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.13.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.12.x of the headers have been
|
||||
As an alternative, version 3.14.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_15
|
||||
bool "kernel headers version 3.15.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_14
|
||||
select BR2_KERNEL_HEADERS_3_18
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.15.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.14.x of the headers have been
|
||||
As an alternative, version 3.18.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI
|
||||
@@ -1199,9 +482,11 @@ config BR2_PACKAGE_KODI_PVR_ADDONS
|
||||
config BR2_BINUTILS_VERSION_2_23_2
|
||||
bool "binutils 2.23 option renamed"
|
||||
select BR2_LEGACY
|
||||
select BR2_BINUTILS_VERSION_2_23_X
|
||||
help
|
||||
Binutils 2.23.2 has been removed, using a newer version is
|
||||
recommended.
|
||||
The binutils version option has been renamed to match the
|
||||
same patchlevel logic used by gcc. The new option is now
|
||||
BR2_BINUTILS_VERSION_2_23_X.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_24
|
||||
bool "binutils 2.24 option renamed"
|
||||
@@ -1458,12 +743,11 @@ config BR2_PACKAGE_STRONGSWAN_TOOLS
|
||||
deprecated.
|
||||
|
||||
config BR2_PACKAGE_XBMC_ADDON_XVDR
|
||||
bool "xbmc-addon-xvdr removed"
|
||||
bool "xbmc options have been renamed"
|
||||
select BR2_LEGACY
|
||||
select BR2_PACKAGE_KODI_ADDON_XVDR
|
||||
help
|
||||
According to the github project page:
|
||||
https://github.com/pipelka/xbmc-addon-xvdr
|
||||
this package is discontinued.
|
||||
The XBMC media center project was renamed to Kodi entertainment center
|
||||
|
||||
config BR2_PACKAGE_XBMC_PVR_ADDONS
|
||||
bool "xbmc options have been renamed"
|
||||
@@ -1715,12 +999,12 @@ config BR2_PACKAGE_LIBELF
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_8
|
||||
bool "kernel headers version 3.8.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_4
|
||||
select BR2_KERNEL_HEADERS_3_10
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.8.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.4.x of the headers have been
|
||||
As an alternative, version 3.10.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_PACKAGE_GETTEXT_TOOLS
|
||||
@@ -1873,22 +1157,22 @@ config BR2_PACKAGE_EVTEST_CAPTURE
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_6
|
||||
bool "kernel headers version 3.6.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_4
|
||||
select BR2_KERNEL_HEADERS_3_10
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.6.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.4.x of the headers have been
|
||||
As an alternative, version 3.10.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_7
|
||||
bool "kernel headers version 3.7.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_4
|
||||
select BR2_KERNEL_HEADERS_3_10
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.7.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.4.x of the headers have been
|
||||
As an alternative, version 3.10.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_PACKAGE_VALA
|
||||
@@ -2061,22 +1345,22 @@ config BR2_KERNEL_HEADERS_3_1
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_3
|
||||
bool "kernel headers version 3.3.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_2
|
||||
select BR2_KERNEL_HEADERS_3_4
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.3.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.2.x of the headers have been
|
||||
As an alternative, version 3.4.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_KERNEL_HEADERS_3_5
|
||||
bool "kernel headers version 3.5.x are no longer supported"
|
||||
select BR2_KERNEL_HEADERS_3_4
|
||||
select BR2_KERNEL_HEADERS_3_10
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 3.5.x of the Linux kernel headers have been deprecated
|
||||
for more than four buildroot releases and are now removed.
|
||||
As an alternative, version 3.4.x of the headers have been
|
||||
As an alternative, version 3.10.x of the headers have been
|
||||
automatically selected in your configuration.
|
||||
|
||||
config BR2_GDB_VERSION_7_2
|
||||
|
||||
1661
DEVELOPERS
1661
DEVELOPERS
File diff suppressed because it is too large
Load Diff
445
Makefile
445
Makefile
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org>
|
||||
# Copyright (C) 2006-2014 by the Buildroot developers <buildroot@uclibc.org>
|
||||
# Copyright (C) 2014-2016 by the Buildroot developers <buildroot@buildroot.org>
|
||||
# Copyright (C) 2014 by the Buildroot developers <buildroot@buildroot.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -24,66 +24,24 @@
|
||||
# You shouldn't need to mess with anything beyond this point...
|
||||
#--------------------------------------------------------------
|
||||
|
||||
# we want bash as shell
|
||||
SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
|
||||
else if [ -x /bin/bash ]; then echo /bin/bash; \
|
||||
else echo sh; fi; fi)
|
||||
|
||||
# Set O variable if not already done on the command line;
|
||||
# or avoid confusing packages that can use the O=<dir> syntax for out-of-tree
|
||||
# build by preventing it from being forwarded to sub-make calls.
|
||||
ifneq ("$(origin O)", "command line")
|
||||
O := $(CURDIR)/output
|
||||
endif
|
||||
|
||||
# Check if the current Buildroot execution meets all the pre-requisites.
|
||||
# If they are not met, Buildroot will actually do its job in a sub-make meeting
|
||||
# its pre-requisites, which are:
|
||||
# 1- Permissive enough umask:
|
||||
# Wrong or too restrictive umask will prevent Buildroot and packages from
|
||||
# creating files and directories.
|
||||
# 2- Absolute canonical CWD (i.e. $(CURDIR)):
|
||||
# Otherwise, some packages will use CWD as-is, others will compute its
|
||||
# absolute canonical path. This makes harder tracking and fixing host
|
||||
# machine path leaks.
|
||||
# 3- Absolute canonical output location (i.e. $(O)):
|
||||
# For the same reason as the one for CWD.
|
||||
|
||||
# Remove the trailing '/.' from $(O) as it can be added by the makefile wrapper
|
||||
# installed in the $(O) directory.
|
||||
# Also remove the trailing '/' the user can set when on the command line.
|
||||
override O := $(patsubst %/,%,$(patsubst %.,%,$(O)))
|
||||
# Make sure $(O) actually exists before calling realpath on it; this is to
|
||||
# avoid empty CANONICAL_O in case on non-existing entry.
|
||||
CANONICAL_O := $(shell mkdir -p $(O) >/dev/null 2>&1)$(realpath $(O))
|
||||
|
||||
CANONICAL_CURDIR = $(realpath $(CURDIR))
|
||||
|
||||
REQ_UMASK = 0022
|
||||
|
||||
# Make sure O= is passed (with its absolute canonical path) everywhere the
|
||||
# toplevel makefile is called back.
|
||||
EXTRAMAKEARGS := O=$(CANONICAL_O)
|
||||
|
||||
# Check Buildroot execution pre-requisites here.
|
||||
ifneq ($(shell umask):$(CURDIR):$(O),$(REQ_UMASK):$(CANONICAL_CURDIR):$(CANONICAL_O))
|
||||
# Trick for always running with a fixed umask
|
||||
UMASK = 0022
|
||||
ifneq ($(shell umask),$(UMASK))
|
||||
.PHONY: _all $(MAKECMDGOALS)
|
||||
|
||||
$(MAKECMDGOALS): _all
|
||||
@:
|
||||
|
||||
_all:
|
||||
@umask $(REQ_UMASK) && \
|
||||
$(MAKE) -C $(CANONICAL_CURDIR) --no-print-directory \
|
||||
$(MAKECMDGOALS) $(EXTRAMAKEARGS)
|
||||
@umask $(UMASK) && $(MAKE) --no-print-directory $(MAKECMDGOALS)
|
||||
|
||||
else # umask / $(CURDIR) / $(O)
|
||||
else # umask
|
||||
|
||||
# This is our default rule, so must come first
|
||||
all:
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2016.11.3
|
||||
export BR2_VERSION := 2015.11.1
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
@@ -94,6 +52,16 @@ ifneq ($(firstword $(sort $(RUNNING_MAKE_VERSION) $(MIN_MAKE_VERSION))),$(MIN_MA
|
||||
$(error You have make '$(RUNNING_MAKE_VERSION)' installed. GNU make >= $(MIN_MAKE_VERSION) is required)
|
||||
endif
|
||||
|
||||
export HOSTARCH := $(shell uname -m | \
|
||||
sed -e s/i.86/x86/ \
|
||||
-e s/sun4u/sparc64/ \
|
||||
-e s/arm.*/arm/ \
|
||||
-e s/sa110/arm/ \
|
||||
-e s/ppc64/powerpc64/ \
|
||||
-e s/ppc/powerpc/ \
|
||||
-e s/macppc/powerpc/\
|
||||
-e s/sh.*/sh/)
|
||||
|
||||
# Parallel execution of this Makefile is disabled because it changes
|
||||
# the packages building order, that can be a problem for two reasons:
|
||||
# - If a package has an unspecified optional dependency and that
|
||||
@@ -111,7 +79,7 @@ endif
|
||||
.NOTPARALLEL:
|
||||
|
||||
# absolute path
|
||||
TOPDIR := $(CURDIR)
|
||||
TOPDIR := $(shell pwd)
|
||||
CONFIG_CONFIG_IN = Config.in
|
||||
CONFIG = support/kconfig
|
||||
DATE := $(shell date +%Y%m%d)
|
||||
@@ -123,7 +91,7 @@ export BR2_VERSION_FULL := $(BR2_VERSION)$(shell $(TOPDIR)/support/scripts/setlo
|
||||
noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \
|
||||
defconfig %_defconfig allyesconfig allnoconfig silentoldconfig release \
|
||||
randpackageconfig allyespackageconfig allnopackageconfig \
|
||||
print-version olddefconfig distclean
|
||||
print-version olddefconfig
|
||||
|
||||
# Some global targets do not trigger a build, but are used to collect
|
||||
# metadata, or do various checks. When such targets are triggered,
|
||||
@@ -136,30 +104,41 @@ noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconf
|
||||
# something else than one of the nobuild_targets.
|
||||
nobuild_targets := source source-check \
|
||||
legal-info external-deps _external-deps \
|
||||
clean distclean help
|
||||
clean distclean
|
||||
ifeq ($(MAKECMDGOALS),)
|
||||
BR_BUILDING = y
|
||||
else ifneq ($(filter-out $(nobuild_targets),$(MAKECMDGOALS)),)
|
||||
BR_BUILDING = y
|
||||
endif
|
||||
|
||||
# We call make recursively to build packages. The command-line overrides that
|
||||
# are passed to Buildroot don't apply to those package build systems. In
|
||||
# particular, we don't want to pass down the O=<dir> option for out-of-tree
|
||||
# builds, because the value specified on the command line will not be correct
|
||||
# for packages.
|
||||
MAKEOVERRIDES :=
|
||||
# Strip quotes and then whitespaces
|
||||
qstrip = $(strip $(subst ",,$(1)))
|
||||
#"))
|
||||
|
||||
# Include some helper macros and variables
|
||||
include support/misc/utils.mk
|
||||
# Variables for use in Make constructs
|
||||
comma := ,
|
||||
empty :=
|
||||
space := $(empty) $(empty)
|
||||
|
||||
# Set variables related to in-tree or out-of-tree build.
|
||||
# Here, both $(O) and $(CURDIR) are absolute canonical paths.
|
||||
ifeq ($(O),$(CURDIR)/output)
|
||||
CONFIG_DIR := $(CURDIR)
|
||||
ifneq ("$(origin O)", "command line")
|
||||
O := output
|
||||
CONFIG_DIR := $(TOPDIR)
|
||||
NEED_WRAPPER =
|
||||
else
|
||||
# other packages might also support Linux-style out of tree builds
|
||||
# with the O=<dir> syntax (E.G. BusyBox does). As make automatically
|
||||
# forwards command line variable definitions those packages get very
|
||||
# confused. Fix this by telling make to not do so
|
||||
MAKEOVERRIDES =
|
||||
# strangely enough O is still passed to submakes with MAKEOVERRIDES
|
||||
# (with make 3.81 atleast), the only thing that changes is the output
|
||||
# of the origin function (command line -> environment).
|
||||
# Unfortunately some packages don't look at origin (E.G. uClibc 0.9.31+)
|
||||
# To really make O go away, we have to override it.
|
||||
override O := $(O)
|
||||
CONFIG_DIR := $(O)
|
||||
# we need to pass O= everywhere we call back into the toplevel makefile
|
||||
EXTRAMAKEARGS = O=$(O)
|
||||
NEED_WRAPPER = y
|
||||
endif
|
||||
|
||||
@@ -175,19 +154,28 @@ $(if $(BASE_DIR),, $(error output directory "$(O)" does not exist))
|
||||
# Handling of BR2_EXTERNAL.
|
||||
#
|
||||
# The value of BR2_EXTERNAL is stored in .br-external in the output directory.
|
||||
# The location of the external.mk makefile fragments is computed in that file.
|
||||
# On subsequent invocations of make, this file is read in. BR2_EXTERNAL can
|
||||
# still be overridden on the command line, therefore the file is re-created
|
||||
# every time make is run.
|
||||
# On subsequent invocations of make, it is read in. It can still be overridden
|
||||
# on the command line, therefore the file is re-created every time make is run.
|
||||
#
|
||||
# When BR2_EXTERNAL is set to an empty value (e.g. explicitly in command
|
||||
# line), the .br-external file is removed and we point to
|
||||
# support/dummy-external. This makes sure we can unconditionally include the
|
||||
# Config.in and external.mk from the BR2_EXTERNAL directory. In this case,
|
||||
# override is necessary so the user can clear BR2_EXTERNAL from the command
|
||||
# line, but the dummy path is still used internally.
|
||||
|
||||
BR2_EXTERNAL_FILE = $(BASE_DIR)/.br-external.mk
|
||||
BR2_EXTERNAL_FILE = $(BASE_DIR)/.br-external
|
||||
-include $(BR2_EXTERNAL_FILE)
|
||||
$(shell support/scripts/br2-external \
|
||||
-m -o '$(BR2_EXTERNAL_FILE)' $(BR2_EXTERNAL))
|
||||
BR2_EXTERNAL_ERROR =
|
||||
include $(BR2_EXTERNAL_FILE)
|
||||
ifneq ($(BR2_EXTERNAL_ERROR),)
|
||||
$(error $(BR2_EXTERNAL_ERROR))
|
||||
ifeq ($(BR2_EXTERNAL),)
|
||||
override BR2_EXTERNAL = support/dummy-external
|
||||
$(shell rm -f $(BR2_EXTERNAL_FILE))
|
||||
else
|
||||
_BR2_EXTERNAL = $(shell cd $(BR2_EXTERNAL) >/dev/null 2>&1 && pwd)
|
||||
ifeq ($(_BR2_EXTERNAL),)
|
||||
$(error BR2_EXTERNAL='$(BR2_EXTERNAL)' does not exist, relative to $(TOPDIR))
|
||||
endif
|
||||
override BR2_EXTERNAL := $(_BR2_EXTERNAL)
|
||||
$(shell echo BR2_EXTERNAL ?= $(BR2_EXTERNAL) > $(BR2_EXTERNAL_FILE))
|
||||
endif
|
||||
|
||||
# To make sure that the environment variable overrides the .config option,
|
||||
@@ -218,18 +206,11 @@ LICENSE_FILES_DIR_TARGET = $(LEGAL_INFO_DIR)/licenses
|
||||
LICENSE_FILES_DIR_HOST = $(LEGAL_INFO_DIR)/host-licenses
|
||||
LEGAL_MANIFEST_CSV_TARGET = $(LEGAL_INFO_DIR)/manifest.csv
|
||||
LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv
|
||||
LEGAL_LICENSES_TXT_TARGET = $(LEGAL_INFO_DIR)/licenses.txt
|
||||
LEGAL_LICENSES_TXT_HOST = $(LEGAL_INFO_DIR)/host-licenses.txt
|
||||
LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings
|
||||
LEGAL_REPORT = $(LEGAL_INFO_DIR)/README
|
||||
|
||||
################################################################################
|
||||
#
|
||||
# staging and target directories do NOT list these as
|
||||
# dependencies anywhere else
|
||||
#
|
||||
################################################################################
|
||||
$(BUILD_DIR) $(TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST):
|
||||
@mkdir -p $@
|
||||
|
||||
BR2_CONFIG = $(CONFIG_DIR)/.config
|
||||
|
||||
# Pull in the user's configuration file
|
||||
@@ -237,13 +218,6 @@ ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),)
|
||||
-include $(BR2_CONFIG)
|
||||
endif
|
||||
|
||||
# timezone and locale may affect build output
|
||||
ifeq ($(BR2_REPRODUCIBLE),y)
|
||||
export TZ=UTC
|
||||
export LANG=C
|
||||
export LC_ALL=C
|
||||
endif
|
||||
|
||||
# To put more focus on warnings, be less verbose as default
|
||||
# Use 'make V=1' to see the full commands
|
||||
ifeq ("$(origin V)", "command line")
|
||||
@@ -263,6 +237,11 @@ else
|
||||
Q = @
|
||||
endif
|
||||
|
||||
# we want bash as shell
|
||||
SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
|
||||
else if [ -x /bin/bash ]; then echo /bin/bash; \
|
||||
else echo sh; fi; fi)
|
||||
|
||||
# kconfig uses CONFIG_SHELL
|
||||
CONFIG_SHELL := $(SHELL)
|
||||
|
||||
@@ -314,40 +293,6 @@ HOSTRANLIB := $(shell which $(HOSTRANLIB) || type -p $(HOSTRANLIB) || echo ranli
|
||||
export HOSTAR HOSTAS HOSTCC HOSTCXX HOSTLD
|
||||
export HOSTCC_NOCCACHE HOSTCXX_NOCCACHE
|
||||
|
||||
# Determine the userland we are running on.
|
||||
#
|
||||
# Note that, despite its name, we are not interested in the actual
|
||||
# architecture name. This is mostly used to determine whether some
|
||||
# of the binary tools (e.g. pre-built external toolchains) can run
|
||||
# on the current host. So we need to know if the userland we're
|
||||
# running on can actually run those toolchains.
|
||||
#
|
||||
# For example, a 64-bit prebuilt toolchain will not run on a 64-bit
|
||||
# kernel if the userland is 32-bit (e.g. in a chroot for example).
|
||||
#
|
||||
# So, we extract the first part of the tuple the host gcc was
|
||||
# configured to generate code for; we assume this is our userland.
|
||||
#
|
||||
export HOSTARCH := $(shell LC_ALL=C $(HOSTCC_NOCCACHE) -v 2>&1 | \
|
||||
sed -e '/^Target: \([^-]*\).*/!d' \
|
||||
-e 's//\1/' \
|
||||
-e 's/i.86/x86/' \
|
||||
-e 's/sun4u/sparc64/' \
|
||||
-e 's/arm.*/arm/' \
|
||||
-e 's/sa110/arm/' \
|
||||
-e 's/ppc64/powerpc64/' \
|
||||
-e 's/ppc/powerpc/' \
|
||||
-e 's/macppc/powerpc/' \
|
||||
-e 's/sh.*/sh/' )
|
||||
|
||||
HOSTCC_VERSION := $(shell $(HOSTCC_NOCCACHE) --version | \
|
||||
sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p')
|
||||
|
||||
# For gcc >= 5.x, we only need the major version.
|
||||
ifneq ($(firstword $(HOSTCC_VERSION)),4)
|
||||
HOSTCC_VERSION := $(firstword $(HOSTCC_VERSION))
|
||||
endif
|
||||
|
||||
# Make sure pkg-config doesn't look outside the buildroot tree
|
||||
HOST_PKG_CONFIG_PATH := $(PKG_CONFIG_PATH)
|
||||
unexport PKG_CONFIG_PATH
|
||||
@@ -374,11 +319,8 @@ ifeq ($(BR2_HAVE_DOT_CONFIG),y)
|
||||
unexport CROSS_COMPILE
|
||||
unexport ARCH
|
||||
unexport CC
|
||||
unexport LD
|
||||
unexport AR
|
||||
unexport CXX
|
||||
unexport CPP
|
||||
unexport RANLIB
|
||||
unexport CFLAGS
|
||||
unexport CXXFLAGS
|
||||
unexport GREP_OPTIONS
|
||||
@@ -441,7 +383,6 @@ endif
|
||||
# Scripts in support/ or post-build scripts may need to reference
|
||||
# these locations, so export them so it is easier to use
|
||||
export BR2_CONFIG
|
||||
export BR2_REPRODUCIBLE
|
||||
export TARGET_DIR
|
||||
export STAGING_DIR
|
||||
export HOST_DIR
|
||||
@@ -459,7 +400,9 @@ all: world
|
||||
|
||||
# Include legacy before the other things, because package .mk files
|
||||
# may rely on it.
|
||||
ifneq ($(BR2_DEPRECATED),y)
|
||||
include Makefile.legacy
|
||||
endif
|
||||
|
||||
include package/Makefile.in
|
||||
include support/dependencies/dependencies.mk
|
||||
@@ -480,43 +423,7 @@ include boot/common.mk
|
||||
include linux/linux.mk
|
||||
include fs/common.mk
|
||||
|
||||
# If using a br2-external tree, the BR2_EXTERNAL_$(NAME)_PATH variables
|
||||
# are also present in the .config file. Since .config is included after
|
||||
# we defined them in the Makefile, the values for those variables are
|
||||
# quoted. We just include the generated Makefile fragment .br2-external.mk
|
||||
# a third time, which will set those variables to the un-quoted values.
|
||||
include $(BR2_EXTERNAL_FILE)
|
||||
|
||||
# Nothing to include if no BR2_EXTERNAL tree in use
|
||||
include $(BR2_EXTERNAL_MKS)
|
||||
|
||||
# Now we are sure we have all the packages scanned and defined. We now
|
||||
# check for each package in the list of enabled packages, that all its
|
||||
# dependencies are indeed enabled.
|
||||
#
|
||||
# Only trigger the check for default builds. If the user forces building
|
||||
# a package, even if not enabled in the configuration, we want to accept
|
||||
# it.
|
||||
#
|
||||
ifeq ($(MAKECMDGOALS),)
|
||||
|
||||
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)),\
|
||||
$(foreach dep,$(call UPPERCASE,$($(pkg)_FINAL_ALL_DEPENDENCIES)),\
|
||||
$(eval $(call CHECK_ONE_DEPENDENCY,$(pkg),$(dep))$(sep))))
|
||||
|
||||
endif
|
||||
include $(BR2_EXTERNAL)/external.mk
|
||||
|
||||
dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
|
||||
$(HOST_DIR) $(BINARIES_DIR)
|
||||
@@ -532,6 +439,23 @@ world: target-post-image
|
||||
legal-info legal-info-prepare legal-info-clean printvars help \
|
||||
list-defconfigs target-finalize target-post-image source-check
|
||||
|
||||
################################################################################
|
||||
#
|
||||
# staging and target directories do NOT list these as
|
||||
# dependencies anywhere else
|
||||
#
|
||||
################################################################################
|
||||
$(BUILD_DIR) $(TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST):
|
||||
@mkdir -p $@
|
||||
|
||||
# We make a symlink lib32->lib or lib64->lib as appropriate
|
||||
# MIPS64/n32 requires lib32 even though it's a 64-bit arch.
|
||||
ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),y)
|
||||
LIB_SYMLINK = lib64
|
||||
else
|
||||
LIB_SYMLINK = lib32
|
||||
endif
|
||||
|
||||
# Populating the staging with the base directories is handled by the skeleton package
|
||||
$(STAGING_DIR):
|
||||
@mkdir -p $(STAGING_DIR)
|
||||
@@ -549,12 +473,11 @@ STRIP_FIND_CMD += -type f \( -perm /111 -o -name '*.so*' \)
|
||||
# file exclusions:
|
||||
# - libpthread.so: a non-stripped libpthread shared library is needed for
|
||||
# proper debugging of pthread programs using gdb.
|
||||
# - ld.so: a non-stripped dynamic linker library is needed for valgrind
|
||||
# - kernel modules (*.ko): do not function properly when stripped like normal
|
||||
# applications and libraries. Normally kernel modules are already excluded
|
||||
# by the executable permission check above, so the explicit exclusion is only
|
||||
# done for kernel modules with incorrect permissions.
|
||||
STRIP_FIND_CMD += -not \( $(call findfileclauses,libpthread*.so* ld-*.so* *.ko $(call qstrip,$(BR2_STRIP_EXCLUDE_FILES))) \) -print0
|
||||
STRIP_FIND_CMD += -not \( $(call findfileclauses,libpthread*.so* *.ko $(call qstrip,$(BR2_STRIP_EXCLUDE_FILES))) \) -print0
|
||||
|
||||
ifeq ($(BR2_ECLIPSE_REGISTER),y)
|
||||
define TOOLCHAIN_ECLIPSE_REGISTER
|
||||
@@ -612,10 +535,7 @@ define PURGE_LOCALES
|
||||
do \
|
||||
for langdir in $$dir/*; \
|
||||
do \
|
||||
if [ -e "$${langdir}" ]; \
|
||||
then \
|
||||
grep -qx "$${langdir##*/}" $(LOCALE_WHITELIST) || rm -rf $$langdir; \
|
||||
fi \
|
||||
grep -qx $${langdir##*/} $(LOCALE_WHITELIST) || rm -rf $$langdir; \
|
||||
done; \
|
||||
done
|
||||
if [ -d $(TARGET_DIR)/usr/share/X11/locale ]; \
|
||||
@@ -641,7 +561,7 @@ target-finalize: $(PACKAGES)
|
||||
$(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \
|
||||
$(TARGET_DIR)/usr/lib/cmake $(TARGET_DIR)/usr/share/cmake
|
||||
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/ \
|
||||
find $(TARGET_DIR)/lib $(TARGET_DIR)/usr/lib $(TARGET_DIR)/usr/libexec \
|
||||
\( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f
|
||||
ifneq ($(BR2_PACKAGE_GDB),y)
|
||||
rm -rf $(TARGET_DIR)/usr/share/gdb
|
||||
@@ -658,24 +578,31 @@ endif
|
||||
rm -rf $(TARGET_DIR)/usr/share/gtk-doc
|
||||
-rmdir $(TARGET_DIR)/usr/share 2>/dev/null
|
||||
$(STRIP_FIND_CMD) | xargs -0 $(STRIPCMD) 2>/dev/null || true
|
||||
if test -d $(TARGET_DIR)/lib/modules; then \
|
||||
find $(TARGET_DIR)/lib/modules -type f -name '*.ko' -print0 | \
|
||||
xargs -0 -r $(KSTRIPCMD); fi
|
||||
|
||||
# See http://sourceware.org/gdb/wiki/FAQ, "GDB does not see any threads
|
||||
# besides the one in which crash occurred; or SIGTRAP kills my program when
|
||||
# I set a breakpoint"
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
|
||||
find $(TARGET_DIR)/lib/ -type f -name 'libpthread*.so*' | \
|
||||
find $(TARGET_DIR)/lib -type f -name 'libpthread*.so*' | \
|
||||
xargs -r $(STRIPCMD) $(STRIP_STRIP_DEBUG)
|
||||
endif
|
||||
|
||||
# Valgrind needs ld.so with enough information, so only strip
|
||||
# debugging symbols.
|
||||
find $(TARGET_DIR)/lib/ -type f -name 'ld-*.so*' | \
|
||||
xargs -r $(STRIPCMD) $(STRIP_STRIP_DEBUG)
|
||||
test -f $(TARGET_DIR)/etc/ld.so.conf && \
|
||||
{ echo "ERROR: we shouldn't have a /etc/ld.so.conf file"; exit 1; } || true
|
||||
test -d $(TARGET_DIR)/etc/ld.so.conf.d && \
|
||||
{ echo "ERROR: we shouldn't have a /etc/ld.so.conf.d directory"; exit 1; } || true
|
||||
mkdir -p $(TARGET_DIR)/etc
|
||||
# Mandatory configuration file and auxiliary cache directory
|
||||
# for recent versions of ldconfig
|
||||
touch $(TARGET_DIR)/etc/ld.so.conf
|
||||
mkdir -p $(TARGET_DIR)/var/cache/ldconfig
|
||||
if [ -x "$(TARGET_CROSS)ldconfig" ]; \
|
||||
then \
|
||||
$(TARGET_CROSS)ldconfig -r $(TARGET_DIR) \
|
||||
-f $(TARGET_DIR)/etc/ld.so.conf; \
|
||||
else \
|
||||
/sbin/ldconfig -r $(TARGET_DIR) \
|
||||
-f $(TARGET_DIR)/etc/ld.so.conf; \
|
||||
fi
|
||||
( \
|
||||
echo "NAME=Buildroot"; \
|
||||
echo "VERSION=$(BR2_VERSION_FULL)"; \
|
||||
@@ -686,7 +613,7 @@ endif
|
||||
|
||||
@$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
|
||||
$(call MESSAGE,"Copying overlay $(d)"); \
|
||||
rsync -a --ignore-times --keep-dirlinks $(RSYNC_VCS_EXCLUSIONS) \
|
||||
rsync -a --ignore-times $(RSYNC_VCS_EXCLUSIONS) \
|
||||
--chmod=u=rwX,go=rX --exclude .empty --exclude '*~' \
|
||||
$(d)/ $(TARGET_DIR)$(sep))
|
||||
|
||||
@@ -727,12 +654,8 @@ legal-info: dirs legal-info-clean legal-info-prepare $(foreach p,$(PACKAGES),$(p
|
||||
cat support/legal-info/README.warnings-header \
|
||||
$(LEGAL_WARNINGS) >>$(LEGAL_REPORT); \
|
||||
cat $(LEGAL_WARNINGS); fi
|
||||
@rm -f $(LEGAL_WARNINGS)
|
||||
@(cd $(LEGAL_INFO_DIR); \
|
||||
find * -type f -exec sha256sum {} + | LC_ALL=C sort -k2 \
|
||||
>.legal-info.sha256; \
|
||||
mv .legal-info.sha256 legal-info.sha256)
|
||||
@echo "Legal info produced in $(LEGAL_INFO_DIR)"
|
||||
@rm -f $(LEGAL_WARNINGS)
|
||||
|
||||
show-targets:
|
||||
@echo $(PACKAGES) $(TARGETS_ROOTFS)
|
||||
@@ -756,10 +679,8 @@ graph-depends: graph-depends-requirements
|
||||
@$(INSTALL) -d $(GRAPHS_DIR)
|
||||
@cd "$(CONFIG_DIR)"; \
|
||||
$(TOPDIR)/support/scripts/graph-depends $(BR2_GRAPH_DEPS_OPTS) \
|
||||
--direct -o $(GRAPHS_DIR)/$(@).dot
|
||||
dot $(BR2_GRAPH_DOT_OPTS) -T$(BR_GRAPH_OUT) \
|
||||
-o $(GRAPHS_DIR)/$(@).$(BR_GRAPH_OUT) \
|
||||
$(GRAPHS_DIR)/$(@).dot
|
||||
|tee $(GRAPHS_DIR)/$(@).dot \
|
||||
|dot $(BR2_GRAPH_DOT_OPTS) -T$(BR_GRAPH_OUT) -o $(GRAPHS_DIR)/$(@).$(BR_GRAPH_OUT)
|
||||
|
||||
graph-size:
|
||||
$(Q)mkdir -p $(GRAPHS_DIR)
|
||||
@@ -768,10 +689,6 @@ graph-size:
|
||||
--file-size-csv $(GRAPHS_DIR)/file-size-stats.csv \
|
||||
--package-size-csv $(GRAPHS_DIR)/package-size-stats.csv
|
||||
|
||||
check-dependencies:
|
||||
@cd "$(CONFIG_DIR)"; \
|
||||
$(TOPDIR)/support/scripts/graph-depends -C
|
||||
|
||||
else # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
|
||||
|
||||
all: menuconfig
|
||||
@@ -784,9 +701,6 @@ endif # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
|
||||
HOSTCFLAGS = $(CFLAGS_FOR_BUILD)
|
||||
export HOSTCFLAGS
|
||||
|
||||
.PHONY: prepare-kconfig
|
||||
prepare-kconfig: outputmakefile $(BUILD_DIR)/.br2-external.in
|
||||
|
||||
$(BUILD_DIR)/buildroot-config/%onf:
|
||||
mkdir -p $(@D)/lxdialog
|
||||
PKG_CONFIG_PATH="$(HOST_PKG_CONFIG_PATH)" $(MAKE) CC="$(HOSTCC_NOCCACHE)" HOSTCC="$(HOSTCC_NOCCACHE)" \
|
||||
@@ -802,23 +716,22 @@ COMMON_CONFIG_ENV = \
|
||||
KCONFIG_AUTOHEADER=$(BUILD_DIR)/buildroot-config/autoconf.h \
|
||||
KCONFIG_TRISTATE=$(BUILD_DIR)/buildroot-config/tristate.config \
|
||||
BR2_CONFIG=$(BR2_CONFIG) \
|
||||
HOST_GCC_VERSION="$(HOSTCC_VERSION)" \
|
||||
BUILD_DIR=$(BUILD_DIR) \
|
||||
BR2_EXTERNAL=$(BR2_EXTERNAL) \
|
||||
SKIP_LEGACY=
|
||||
|
||||
xconfig: $(BUILD_DIR)/buildroot-config/qconf prepare-kconfig
|
||||
xconfig: $(BUILD_DIR)/buildroot-config/qconf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
|
||||
|
||||
gconfig: $(BUILD_DIR)/buildroot-config/gconf prepare-kconfig
|
||||
gconfig: $(BUILD_DIR)/buildroot-config/gconf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) srctree=$(TOPDIR) $< $(CONFIG_CONFIG_IN)
|
||||
|
||||
menuconfig: $(BUILD_DIR)/buildroot-config/mconf prepare-kconfig
|
||||
menuconfig: $(BUILD_DIR)/buildroot-config/mconf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
|
||||
|
||||
nconfig: $(BUILD_DIR)/buildroot-config/nconf prepare-kconfig
|
||||
nconfig: $(BUILD_DIR)/buildroot-config/nconf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
|
||||
|
||||
config: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
config: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
|
||||
|
||||
# For the config targets that automatically select options, we pass
|
||||
@@ -826,22 +739,22 @@ config: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
# no values are set for the legacy options so a subsequent oldconfig
|
||||
# will query them. Therefore, run an additional olddefconfig.
|
||||
|
||||
oldconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
oldconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< --oldconfig $(CONFIG_CONFIG_IN)
|
||||
|
||||
randconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
randconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) SKIP_LEGACY=y $< --randconfig $(CONFIG_CONFIG_IN)
|
||||
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
|
||||
|
||||
allyesconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
allyesconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) SKIP_LEGACY=y $< --allyesconfig $(CONFIG_CONFIG_IN)
|
||||
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
|
||||
|
||||
allnoconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
allnoconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) SKIP_LEGACY=y $< --allnoconfig $(CONFIG_CONFIG_IN)
|
||||
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
|
||||
|
||||
randpackageconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
randpackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@grep -v BR2_PACKAGE_ $(BR2_CONFIG) > $(CONFIG_DIR)/.config.nopkg
|
||||
@$(COMMON_CONFIG_ENV) SKIP_LEGACY=y \
|
||||
KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
|
||||
@@ -849,7 +762,7 @@ randpackageconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
@rm -f $(CONFIG_DIR)/.config.nopkg
|
||||
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
|
||||
|
||||
allyespackageconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
allyespackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@grep -v BR2_PACKAGE_ $(BR2_CONFIG) > $(CONFIG_DIR)/.config.nopkg
|
||||
@$(COMMON_CONFIG_ENV) SKIP_LEGACY=y \
|
||||
KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
|
||||
@@ -857,7 +770,7 @@ allyespackageconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
@rm -f $(CONFIG_DIR)/.config.nopkg
|
||||
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
|
||||
|
||||
allnopackageconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
allnopackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@grep -v BR2_PACKAGE_ $(BR2_CONFIG) > $(CONFIG_DIR)/.config.nopkg
|
||||
@$(COMMON_CONFIG_ENV) SKIP_LEGACY=y \
|
||||
KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
|
||||
@@ -865,24 +778,25 @@ allnopackageconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
@rm -f $(CONFIG_DIR)/.config.nopkg
|
||||
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
|
||||
|
||||
silentoldconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
silentoldconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
$(COMMON_CONFIG_ENV) $< --silentoldconfig $(CONFIG_CONFIG_IN)
|
||||
|
||||
olddefconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
olddefconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN)
|
||||
|
||||
defconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
defconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< --defconfig$(if $(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 prepare-kconfig
|
||||
@$$(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)))
|
||||
%_defconfig: $(BUILD_DIR)/buildroot-config/conf $(TOPDIR)/configs/%_defconfig outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) BR2_DEFCONFIG=$(TOPDIR)/configs/$@ \
|
||||
$< --defconfig=$(TOPDIR)/configs/$@ $(CONFIG_CONFIG_IN)
|
||||
|
||||
savedefconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
%_defconfig: $(BUILD_DIR)/buildroot-config/conf $(BR2_EXTERNAL)/configs/%_defconfig outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) BR2_DEFCONFIG=$(BR2_EXTERNAL)/configs/$@ \
|
||||
$< --defconfig=$(BR2_EXTERNAL)/configs/$@ $(CONFIG_CONFIG_IN)
|
||||
|
||||
savedefconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
|
||||
@$(COMMON_CONFIG_ENV) $< \
|
||||
--savedefconfig=$(if $(DEFCONFIG),$(DEFCONFIG),$(CONFIG_DIR)/defconfig) \
|
||||
$(CONFIG_CONFIG_IN)
|
||||
@@ -904,20 +818,10 @@ ifeq ($(NEED_WRAPPER),y)
|
||||
$(Q)$(TOPDIR)/support/scripts/mkmakefile $(TOPDIR) $(O)
|
||||
endif
|
||||
|
||||
# Even though the target is a real file, we mark it as PHONY as we
|
||||
# want it to be re-generated each time make is invoked, in case the
|
||||
# value of BR2_EXTERNAL is changed.
|
||||
.PHONY: $(BUILD_DIR)/.br2-external.in
|
||||
$(BUILD_DIR)/.br2-external.in: $(BUILD_DIR)
|
||||
$(Q)support/scripts/br2-external -k -o "$(@)" $(BR2_EXTERNAL)
|
||||
|
||||
# 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.
|
||||
# printvars prints all the variables currently defined in our Makefiles
|
||||
printvars:
|
||||
@$(foreach V, \
|
||||
$(sort $(if $(VARS),$(filter $(VARS),$(.VARIABLES)),$(.VARIABLES))), \
|
||||
$(sort $(.VARIABLES)), \
|
||||
$(if $(filter-out environment% default automatic, \
|
||||
$(origin $V)), \
|
||||
$(info $V=$($V) ($(value $V)))))
|
||||
@@ -928,10 +832,13 @@ clean:
|
||||
$(LEGAL_INFO_DIR) $(GRAPHS_DIR)
|
||||
|
||||
distclean: clean
|
||||
ifeq ($(O),$(CURDIR)/output)
|
||||
ifeq ($(DL_DIR),$(TOPDIR)/dl)
|
||||
rm -rf $(DL_DIR)
|
||||
endif
|
||||
ifeq ($(O),output)
|
||||
rm -rf $(O)
|
||||
endif
|
||||
rm -rf $(TOPDIR)/dl $(BR2_CONFIG) $(CONFIG_DIR)/.config.old $(CONFIG_DIR)/..config.tmp \
|
||||
rm -rf $(BR2_CONFIG) $(CONFIG_DIR)/.config.old $(CONFIG_DIR)/..config.tmp \
|
||||
$(CONFIG_DIR)/.auto.deps $(BR2_EXTERNAL_FILE)
|
||||
|
||||
help:
|
||||
@@ -969,17 +876,26 @@ help:
|
||||
@echo ' <pkg>-depends - Build <pkg>'\''s dependencies'
|
||||
@echo ' <pkg>-configure - Build <pkg> up to the configure step'
|
||||
@echo ' <pkg>-build - Build <pkg> up to the build step'
|
||||
@echo ' <pkg>-show-depends - List packages on which <pkg> depends'
|
||||
@echo ' <pkg>-show-rdepends - List packages which have <pkg> as a dependency'
|
||||
@echo ' <pkg>-graph-depends - Generate a graph of <pkg>'\''s dependencies'
|
||||
@echo ' <pkg>-graph-rdepends - Generate a graph of <pkg>'\''s reverse dependencies'
|
||||
@echo ' <pkg>-dirclean - Remove <pkg> build directory'
|
||||
@echo ' <pkg>-reconfigure - Restart the build from the configure step'
|
||||
@echo ' <pkg>-rebuild - Restart the build from the build step'
|
||||
$(foreach p,$(HELP_PACKAGES), \
|
||||
@echo $(sep) \
|
||||
@echo '$($(p)_NAME):' $(sep) \
|
||||
$($(p)_HELP_CMDS)$(sep))
|
||||
ifeq ($(BR2_PACKAGE_BUSYBOX),y)
|
||||
@echo ' busybox-menuconfig - Run BusyBox menuconfig'
|
||||
endif
|
||||
ifeq ($(BR2_LINUX_KERNEL),y)
|
||||
@echo ' linux-menuconfig - Run Linux kernel menuconfig'
|
||||
@echo ' linux-savedefconfig - Run Linux kernel savedefconfig'
|
||||
@echo ' linux-update-defconfig - Save the Linux configuration to the path specified'
|
||||
@echo ' by BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE'
|
||||
endif
|
||||
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
|
||||
@echo ' uclibc-menuconfig - Run uClibc menuconfig'
|
||||
endif
|
||||
ifeq ($(BR2_TARGET_BAREBOX),y)
|
||||
@echo ' barebox-menuconfig - Run barebox menuconfig'
|
||||
@echo ' barebox-savedefconfig - Run barebox savedefconfig'
|
||||
endif
|
||||
@echo
|
||||
@echo 'Documentation:'
|
||||
@echo ' manual - build manual in all formats'
|
||||
@@ -1006,34 +922,17 @@ help:
|
||||
@echo 'it on-line at http://buildroot.org/docs.html'
|
||||
@echo
|
||||
|
||||
# List the defconfig files
|
||||
# $(1): base directory
|
||||
# $(2): br2-external name, empty for bundled
|
||||
define list-defconfigs
|
||||
@first=true; \
|
||||
for defconfig in $(1)/configs/*_defconfig; do \
|
||||
[ -f "$${defconfig}" ] || continue; \
|
||||
if $${first}; then \
|
||||
if [ "$(2)" ]; then \
|
||||
printf 'External configs in "$(call qstrip,$(2))":\n'; \
|
||||
else \
|
||||
printf "Built-in configs:\n"; \
|
||||
fi; \
|
||||
first=false; \
|
||||
fi; \
|
||||
defconfig="$${defconfig##*/}"; \
|
||||
printf " %-35s - Build for %s\n" "$${defconfig}" "$${defconfig%_defconfig}"; \
|
||||
done; \
|
||||
$${first} || printf "\n"
|
||||
endef
|
||||
|
||||
# We iterate over BR2_EXTERNAL_NAMES rather than BR2_EXTERNAL_DIRS,
|
||||
# because we want to display the name of the br2-external tree.
|
||||
list-defconfigs:
|
||||
$(call list-defconfigs,$(TOPDIR))
|
||||
$(foreach name,$(BR2_EXTERNAL_NAMES),\
|
||||
$(call list-defconfigs,$(BR2_EXTERNAL_$(name)_PATH),\
|
||||
$(BR2_EXTERNAL_$(name)_DESC))$(sep))
|
||||
@echo 'Built-in configs:'
|
||||
@$(foreach b, $(sort $(notdir $(wildcard $(TOPDIR)/configs/*_defconfig))), \
|
||||
printf " %-35s - Build for %s\\n" $(b) $(b:_defconfig=);)
|
||||
ifneq ($(wildcard $(BR2_EXTERNAL)/configs/*_defconfig),)
|
||||
@echo
|
||||
@echo 'User-provided configs:'
|
||||
@$(foreach b, $(sort $(notdir $(wildcard $(BR2_EXTERNAL)/configs/*_defconfig))), \
|
||||
printf " %-35s - Build for %s\\n" $(b) $(b:_defconfig=);)
|
||||
endif
|
||||
@echo
|
||||
|
||||
release: OUT = buildroot-$(BR2_VERSION)
|
||||
|
||||
@@ -1052,8 +951,8 @@ print-version:
|
||||
@echo $(BR2_VERSION_FULL)
|
||||
|
||||
include docs/manual/manual.mk
|
||||
-include $(foreach dir,$(BR2_EXTERNAL_DIRS),$(dir)/docs/*/*.mk)
|
||||
-include $(BR2_EXTERNAL)/docs/*/*.mk
|
||||
|
||||
.PHONY: $(noconfig_targets)
|
||||
|
||||
endif #umask / $(CURDIR) / $(O)
|
||||
endif #umask
|
||||
|
||||
@@ -4,6 +4,9 @@
|
||||
# This file contains placeholders to detect backward-compatibility problems.
|
||||
# When a buildroot "API" feature is being deprecated, a rule should be added
|
||||
# here that issues an error when the old feature is used.
|
||||
#
|
||||
# This file is not included if BR2_DEPRECATED is selected, so it is possible
|
||||
# to bypass the errors (although that's usually a bad idea).
|
||||
|
||||
ifeq ($(BR2_LEGACY),y)
|
||||
$(error "You have legacy configuration in your .config! Please check your configuration.")
|
||||
|
||||
3
README
3
README
@@ -21,6 +21,3 @@ Buildroot comes with a basic configuration for a number of boards. Run
|
||||
Please feed suggestions, bug reports, insults, and bribes back to the
|
||||
buildroot mailing list: buildroot@buildroot.org
|
||||
You can also find us on #buildroot on Freenode IRC.
|
||||
|
||||
If you would like to contribute patches, please read
|
||||
https://buildroot.org/manual.html#submitting-patches
|
||||
|
||||
@@ -94,7 +94,8 @@ config BR2_i386
|
||||
|
||||
config BR2_m68k
|
||||
bool "m68k"
|
||||
# MMU support is set by the subarchitecture file, arch/Config.in.m68k
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
depends on BROKEN # ice in uclibc / inet_ntoa_r
|
||||
help
|
||||
Motorola 68000 family microprocessor
|
||||
http://en.wikipedia.org/wiki/M68k
|
||||
@@ -197,6 +198,16 @@ config BR2_sh
|
||||
http://www.hitachi.com/
|
||||
http://en.wikipedia.org/wiki/SuperH
|
||||
|
||||
config BR2_sh64
|
||||
bool "SuperH64"
|
||||
depends on BR2_DEPRECATED_SINCE_2015_05
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
SuperH64 (or SH) is a 64-bit reduced instruction set computer (RISC)
|
||||
instruction set architecture (ISA) developed by Hitachi.
|
||||
http://www.hitachi.com/
|
||||
http://en.wikipedia.org/wiki/SuperH
|
||||
|
||||
config BR2_sparc
|
||||
bool "SPARC"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
@@ -273,6 +284,10 @@ config BR2_GCC_TARGET_FLOAT_ABI
|
||||
config BR2_GCC_TARGET_MODE
|
||||
string
|
||||
|
||||
# If the architecture has atomic operations, select this:
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
bool
|
||||
|
||||
# Must be selected by binary formats that support shared libraries.
|
||||
config BR2_BINFMT_SUPPORTS_SHARED
|
||||
bool
|
||||
@@ -326,19 +341,12 @@ config BR2_BINFMT_FLAT_ONE
|
||||
|
||||
config BR2_BINFMT_FLAT_SEP_DATA
|
||||
bool "Separate data and code region"
|
||||
# this FLAT binary type technically exists on m68k, but fails
|
||||
# to build numerous packages: due to architecture limitation,
|
||||
# big functions cannot be built in this mode. They cause build
|
||||
# failures such as "Tried to convert PC relative branch to
|
||||
# absolute jump" or "error: value -yyyyy out of range".
|
||||
depends on BR2_bfin
|
||||
help
|
||||
Allow for the data and text segments to be separated and placed in
|
||||
different regions of memory.
|
||||
|
||||
config BR2_BINFMT_FLAT_SHARED
|
||||
bool "Shared binary"
|
||||
depends on BR2_m68k || BR2_bfin
|
||||
# Even though this really generates shared binaries, there is no libdl
|
||||
# and dlopen() cannot be used. So packages that require shared
|
||||
# libraries cannot be built. Therefore, we don't select
|
||||
@@ -386,7 +394,7 @@ if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
|
||||
source "arch/Config.in.powerpc"
|
||||
endif
|
||||
|
||||
if BR2_sh
|
||||
if BR2_sh || BR2_sh64
|
||||
source "arch/Config.in.sh"
|
||||
endif
|
||||
|
||||
|
||||
@@ -5,3 +5,6 @@ config BR2_ARCH
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_aarch64
|
||||
default "BIG" if BR2_aarch64_be
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
@@ -21,6 +21,9 @@ config BR2_ARC_ATOMIC_EXT
|
||||
bool "Atomic extension (LLOCK/SCOND instructions)"
|
||||
default y if BR2_arc770d || BR2_archs38
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y if BR2_ARC_ATOMIC_EXT
|
||||
|
||||
config BR2_ARCH
|
||||
default "arc" if BR2_arcle
|
||||
default "arceb" if BR2_arceb
|
||||
|
||||
@@ -52,9 +52,6 @@ config BR2_ARM_CPU_ARMV6
|
||||
config BR2_ARM_CPU_ARMV7A
|
||||
bool
|
||||
|
||||
config BR2_ARM_CPU_ARMV7M
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_arm || BR2_armeb
|
||||
@@ -107,13 +104,6 @@ config BR2_arm1176jzf_s
|
||||
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
|
||||
config BR2_cortex_a5
|
||||
bool "cortex-A5"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -162,22 +152,10 @@ config BR2_cortex_a15
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a17
|
||||
bool "cortex-A17"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_NEON
|
||||
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_m3
|
||||
bool "cortex-M3"
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
config BR2_cortex_m4
|
||||
bool "cortex-M4"
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
config BR2_fa526
|
||||
bool "fa526/626"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@@ -207,26 +185,6 @@ config BR2_iwmmxt
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
endchoice
|
||||
|
||||
config BR2_ARM_ENABLE_NEON
|
||||
bool "Enable NEON SIMD extension support"
|
||||
depends on BR2_ARM_CPU_MAYBE_HAS_NEON
|
||||
select BR2_ARM_CPU_HAS_NEON
|
||||
help
|
||||
For some CPU cores, the NEON SIMD extension is optional.
|
||||
Select this option if you are certain your particular
|
||||
implementation has NEON support and you want to use it.
|
||||
|
||||
config BR2_ARM_ENABLE_VFP
|
||||
bool "Enable VFP extension support"
|
||||
depends on BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
select BR2_ARM_CPU_HAS_VFPV4 if BR2_ARM_CPU_MAYBE_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_VFPV3 if BR2_ARM_CPU_MAYBE_HAS_VFPV3
|
||||
select BR2_ARM_CPU_HAS_VFPV2 if BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
help
|
||||
For some CPU cores, the VFP extension is optional. Select
|
||||
this option if you are certain your particular
|
||||
implementation has VFP support and you want to use it.
|
||||
|
||||
choice
|
||||
prompt "Target ABI"
|
||||
depends on BR2_arm || BR2_armeb
|
||||
@@ -264,7 +222,7 @@ config BR2_ARM_EABI
|
||||
|
||||
config BR2_ARM_EABIHF
|
||||
bool "EABIhf"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV2
|
||||
depends on BR2_ARM_CPU_MAYBE_HAS_VFPV2 || BR2_ARM_CPU_HAS_VFPV2
|
||||
help
|
||||
The EABIhf is an extension of EABI which supports the 'hard'
|
||||
floating point model. This model uses the floating point
|
||||
@@ -282,6 +240,15 @@ config BR2_ARM_EABIHF
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_ARM_ENABLE_NEON
|
||||
bool "Enable NEON SIMD extension support"
|
||||
depends on BR2_ARM_CPU_MAYBE_HAS_NEON
|
||||
select BR2_ARM_CPU_HAS_NEON
|
||||
help
|
||||
For some CPU cores, the NEON SIMD extension is optional.
|
||||
Select this option if you are certain your particular
|
||||
implementation has NEON support and you want to use it.
|
||||
|
||||
choice
|
||||
prompt "Floating point strategy"
|
||||
depends on BR2_ARM_EABI || BR2_ARM_EABIHF
|
||||
@@ -302,7 +269,7 @@ config BR2_ARM_SOFT_FLOAT
|
||||
|
||||
config BR2_ARM_FPU_VFPV2
|
||||
bool "VFPv2"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV2
|
||||
depends on BR2_ARM_CPU_HAS_VFPV2 || BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
help
|
||||
This option allows to use the VFPv2 floating point unit, as
|
||||
available in some ARMv5 processors (ARM926EJ-S) and some
|
||||
@@ -315,7 +282,7 @@ config BR2_ARM_FPU_VFPV2
|
||||
|
||||
config BR2_ARM_FPU_VFPV3
|
||||
bool "VFPv3"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV3
|
||||
depends on BR2_ARM_CPU_HAS_VFPV3 || BR2_ARM_CPU_MAYBE_HAS_VFPV3
|
||||
help
|
||||
This option allows to use the VFPv3 floating point unit, as
|
||||
available in some ARMv7 processors (Cortex-A{8, 9}). This
|
||||
@@ -331,7 +298,7 @@ config BR2_ARM_FPU_VFPV3
|
||||
|
||||
config BR2_ARM_FPU_VFPV3D16
|
||||
bool "VFPv3-D16"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV3
|
||||
depends on BR2_ARM_CPU_HAS_VFPV3 || BR2_ARM_CPU_MAYBE_HAS_VFPV3
|
||||
help
|
||||
This option allows to use the VFPv3 floating point unit, as
|
||||
available in some ARMv7 processors (Cortex-A{8, 9}). This
|
||||
@@ -346,7 +313,7 @@ config BR2_ARM_FPU_VFPV3D16
|
||||
|
||||
config BR2_ARM_FPU_VFPV4
|
||||
bool "VFPv4"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV4
|
||||
depends on BR2_ARM_CPU_HAS_VFPV4 || BR2_ARM_CPU_MAYBE_HAS_VFPV4
|
||||
help
|
||||
This option allows to use the VFPv4 floating point unit, as
|
||||
available in some ARMv7 processors (Cortex-A{5, 7, 12,
|
||||
@@ -361,7 +328,7 @@ config BR2_ARM_FPU_VFPV4
|
||||
|
||||
config BR2_ARM_FPU_VFPV4D16
|
||||
bool "VFPv4-D16"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV4
|
||||
depends on BR2_ARM_CPU_HAS_VFPV4 || BR2_ARM_CPU_MAYBE_HAS_VFPV4
|
||||
help
|
||||
This option allows to use the VFPv4 floating point unit, as
|
||||
available in some ARMv7 processors (Cortex-A{5, 7, 12,
|
||||
@@ -386,7 +353,7 @@ config BR2_ARM_FPU_NEON
|
||||
|
||||
config BR2_ARM_FPU_NEON_VFPV4
|
||||
bool "NEON/VFPv4"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV4
|
||||
depends on BR2_ARM_CPU_HAS_VFPV4 || BR2_ARM_CPU_MAYBE_HAS_VFPV4
|
||||
depends on BR2_ARM_CPU_HAS_NEON
|
||||
help
|
||||
This option allows to use both the VFPv4 and the NEON SIMD
|
||||
@@ -441,6 +408,9 @@ config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_arm
|
||||
default "BIG" if BR2_armeb
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
default "arm920t" if BR2_arm920t
|
||||
default "arm922t" if BR2_arm922t
|
||||
@@ -449,17 +419,13 @@ config BR2_GCC_TARGET_CPU
|
||||
default "arm1136jf-s" if BR2_arm1136jf_s
|
||||
default "arm1176jz-s" if BR2_arm1176jz_s
|
||||
default "arm1176jzf-s" if BR2_arm1176jzf_s
|
||||
default "mpcore" if BR2_arm11mpcore && BR2_ARM_CPU_HAS_VFPV2
|
||||
default "mpcorenovfp" if BR2_arm11mpcore
|
||||
default "cortex-a5" if BR2_cortex_a5
|
||||
default "cortex-a7" if BR2_cortex_a7
|
||||
default "cortex-a8" if BR2_cortex_a8
|
||||
default "cortex-a9" if BR2_cortex_a9
|
||||
default "cortex-a12" if BR2_cortex_a12
|
||||
default "cortex-a15" if BR2_cortex_a15
|
||||
default "cortex-a17" if BR2_cortex_a17
|
||||
default "cortex-m3" if BR2_cortex_m3
|
||||
default "cortex-m4" if BR2_cortex_m4
|
||||
default "fa526" if BR2_fa526
|
||||
default "marvell-pj4" if BR2_pj4
|
||||
default "strongarm" if BR2_strongarm
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
choice
|
||||
prompt "Target CPU"
|
||||
depends on BR2_bfin
|
||||
default BR2_bf532
|
||||
default BR2_bf609
|
||||
help
|
||||
Specify target CPU
|
||||
config BR2_bf606
|
||||
@@ -68,6 +68,9 @@ config BR2_ARCH
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
default bf606 if BR2_bf606
|
||||
default bf607 if BR2_bf607
|
||||
|
||||
@@ -4,34 +4,13 @@ config BR2_ARCH
|
||||
config BR2_ENDIAN
|
||||
default "BIG"
|
||||
|
||||
# symbols used to distinguish between m68k and coldfire
|
||||
# for gcc multilib
|
||||
config BR2_m68k_m68k
|
||||
bool
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
config BR2_m68k_cf
|
||||
bool
|
||||
|
||||
# coldfire variants will be added later
|
||||
choice
|
||||
prompt "Target CPU"
|
||||
depends on BR2_m68k
|
||||
default BR2_m68k_68040
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
config BR2_m68k_68040
|
||||
bool "68040"
|
||||
select BR2_m68k_m68k
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
|
||||
config BR2_m68k_cf5208
|
||||
bool "5208"
|
||||
select BR2_m68k_cf
|
||||
select BR2_SOFT_FLOAT
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
config BR2_GCC_TARGET_ARCH
|
||||
default "68000" if BR2_m68k_68000
|
||||
default "68010" if BR2_m68k_68010
|
||||
default "68020" if BR2_m68k_68020
|
||||
default "68030" if BR2_m68k_68030
|
||||
default "68040" if BR2_m68k_68040
|
||||
default "5208" if BR2_m68k_cf5208
|
||||
default "68060" if BR2_m68k_68060
|
||||
|
||||
@@ -9,3 +9,6 @@ config BR2_ENDIAN
|
||||
config BR2_microblaze
|
||||
bool
|
||||
default y if BR2_microblazeel || BR2_microblazebe
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
@@ -1,21 +1,3 @@
|
||||
# mips default CPU ISAs
|
||||
config BR2_MIPS_CPU_MIPS32
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS32R2
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS32R5
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS32R6
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS64
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS64R2
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS64R5
|
||||
bool
|
||||
config BR2_MIPS_CPU_MIPS64R6
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||
@@ -24,78 +6,27 @@ choice
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
64bit cabable: 64, 64r2, 64r5, 64r6
|
||||
non-64bit capable: 32, 32r2, 32r5, 32r6
|
||||
64bit cabable: 64, 64r2, 64r6
|
||||
non-64bit capable: 32, 32r2, 32r6
|
||||
|
||||
config BR2_mips_32
|
||||
bool "Generic MIPS32"
|
||||
bool "mips 32"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32
|
||||
config BR2_mips_32r2
|
||||
bool "Generic MIPS32R2"
|
||||
bool "mips 32r2"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R2
|
||||
config BR2_mips_32r5
|
||||
bool "Generic MIPS32R5"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R5
|
||||
config BR2_mips_32r6
|
||||
bool "Generic MIPS32R6"
|
||||
bool "mips 32r6"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R6
|
||||
config BR2_mips_interaptiv
|
||||
bool "interAptiv"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R2
|
||||
config BR2_mips_m5150
|
||||
bool "M5150"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R5
|
||||
config BR2_mips_m6250
|
||||
bool "M6250"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R6
|
||||
config BR2_mips_p5600
|
||||
bool "P5600"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R5
|
||||
config BR2_mips_xburst
|
||||
bool "XBurst"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R2
|
||||
help
|
||||
The Ingenic XBurst is a MIPS32R2 microprocessor. It has a
|
||||
bug in the FPU that can generate incorrect results in
|
||||
certain cases. The problem shows up when you have several
|
||||
fused madd instructions in sequence with dependant
|
||||
operands. This requires the -mno-fused-madd compiler option
|
||||
to be used in order to prevent emitting these instructions.
|
||||
|
||||
See http://www.ingenic.com/en/?xburst.html
|
||||
config BR2_mips_64
|
||||
bool "Generic MIPS64"
|
||||
bool "mips 64"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64
|
||||
config BR2_mips_64r2
|
||||
bool "Generic MIPS64R2"
|
||||
bool "mips 64r2"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64R2
|
||||
config BR2_mips_64r5
|
||||
bool "Generic MIPS64R5"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64R5
|
||||
config BR2_mips_64r6
|
||||
bool "Generic MIPS64R6"
|
||||
bool "mips 64r6"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64R6
|
||||
config BR2_mips_i6400
|
||||
bool "I6400"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64R6
|
||||
config BR2_mips_p6600
|
||||
bool "P6600"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64R6
|
||||
endchoice
|
||||
|
||||
|
||||
@@ -136,22 +67,16 @@ config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_mipsel || BR2_mips64el
|
||||
default "BIG" if BR2_mips || BR2_mips64
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
config BR2_GCC_TARGET_ARCH
|
||||
default "mips32" if BR2_mips_32
|
||||
default "mips32r2" if BR2_mips_32r2
|
||||
default "mips32r5" if BR2_mips_32r5
|
||||
default "mips32r6" if BR2_mips_32r6
|
||||
default "interaptiv" if BR2_mips_interaptiv
|
||||
default "m5101" if BR2_mips_m5150
|
||||
default "m6201" if BR2_mips_m6250
|
||||
default "p5600" if BR2_mips_p5600
|
||||
default "mips32r2" if BR2_mips_xburst
|
||||
default "mips64" if BR2_mips_64
|
||||
default "mips64r2" if BR2_mips_64r2
|
||||
default "mips64r5" if BR2_mips_64r5
|
||||
default "mips64r6" if BR2_mips_64r6
|
||||
default "i6400" if BR2_mips_i6400
|
||||
default "p6600" if BR2_mips_p6600
|
||||
|
||||
config BR2_MIPS_OABI32
|
||||
bool
|
||||
|
||||
@@ -3,3 +3,6 @@ config BR2_ARCH
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
@@ -164,6 +164,9 @@ config BR2_ENDIAN
|
||||
default "BIG" if BR2_powerpc || BR2_powerpc64
|
||||
default "LITTLE" if BR2_powerpc64le
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
default "401" if BR2_powerpc_401
|
||||
default "403" if BR2_powerpc_403
|
||||
|
||||
@@ -23,7 +23,11 @@ config BR2_ARCH
|
||||
default "sh4eb" if BR2_sh4eb
|
||||
default "sh4a" if BR2_sh4a
|
||||
default "sh4aeb" if BR2_sh4aeb
|
||||
default "sh64" if BR2_sh64
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_sh4 || BR2_sh4a
|
||||
default "LITTLE" if BR2_sh4 || BR2_sh4a || BR2_sh64
|
||||
default "BIG" if BR2_sh2a || BR2_sh4eb || BR2_sh4aeb
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
@@ -25,6 +25,9 @@ choice
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
config BR2_x86_i386
|
||||
bool "i386"
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_i486
|
||||
bool "i486"
|
||||
depends on !BR2_x86_64
|
||||
@@ -207,6 +210,7 @@ config BR2_x86_winchip2
|
||||
endchoice
|
||||
|
||||
config BR2_ARCH
|
||||
default "i386" if BR2_x86_i386
|
||||
default "i486" if BR2_x86_i486
|
||||
default "i586" if BR2_x86_i586
|
||||
default "i586" if BR2_x86_x1000
|
||||
@@ -226,8 +230,6 @@ config BR2_ARCH
|
||||
default "i686" if BR2_x86_nocona && BR2_i386
|
||||
default "i686" if BR2_x86_core2 && BR2_i386
|
||||
default "i686" if BR2_x86_corei7 && BR2_i386
|
||||
default "i686" if BR2_x86_corei7_avx && BR2_i386
|
||||
default "i686" if BR2_x86_corei7_avx2 && BR2_i386
|
||||
default "i686" if BR2_x86_atom && BR2_i386
|
||||
default "i686" if BR2_x86_opteron && BR2_i386
|
||||
default "i686" if BR2_x86_opteron_sse3 && BR2_i386
|
||||
@@ -243,7 +245,11 @@ config BR2_ARCH
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y if !BR2_x86_i386
|
||||
|
||||
config BR2_GCC_TARGET_ARCH
|
||||
default "i386" if BR2_x86_i386
|
||||
default "i486" if BR2_x86_i486
|
||||
default "i586" if BR2_x86_i586
|
||||
default "i586" if BR2_x86_x1000
|
||||
|
||||
@@ -54,3 +54,6 @@ config BR2_ENDIAN
|
||||
|
||||
config BR2_ARCH
|
||||
default "xtensa" if BR2_xtensa
|
||||
|
||||
config BR2_ARCH_HAS_ATOMICS
|
||||
default y
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
# Minimal SD card image for the Acmesystems Aria G25
|
||||
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
file zImage {
|
||||
image = "zImage"
|
||||
}
|
||||
|
||||
file at91-ariag25.dtb {
|
||||
image = "at91-ariag25.dtb"
|
||||
}
|
||||
|
||||
file boot.bin {
|
||||
image = "at91sam9x5_aria-sdcardboot-linux-zimage-dt-3.8.6.bin"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
@@ -1,44 +1,51 @@
|
||||
Acme Systems Aria G25
|
||||
|
||||
Build instructions
|
||||
==================
|
||||
|
||||
To build an image for the Aria G25 choose the configuration
|
||||
corresponding to the Aria variant.
|
||||
As a regular user configure and then build:
|
||||
|
||||
For 128MB RAM variant type:
|
||||
|
||||
$ make acmesystems_aria_g25_128mb_defconfig
|
||||
|
||||
else for 256MB RAM variant type:
|
||||
|
||||
$ make acmesystems_aria_g25_256mb_defconfig
|
||||
|
||||
To customize the configuration choosed type:
|
||||
|
||||
$ make menuconfig
|
||||
|
||||
When you are ready to start building Buildroot type:
|
||||
$ make acmesystems_aria_g25_128mb_defconfig (128MB RAM variant)
|
||||
or...
|
||||
$ make acmesystems_aria_g25_256mb_defconfig (256MB RAM variant)
|
||||
|
||||
$ make
|
||||
|
||||
How to write the microSD card
|
||||
=============================
|
||||
Writing to the MicroSD card
|
||||
===========================
|
||||
|
||||
Once the build process is finished you will have an image called
|
||||
"sdcard.img" in the output/images/ directory.
|
||||
Assuming your Aria G25 baseboard has a MicroSD socket, for example with
|
||||
the Terra baseboard, you'll need a blank MicroSD (obviously) initialized
|
||||
in a particular way to be able to boot from it.
|
||||
|
||||
Write the bootable SD card image "sdcard.img" onto an SD card with
|
||||
"dd" command:
|
||||
Assuming the card is seen as /dev/sdb in your PC/laptop/other device
|
||||
you'll need to run the following commands as root or via sudo.
|
||||
|
||||
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
|
||||
Make sure all of the card partitions are unmounted before starting.
|
||||
|
||||
Assuming your Aria G25 baseboard has a MicroSD socket, for example
|
||||
with the Terra baseboard, insert the microSD card into the baseboard
|
||||
slot and power it.
|
||||
First we'll need to create two partitions:
|
||||
|
||||
To get the kernel log messages you can use a DPI cable
|
||||
(http://www.acmesystems.it/DPI)
|
||||
# sfdisk -uM /dev/sdb <<EOF
|
||||
,32,6
|
||||
;
|
||||
EOF
|
||||
|
||||
Then we'll need to create the empty filesystems:
|
||||
|
||||
# mkdosfs -n SD_BOOT /dev/sdb1
|
||||
# mkfs.ext4 -L SD_ROOT /dev/sdb2
|
||||
|
||||
We'll populate the first partition (boot) with the relevant files:
|
||||
|
||||
# mount /dev/sdb1 /mnt
|
||||
# cp output/images/at91bootstrap.bin /mnt/BOOT.BIN
|
||||
# cp output/images/zImage /mnt
|
||||
# cp output/images/at91-ariag25.dtb /mnt
|
||||
# umount /mnt
|
||||
|
||||
And the root filesystem afterwards:
|
||||
|
||||
# mount /dev/sdb2 /mnt
|
||||
# tar -C /mnt output/images/rootfs.tar
|
||||
# umount /mnt
|
||||
|
||||
You're done, insert the MicroSD card in the slot and enjoy.
|
||||
|
||||
You can find additional informations, tutorials and a very
|
||||
comprehensive documentation on http://www.acmesystems.it/aria.
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
# Minimal SD card image for the Acmesystems Arietta G25
|
||||
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
file zImage {
|
||||
image = "zImage"
|
||||
}
|
||||
|
||||
file acme-arietta.dtb {
|
||||
image = "at91-ariettag25.dtb"
|
||||
}
|
||||
|
||||
file boot.bin {
|
||||
image = "at91sam9x5_arietta-sdcardboot-linux-zimage-dt-3.8.6.bin"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
@@ -1,49 +0,0 @@
|
||||
Acme Systems Arietta G25
|
||||
|
||||
Intro
|
||||
=====
|
||||
|
||||
This default configuration will allow you to start experimenting with the
|
||||
buildroot environment for the Arietta G25. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
You can find additional informations, tutorials and a very comprehensive
|
||||
documentation on http://www.acmesystems.it/arietta.
|
||||
|
||||
Build instructions
|
||||
==================
|
||||
|
||||
To build an image for the Arietta G25 choose the configuration
|
||||
corresponding to the Arietta variant.
|
||||
|
||||
For 128MB RAM variant type:
|
||||
|
||||
$ make acmesystems_arietta_g25_128mb_defconfig
|
||||
|
||||
else for 256MB RAM variant type:
|
||||
|
||||
$ make acmesystems_arietta_g25_256mb_defconfig
|
||||
|
||||
To customize the configuration chosen type:
|
||||
|
||||
$ make menuconfig
|
||||
|
||||
When you are ready to start building Buildroot type:
|
||||
|
||||
$ make
|
||||
|
||||
How to write the microSD 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
|
||||
|
||||
Insert the microSD card into the Arietta slot and power it.
|
||||
|
||||
The image just built is fairly basic and the only output
|
||||
you will get is on serial console, please consider to use a DPI
|
||||
cable (http://www.acmesystems.it/DPI)
|
||||
@@ -1,4 +1,4 @@
|
||||
SoCkit, SoC Development Kit
|
||||
SoCkit
|
||||
|
||||
Intro
|
||||
=====
|
||||
@@ -6,17 +6,14 @@ Intro
|
||||
This is the buildroot board support for the Arrow SoCkit Evaluation Board
|
||||
and the Altera Cyclone 5 Development Board.
|
||||
|
||||
A good source of information for Arrow SoCkit:
|
||||
A good source of information is :
|
||||
http://www.rocketboards.org/foswiki/Documentation/ArrowSoCKitEvaluationBoard
|
||||
|
||||
More information about SoC DK:
|
||||
https://www.altera.com/products/boards_and_kits/dev-kits/altera/kit-cyclone-v-soc.html
|
||||
|
||||
How it works
|
||||
============
|
||||
|
||||
Boot process:
|
||||
-------------
|
||||
Boot process :
|
||||
--------------
|
||||
|
||||
In summary, the bootloader has multiple stages, an hardcoded boot routine is
|
||||
loaded from an on-chip ROM.
|
||||
@@ -28,15 +25,15 @@ loaded from an on-chip ROM.
|
||||
which will load the u-boot image.
|
||||
- Then the u-boot image will load the Linux kernel.
|
||||
|
||||
A good source of information for the boot process is:
|
||||
A good source of information for the boot process is :
|
||||
http://xillybus.com/tutorials/u-boot-image-altera-soc
|
||||
|
||||
Note for the SPL:
|
||||
Note for the SPL :
|
||||
The SPL generated by the u-boot from Rocketboards doesn't seems to work,
|
||||
therefore we provide a patch for {uboot-PKG}/board/altera/socfpga_cyclone5/*
|
||||
based on the files generated with the Altera example design.
|
||||
|
||||
For more information about this files please look at:
|
||||
For more information about this files please look at :
|
||||
http://www.rocketboards.org/foswiki/Documentation/PreloaderUbootCustomization#Common_Source_Code
|
||||
|
||||
How to build it
|
||||
@@ -46,11 +43,11 @@ Configure Buildroot
|
||||
-------------------
|
||||
|
||||
The altera_sockit_defconfig configuration is a minimal configuration with
|
||||
all that is required to bring the SoCkit:
|
||||
all that is required to bring the SoCkit :
|
||||
|
||||
$ make altera_sockit_defconfig
|
||||
|
||||
and for the SoC Development Board:
|
||||
and for the SoC Development Board :
|
||||
|
||||
$ make altera_sockdk_defconfig
|
||||
|
||||
@@ -84,7 +81,7 @@ Signing the Preloader
|
||||
*** BEWARE ****
|
||||
The u-boot-spl.bin must be signed using the Altera's tool "mkpimage".
|
||||
This tool comes as a part of the Altera development environnment (SoC EDS).
|
||||
A fork of this tool have been done by Maxime Hadjinlian and can be found here:
|
||||
A fork of this tool have been done by Maxime Hadjinlian and can be found here :
|
||||
https://github.com/maximeh/mkpimage
|
||||
|
||||
Remember that without signing the u-boot-spl.bin, the board will not boot !!!
|
||||
@@ -94,17 +91,17 @@ Remember that without signing the u-boot-spl.bin, the board will not boot !!!
|
||||
Prepare your SDcard
|
||||
===================
|
||||
|
||||
A good source of information for the partitioning process is:
|
||||
A good source of information for the partitioning process is :
|
||||
http://www.rocketboards.org/foswiki/view/Projects/SoCKitLinaroLinuxDesktop#Partition_the_SD_Card
|
||||
|
||||
Create the SDcard partition table
|
||||
----------------------------------
|
||||
|
||||
Determine the device associated to the SD card:
|
||||
Determine the device associated to the SD card :
|
||||
|
||||
$ cat /proc/partitions
|
||||
|
||||
let's assume it is /dev/mmcblk0:
|
||||
let's assume it is /dev/mmcblk0 :
|
||||
|
||||
$ sudo fdisk /dev/mmcblk0
|
||||
|
||||
@@ -115,7 +112,7 @@ using these options, pressing enter after each one:
|
||||
* n p 2 4096 +4496384K t 83
|
||||
* n p 3 2048 +1024K t 3 a2
|
||||
|
||||
Using the 'p' option, the SD card's partition must look like this:
|
||||
Using the 'p' option, the SD card's partition must look like this :
|
||||
|
||||
Device Boot Start End Blocks Id System
|
||||
/dev/mmcblk0p1 9000000 9041919 20960 b W95 FAT32
|
||||
@@ -124,32 +121,32 @@ Device Boot Start End Blocks Id System
|
||||
|
||||
Then write the partition table using 'w' and exit.
|
||||
|
||||
Make partition one a DOS partition:
|
||||
Make partition one a DOS partition :
|
||||
|
||||
$ sudo mkdosfs /dev/mmcblk0p1
|
||||
|
||||
Install the binaries to the SDcard
|
||||
----------------------------------
|
||||
|
||||
Remember your binaries are located in output/images/, go inside that directory:
|
||||
Remember your binaries are located in output/images/, go inside that directory :
|
||||
|
||||
$ cd output/images
|
||||
|
||||
The partition with type a2 is the partition scan by the first bootloader stage
|
||||
in the SoCkit ROM to find the next bootloader stage so we must write the signed
|
||||
preloader and the u-boot binaries in that partition:
|
||||
preloader and the u-boot binaries in that partition :
|
||||
|
||||
$ sudo dd if=u-boot-spl-signed.bin of=/dev/mmcblk0p3 bs=64k seek=0
|
||||
$ sudo dd if=u-boot.img of=/dev/mmcblk0p3 bs=64k seek=4
|
||||
|
||||
Copy the Linux kernel and its Device tree:
|
||||
Copy the Linux kernel and its Device tree :
|
||||
|
||||
$ sudo mkdir /mnt/sdcard
|
||||
$ sudo mount /dev/mmcblk0p1 /mnt/sdcard
|
||||
$ sudo cp socfpga.dtb uImage /mnt/sdcard
|
||||
$ sudo umount /mnt/sdcard
|
||||
|
||||
Copy the rootfs:
|
||||
Copy the rootfs :
|
||||
|
||||
$ sudo dd if=rootfs.ext2 of=/dev/mmcblk0p2 bs=64k
|
||||
$ sudo sync
|
||||
|
||||
@@ -1,269 +0,0 @@
|
||||
CONFIG_PPC_85xx=y
|
||||
CONFIG_SMP=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_CROSS_COMPILE="powerpc-linux-"
|
||||
CONFIG_LOCALVERSION="-ANI-uCP1020-64EE512"
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_DEFAULT_HOSTNAME="uCP1020-64EE512"
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_AUDIT=y
|
||||
CONFIG_NO_HZ_IDLE=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_LOG_CPU_MAX_BUF_SHIFT=14
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
# CONFIG_RD_BZIP2 is not set
|
||||
# CONFIG_RD_LZMA is not set
|
||||
# CONFIG_RD_XZ is not set
|
||||
# CONFIG_RD_LZO is not set
|
||||
# CONFIG_RD_LZ4 is not set
|
||||
CONFIG_SYSCTL_SYSCALL=y
|
||||
CONFIG_EMBEDDED=y
|
||||
# CONFIG_SLUB_DEBUG is not set
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_JUMP_LABEL=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_MAC_PARTITION=y
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_UCP1020_SOM=y
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_PREEMPT=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_MATH_EMULATION=y
|
||||
CONFIG_MATH_EMULATION_HW_UNIMPLEMENTED=y
|
||||
CONFIG_SWIOTLB=y
|
||||
# CONFIG_COMPACTION is not set
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCIEPORTBUS=y
|
||||
# CONFIG_PCIEAER is not set
|
||||
# CONFIG_PCIEASPM is not set
|
||||
CONFIG_PCI_MSI=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM_USER=y
|
||||
CONFIG_NET_KEY=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_SYN_COOKIES=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_NETFILTER=y
|
||||
CONFIG_BRIDGE_NETFILTER=y
|
||||
CONFIG_NF_CONNTRACK=y
|
||||
CONFIG_NF_CONNTRACK_FTP=y
|
||||
CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
|
||||
CONFIG_NETFILTER_XT_TARGET_MARK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_COMMENT=y
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNMARK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_HELPER=y
|
||||
CONFIG_NETFILTER_XT_MATCH_MARK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
|
||||
CONFIG_NETFILTER_XT_MATCH_STATE=y
|
||||
CONFIG_NF_CONNTRACK_IPV4=y
|
||||
CONFIG_IP_NF_IPTABLES=y
|
||||
CONFIG_IP_NF_FILTER=y
|
||||
CONFIG_IP_NF_TARGET_REJECT=y
|
||||
CONFIG_IP_NF_NAT=y
|
||||
CONFIG_IP_NF_TARGET_MASQUERADE=y
|
||||
CONFIG_IP_NF_TARGET_NETMAP=y
|
||||
CONFIG_IP_NF_TARGET_REDIRECT=y
|
||||
CONFIG_IP_NF_MANGLE=y
|
||||
CONFIG_BRIDGE=y
|
||||
CONFIG_VLAN_8021Q=y
|
||||
CONFIG_NET_SCHED=y
|
||||
CONFIG_NET_SCH_HTB=y
|
||||
CONFIG_CFG80211=y
|
||||
# CONFIG_CFG80211_DEFAULT_PS is not set
|
||||
CONFIG_MAC80211=y
|
||||
# CONFIG_MAC80211_RC_MINSTREL is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/bin/hotplug"
|
||||
CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_FTL=y
|
||||
CONFIG_MTD_CFI=y
|
||||
CONFIG_MTD_CFI_INTELEXT=y
|
||||
CONFIG_MTD_CFI_AMDSTD=y
|
||||
CONFIG_MTD_PHYSMAP_OF=y
|
||||
CONFIG_MTD_M25P80=y
|
||||
CONFIG_MTD_SST25L=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_PLATFORM=y
|
||||
CONFIG_MTD_NAND_FSL_ELBC=y
|
||||
CONFIG_MTD_NAND_FSL_UPM=y
|
||||
CONFIG_MTD_SPI_NOR=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_SIZE=131072
|
||||
CONFIG_EEPROM_AT25=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
CONFIG_NETDEVICES=y
|
||||
# CONFIG_NET_VENDOR_3COM is not set
|
||||
# CONFIG_NET_VENDOR_ADAPTEC is not set
|
||||
# CONFIG_NET_VENDOR_AGERE is not set
|
||||
# CONFIG_NET_VENDOR_ALTEON is not set
|
||||
# CONFIG_NET_VENDOR_AMD is not set
|
||||
# CONFIG_NET_VENDOR_ARC is not set
|
||||
# CONFIG_NET_VENDOR_ATHEROS is not set
|
||||
# CONFIG_NET_CADENCE is not set
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_BROCADE is not set
|
||||
# CONFIG_NET_VENDOR_CHELSIO is not set
|
||||
# CONFIG_NET_VENDOR_CISCO is not set
|
||||
# CONFIG_NET_VENDOR_DEC is not set
|
||||
# CONFIG_NET_VENDOR_DLINK is not set
|
||||
# CONFIG_NET_VENDOR_EMULEX is not set
|
||||
# CONFIG_NET_VENDOR_EXAR is not set
|
||||
CONFIG_GIANFAR=y
|
||||
# CONFIG_NET_VENDOR_HP is not set
|
||||
# CONFIG_NET_VENDOR_INTEL is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_MELLANOX is not set
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_MICROCHIP is not set
|
||||
# CONFIG_NET_VENDOR_MYRI is not set
|
||||
# CONFIG_NET_VENDOR_NATSEMI is not set
|
||||
# CONFIG_NET_VENDOR_NVIDIA is not set
|
||||
# CONFIG_NET_VENDOR_OKI is not set
|
||||
# CONFIG_NET_PACKET_ENGINE is not set
|
||||
# CONFIG_NET_VENDOR_QLOGIC is not set
|
||||
# CONFIG_NET_VENDOR_QUALCOMM is not set
|
||||
# CONFIG_NET_VENDOR_REALTEK is not set
|
||||
# CONFIG_NET_VENDOR_RDC is not set
|
||||
# CONFIG_NET_VENDOR_ROCKER is not set
|
||||
# CONFIG_NET_VENDOR_SAMSUNG is not set
|
||||
# CONFIG_NET_VENDOR_SEEQ is not set
|
||||
# CONFIG_NET_VENDOR_SILAN is not set
|
||||
# CONFIG_NET_VENDOR_SIS is not set
|
||||
# CONFIG_NET_VENDOR_SMSC is not set
|
||||
# CONFIG_NET_VENDOR_STMICRO is not set
|
||||
# CONFIG_NET_VENDOR_SUN is not set
|
||||
# CONFIG_NET_VENDOR_TEHUTI is not set
|
||||
# CONFIG_NET_VENDOR_TI is not set
|
||||
# CONFIG_NET_VENDOR_VIA is not set
|
||||
# CONFIG_NET_VENDOR_WIZNET is not set
|
||||
# CONFIG_NET_VENDOR_XILINX is not set
|
||||
CONFIG_MICREL_PHY=y
|
||||
CONFIG_IWLWIFI=m
|
||||
# CONFIG_INPUT_MOUSEDEV is not set
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
CONFIG_SERIO_LIBPS2=y
|
||||
CONFIG_LEGACY_PTY_COUNT=16
|
||||
CONFIG_NOZOMI=y
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=2
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=2
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_DETECT_IRQ=y
|
||||
CONFIG_SERIAL_8250_RSA=y
|
||||
CONFIG_NVRAM=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_MPC=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_BITBANG=y
|
||||
CONFIG_SPI_FSL_ESPI=y
|
||||
CONFIG_SPI_SPIDEV=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIO_MPC8XXX=y
|
||||
CONFIG_SENSORS_LM90=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_BOOKE_WDT=y
|
||||
CONFIG_BOOKE_WDT_DEFAULT_TIMEOUT=36
|
||||
CONFIG_MEDIA_SUPPORT=y
|
||||
CONFIG_MEDIA_CAMERA_SUPPORT=y
|
||||
CONFIG_MEDIA_CONTROLLER=y
|
||||
CONFIG_VIDEO_V4L2_SUBDEV_API=y
|
||||
CONFIG_MEDIA_USB_SUPPORT=y
|
||||
CONFIG_USB_VIDEO_CLASS=y
|
||||
CONFIG_USB_GSPCA=y
|
||||
CONFIG_USB_PWC=y
|
||||
CONFIG_USB_ZR364XX=y
|
||||
CONFIG_USB_STKWEBCAM=y
|
||||
CONFIG_VIDEO_EM28XX=y
|
||||
CONFIG_VIDEO_EM28XX_V4L2=y
|
||||
# CONFIG_HID is not set
|
||||
# CONFIG_USB_HID is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_DYNAMIC_MINORS=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_FSL=y
|
||||
CONFIG_USB_ACM=y
|
||||
CONFIG_USB_WDM=y
|
||||
CONFIG_USB_TMC=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_STORAGE_DEBUG=y
|
||||
CONFIG_USB_MDC800=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_MMC_SDHCI_OF_ESDHC=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_FSL_DMA=y
|
||||
CONFIG_ASYNC_TX_DMA=y
|
||||
# CONFIG_IOMMU_SUPPORT is not set
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
|
||||
# CONFIG_EXT3_FS_XATTR is not set
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_XFS_FS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_NTFS_FS=y
|
||||
CONFIG_PROC_KCORE=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_JFFS2_FS_WBUF_VERIFY=y
|
||||
CONFIG_JFFS2_SUMMARY=y
|
||||
CONFIG_JFFS2_FS_XATTR=y
|
||||
CONFIG_JFFS2_COMPRESSION_OPTIONS=y
|
||||
CONFIG_JFFS2_LZO=y
|
||||
CONFIG_JFFS2_RUBIN=y
|
||||
CONFIG_CRAMFS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_NFSD=y
|
||||
CONFIG_CIFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_CRC_T10DIF=y
|
||||
CONFIG_CRC_ITU_T=y
|
||||
# CONFIG_SCHED_DEBUG is not set
|
||||
# CONFIG_DEBUG_PREEMPT is not set
|
||||
# CONFIG_DEBUG_BUGVERBOSE is not set
|
||||
CONFIG_RCU_CPU_STALL_TIMEOUT=60
|
||||
# CONFIG_RCU_CPU_STALL_INFO is not set
|
||||
# CONFIG_FTRACE is not set
|
||||
CONFIG_CRYPTO_CBC=y
|
||||
CONFIG_CRYPTO_PCBC=y
|
||||
CONFIG_CRYPTO_SHA1=y
|
||||
CONFIG_CRYPTO_SHA1_PPC=y
|
||||
CONFIG_CRYPTO_DEFLATE=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
CONFIG_CRYPTO_DEV_TALITOS=y
|
||||
@@ -1,462 +0,0 @@
|
||||
From a243628639e12a4bd0a737eac78a12ed240cd137 Mon Sep 17 00:00:00 2001
|
||||
From: Oleksandr G Zhadan <oleks@arcturusnetworks.com>
|
||||
Date: Mon, 18 Jul 2016 10:40:16 -0400
|
||||
Subject: [PATCH] Arcturus uCP1020 BSP support
|
||||
|
||||
The uCP1020 product family (ucp1020) is an Arcturus Networks Inc.
|
||||
System on Modules product featuring a NXP QorIQ P1020 CPU,
|
||||
optionally populated with 1 or 2 Gig-Ethernet PHYs,
|
||||
DDR3, NOR Flash, eMMC NAND Flash and/or SPI Flash.
|
||||
|
||||
Signed-off-by: Oleksandr G Zhadan <oleks@arcturusnetworks.com>
|
||||
Signed-off-by: Michael Durrant <arcsupport@arcturusnetworks.com>
|
||||
---
|
||||
arch/powerpc/boot/dts/ucp1020.dts | 87 ++++++++++++
|
||||
arch/powerpc/boot/dts/ucp1020.dtsi | 211 ++++++++++++++++++++++++++++++
|
||||
arch/powerpc/platforms/85xx/Kconfig | 7 +
|
||||
arch/powerpc/platforms/85xx/Makefile | 1 +
|
||||
arch/powerpc/platforms/85xx/ucp1020_som.c | 92 +++++++++++++
|
||||
5 files changed, 398 insertions(+)
|
||||
create mode 100644 arch/powerpc/boot/dts/ucp1020.dts
|
||||
create mode 100644 arch/powerpc/boot/dts/ucp1020.dtsi
|
||||
create mode 100644 arch/powerpc/platforms/85xx/ucp1020_som.c
|
||||
|
||||
diff --git a/arch/powerpc/boot/dts/ucp1020.dts b/arch/powerpc/boot/dts/ucp1020.dts
|
||||
new file mode 100644
|
||||
index 0000000..291e70a
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/boot/dts/ucp1020.dts
|
||||
@@ -0,0 +1,87 @@
|
||||
+/*
|
||||
+ * uCP1020 Tree Source (32-bit address map)
|
||||
+ *
|
||||
+ * Copyright 2013-2016 Arcturus Networks Inc.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ * * Redistributions of source code must retain the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer.
|
||||
+ * * Redistributions in binary form must reproduce the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer in the
|
||||
+ * documentation and/or other materials provided with the distribution.
|
||||
+ * * Neither the name of Freescale Semiconductor nor the
|
||||
+ * names of its contributors may be used to endorse or promote products
|
||||
+ * derived from this software without specific prior written permission.
|
||||
+ *
|
||||
+ *
|
||||
+ * ALTERNATIVELY, this software may be distributed under the terms of the
|
||||
+ * GNU General Public License ("GPL") as published by the Free Software
|
||||
+ * Foundation, either version 2 of that License or (at your option) any
|
||||
+ * later version.
|
||||
+ *
|
||||
+ * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
|
||||
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
|
||||
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ */
|
||||
+
|
||||
+/include/ "fsl/p1020si-pre.dtsi"
|
||||
+/ {
|
||||
+ model = "arcturus,uCP1020";
|
||||
+ compatible = "arcturus,uCP1020";
|
||||
+
|
||||
+ memory {
|
||||
+ device_type = "memory";
|
||||
+ };
|
||||
+
|
||||
+ lbc: localbus@ffe05000 {
|
||||
+ reg = <0 0xffe05000 0 0x1000>;
|
||||
+
|
||||
+ /* NOR Flash */
|
||||
+ ranges = <0x0 0x0 0x0 0xec000000 0x04000000>;
|
||||
+ };
|
||||
+
|
||||
+ soc: soc@ffe00000 {
|
||||
+ ranges = <0x0 0x0 0xffe00000 0x100000>;
|
||||
+ };
|
||||
+
|
||||
+ pci0: pcie@ffe09000 {
|
||||
+ ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000
|
||||
+ 0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>;
|
||||
+ reg = <0 0xffe09000 0 0x1000>;
|
||||
+ pcie@0 {
|
||||
+ ranges = <0x2000000 0x0 0xa0000000
|
||||
+ 0x2000000 0x0 0xa0000000
|
||||
+ 0x0 0x20000000
|
||||
+
|
||||
+ 0x1000000 0x0 0x0
|
||||
+ 0x1000000 0x0 0x0
|
||||
+ 0x0 0x100000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ pci1: pcie@ffe0a000 {
|
||||
+ reg = <0 0xffe0a000 0 0x1000>;
|
||||
+ ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x20000000
|
||||
+ 0x1000000 0x0 0x00000000 0 0xffc00000 0x0 0x10000>;
|
||||
+ pcie@0 {
|
||||
+ ranges = <0x2000000 0x0 0x80000000
|
||||
+ 0x2000000 0x0 0x80000000
|
||||
+ 0x0 0x20000000
|
||||
+
|
||||
+ 0x1000000 0x0 0x0
|
||||
+ 0x1000000 0x0 0x0
|
||||
+ 0x0 0x100000>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+/include/ "ucp1020.dtsi"
|
||||
+/include/ "fsl/p1020si-post.dtsi"
|
||||
diff --git a/arch/powerpc/boot/dts/ucp1020.dtsi b/arch/powerpc/boot/dts/ucp1020.dtsi
|
||||
new file mode 100644
|
||||
index 0000000..7cff949
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/boot/dts/ucp1020.dtsi
|
||||
@@ -0,0 +1,211 @@
|
||||
+/*
|
||||
+ * uCP1020 Device Tree Source stub (no addresses or top-level ranges)
|
||||
+ *
|
||||
+ * Copyright 2013-2016 Arcturus Networks Inc.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ * * Redistributions of source code must retain the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer.
|
||||
+ * * Redistributions in binary form must reproduce the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer in the
|
||||
+ * documentation and/or other materials provided with the distribution.
|
||||
+ * * Neither the name of Freescale Semiconductor nor the
|
||||
+ * names of its contributors may be used to endorse or promote products
|
||||
+ * derived from this software without specific prior written permission.
|
||||
+ *
|
||||
+ *
|
||||
+ * ALTERNATIVELY, this software may be distributed under the terms of the
|
||||
+ * GNU General Public License ("GPL") as published by the Free Software
|
||||
+ * Foundation, either version 2 of that License or (at your option) any
|
||||
+ * later version.
|
||||
+ *
|
||||
+ * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
|
||||
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
|
||||
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ */
|
||||
+
|
||||
+&lbc {
|
||||
+ nor@0,0 {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+ compatible = "cfi-flash";
|
||||
+ reg = <0x0 0x0 0x04000000>;
|
||||
+ bank-width = <2>;
|
||||
+ device-width = <1>;
|
||||
+
|
||||
+ partition@100000 {
|
||||
+ /* 7MB - PART 0 */
|
||||
+ reg = <0x00100000 0x00700000>;
|
||||
+ label = "0";
|
||||
+ };
|
||||
+
|
||||
+ partition@800000 {
|
||||
+ /* 32MB - PART 1 */
|
||||
+ reg = <0x0800000 0x02000000>;
|
||||
+ label = "1";
|
||||
+ };
|
||||
+
|
||||
+ partition@2800000 {
|
||||
+ /* 8MB - PART 2 */
|
||||
+ reg = <0x02800000 0x00800000>;
|
||||
+ label = "2";
|
||||
+ };
|
||||
+
|
||||
+ partition@3000000 {
|
||||
+ /* (16MB - 512K) - PART 3 JFFS 2 */
|
||||
+ reg = <0x03000000 0x00f80000>;
|
||||
+ label = "3";
|
||||
+ };
|
||||
+
|
||||
+ partition@0 {
|
||||
+ /* 512KB - bootloader[u-boot, uCbootloader] */
|
||||
+ reg = <0x0 0x00080000>;
|
||||
+ label = "BOOT_SPI";
|
||||
+ };
|
||||
+
|
||||
+ partition@3f80000 {
|
||||
+ /* 512KB - bootloade NOR r[u-boot, uCbootloader] */
|
||||
+ reg = <0x03f80000 0x00080000>;
|
||||
+ label = "B";
|
||||
+ };
|
||||
+
|
||||
+ partition@80000 {
|
||||
+ /* 256KB - bootloaders environment (uCenv) */
|
||||
+ reg = <0x00080000 0x00040000>;
|
||||
+
|
||||
+ label = "E";
|
||||
+ };
|
||||
+
|
||||
+ partition@C0000 {
|
||||
+ /* 256KB - bootloaders environment (u-boot) */
|
||||
+ reg = <0x000C0000 0x00040000>;
|
||||
+ label = "UENV";
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&soc {
|
||||
+ i2c@3000 {
|
||||
+ spoc@14 {
|
||||
+ compatible = "conexant,cx2070x";
|
||||
+ reg = <0x14>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ i2c@3100 {
|
||||
+ dtt@4C {
|
||||
+ compatible = "national,lm90";
|
||||
+ reg = <0x4C>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ spi@7000 {
|
||||
+ flash@0 {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+ compatible = "winbond,w25q80bl";
|
||||
+ reg = <0>;
|
||||
+ spi-max-frequency = <40000000>; /* input clock */
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "SPI MBR";
|
||||
+ reg = <0x00000000 0x00002000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+ partition@2000 {
|
||||
+ label = "SPI ENV";
|
||||
+ reg = <0x00002000 0x00006000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+ partition@8000 {
|
||||
+ label = "SPI FS";
|
||||
+ reg = <0x00008000 0x000F8000>;
|
||||
+ };
|
||||
+ };
|
||||
+ flash@3 {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+ compatible = "spansion,s25fl008k";
|
||||
+ reg = <3>;
|
||||
+ spi-max-frequency = <40000000>; /* input clock */
|
||||
+ partition@0 {
|
||||
+ label = "SPI USER";
|
||||
+ reg = <0x00000000 0x00100000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ usb@22000 {
|
||||
+ phy_type = "ulpi";
|
||||
+ dr_mode = "host";
|
||||
+ };
|
||||
+
|
||||
+ mdio@24000 {
|
||||
+ phy0: ethernet-phy@4 {
|
||||
+ interrupt-parent = <&mpic>;
|
||||
+ interrupts = <4 1>;
|
||||
+ reg = <0x04>;
|
||||
+ };
|
||||
+
|
||||
+ phy1: ethernet-phy@6 {
|
||||
+ interrupt-parent = <&mpic>;
|
||||
+ interrupts = <8 1>;
|
||||
+ reg = <0x6>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ enet0: ethernet@b0000 {
|
||||
+ phy-handle = <&phy0>;
|
||||
+ phy-connection-type = "rgmii-id";
|
||||
+ };
|
||||
+
|
||||
+ enet1: ethernet@b1000 {
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+
|
||||
+ enet2: ethernet@b2000 {
|
||||
+ phy-handle = <&phy1>;
|
||||
+ phy-connection-type = "rgmii-id";
|
||||
+ };
|
||||
+
|
||||
+ gpio0: gpio@f000 {
|
||||
+ compatible = "fsl,mpc8572-gpio", "fsl,pq3-gpio";
|
||||
+ reg = <0xf000 0x1000>;
|
||||
+ interrupts = <47 2>;
|
||||
+ interrupt-parent = <&mpic>;
|
||||
+ #gpio-cells = <2>;
|
||||
+ gpio-controller;
|
||||
+ };
|
||||
+
|
||||
+ gpio-leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+ gpio5 {
|
||||
+ label = "led1"; /* LED15 */
|
||||
+ gpios = <&gpio0 5 0>;
|
||||
+ };
|
||||
+ gpio12 {
|
||||
+ label = "led2"; /* LED16 */
|
||||
+ gpios = <&gpio0 12 0>;
|
||||
+ };
|
||||
+ gpio13 {
|
||||
+ label = "led3"; /* LED17 */
|
||||
+ gpios = <&gpio0 13 0>;
|
||||
+ };
|
||||
+ gpio7 {
|
||||
+ label = "led4"; /* LED18 */
|
||||
+ gpios = <&gpio0 7 0>;
|
||||
+ };
|
||||
+ gpio6 {
|
||||
+ label = "led5"; /* LED19 */
|
||||
+ gpios = <&gpio0 6 0>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/powerpc/platforms/85xx/Kconfig b/arch/powerpc/platforms/85xx/Kconfig
|
||||
index 2fb4b24..81a944f 100644
|
||||
--- a/arch/powerpc/platforms/85xx/Kconfig
|
||||
+++ b/arch/powerpc/platforms/85xx/Kconfig
|
||||
@@ -241,6 +241,13 @@ config SGY_CTS1000
|
||||
help
|
||||
Enable this to support functionality in Servergy's CTS-1000 systems.
|
||||
|
||||
+config UCP1020_SOM
|
||||
+ bool "Arcturus uCP1020 Rev.1.3 System on Module"
|
||||
+ select DEFAULT_UIMAGE
|
||||
+ help
|
||||
+ This option enables support for the Arcturus Networks Inc.
|
||||
+ uCP1020 System on Module.
|
||||
+
|
||||
config MVME2500
|
||||
bool "Artesyn MVME2500"
|
||||
select DEFAULT_UIMAGE
|
||||
diff --git a/arch/powerpc/platforms/85xx/Makefile b/arch/powerpc/platforms/85xx/Makefile
|
||||
index 1fe7fb9..84f2b9a 100644
|
||||
--- a/arch/powerpc/platforms/85xx/Makefile
|
||||
+++ b/arch/powerpc/platforms/85xx/Makefile
|
||||
@@ -31,4 +31,5 @@ obj-$(CONFIG_XES_MPC85xx) += xes_mpc85xx.o
|
||||
obj-$(CONFIG_GE_IMP3A) += ge_imp3a.o
|
||||
obj-$(CONFIG_PPC_QEMU_E500) += qemu_e500.o
|
||||
obj-$(CONFIG_SGY_CTS1000) += sgy_cts1000.o
|
||||
+obj-$(CONFIG_UCP1020_SOM) += ucp1020_som.o
|
||||
obj-$(CONFIG_MVME2500) += mvme2500.o
|
||||
diff --git a/arch/powerpc/platforms/85xx/ucp1020_som.c b/arch/powerpc/platforms/85xx/ucp1020_som.c
|
||||
new file mode 100644
|
||||
index 0000000..777e8ad
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/platforms/85xx/ucp1020_som.c
|
||||
@@ -0,0 +1,92 @@
|
||||
+/*
|
||||
+ * Arcturus Networks Inc. uCP1020 module Setup
|
||||
+ *
|
||||
+ * Copyright 2014-2016 Arcturus Networks Inc.
|
||||
+ *
|
||||
+ * by Oleksandr G Zhadan & Michael Durrant (www.ArcturusNetworks.com)
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify it
|
||||
+ * under the terms of the GNU General Public License as published by the
|
||||
+ * Free Software Foundation; either version 2 of the License, or (at your
|
||||
+ * option) any later version.
|
||||
+ */
|
||||
+
|
||||
+#include <linux/stddef.h>
|
||||
+#include <linux/kernel.h>
|
||||
+#include <linux/pci.h>
|
||||
+#include <linux/kdev_t.h>
|
||||
+#include <linux/delay.h>
|
||||
+#include <linux/seq_file.h>
|
||||
+#include <linux/interrupt.h>
|
||||
+#include <linux/of_platform.h>
|
||||
+
|
||||
+#include <asm/time.h>
|
||||
+#include <asm/machdep.h>
|
||||
+#include <asm/pci-bridge.h>
|
||||
+#include <mm/mmu_decl.h>
|
||||
+#include <asm/prom.h>
|
||||
+#include <asm/udbg.h>
|
||||
+#include <asm/mpic.h>
|
||||
+#include <asm/fsl_guts.h>
|
||||
+
|
||||
+#include <sysdev/fsl_soc.h>
|
||||
+#include <sysdev/fsl_pci.h>
|
||||
+#include "smp.h"
|
||||
+
|
||||
+#include "mpc85xx.h"
|
||||
+
|
||||
+void __init ucp1020_som_pic_init(void)
|
||||
+{
|
||||
+ struct mpic *mpic = mpic_alloc(NULL, 0, MPIC_BIG_ENDIAN |
|
||||
+ MPIC_SINGLE_DEST_CPU,
|
||||
+ 0, 256, " OpenPIC ");
|
||||
+
|
||||
+ BUG_ON(mpic == NULL);
|
||||
+
|
||||
+ mpic_init(mpic);
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ * Setup the architecture
|
||||
+ */
|
||||
+static void __init ucp1020_som_setup_arch(void)
|
||||
+{
|
||||
+ if (ppc_md.progress)
|
||||
+ ppc_md.progress("uCP1020_SoM_setup_arch()", 0);
|
||||
+
|
||||
+ mpc85xx_smp_init();
|
||||
+
|
||||
+ fsl_pci_assign_primary();
|
||||
+ pr_info("\n\t%s (http://www.arcturusnetworks.com)\n", ppc_md.name);
|
||||
+}
|
||||
+
|
||||
+machine_arch_initcall(ucp1020, mpc85xx_common_publish_devices);
|
||||
+machine_arch_initcall(ucp1020, swiotlb_setup_bus_notifier);
|
||||
+
|
||||
+/*
|
||||
+ * Called very early, device-tree isn't unflattened
|
||||
+ */
|
||||
+static int __init ucp1020_probe(void)
|
||||
+{
|
||||
+ unsigned long root = of_get_flat_dt_root();
|
||||
+
|
||||
+ if (of_flat_dt_is_compatible(root, "arcturus,uCP1020"))
|
||||
+ return 1;
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+define_machine(ucp1020) {
|
||||
+ .name = "uCP1020 SoM - Arcturus Networks Inc.",
|
||||
+ .probe = ucp1020_probe,
|
||||
+ .setup_arch = ucp1020_som_setup_arch,
|
||||
+ .init_IRQ = ucp1020_som_pic_init,
|
||||
+#ifdef CONFIG_PCI
|
||||
+ .pcibios_fixup_bus = fsl_pcibios_fixup_bus,
|
||||
+#endif
|
||||
+ .get_irq = mpic_get_irq,
|
||||
+ .restart = fsl_rstcr_restart,
|
||||
+ .calibrate_decr = generic_calibrate_decr,
|
||||
+#ifdef DEBUG
|
||||
+ .progress = udbg_progress,
|
||||
+#endif
|
||||
+};
|
||||
--
|
||||
2.1.4
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
From 4c74fd1266287deca0c1ff091071c5b8558b9735 Mon Sep 17 00:00:00 2001
|
||||
From: Oleksandr G Zhadan <oleks@arcturusnetworks.com>
|
||||
Date: Mon, 18 Jul 2016 10:45:41 -0400
|
||||
Subject: [PATCH 1/1] p1020 esdhc controller reserved bit
|
||||
|
||||
Prevent SDHCI core from writing reserved bits, where
|
||||
p1020 reserved bit is SDHCI_CTRL_HISPD, not 0x01(SDHCI_CTRL_LED).
|
||||
|
||||
Signed-off-by: Oleksandr G Zhadan <oleks@arcturusnetworks.com>
|
||||
Signed-off-by: Michael Durrant <arcsupport@arcturusnetworks.com>
|
||||
---
|
||||
drivers/mmc/host/sdhci-esdhc.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/mmc/host/sdhci-esdhc.h b/drivers/mmc/host/sdhci-esdhc.h
|
||||
index a870c42..b45de0a 100644
|
||||
--- a/drivers/mmc/host/sdhci-esdhc.h
|
||||
+++ b/drivers/mmc/host/sdhci-esdhc.h
|
||||
@@ -45,6 +45,6 @@
|
||||
#define ESDHC_DMA_SYSCTL 0x40c
|
||||
#define ESDHC_DMA_SNOOP 0x00000040
|
||||
|
||||
-#define ESDHC_HOST_CONTROL_RES 0x01
|
||||
+#define ESDHC_HOST_CONTROL_RES (SDHCI_CTRL_HISPD)
|
||||
|
||||
#endif /* _DRIVERS_MMC_SDHCI_ESDHC_H */
|
||||
--
|
||||
2.1.4
|
||||
@@ -1,73 +0,0 @@
|
||||
Arcturus uCP1020 SoM
|
||||
====================
|
||||
|
||||
This tutorial describes how to use the predefined Buildroot
|
||||
configuration for the Arcturus uCP1020 SoM platform.
|
||||
|
||||
Additional information about this module can be found at
|
||||
<www.arcturusnetworks.com/products/ucp1020>
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
make arcturus_ucp1020_defconfig
|
||||
make
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
After building, you should obtain this tree:
|
||||
|
||||
output/images/
|
||||
+-- rootfs.jffs2
|
||||
+-- rootfs.tar
|
||||
+-- u-boot.bin
|
||||
+-- ucp1020.dtb
|
||||
+-- uImage
|
||||
|
||||
Flashing
|
||||
--------
|
||||
|
||||
You'll need to program the files created by buildroot into the NOR flash.
|
||||
|
||||
1. Program the new U-Boot binary (optional)
|
||||
If you don't feel confident upgrading your bootloader then don't do it,
|
||||
it's unnecessary most of the time.
|
||||
|
||||
B$ tftp u-boot.bin
|
||||
B$ protect off 0xeff80000 +$filesize
|
||||
B$ erase 0xeff80000 +$filesize
|
||||
B$ cp.b $loadaddr 0xeff80000 $filesize
|
||||
|
||||
2. Program the kernel
|
||||
|
||||
B$ tftp uImage
|
||||
B$ erase 0xec140000 +$filesize
|
||||
B$ cp.b $loadaddr 0xec140000 $filesize
|
||||
|
||||
3. Program the DTB
|
||||
|
||||
B$ tftp ucp1020.dtb
|
||||
B$ erase 0xec100000 +$filesize
|
||||
B$ cp.b $loadaddr 0xec100000 $filesize
|
||||
|
||||
4. Program the jffs2 root filesystem
|
||||
|
||||
B$ tftp rootfs.jffs2
|
||||
B$ erase 0xec800000 0xee8fffff
|
||||
B$ cp.b $loadaddr 0xec800000 $filesize
|
||||
|
||||
5. Booting your new system
|
||||
|
||||
B$ setenv norboot 'setenv bootargs root=/dev/mtdblock1 rootfstype=jffs2 console=$consoledev,$baudrate;bootm 0xec140000 - 0xec100000'
|
||||
|
||||
If you want to set this boot option as default:
|
||||
|
||||
B$ setenv bootcmd 'run norboot'
|
||||
B$ saveenv
|
||||
|
||||
...or for a single boot:
|
||||
|
||||
B$ run norboot
|
||||
|
||||
Good Luck !
|
||||
@@ -3,14 +3,14 @@ ARM software simulator of the AArch64 architecture.
|
||||
|
||||
First, one has to download the AArch64 software simulator from:
|
||||
|
||||
https://silver.arm.com/download/download.tm?pv=2663527
|
||||
https://silver.arm.com/download/download.tm?pv=2482590
|
||||
|
||||
Then, use the arm_foundationv8_defconfig configuration to build your
|
||||
Buildroot system.
|
||||
|
||||
Finally, boot your system with:
|
||||
|
||||
${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-4.7/Foundation_Platform \
|
||||
${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-4.1/Foundation_Platform \
|
||||
--image output/images/linux-system.axf \
|
||||
--block-device output/images/rootfs.ext2 \
|
||||
--network=nat
|
||||
|
||||
@@ -1,169 +0,0 @@
|
||||
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
|
||||
@@ -1,134 +0,0 @@
|
||||
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.
|
||||
185
board/armadeus/apf28/linux-3.12.config
Normal file
185
board/armadeus/apf28/linux-3.12.config
Normal file
@@ -0,0 +1,185 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_EMBEDDED=y
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_BSD_DISKLABEL=y
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
# CONFIG_ARCH_MULTI_V7 is not set
|
||||
CONFIG_ARCH_MXS=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_AEABI=y
|
||||
# CONFIG_OABI_COMPAT is not set
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_CAN=m
|
||||
CONFIG_CAN_VCAN=m
|
||||
CONFIG_CAN_FLEXCAN=m
|
||||
CONFIG_BT=m
|
||||
CONFIG_BT_RFCOMM=m
|
||||
CONFIG_BT_RFCOMM_TTY=y
|
||||
CONFIG_BT_BNEP=m
|
||||
CONFIG_BT_BNEP_MC_FILTER=y
|
||||
CONFIG_BT_BNEP_PROTO_FILTER=y
|
||||
CONFIG_BT_HIDP=m
|
||||
CONFIG_BT_HCIBTUSB=m
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_MAC80211=m
|
||||
CONFIG_MAC80211_RC_PID=y
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_FW_LOADER=m
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_DATAFLASH=y
|
||||
CONFIG_MTD_M25P80=y
|
||||
# CONFIG_M25PXX_USE_FAST_READ is not set
|
||||
CONFIG_MTD_SST25L=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_GPMI_NAND=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_EEPROM_AT24=y
|
||||
CONFIG_EEPROM_AT25=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_RTL8187=m
|
||||
CONFIG_RT2X00=m
|
||||
CONFIG_RT73USB=m
|
||||
CONFIG_ZD1211RW=m
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_INPUT_MISC=y
|
||||
CONFIG_INPUT_UINPUT=m
|
||||
# CONFIG_SERIO_SERPORT is not set
|
||||
CONFIG_VT_HW_CONSOLE_BINDING=y
|
||||
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_DEVKMEM is not set
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_MXS_AUART=y
|
||||
CONFIG_TTY_PRINTK=y
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_MXS=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_BITBANG=m
|
||||
CONFIG_SPI_MXS=y
|
||||
CONFIG_SPI_SPIDEV=m
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_HWMON=m
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_STMP3XXX_RTC_WATCHDOG=y
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_MEDIA_SUPPORT=m
|
||||
CONFIG_MEDIA_CAMERA_SUPPORT=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_MXS=y
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_LCD_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
# CONFIG_BACKLIGHT_GENERIC is not set
|
||||
CONFIG_BACKLIGHT_PWM=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_FONTS=y
|
||||
CONFIG_FONT_8x8=y
|
||||
CONFIG_LOGO=y
|
||||
# CONFIG_LOGO_LINUX_MONO is not set
|
||||
# CONFIG_LOGO_LINUX_VGA16 is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEBUG=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_ACM=y
|
||||
CONFIG_USB_PRINTER=y
|
||||
CONFIG_USB_WDM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_CHIPIDEA=y
|
||||
CONFIG_USB_CHIPIDEA_UDC=y
|
||||
CONFIG_USB_CHIPIDEA_HOST=y
|
||||
CONFIG_USB_MXS_PHY=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_GADGET_DEBUG_FILES=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_MXS=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_ONESHOT=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
|
||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_STMP=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_MXS_DMA=y
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_MXS_LRADC=y
|
||||
CONFIG_IIO=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_MXS=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
CONFIG_EXT2_FS_POSIX_ACL=y
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
CONFIG_EXT2_FS_XIP=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT3_FS_POSIX_ACL=y
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_ISO9660_FS=y
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
@@ -1,185 +0,0 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_EMBEDDED=y
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_BSD_DISKLABEL=y
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
# CONFIG_ARCH_MULTI_V7 is not set
|
||||
CONFIG_ARCH_MXS=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_AEABI=y
|
||||
# CONFIG_OABI_COMPAT is not set
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_CAN=m
|
||||
CONFIG_CAN_VCAN=m
|
||||
CONFIG_CAN_FLEXCAN=m
|
||||
CONFIG_BT=m
|
||||
CONFIG_BT_RFCOMM=m
|
||||
CONFIG_BT_RFCOMM_TTY=y
|
||||
CONFIG_BT_BNEP=m
|
||||
CONFIG_BT_BNEP_MC_FILTER=y
|
||||
CONFIG_BT_BNEP_PROTO_FILTER=y
|
||||
CONFIG_BT_HIDP=m
|
||||
CONFIG_BT_HCIBTUSB=m
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_MAC80211=m
|
||||
CONFIG_MAC80211_RC_PID=y
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_FW_LOADER=m
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_DATAFLASH=y
|
||||
CONFIG_MTD_M25P80=y
|
||||
# CONFIG_M25PXX_USE_FAST_READ is not set
|
||||
CONFIG_MTD_SST25L=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_GPMI_NAND=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_EEPROM_AT24=y
|
||||
CONFIG_EEPROM_AT25=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_RTL8187=m
|
||||
CONFIG_RT2X00=m
|
||||
CONFIG_RT73USB=m
|
||||
CONFIG_ZD1211RW=m
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_INPUT_MISC=y
|
||||
CONFIG_INPUT_UINPUT=m
|
||||
# CONFIG_SERIO_SERPORT is not set
|
||||
CONFIG_VT_HW_CONSOLE_BINDING=y
|
||||
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_DEVKMEM is not set
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_MXS_AUART=y
|
||||
CONFIG_TTY_PRINTK=y
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_MXS=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_BITBANG=m
|
||||
CONFIG_SPI_MXS=y
|
||||
CONFIG_SPI_SPIDEV=m
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_HWMON=m
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_STMP3XXX_RTC_WATCHDOG=y
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_MEDIA_SUPPORT=m
|
||||
CONFIG_MEDIA_CAMERA_SUPPORT=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_MXS=y
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_LCD_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
# CONFIG_BACKLIGHT_GENERIC is not set
|
||||
CONFIG_BACKLIGHT_PWM=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_LOGO=y
|
||||
# CONFIG_LOGO_LINUX_MONO is not set
|
||||
# CONFIG_LOGO_LINUX_VGA16 is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEBUG=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_ACM=y
|
||||
CONFIG_USB_PRINTER=y
|
||||
CONFIG_USB_WDM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_CHIPIDEA=y
|
||||
CONFIG_USB_CHIPIDEA_UDC=y
|
||||
CONFIG_USB_CHIPIDEA_HOST=y
|
||||
CONFIG_USB_MXS_PHY=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_GADGET_DEBUG_FILES=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_MXS=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_ONESHOT=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
|
||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_STMP=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_MXS_DMA=y
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_MXS_LRADC=y
|
||||
CONFIG_IIO=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_MXS=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
CONFIG_EXT2_FS_POSIX_ACL=y
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
CONFIG_EXT2_FS_XIP=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT3_FS_POSIX_ACL=y
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_ISO9660_FS=y
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
CONFIG_FONTS=y
|
||||
CONFIG_FONT_8x8=y
|
||||
266
board/armadeus/apf51/linux-3.12.config
Normal file
266
board/armadeus/apf51/linux-3.12.config
Normal file
@@ -0,0 +1,266 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_EMBEDDED=y
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_BSD_DISKLABEL=y
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_MXC=y
|
||||
CONFIG_MXC_IRQ_PRIOR=y
|
||||
CONFIG_MACH_IMX51_DT=y
|
||||
CONFIG_ARM_THUMBEE=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_STAT_DETAILS=y
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
|
||||
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
|
||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
|
||||
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
|
||||
CONFIG_CPU_FREQ_IMX=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
CONFIG_VFP=y
|
||||
CONFIG_NEON=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
# CONFIG_SUSPEND is not set
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_CAN=m
|
||||
CONFIG_CAN_RAW=m
|
||||
CONFIG_CAN_BCM=m
|
||||
CONFIG_CAN_VCAN=m
|
||||
CONFIG_CAN_MCP251X=m
|
||||
CONFIG_BT=m
|
||||
CONFIG_BT_L2CAP=y
|
||||
CONFIG_BT_SCO=y
|
||||
CONFIG_BT_RFCOMM=m
|
||||
CONFIG_BT_RFCOMM_TTY=y
|
||||
CONFIG_BT_BNEP=m
|
||||
CONFIG_BT_HIDP=m
|
||||
CONFIG_BT_HCIBTUSB=m
|
||||
CONFIG_BT_HCIUART=m
|
||||
CONFIG_BT_HCIUART_H4=y
|
||||
CONFIG_BT_HCIUART_BCSP=y
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_MAC80211=m
|
||||
CONFIG_MAC80211_RC_PID=y
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_FW_LOADER=m
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_MXC=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_MISC_DEVICES=y
|
||||
CONFIG_EEPROM_AT24=y
|
||||
CONFIG_EEPROM_AT25=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SMSC_PHY=y
|
||||
CONFIG_NET_ETHERNET=y
|
||||
# CONFIG_NETDEV_1000 is not set
|
||||
# CONFIG_NETDEV_10000 is not set
|
||||
CONFIG_RTL8187=m
|
||||
CONFIG_LIBERTAS=m
|
||||
CONFIG_LIBERTAS_SDIO=m
|
||||
CONFIG_RT2X00=m
|
||||
CONFIG_RT73USB=m
|
||||
CONFIG_ZD1211RW=m
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_KEYBOARD_GPIO=m
|
||||
CONFIG_KEYBOARD_IMX=m
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_TOUCHSCREEN_WM831X=y
|
||||
CONFIG_INPUT_MISC=y
|
||||
CONFIG_INPUT_UINPUT=m
|
||||
CONFIG_INPUT_WM831X_ON=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_8250=m
|
||||
CONFIG_SERIAL_IMX=y
|
||||
CONFIG_SERIAL_IMX_CONSOLE=y
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_IMX=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_IMX=y
|
||||
CONFIG_SPI_SPIDEV=m
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_GPIO_WM831X=m
|
||||
CONFIG_POWER_SUPPLY=m
|
||||
CONFIG_WM831X_BACKUP=m
|
||||
CONFIG_WM831X_POWER=m
|
||||
CONFIG_HWMON=m
|
||||
CONFIG_SENSORS_AS1531=m
|
||||
CONFIG_SENSORS_WM831X=m
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_WATCHDOG_NOWAYOUT=y
|
||||
CONFIG_WM831X_WATCHDOG=m
|
||||
CONFIG_IMX2_WDT=y
|
||||
CONFIG_MFD_WM831X_I2C=y
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_MFD_IMX_IPU_V3=y
|
||||
CONFIG_MEDIA_SUPPORT=m
|
||||
CONFIG_VIDEO_DEV=m
|
||||
# CONFIG_RC_CORE is not set
|
||||
# CONFIG_MEDIA_TUNER_SIMPLE is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA8290 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA827X is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18271 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA9887 is not set
|
||||
# CONFIG_MEDIA_TUNER_TEA5761 is not set
|
||||
# CONFIG_MEDIA_TUNER_TEA5767 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT20XX is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2060 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2266 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2131 is not set
|
||||
# CONFIG_MEDIA_TUNER_QT1010 is not set
|
||||
# CONFIG_MEDIA_TUNER_XC2028 is not set
|
||||
# CONFIG_MEDIA_TUNER_XC5000 is not set
|
||||
# CONFIG_MEDIA_TUNER_MXL5005S is not set
|
||||
# CONFIG_MEDIA_TUNER_MXL5007T is not set
|
||||
# CONFIG_MEDIA_TUNER_MC44S803 is not set
|
||||
# CONFIG_MEDIA_TUNER_MAX2165 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18218 is not set
|
||||
CONFIG_VIDEO_VIVI=m
|
||||
CONFIG_USB_VIDEO_CLASS=m
|
||||
# CONFIG_RADIO_ADAPTERS is not set
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_MX5=y
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_FONTS=y
|
||||
CONFIG_FONT_8x8=y
|
||||
CONFIG_LOGO=y
|
||||
# CONFIG_LOGO_LINUX_MONO is not set
|
||||
# CONFIG_LOGO_LINUX_VGA16 is not set
|
||||
CONFIG_SOUND=m
|
||||
# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set
|
||||
CONFIG_SND=m
|
||||
CONFIG_SND_MIXER_OSS=m
|
||||
CONFIG_SND_PCM_OSS=m
|
||||
# CONFIG_SND_DRIVERS is not set
|
||||
# CONFIG_SND_ARM is not set
|
||||
# CONFIG_SND_SPI is not set
|
||||
# CONFIG_SND_USB is not set
|
||||
CONFIG_SND_SOC=m
|
||||
CONFIG_SND_IMX_SOC=m
|
||||
CONFIG_SND_SOC_APF51_DEV_WM8960=m
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEBUG=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
# CONFIG_USB_DEVICE_CLASS is not set
|
||||
CONFIG_USB_SUSPEND=y
|
||||
CONFIG_USB_OTG=y
|
||||
# CONFIG_USB_OTG_WHITELIST is not set
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_MXC=y
|
||||
CONFIG_USB_ACM=y
|
||||
CONFIG_USB_PRINTER=y
|
||||
CONFIG_USB_WDM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_CHIPIDEA=y
|
||||
CONFIG_USB_CHIPIDEA_HOST=y
|
||||
CONFIG_USB_PHY=y
|
||||
CONFIG_NOP_USB_XCEIV=y
|
||||
CONFIG_USB_GPIO_VBUS=y
|
||||
CONFIG_USB_ULPI=y
|
||||
CONFIG_USB_GADGET=m
|
||||
CONFIG_USB_GADGET_DEBUG_FILES=y
|
||||
CONFIG_USB_GADGET_DEBUG_FS=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_USB_MASS_STORAGE=m
|
||||
CONFIG_USB_G_SERIAL=m
|
||||
CONFIG_USB_CDC_COMPOSITE=m
|
||||
CONFIG_USB_G_MULTI=m
|
||||
CONFIG_USB_G_MULTI_CDC=y
|
||||
CONFIG_USB_G_HID=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_MMC_SDHCI_ESDHC_IMX=y
|
||||
CONFIG_MMC_SPI=m
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_WM831X_STATUS=m
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_MXC=y
|
||||
CONFIG_RTC_DRV_WM831X=y
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_IIO=m
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
CONFIG_EXT2_FS_POSIX_ACL=y
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
CONFIG_EXT2_FS_XIP=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT3_FS_POSIX_ACL=y
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_ISO9660_FS=y
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_JFFS2_COMPRESSION_OPTIONS=y
|
||||
CONFIG_JFFS2_LZO=y
|
||||
CONFIG_JFFS2_CMODE_NONE=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
@@ -1,278 +0,0 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_EMBEDDED=y
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_BSD_DISKLABEL=y
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_MXC=y
|
||||
CONFIG_MXC_IRQ_PRIOR=y
|
||||
CONFIG_SOC_IMX51=y
|
||||
CONFIG_ARM_THUMBEE=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_STAT_DETAILS=y
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
|
||||
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
|
||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
|
||||
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
|
||||
CONFIG_CPU_FREQ_IMX=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
CONFIG_VFP=y
|
||||
CONFIG_NEON=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
# CONFIG_SUSPEND is not set
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_CAN=m
|
||||
CONFIG_CAN_RAW=m
|
||||
CONFIG_CAN_BCM=m
|
||||
CONFIG_CAN_VCAN=m
|
||||
CONFIG_CAN_MCP251X=m
|
||||
CONFIG_BT=m
|
||||
CONFIG_BT_L2CAP=y
|
||||
CONFIG_BT_SCO=y
|
||||
CONFIG_BT_RFCOMM=m
|
||||
CONFIG_BT_RFCOMM_TTY=y
|
||||
CONFIG_BT_BNEP=m
|
||||
CONFIG_BT_HIDP=m
|
||||
CONFIG_BT_HCIBTUSB=m
|
||||
CONFIG_BT_HCIUART=m
|
||||
CONFIG_BT_HCIUART_H4=y
|
||||
CONFIG_BT_HCIUART_BCSP=y
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_MAC80211=m
|
||||
CONFIG_MAC80211_RC_PID=y
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_FW_LOADER=m
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_MXC=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_MISC_DEVICES=y
|
||||
CONFIG_EEPROM_AT24=y
|
||||
CONFIG_EEPROM_AT25=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SMSC_PHY=y
|
||||
CONFIG_NET_ETHERNET=y
|
||||
# CONFIG_NETDEV_1000 is not set
|
||||
# CONFIG_NETDEV_10000 is not set
|
||||
CONFIG_RTL8187=m
|
||||
CONFIG_LIBERTAS=m
|
||||
CONFIG_LIBERTAS_SDIO=m
|
||||
CONFIG_RT2X00=m
|
||||
CONFIG_RT73USB=m
|
||||
CONFIG_ZD1211RW=m
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_KEYBOARD_GPIO=m
|
||||
CONFIG_KEYBOARD_IMX=m
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_TOUCHSCREEN_WM831X=y
|
||||
CONFIG_TOUCHSCREEN_MC13XXX=m
|
||||
CONFIG_INPUT_MISC=y
|
||||
CONFIG_INPUT_MC13783_PWRBUTTON=m
|
||||
CONFIG_INPUT_UINPUT=m
|
||||
CONFIG_INPUT_WM831X_ON=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_8250=m
|
||||
CONFIG_SERIAL_IMX=y
|
||||
CONFIG_SERIAL_IMX_CONSOLE=y
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_IMX=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_IMX=y
|
||||
CONFIG_SPI_SPIDEV=m
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_GPIO_WM831X=m
|
||||
CONFIG_POWER_SUPPLY=y
|
||||
CONFIG_WM831X_BACKUP=m
|
||||
CONFIG_WM831X_POWER=m
|
||||
CONFIG_HWMON=m
|
||||
CONFIG_SENSORS_AS1531=m
|
||||
CONFIG_SENSORS_MC13783_ADC=m
|
||||
CONFIG_SENSORS_WM831X=m
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_WATCHDOG_NOWAYOUT=y
|
||||
CONFIG_WM831X_WATCHDOG=m
|
||||
CONFIG_IMX2_WDT=y
|
||||
CONFIG_MFD_MC13XXX_I2C=y
|
||||
CONFIG_MFD_WM831X_I2C=y
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_REGULATOR_MC13892=m
|
||||
CONFIG_IMX_IPUV3_CORE=y
|
||||
CONFIG_DRM=y
|
||||
CONFIG_MFD_IMX_IPU_V3=y
|
||||
CONFIG_MEDIA_SUPPORT=m
|
||||
CONFIG_VIDEO_DEV=m
|
||||
# CONFIG_RC_CORE is not set
|
||||
# CONFIG_MEDIA_TUNER_SIMPLE is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA8290 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA827X is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18271 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA9887 is not set
|
||||
# CONFIG_MEDIA_TUNER_TEA5761 is not set
|
||||
# CONFIG_MEDIA_TUNER_TEA5767 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT20XX is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2060 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2266 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2131 is not set
|
||||
# CONFIG_MEDIA_TUNER_QT1010 is not set
|
||||
# CONFIG_MEDIA_TUNER_XC2028 is not set
|
||||
# CONFIG_MEDIA_TUNER_XC5000 is not set
|
||||
# CONFIG_MEDIA_TUNER_MXL5005S is not set
|
||||
# CONFIG_MEDIA_TUNER_MXL5007T is not set
|
||||
# CONFIG_MEDIA_TUNER_MC44S803 is not set
|
||||
# CONFIG_MEDIA_TUNER_MAX2165 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18218 is not set
|
||||
CONFIG_VIDEO_VIVI=m
|
||||
CONFIG_USB_VIDEO_CLASS=m
|
||||
# CONFIG_RADIO_ADAPTERS is not set
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_MX5=y
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_FONTS=y
|
||||
CONFIG_FONT_8x8=y
|
||||
CONFIG_LOGO=y
|
||||
# CONFIG_LOGO_LINUX_MONO is not set
|
||||
# CONFIG_LOGO_LINUX_VGA16 is not set
|
||||
CONFIG_SOUND=m
|
||||
# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set
|
||||
CONFIG_SND=m
|
||||
CONFIG_SND_MIXER_OSS=m
|
||||
CONFIG_SND_PCM_OSS=m
|
||||
# CONFIG_SND_DRIVERS is not set
|
||||
# CONFIG_SND_ARM is not set
|
||||
# CONFIG_SND_SPI is not set
|
||||
# CONFIG_SND_USB is not set
|
||||
CONFIG_SND_SOC=m
|
||||
CONFIG_SND_IMX_SOC=m
|
||||
CONFIG_SND_SOC_APF51_DEV_WM8960=m
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEBUG=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
# CONFIG_USB_DEVICE_CLASS is not set
|
||||
CONFIG_USB_SUSPEND=y
|
||||
CONFIG_USB_OTG=y
|
||||
# CONFIG_USB_OTG_WHITELIST is not set
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_MXC=y
|
||||
CONFIG_USB_ACM=y
|
||||
CONFIG_USB_PRINTER=y
|
||||
CONFIG_USB_WDM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_CHIPIDEA=y
|
||||
CONFIG_USB_CHIPIDEA_UDC=y
|
||||
CONFIG_USB_CHIPIDEA_HOST=y
|
||||
CONFIG_USB_PHY=y
|
||||
CONFIG_NOP_USB_XCEIV=y
|
||||
CONFIG_USB_GPIO_VBUS=y
|
||||
CONFIG_USB_ULPI=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_GADGET_DEBUG_FILES=y
|
||||
CONFIG_USB_GADGET_DEBUG_FS=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_USB_MASS_STORAGE=m
|
||||
CONFIG_USB_G_SERIAL=m
|
||||
CONFIG_USB_CDC_COMPOSITE=m
|
||||
CONFIG_USB_G_MULTI=m
|
||||
CONFIG_USB_G_MULTI_CDC=y
|
||||
CONFIG_USB_G_HID=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_MMC_SDHCI_ESDHC_IMX=y
|
||||
CONFIG_MMC_SPI=m
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_WM831X_STATUS=m
|
||||
CONFIG_LEDS_MC13783=m
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_MXC=y
|
||||
CONFIG_RTC_DRV_WM831X=y
|
||||
CONFIG_RTC_DRV_MC13XXX=m
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_DRM_IMX=y
|
||||
CONFIG_DRM_IMX_FB_HELPER=y
|
||||
CONFIG_DRM_IMX_PARALLEL_DISPLAY=y
|
||||
CONFIG_DRM_IMX_TVE=y
|
||||
CONFIG_DRM_IMX_IPUV3=y
|
||||
CONFIG_IIO=m
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
CONFIG_EXT2_FS_POSIX_ACL=y
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
CONFIG_EXT2_FS_XIP=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT3_FS_POSIX_ACL=y
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_ISO9660_FS=y
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
@@ -1,89 +0,0 @@
|
||||
Introduction
|
||||
============
|
||||
|
||||
Armadeus APFxx are Systems On Module (SOM) based on Freescale/NXP i.MX
|
||||
processors associated with an FPGA (except on APF28). Non volatile
|
||||
data are stored in on-module NOR or NAND Flash, depending on the
|
||||
model. These SOM can be used on Armadeus development boards or with
|
||||
custom docking boards.
|
||||
|
||||
Supported platforms
|
||||
===================
|
||||
|
||||
Buildroot currently supports the following Armadeus platforms with the
|
||||
associated defconfigs:
|
||||
|
||||
* APF9328 SOM + devt boards -> armadeus_apf9328_defconfig
|
||||
* APF27 SOM + devt board -> armadeus_apf27_defconfig
|
||||
* APF51 SOM + devt board -> armadeus_apf51_defconfig
|
||||
* APF28 SOM + devt board -> armadeus_apf28_defconfig
|
||||
|
||||
Vanilla Linux versions are preferred to Freescale's one in these
|
||||
configurations.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Configure Buildroot
|
||||
-------------------
|
||||
|
||||
Let's say you own an APFxx SOM with it's corresponding development
|
||||
board, all you have to do is:
|
||||
|
||||
$ make armadeus_apfxx_defconfig
|
||||
|
||||
where "apfxx" is the version of your SOM.
|
||||
|
||||
Launch build
|
||||
------------
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
When the build is finished, you will end up with:
|
||||
|
||||
output/images/
|
||||
├── imx**-apfxxdev.dtb [1]
|
||||
├── rootfs.jffs2 [2]
|
||||
├── rootfs.tar
|
||||
├── rootfs.ubi [2]
|
||||
├── rootfs.ubifs [2]
|
||||
└── uImage
|
||||
|
||||
[1] Only if the kernel version used uses a Device Tree.
|
||||
[2] .ubi/.ubifs images are not available on APF9328 and replaced by a
|
||||
.jffs2 one in this case.
|
||||
|
||||
Building U-Boot is currently not supported in these configurations.
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
You will require a serial connection to the board and a TFTP server on
|
||||
your Host PC. Assuming your server is configured for exporting
|
||||
/tftpboot/ directory, you will have to copy the generated images to
|
||||
it:
|
||||
|
||||
$ cp output/images/uImage /tftpboot/apfxx-linux.bin
|
||||
$ cp output/images/*.dtb /tftpboot/
|
||||
$ cp output/images/rootfs.ubi /tftpboot/apfxx-rootfs.ubi
|
||||
$ cp output/images/rootfs.jffs2 /tftpboot/apfxx-rootfs.jffs2
|
||||
|
||||
where "apfxx" is the version of your SOM, as used with _defconfigs.
|
||||
|
||||
Then on your serial terminal, all you have to do is:
|
||||
|
||||
* interrupt the boot process and access U-Boot console by pressing any
|
||||
key when booting,
|
||||
* configure board and server IP addresses with "ipaddr" and "serverip"
|
||||
environment variables,
|
||||
* if you want to update kernel:
|
||||
BIOS > run update_kernel
|
||||
* if you want to update device tree:
|
||||
BIOS > run update_dtb
|
||||
* if you want to update rootfs:
|
||||
BIOS > run update_rootfs
|
||||
|
||||
That's it !
|
||||
98
board/atmel/at91sam9260ek/linux-3.9.config
Normal file
98
board/atmel/at91sam9260ek/linux-3.9.config
Normal file
@@ -0,0 +1,98 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_KERNEL_LZO=y
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_AT91=y
|
||||
CONFIG_ARCH_AT91SAM9260=y
|
||||
CONFIG_ARCH_AT91SAM9260_SAM9XE=y
|
||||
CONFIG_MACH_AT91SAM9260EK=y
|
||||
CONFIG_MACH_CAM60=y
|
||||
CONFIG_MACH_SAM9_L9260=y
|
||||
CONFIG_MACH_AFEB9260=y
|
||||
CONFIG_MACH_USB_A9260=y
|
||||
CONFIG_MACH_QIL_A9260=y
|
||||
CONFIG_MACH_CPU9260=y
|
||||
CONFIG_MACH_FLEXIBITY=y
|
||||
CONFIG_MACH_SNAPPER_9260=y
|
||||
CONFIG_MACH_AT91SAM_DT=y
|
||||
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
|
||||
# CONFIG_ARM_THUMB is not set
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_ARM_APPENDED_DTB=y
|
||||
CONFIG_ARM_ATAG_DTB_COMPAT=y
|
||||
CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,3145728 root=/dev/ram0 rw"
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_ATMEL=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_SIZE=8192
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_MACB=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_SERIO is not set
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_GPIO=y
|
||||
# CONFIG_HWMON is not set
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_WATCHDOG_NOWAYOUT=y
|
||||
CONFIG_AT91SAM9X_WATCHDOG=y
|
||||
# CONFIG_USB_HID is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_STORAGE_DEBUG=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_ZERO=m
|
||||
CONFIG_USB_GADGETFS=m
|
||||
CONFIG_USB_MASS_STORAGE=m
|
||||
CONFIG_USB_G_SERIAL=m
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_AT91SAM9=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_CRAMFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
@@ -1,6 +1,10 @@
|
||||
This document explains how to set up a basic Buildroot system on various
|
||||
Atmel boards. Additional details can also be found on the Linux4SAM website:
|
||||
http://www.at91.com/linux4sam/bin/view/Linux4SAM/
|
||||
Flashing the NAND using SAM-BA
|
||||
==============================
|
||||
|
||||
This document explains how to flash a basic Buildroot system on various
|
||||
Atmel boards. Additional details can
|
||||
also be found on the Linux4SAM website, in particular here:
|
||||
http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted
|
||||
|
||||
This guide covers the following configurations:
|
||||
- at91sam9g45m10ek_defconfig
|
||||
@@ -10,49 +14,20 @@ This guide covers the following configurations:
|
||||
- atmel_sama5d3xek_defconfig (sama5d31, sama5d33, sama5d34, sama5d35,
|
||||
sama5d36)
|
||||
- atmel_sama5d3_xplained_defconfig
|
||||
- atmel_sama5d3_xplained_dev_defconfig
|
||||
- atmel_sama5d3_xplained_mmc_defconfig
|
||||
- atmel_sama5d3_xplained_mmc_dev_defconfig
|
||||
- atmel_sama5d4ek_defconfig
|
||||
- atmel_sama5d4_xplained_defconfig
|
||||
- atmel_sama5d4_xplained_dev_defconfig
|
||||
- atmel_sama5d4_xplained_mmc_defconfig
|
||||
- atmel_sama5d4_xplained_mmc_dev_defconfig
|
||||
- atmel_sama5d2_xplained_mmc_defconfig
|
||||
- atmel_sama5d2_xplained_mmc_dev_defconfig
|
||||
|
||||
These configurations will use AT91Bootstrap, u-boot and a linux kernel from
|
||||
the git trees maintained by Atmel.
|
||||
the git trees maintained by Atmel. They also build u-boot SPL when
|
||||
available, it can replace AT91Bootstrap.
|
||||
|
||||
The configurations labeled as 'dev' provide a development rootfs with tools to
|
||||
tests the features of the SoC:
|
||||
- ALSA tools to test audio
|
||||
- FFMPEG to record video from the ISI/ISC
|
||||
- I2C, SPI, CAN, etc. tools
|
||||
- modetest for LCD screens, HDMI
|
||||
- Wilc1000 firmware for the Atmel Wireless sdio module
|
||||
- SSH for convenience
|
||||
- GDB/GDB server for debug
|
||||
|
||||
Configuring and building Buildroot
|
||||
==================================
|
||||
|
||||
For most configurations listed above, the Buildroot configuration
|
||||
assumes the system will be flashed on NAND. In this case, after
|
||||
building Buildroot, follow the instructions in the "Flashing the NAND
|
||||
using SAM-BA" section below.
|
||||
|
||||
For the Xplained boards, an alternative Buildroot configuration is
|
||||
provided to boot from an SD card. Those configurations are labeled as
|
||||
'mmc'. In this case, after building Buildroot, follow the instructions
|
||||
in the "Preparting the SD card" sction.
|
||||
|
||||
To configure and build Buildroot, run:
|
||||
----------------------------------
|
||||
|
||||
make <board>_defconfig
|
||||
make
|
||||
|
||||
Flashing the NAND using SAM-BA
|
||||
==============================
|
||||
|
||||
Flashing the board
|
||||
------------------
|
||||
@@ -130,44 +105,3 @@ board/atmel/flasher.sh /tmp/atmel_sama5d3_xplained/ /dev/ttyACM0 sama5d3_xplaine
|
||||
|
||||
Reboot, the system should boot up to the buildroot login invite.
|
||||
|
||||
Preparing the SD card
|
||||
=====================
|
||||
|
||||
An image named sdcard.img is automatically generated. With this image,
|
||||
you no longer have to care about the creation of the partition and
|
||||
copying files to the SD card.
|
||||
|
||||
You need at least a 1GB SD card. All the data on the SD card will be
|
||||
lost. To copy the image on the SD card:
|
||||
|
||||
/!\ Caution be sure to do it on the right mmcblk device /!\
|
||||
|
||||
dd if=output/images/sdcard.img of=/dev/mmcblk0
|
||||
|
||||
Insert your SD card in your Xplained board, and enjoy. The default
|
||||
U-Boot environment will load properly the kernel and Device Tree blob
|
||||
from the first partition of the SD card, so everything works
|
||||
automatically.
|
||||
|
||||
By default a 16MB FAT partition is created. It contains at91bootstrap,
|
||||
u-boot, the kernel image and all dtb variants for your board. The dtb
|
||||
used is the basic one:
|
||||
|
||||
U-Boot> print
|
||||
[...]
|
||||
bootcmd=fatload mmc 1:1 0x21000000 at91-sama5d2_xplained.dtb; fatload mmc 1:1 0x22000000 zImage; bootz 0x22000000 - 0x21000000
|
||||
[...]
|
||||
|
||||
If you want to use a variant such as the _pda7 one, you will have to
|
||||
update your u-boot environment:
|
||||
|
||||
U-Boot> setenv bootcmd 'fatload mmc 1:1 0x21000000 at91-sama5d2_xplained_pda7.dtb; fatload mmc 1:1 0x22000000 zImage; bootz 0x22000000 - 0x21000000'
|
||||
U-Boot> save
|
||||
Saving Environment to FAT...
|
||||
writing uboot.env
|
||||
done
|
||||
|
||||
A 512MB ext4 partition is also created to store the rootfs generated.
|
||||
|
||||
If you want to customize the size of the partitions and their content,
|
||||
take a look at the the genimage.cfg file in the board directory.
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
# Image for SD card boot on Atmel SAMA5D2 Xplained boards
|
||||
#
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"zImage",
|
||||
"at91-sama5d2_xplained.dtb",
|
||||
"at91-sama5d2_xplained_pda4.dtb",
|
||||
"at91-sama5d2_xplained_pda7.dtb",
|
||||
"at91-sama5d2_xplained_pda7b.dtb",
|
||||
"boot.bin",
|
||||
"u-boot.bin"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
offset = 1M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
@@ -1,34 +0,0 @@
|
||||
# Image for SD card boot on Atmel SAMA5D3 Xplained boards
|
||||
#
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"zImage",
|
||||
"at91-sama5d3_xplained.dtb",
|
||||
"at91-sama5d3_xplained_pda4.dtb",
|
||||
"at91-sama5d3_xplained_pda7.dtb",
|
||||
"at91-sama5d3_xplained_pda7b.dtb",
|
||||
"boot.bin",
|
||||
"u-boot.bin"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
offset = 1M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
@@ -1,35 +0,0 @@
|
||||
# Image for SD card boot on Atmel SAMA5D4 Xplained boards
|
||||
#
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"zImage",
|
||||
"at91-sama5d4_xplained.dtb",
|
||||
"at91-sama5d4_xplained_hdmi.dtb",
|
||||
"at91-sama5d4_xplained_pda4.dtb",
|
||||
"at91-sama5d4_xplained_pda7.dtb",
|
||||
"at91-sama5d4_xplained_pda7b.dtb",
|
||||
"boot.bin",
|
||||
"u-boot.bin"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
offset = 1M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
73
board/atmel/xplained/readme.txt
Normal file
73
board/atmel/xplained/readme.txt
Normal file
@@ -0,0 +1,73 @@
|
||||
Atmel SAMA5D3 Xplained board
|
||||
============================
|
||||
|
||||
This document explains how to set up a basic Buildroot system on the
|
||||
Atmel SAMA5D3 Xplained board, whose main site is
|
||||
http://www.atmel.com/tools/ATSAMA5D3-XPLD.aspx. Additional details can
|
||||
also be found on the http://www.at91.com/linux4sam/bin/view/Linux4SAM/
|
||||
web site.
|
||||
|
||||
Note that the default Buildroot configuration is prepared to boot from
|
||||
an SD card: the first stage bootloader, second stage bootloader,
|
||||
kernel image and root filesystem are all located on the SD card. Some
|
||||
adjustments in the bootloader configuration will be needed to boot
|
||||
from NAND flash, see board/atmel/nandflash.txt
|
||||
|
||||
Configuring and building Buildroot
|
||||
----------------------------------
|
||||
|
||||
make atmel_sama5d3_xplained_mmc_defconfig
|
||||
make
|
||||
|
||||
Preparing the SD card
|
||||
---------------------
|
||||
|
||||
The SD card must be partitioned with at least two partitions: one
|
||||
FAT16 partition for the bootloaders, kernel image and Device Tree
|
||||
blob, and one ext4 partition for the root filesystem. To partition the
|
||||
SD card:
|
||||
|
||||
sudo sfdisk -uM /dev/mmcblk0 <<EOF
|
||||
,64,6
|
||||
;
|
||||
EOF
|
||||
|
||||
This creates a 64 MB partition for the FAT16 filesystem (type 6) and
|
||||
uses the rest for the ext4 filesystem used for the root filesystem.
|
||||
|
||||
Then, format both partitions:
|
||||
|
||||
sudo mkfs.msdos -n boot /dev/mmcblk0p1
|
||||
sudo mkfs.ext4 -L rootfs -O ^huge_file /dev/mmcblk0p2
|
||||
|
||||
Note: the -O ^huge_file option is needed to avoid enabling the huge
|
||||
files features of ext4 (to support files larges than 2 TB), which
|
||||
needs the kernel option CONFIG_LBDAF to be enabled.
|
||||
|
||||
Mount both partitions (if not done automatically by your system):
|
||||
|
||||
sudo mount /dev/mmcblk0p1 /media/boot
|
||||
sudo mount /dev/mmcblk0p2 /media/rootfs
|
||||
|
||||
Copy the bootloaders, kernel image and Device Tree blob to the first
|
||||
partition:
|
||||
|
||||
cp output/images/uboot-spl.bin /media/boot/boot.bin
|
||||
cp output/images/u-boot.img /media/boot/u-boot.img
|
||||
cp output/images/zImage /media/boot/zImage
|
||||
cp output/images/at91-sama5d3_xplained.dtb /media/boot/at91-sama5d3_xplained.dtb
|
||||
|
||||
Extract the root filesystem to the second partition:
|
||||
|
||||
sudo tar -C /media/rootfs -xf output/images/rootfs.tar
|
||||
|
||||
Unmount both partitions:
|
||||
|
||||
sudo umount /media/boot
|
||||
sudo umount /media/rootfs
|
||||
|
||||
Insert your SD card in your Xplained board, and enjoy. The default
|
||||
U-Boot environment will properly load the kernel and Device Tree blob
|
||||
from the first partition of the SD card, so everything works
|
||||
automatically.
|
||||
|
||||
68
board/avnet/microzed/readme.txt
Normal file
68
board/avnet/microzed/readme.txt
Normal file
@@ -0,0 +1,68 @@
|
||||
This is the buildroot board support for the Avnet Microzed. The Microzed is
|
||||
a development board based on the Xilinx Zynq-7000 based All-Programmable
|
||||
System-On-Chip.
|
||||
|
||||
Microzed information including schematics, reference designs, and manuals are
|
||||
available from http://www.zedboard.org .
|
||||
|
||||
Steps to create a working system for Microzed:
|
||||
|
||||
1) make microzed_defconfig
|
||||
2) make
|
||||
3) copy files BOOT.BIN, u-boot-dtb.img, rootfs.cpio.uboot,
|
||||
uImage, zynq-zed.dtb into your SD card
|
||||
4) boot your Microzed
|
||||
|
||||
The expected output:
|
||||
|
||||
U-Boot SPL 2015.07 (Sep 15 2015 - 16:10:56)
|
||||
mmc boot
|
||||
reading system.dtb
|
||||
spl_load_image_fat_os: error reading image system.dtb, err - -1
|
||||
reading u-boot-dtb.img
|
||||
reading u-boot-dtb.img
|
||||
|
||||
|
||||
U-Boot 2015.07 (Sep 15 2015 - 16:10:56 +0200)
|
||||
|
||||
Model: Zynq MicroZED Board
|
||||
I2C: ready
|
||||
DRAM: ECC disabled 1 GiB
|
||||
MMC: zynq_sdhci: 0
|
||||
Using default environment
|
||||
...
|
||||
|
||||
When using an older U-Boot then 2015.07, a working ps7_init.c
|
||||
file is required to be installed into the U-Boot directory
|
||||
structure. From 2015.07, the major Zynq-based boards are
|
||||
supported without any manual intervention.
|
||||
|
||||
Resulting system
|
||||
----------------
|
||||
A FAT32 partition should be created at the beginning of the SD Card
|
||||
and the following files should be installed:
|
||||
/BOOT.BIN
|
||||
/zynq-zed.dtb
|
||||
/uImage
|
||||
/rootfs-cpio.uboot
|
||||
/u-boot-dtb.img
|
||||
|
||||
All needed files can be taken from output/images/
|
||||
|
||||
BOOT.BIN, uImage and u-boot-dtb.img are direct copies of the same files
|
||||
available on output/images/.
|
||||
|
||||
Note th at the DTB (zynq-zed.dtb) is the same as the one used for the
|
||||
Zedboard, and that this is the recommended solution, see
|
||||
https://forums.xilinx.com/t5/Embedded-Linux/Microzed-default-device-tree-dts/td-p/432856.
|
||||
|
||||
There is a patch attached that redefines the U-Boot's environment
|
||||
to work with Buildroot out-of-the-box.
|
||||
|
||||
You can alter the booting procedure by creating a file uEnv.txt
|
||||
in the root of the SD card. It is a plain text file in format
|
||||
<key>=<value> one per line:
|
||||
|
||||
kernel_image=myimage
|
||||
modeboot=myboot
|
||||
myboot=...
|
||||
@@ -0,0 +1,41 @@
|
||||
From a4c0058967a551385da5e16d2787d9f704cab225 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Viktorin <viktorin@rehivetech.com>
|
||||
Date: Thu, 18 Jun 2015 16:26:02 +0200
|
||||
Subject: [PATCH] zynq: Create microzed-specific U-Boot environment
|
||||
|
||||
This is a copy of the patch supplied for Zedboard.
|
||||
|
||||
Signed-off-by: Davide Viti <d.viti@infosolution.it>
|
||||
|
||||
--- a/include/configs/zynq_microzed.h 2015-07-14 19:32:21.000000000 +0200
|
||||
+++ b/include/configs/zynq_microzed.h 2015-09-02 12:19:35.728503472 +0200
|
||||
@@ -22,4 +22,29 @@
|
||||
|
||||
#include <configs/zynq-common.h>
|
||||
|
||||
+#undef CONFIG_EXTRA_ENV_SETTINGS
|
||||
+#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
+ "envload=mmc info && if fatload mmc 0 0x1000 uEnv.txt;"\
|
||||
+ " then echo Importing uEnv.txt; env import -t 0x1000" \
|
||||
+ " $filesize; fi;\0" \
|
||||
+ "bootcmd=run $modeboot\0" \
|
||||
+ "modeboot=sdboot\0" \
|
||||
+ "baudrate=115200\0" \
|
||||
+ "bootenv=uEnv.txt\0" \
|
||||
+ "devicetree_image=zynq-zed.dtb\0" \
|
||||
+ "kernel_image=uImage\0" \
|
||||
+ "ramdisk_image=rootfs.cpio.uboot\0" \
|
||||
+ "fpga_image=system.bit\0" \
|
||||
+ "sdboot=echo Booting from SD...;" \
|
||||
+ " run envload; run fpgaboot;" \
|
||||
+ " fatload mmc 0 0x1000000 ${kernel_image}" \
|
||||
+ " && fatload mmc 0 0x2000000 ${ramdisk_image}" \
|
||||
+ " && fatload mmc 0 0x3000000 ${devicetree_image}" \
|
||||
+ " && bootm 0x1000000 0x2000000 0x3000000\0" \
|
||||
+ "fpgaboot=if fatload mmc 0 0x1000000 ${fpga_image};" \
|
||||
+ " then echo Booting FPGA from ${fpga_image};" \
|
||||
+ " fpga info 0 && fpga loadb 0 0x1000000 $filesize;" \
|
||||
+ " else echo FPGA image ${fpga_image} was not found," \
|
||||
+ " skipping...; fi;\0"
|
||||
+
|
||||
#endif /* __CONFIG_ZYNQ_MICROZED_H */
|
||||
64
board/avnet/zedboard/readme.txt
Normal file
64
board/avnet/zedboard/readme.txt
Normal file
@@ -0,0 +1,64 @@
|
||||
This is the buildroot board support for the Avnet Zedboard. The Zedboard is
|
||||
a development board based on the Xilinx Zynq-7000 based All-Programmable
|
||||
System-On-Chip.
|
||||
|
||||
Zedboard information including schematics, reference designs, and manuals are
|
||||
available from http://www.zedboard.org .
|
||||
|
||||
Steps to create a working system for Zedboard:
|
||||
|
||||
1) make zedboard_defconfig
|
||||
2) make
|
||||
3) copy files BOOT.BIN, u-boot-dtb.img, rootfs.cpio.uboot,
|
||||
uImage, zynq-zed.dtb into your SD card
|
||||
4) boot your Zedboard
|
||||
|
||||
The expected output:
|
||||
|
||||
U-Boot SPL 2015.07 (Jul 22 2015 - 12:01:55)
|
||||
mmc boot
|
||||
reading system.dtb
|
||||
spl_load_image_fat_os: error reading image system.dtb, err - -1
|
||||
reading u-boot-dtb.img
|
||||
reading u-boot-dtb.img
|
||||
|
||||
U-Boot 2015.07 (Jul 22 2015 - 12:01:55 +0200)
|
||||
|
||||
Model: Zynq ZED Board
|
||||
I2C: ready
|
||||
DRAM: ECC disabled 512 MiB
|
||||
MMC: zynq_sdhci: 0
|
||||
Using default environment
|
||||
...
|
||||
|
||||
When using an older U-Boot then 2015.07, a working ps7_init.c
|
||||
file is required to be installed into the U-Boot directory
|
||||
structure. From 2015.07, the major Zynq-based boards are
|
||||
supported without any manual intervention.
|
||||
|
||||
Resulting system
|
||||
----------------
|
||||
A FAT32 partition should be created at the beginning of the SD Card
|
||||
and the following files should be installed:
|
||||
/BOOT.BIN
|
||||
/zynq-zed.dtb
|
||||
/uImage
|
||||
/rootfs-cpio.uboot
|
||||
/u-boot-dtb.img
|
||||
|
||||
|
||||
All needed files can be taken from output/images/
|
||||
|
||||
BOOT.BIN, uImage and u-boot-dtb.img are direct copies of the same files
|
||||
available on output/images/
|
||||
|
||||
There is a patch attached that redefines the U-Boot's environment
|
||||
to work with Buildroot out-of-the-box.
|
||||
|
||||
You can alter the booting procedure by creating a file uEnv.txt
|
||||
in the root of the SD card. It is a plain text file in format
|
||||
<key>=<value> one per line:
|
||||
|
||||
kernel_image=myimage
|
||||
modeboot=myboot
|
||||
myboot=...
|
||||
@@ -0,0 +1,45 @@
|
||||
From a4c0058967a551385da5e16d2787d9f704cab225 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Viktorin <viktorin@rehivetech.com>
|
||||
Date: Thu, 18 Jun 2015 16:26:02 +0200
|
||||
Subject: [PATCH 2/2] zynq: Create zedboard-specific U-Boot environment
|
||||
|
||||
---
|
||||
include/configs/zynq_zed.h | 25 +++++++++++++++++++++++++
|
||||
1 file changed, 25 insertions(+)
|
||||
|
||||
diff --git a/include/configs/zynq_zed.h b/include/configs/zynq_zed.h
|
||||
index 946de95..2400a88 100644
|
||||
--- a/include/configs/zynq_zed.h
|
||||
+++ b/include/configs/zynq_zed.h
|
||||
@@ -24,4 +24,28 @@
|
||||
|
||||
#include <configs/zynq-common.h>
|
||||
|
||||
+#undef CONFIG_EXTRA_ENV_SETTINGS
|
||||
+#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
+ "envload=mmc info && if fatload mmc 0 0x1000 uEnv.txt;"\
|
||||
+ " then echo Importing uEnv.txt; env import -t 0x1000" \
|
||||
+ " $filesize; fi;\0" \
|
||||
+ "bootcmd=run envload; run $modeboot\0" \
|
||||
+ "modeboot=sdboot\0" \
|
||||
+ "baudrate=115200\0" \
|
||||
+ "bootenv=uEnv.txt\0" \
|
||||
+ "devicetree_image=zynq-zed.dtb\0" \
|
||||
+ "kernel_image=uImage\0" \
|
||||
+ "ramdisk_image=rootfs.cpio.uboot\0" \
|
||||
+ "fpga_image=system.bit\0" \
|
||||
+ "sdboot=echo Booting from SD...; run fpgaboot;" \
|
||||
+ " fatload mmc 0 0x1000000 ${kernel_image}" \
|
||||
+ " && fatload mmc 0 0x2000000 ${ramdisk_image}" \
|
||||
+ " && fatload mmc 0 0x3000000 ${devicetree_image}" \
|
||||
+ " && bootm 0x1000000 0x2000000 0x3000000\0" \
|
||||
+ "fpgaboot=if fatload mmc 0 0x1000000 ${fpga_image};" \
|
||||
+ " then echo Booting FPGA from ${fpga_image};" \
|
||||
+ " fpga info 0 && fpga loadb 0 0x1000000 $filesize;" \
|
||||
+ " else echo FPGA image ${fpga_image} was not found," \
|
||||
+ " skipping...; fi;\0"
|
||||
+
|
||||
#endif /* __CONFIG_ZYNQ_ZED_H */
|
||||
--
|
||||
2.4.3
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"MLO",
|
||||
"u-boot.img",
|
||||
"zImage",
|
||||
"uEnv.txt",
|
||||
"am335x-evm.dtb",
|
||||
"am335x-evmsk.dtb",
|
||||
"am335x-bone.dtb",
|
||||
"am335x-boneblack.dtb",
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
251
board/beaglebone/linux-3.12.config
Normal file
251
board/beaglebone/linux-3.12.config
Normal file
@@ -0,0 +1,251 @@
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=16
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_EXPERT=y
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_KPROBES=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_FORCE_LOAD=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
||||
CONFIG_MODVERSIONS=y
|
||||
CONFIG_MODULE_SRCVERSION_ALL=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_ARCH_OMAP2PLUS=y
|
||||
CONFIG_OMAP_RESET_CLOCKS=y
|
||||
CONFIG_OMAP_MUX_DEBUG=y
|
||||
CONFIG_ARCH_OMAP3=y
|
||||
CONFIG_ARCH_OMAP4=y
|
||||
CONFIG_SOC_AM43XX=y
|
||||
# CONFIG_ARCH_OMAP2PLUS_TYPICAL is not set
|
||||
# CONFIG_SOC_TI81XX is not set
|
||||
# CONFIG_MACH_OMAP3_BEAGLE is not set
|
||||
# CONFIG_MACH_DEVKIT8000 is not set
|
||||
# CONFIG_MACH_OMAP_LDP is not set
|
||||
# CONFIG_MACH_OMAP3530_LV_SOM is not set
|
||||
# CONFIG_MACH_OMAP3_TORPEDO is not set
|
||||
# CONFIG_MACH_OVERO is not set
|
||||
# CONFIG_MACH_OMAP3EVM is not set
|
||||
# CONFIG_MACH_OMAP3_PANDORA is not set
|
||||
# CONFIG_MACH_TOUCHBOOK is not set
|
||||
# CONFIG_MACH_OMAP_3430SDP is not set
|
||||
# CONFIG_MACH_NOKIA_RM680 is not set
|
||||
# CONFIG_MACH_NOKIA_RX51 is not set
|
||||
# CONFIG_MACH_OMAP_ZOOM2 is not set
|
||||
# CONFIG_MACH_OMAP_ZOOM3 is not set
|
||||
# CONFIG_MACH_CM_T35 is not set
|
||||
# CONFIG_MACH_CM_T3517 is not set
|
||||
# CONFIG_MACH_IGEP0020 is not set
|
||||
# CONFIG_MACH_IGEP0030 is not set
|
||||
# CONFIG_MACH_SBC3530 is not set
|
||||
# CONFIG_MACH_OMAP_3630SDP is not set
|
||||
CONFIG_ARM_THUMBEE=y
|
||||
CONFIG_HAVE_ARM_ARCH_TIMER=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="root=/dev/mmcblk0p2 rootwait console=ttyO2,115200"
|
||||
CONFIG_KEXEC=y
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_STAT_DETAILS=y
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
|
||||
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
|
||||
CONFIG_CPU_FREQ_GOV_USERSPACE=y
|
||||
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
|
||||
CONFIG_GENERIC_CPUFREQ_CPU0=y
|
||||
# CONFIG_ARM_OMAP2PLUS_CPUFREQ is not set
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_VFP=y
|
||||
CONFIG_NEON=y
|
||||
CONFIG_BINFMT_MISC=y
|
||||
CONFIG_PM_RUNTIME=y
|
||||
CONFIG_PM_DEBUG=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM_USER=y
|
||||
CONFIG_NET_KEY=y
|
||||
CONFIG_NET_KEY_MIGRATE=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_DHCP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
# CONFIG_WIRELESS is not set
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_OMAP_OCP2SCP=y
|
||||
CONFIG_CONNECTOR=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_SIZE=16384
|
||||
CONFIG_CROSSBAR=y
|
||||
CONFIG_EEPROM_93CX6=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_NETDEVICES=y
|
||||
# CONFIG_NET_VENDOR_ARC is not set
|
||||
# CONFIG_NET_CADENCE is not set
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_CIRRUS is not set
|
||||
# CONFIG_NET_VENDOR_FARADAY is not set
|
||||
# CONFIG_NET_VENDOR_INTEL is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_NATSEMI is not set
|
||||
# CONFIG_NET_VENDOR_SEEQ is not set
|
||||
# CONFIG_NET_VENDOR_SMSC is not set
|
||||
# CONFIG_NET_VENDOR_STMICRO is not set
|
||||
CONFIG_TI_CPSW=y
|
||||
CONFIG_TI_CPTS=y
|
||||
# CONFIG_NET_VENDOR_VIA is not set
|
||||
# CONFIG_NET_VENDOR_WIZNET is not set
|
||||
CONFIG_AT803X_PHY=y
|
||||
CONFIG_SMSC_PHY=y
|
||||
# CONFIG_WLAN is not set
|
||||
# CONFIG_INPUT_MOUSEDEV is not set
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
CONFIG_SERIO_LIBPS2=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=32
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
CONFIG_SERIAL_8250_DETECT_IRQ=y
|
||||
CONFIG_SERIAL_8250_RSA=y
|
||||
CONFIG_SERIAL_OMAP=y
|
||||
CONFIG_SERIAL_OMAP_CONSOLE=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_OMAP=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_OMAP24XX=y
|
||||
CONFIG_SPI_TI_QSPI=y
|
||||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_DEBUG_GPIO=y
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_W1=y
|
||||
CONFIG_POWER_SUPPLY=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_THERMAL_GOV_FAIR_SHARE=y
|
||||
CONFIG_THERMAL_GOV_USER_SPACE=y
|
||||
CONFIG_CPU_THERMAL=y
|
||||
CONFIG_TI_SOC_THERMAL=y
|
||||
CONFIG_TI_THERMAL=y
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_OMAP_WATCHDOG=y
|
||||
CONFIG_MFD_SYSCON=y
|
||||
CONFIG_MFD_TPS65217=y
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_REGULATOR_PBIAS=y
|
||||
CONFIG_REGULATOR_TPS65023=y
|
||||
CONFIG_REGULATOR_TPS6507X=y
|
||||
CONFIG_REGULATOR_TPS65217=y
|
||||
CONFIG_REGULATOR_TIAVSCLASS0=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_FIRMWARE_EDID=y
|
||||
CONFIG_FB_DA8XX=y
|
||||
CONFIG_FB_DA8XX_TDA998X=y
|
||||
CONFIG_OMAP2_DSS=y
|
||||
CONFIG_OMAP2_DSS_SDI=y
|
||||
CONFIG_OMAP2_DSS_DSI=y
|
||||
CONFIG_FB_OMAP2=y
|
||||
CONFIG_DISPLAY_CONNECTOR_HDMI=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_MUSB_HDRC=m
|
||||
CONFIG_USB_MUSB_OMAP2PLUS=m
|
||||
CONFIG_USB_MUSB_DSPS=m
|
||||
CONFIG_USB_TI_CPPI41_DMA=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_AM335X_PHY_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_GADGET_DEBUG=y
|
||||
CONFIG_USB_GADGET_DEBUG_FS=y
|
||||
CONFIG_USB_ZERO=m
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_USB_ETH_EEM=y
|
||||
CONFIG_USB_MASS_STORAGE=m
|
||||
CONFIG_USB_G_MULTI=m
|
||||
CONFIG_USB_G_MULTI_CDC=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_UNSAFE_RESUME=y
|
||||
CONFIG_SDIO_UART=y
|
||||
CONFIG_MMC_OMAP=y
|
||||
CONFIG_MMC_OMAP_HS=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_ONESHOT=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
|
||||
CONFIG_LEDS_TRIGGER_CPU=y
|
||||
CONFIG_LEDS_TRIGGER_GPIO=y
|
||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_OMAP=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_TI_EDMA=y
|
||||
CONFIG_DMA_OMAP=y
|
||||
CONFIG_TI_CPPI41=y
|
||||
CONFIG_COMMON_CLK_DEBUG=y
|
||||
CONFIG_OMAP_USB2=y
|
||||
CONFIG_OMAP_PIPE3=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_FS_XATTR is not set
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_QUOTA=y
|
||||
CONFIG_QFMT_V2=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_PRINTK_TIME=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_SCHEDSTATS=y
|
||||
CONFIG_TIMER_STATS=y
|
||||
CONFIG_PROVE_LOCKING=y
|
||||
# CONFIG_DEBUG_BUGVERBOSE is not set
|
||||
CONFIG_CRYPTO_MANAGER=m
|
||||
CONFIG_CRYPTO_SHA256=m
|
||||
CONFIG_CRYPTO_DEFLATE=y
|
||||
CONFIG_CRYPTO_LZO=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
CONFIG_CRC_CCITT=y
|
||||
CONFIG_CRC_T10DIF=y
|
||||
CONFIG_CRC_ITU_T=y
|
||||
CONFIG_CRC7=y
|
||||
CONFIG_LIBCRC32C=y
|
||||
CONFIG_AVERAGE=y
|
||||
@@ -1,12 +0,0 @@
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_PREEMPT_COUNT=y
|
||||
CONFIG_OMAP2_DSS_INIT=y
|
||||
CONFIG_OMAP_DSS_BASE=y
|
||||
CONFIG_OMAP2_DSS=y
|
||||
CONFIG_OMAP2_DSS_DPI=y
|
||||
CONFIG_DRM_OMAP=y
|
||||
CONFIG_DRM_OMAP_NUM_CRTCS=2
|
||||
CONFIG_DRM_OMAP_WB_M2M=y
|
||||
CONFIG_DRM_TILCDC=y
|
||||
CONFIG_DRM_I2C_NXP_TDA998X=y
|
||||
CONFIG_DRM=y
|
||||
@@ -1,16 +0,0 @@
|
||||
This patch keeps the debugSS clock alive, it clocks the JTAG macro and enables
|
||||
access to the SoC via JTAG after the kernel booted.
|
||||
|
||||
Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
|
||||
---
|
||||
diff -Naur linux-orig/arch/arm/mach-omap2/omap_hwmod_33xx_data.c linux-52c4aa7cdb93d61f8008f380135beaf7b8fa6593/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
|
||||
--- linux-orig/arch/arm/mach-omap2/omap_hwmod_33xx_data.c 2015-10-02 17:30:56.000000000 +0200
|
||||
+++ linux-52c4aa7cdb93d61f8008f380135beaf7b8fa6593/arch/arm/mach-omap2/omap_hwmod_33xx_data.c 2016-08-15 11:28:55.017617612 +0200
|
||||
@@ -208,6 +208,7 @@
|
||||
.name = "debugss",
|
||||
.class = &am33xx_debugss_hwmod_class,
|
||||
.clkdm_name = "l3_aon_clkdm",
|
||||
+ .flags = (HWMOD_INIT_NO_IDLE|HWMOD_INIT_NO_RESET), /* keep debugSS clock alive for JTAG */
|
||||
.main_clk = "trace_clk_div_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
@@ -0,0 +1,34 @@
|
||||
From 29885f2f3d700341d322274db6ad085e601c0994 Mon Sep 17 00:00:00 2001
|
||||
From: Pantelis Antoniou <panto@antoniou-consulting.com>
|
||||
Date: Fri, 4 Jan 2013 00:32:33 +0200
|
||||
Subject: [PATCH 3/3] arm: Export cache flush management symbols when
|
||||
!MULTI_CACHE
|
||||
|
||||
When compiling a kernel without CONFIG_MULTI_CACHE enabled the
|
||||
dma access functions end up not being exported. Fix it.
|
||||
|
||||
Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
|
||||
---
|
||||
arch/arm/kernel/setup.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
|
||||
index da1d1aa..dcb678c 100644
|
||||
--- a/arch/arm/kernel/setup.c
|
||||
+++ b/arch/arm/kernel/setup.c
|
||||
@@ -923,3 +923,12 @@ const struct seq_operations cpuinfo_op = {
|
||||
.stop = c_stop,
|
||||
.show = c_show
|
||||
};
|
||||
+
|
||||
+/* export the cache management functions */
|
||||
+#ifndef MULTI_CACHE
|
||||
+
|
||||
+EXPORT_SYMBOL(__glue(_CACHE,_dma_map_area));
|
||||
+EXPORT_SYMBOL(__glue(_CACHE,_dma_unmap_area));
|
||||
+EXPORT_SYMBOL(__glue(_CACHE,_dma_flush_range));
|
||||
+
|
||||
+#endif
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
@@ -1,21 +1,6 @@
|
||||
#!/bin/sh
|
||||
# post-image.sh for CircuitCo BeagleBone and TI am335x-evm
|
||||
# post-image.sh for BeagleBone
|
||||
# 2014, Marcin Jabrzyk <marcin.jabrzyk@gmail.com>
|
||||
# 2016, Lothar Felten <lothar.felten@gmail.com>
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
# copy the uEnv.txt to the output/images directory
|
||||
cp board/beaglebone/uEnv.txt $BINARIES_DIR/uEnv.txt
|
||||
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
|
||||
@@ -1,52 +1,62 @@
|
||||
CircuitCo BeagleBone
|
||||
Texas Instuments AM335x Evaluation Module (TMDXEVM3358)
|
||||
BeagleBone
|
||||
|
||||
Description
|
||||
===========
|
||||
|
||||
This configuration will build a complete image for the beaglebone and
|
||||
the TI AM335x-EVM, the board type is identified by the on-board
|
||||
EEPROM. The configuration is based on the
|
||||
ti-processor-sdk-02.00.00.00. Device tree blobs for beaglebone
|
||||
variants and the evm-sk are built too.
|
||||
|
||||
For Qt5 support support use the beaglebone_qt5_defconfig.
|
||||
Intro
|
||||
=====
|
||||
To be able to use BeagleBone board with the images generated by
|
||||
Buildroot, you have to prepare the SDCard.
|
||||
|
||||
How to build it
|
||||
===============
|
||||
|
||||
Select the default configuration for the target:
|
||||
$ make beaglebone_defconfig
|
||||
$ make beaglebone_defconfig
|
||||
|
||||
Optional: modify the configuration:
|
||||
$ make menuconfig
|
||||
Then you can edit the build options using
|
||||
|
||||
Build:
|
||||
$ make
|
||||
$ make menuconfig
|
||||
|
||||
Compile all and build rootfs image:
|
||||
|
||||
$ make
|
||||
|
||||
Result of the build
|
||||
-------------------
|
||||
|
||||
After building, you should get a tree like this:
|
||||
|
||||
output/images/
|
||||
├── am335x-boneblack.dtb
|
||||
├── am335x-bone.dtb
|
||||
├── MLO
|
||||
├── rootfs.ext2
|
||||
├── u-boot.img
|
||||
├── uEnv.txt
|
||||
└── zImage
|
||||
|
||||
|
||||
Prepare your SDCard
|
||||
===================
|
||||
output/images/
|
||||
├── am335x-boneblack.dtb
|
||||
├── am335x-bone.dtb
|
||||
├── am335x-evm.dtb
|
||||
├── am335x-evmsk.dtb
|
||||
├── boot.vfat
|
||||
├── MLO
|
||||
├── rootfs.ext2
|
||||
├── rootfs.tar
|
||||
├── sdcard.img
|
||||
├── u-boot.img
|
||||
├── uEnv.txt
|
||||
└── zImage
|
||||
|
||||
To copy the image file to the sdcard use dd:
|
||||
$ dd if=output/images/sdcard.img of=/dev/XXX
|
||||
You need to prepare first partition in fat32 and marked as bootable,
|
||||
and second where you will write rootfs.
|
||||
|
||||
Tested hardware
|
||||
===============
|
||||
am335x-evm (rev. 1.1A)
|
||||
beagleboneblack (rev. A5A)
|
||||
beaglebone (rev. A6)
|
||||
Copy the files to boot partition
|
||||
|
||||
2016, Lothar Felten <lothar.felten@gmail.com>
|
||||
$ cp MLO u-boot.img zImage uEnv.txt *.dtb /media/zzzzz
|
||||
|
||||
where /media/zzzzz is the mount point.
|
||||
Then you need to write the rootfs image onto SDCard:
|
||||
|
||||
# dd if=rootfs.ext2 of=/dev/xxxxx
|
||||
|
||||
where /dev/xxxxx is the second partition. Use:
|
||||
|
||||
# fdisk -l
|
||||
|
||||
to check for correct one.
|
||||
|
||||
Finish
|
||||
======
|
||||
|
||||
Unmount all mounted SDCard partitions and insert the card to BeagleBone.
|
||||
Hold the "BOOT" button and apply power. Then release the "BOOT" button.
|
||||
The output is available on the serial console.
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
bootpart=0:1
|
||||
bootdir=
|
||||
bootargs=console=ttyO0,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait
|
||||
uenvcmd=run loadimage;run loadfdt;printenv bootargs;bootz ${loadaddr} - ${fdtaddr};
|
||||
uenvcmd=run loadimage;run loadramdisk;run findfdt;run loadfdt;run ramboot
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
# Minimal SD card image for Boundary Devices platforms
|
||||
#
|
||||
# It does not need a boot section for a bootloader since it is booted
|
||||
# from its NOR flash memory.
|
||||
#
|
||||
# To update the bootloader, execute the following from U-Boot prompt:
|
||||
# => run upgradeu
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
|
||||
exit $?
|
||||
@@ -1,30 +0,0 @@
|
||||
Buildroot for Boundary Devices platforms:
|
||||
|
||||
https://boundarydevices.com/product-category/popular-sbc-and-som-modules/
|
||||
|
||||
Here is the list of targeted platforms per defconfig:
|
||||
|
||||
- nitrogen6x_defconfig
|
||||
- BD-SL-i.MX6 (SABRE-Lite)
|
||||
- Nitrogen6X
|
||||
- Nitrogen6_Lite
|
||||
- Nitrogen6_MAX
|
||||
- Nitrogen6_VM
|
||||
- Nitrogen6_SOM
|
||||
- Nitrogen6_SOMv2
|
||||
|
||||
- nitrogen6sx_defconfig
|
||||
- Nitrogen6_SoloX
|
||||
|
||||
- nitrogen7_defconfig
|
||||
- Nitrogen7
|
||||
|
||||
To install, simply copy the image to a uSD card:
|
||||
|
||||
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
|
||||
|
||||
Where 'sdX' is the device node of the uSD partition.
|
||||
|
||||
To upgrade u-boot, cancel autoboot and type:
|
||||
|
||||
> run upgradeu
|
||||
@@ -1,19 +1,8 @@
|
||||
setenv bootargs ''
|
||||
|
||||
if itest.s x6SX == "x${cpu}" || itest.s x7D == "x${cpu}"; then
|
||||
a_script=0x80800000
|
||||
a_zImage=0x80800000
|
||||
a_fdt=0x83000000
|
||||
m4=''
|
||||
if itest.s "x1" == "x$m4enabled" ; then
|
||||
run m4boot;
|
||||
m4='-m4';
|
||||
fi
|
||||
else
|
||||
a_script=0x10800000
|
||||
a_zImage=0x10800000
|
||||
a_fdt=0x13000000
|
||||
fi
|
||||
a_script=0x10800000
|
||||
a_zImage=0x10800000
|
||||
a_fdt=0x13000000
|
||||
|
||||
setenv initrd_high 0xffffffff
|
||||
if itest.s "x" == "x${dtbname}" ; then
|
||||
@@ -24,9 +13,15 @@ if itest.s "x" == "x${dtbname}" ; then
|
||||
elif itest.s x6QP == "x${cpu}" ; then
|
||||
dtbname=imx6qp-${board}.dtb;
|
||||
elif itest.s x6SX == "x${cpu}" ; then
|
||||
dtbname=imx6sx-${board}${m4}.dtb;
|
||||
elif itest.s x7D == "x${cpu}" ; then
|
||||
dtbname=imx7d-${board}${m4}.dtb;
|
||||
if itest.s "x1" != "x$m4enabled" ; then
|
||||
dtbname=imx6sx-${board}.dtb;
|
||||
else
|
||||
run m4boot;
|
||||
dtbname=imx6sx-${board}-m4.dtb;
|
||||
fi
|
||||
a_script=0x80800000
|
||||
a_zImage=0x80800000
|
||||
a_fdt=0x83000000
|
||||
else
|
||||
dtbname=imx6q-${board}.dtb;
|
||||
fi
|
||||
@@ -52,6 +47,10 @@ else
|
||||
exit;
|
||||
fi
|
||||
|
||||
# first enable tfp410
|
||||
i2c dev 1
|
||||
i2c mw 38 8.1 bd
|
||||
|
||||
cmd_xxx_present=
|
||||
fdt resize
|
||||
if itest.s "x" != "x${cmd_custom}" ; then
|
||||
@@ -92,12 +91,14 @@ fi
|
||||
|
||||
setenv bootargs "${bootargs} console=${console},115200 vmalloc=400M consoleblank=0 rootwait fixrtc"
|
||||
|
||||
bpart=1
|
||||
|
||||
if test "sata" = "${dtype}" ; then
|
||||
setenv bootargs "${bootargs} root=/dev/sda${bootpart}" ;
|
||||
setenv bootargs "${bootargs} root=/dev/sda${bpart}" ;
|
||||
elif test "usb" = "${dtype}" ; then
|
||||
setenv bootargs "${bootargs} root=/dev/sda${bootpart}" ;
|
||||
setenv bootargs "${bootargs} root=/dev/sda${bpart}" ;
|
||||
else
|
||||
setenv bootargs "${bootargs} root=/dev/mmcblk${disk}p${bootpart}"
|
||||
setenv bootargs "${bootargs} root=/dev/mmcblk${disk}p${bpart}"
|
||||
fi
|
||||
|
||||
if itest.s "x" != "x${disable_giga}" ; then
|
||||
@@ -7,7 +7,7 @@ offset=0x400
|
||||
a_uImage1=0x12000000
|
||||
a_uImage2=0x12400000
|
||||
|
||||
if itest.s x6SX == "x${cpu}" || itest.s x7D == "x${cpu}"; then
|
||||
if itest.s x6SX == "x$cpu" ; then
|
||||
a_uImage1=0x82000000
|
||||
a_uImage2=0x82400000
|
||||
fi
|
||||
13
board/boundarydevices/nitrogen6x/readme.txt
Normal file
13
board/boundarydevices/nitrogen6x/readme.txt
Normal file
@@ -0,0 +1,13 @@
|
||||
Buildroot for Boundary Devices Nitrogen6X:
|
||||
|
||||
http://boundarydevices.com/products/nitrogen6x-board-imx6-arm-cortex-a9-sbc/
|
||||
|
||||
To install, simply write rootfs.ext2 to the first partition of a uSD card:
|
||||
|
||||
sudo dd if=output/images/rootfs.ext2 of=/dev/sdX1
|
||||
|
||||
Where 'sdX1' is the device node of the uSD partition.
|
||||
|
||||
To upgrade u-boot, cancel autoboot and type:
|
||||
|
||||
run upgradeu
|
||||
111
board/calao/qil-a9260/linux-3.4.7.config
Normal file
111
board/calao/qil-a9260/linux-3.4.7.config
Normal file
@@ -0,0 +1,111 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_AT91=y
|
||||
CONFIG_ARCH_AT91SAM9260=y
|
||||
CONFIG_MACH_QIL_A9260=y
|
||||
CONFIG_AT91_SLOW_CLOCK=y
|
||||
CONFIG_AT91_EARLY_USART0=y
|
||||
# CONFIG_ARM_THUMB is not set
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="mem=64M console=ttyS1,115200"
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_ROUTE_VERBOSE=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_DATAFLASH=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_ATMEL=y
|
||||
CONFIG_MTD_NAND_ATMEL_ECC_SOFT=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_MACB=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_EVBUG=y
|
||||
# CONFIG_KEYBOARD_ATKBD is not set
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_SERIO is not set
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_ATMEL=y
|
||||
# CONFIG_HWMON is not set
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_WATCHDOG_NOWAYOUT=y
|
||||
# CONFIG_USB_HID is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_AT91=m
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_M41T94=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_FUSE_FS=m
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_UBIFS_FS_XATTR=y
|
||||
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
603
board/calao/qil-a9260/patches/at91bootstrap/0001-qil-a9260.patch
Normal file
603
board/calao/qil-a9260/patches/at91bootstrap/0001-qil-a9260.patch
Normal file
@@ -0,0 +1,603 @@
|
||||
From a3e08beea8bf5e96e1237eef4a82f4a2fdd5286b Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Thu, 19 Jul 2012 14:19:59 +0200
|
||||
Subject: [PATCH] Add support for the Calao-systems QIL-A9260
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
board/qil_a9260/nandflash/Makefile | 122 ++++++++++++++
|
||||
board/qil_a9260/nandflash/qil-a9260.h | 109 ++++++++++++
|
||||
board/qil_a9260/qil_a9260.c | 298 +++++++++++++++++++++++++++++++++
|
||||
crt0_gnu.S | 7 +
|
||||
include/part.h | 6 +-
|
||||
5 files changed, 541 insertions(+), 1 deletions(-)
|
||||
create mode 100644 board/qil_a9260/nandflash/Makefile
|
||||
create mode 100644 board/qil_a9260/nandflash/qil-a9260.h
|
||||
create mode 100644 board/qil_a9260/qil_a9260.c
|
||||
|
||||
diff --git a/board/qil_a9260/nandflash/Makefile b/board/qil_a9260/nandflash/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..209a25f
|
||||
--- /dev/null
|
||||
+++ b/board/qil_a9260/nandflash/Makefile
|
||||
@@ -0,0 +1,122 @@
|
||||
+# TODO: set this appropriately for your local toolchain
|
||||
+ifndef ERASE_FCT
|
||||
+ERASE_FCT=rm -f
|
||||
+endif
|
||||
+ifndef CROSS_COMPILE
|
||||
+CROSS_COMPILE=arm-elf-
|
||||
+endif
|
||||
+
|
||||
+TOOLCHAIN=gcc
|
||||
+
|
||||
+BOOTSTRAP_PATH=../../..
|
||||
+
|
||||
+# NandFlashBoot Configuration for QIL-A9260
|
||||
+
|
||||
+# Target name (case sensitive!!!)
|
||||
+TARGET=AT91SAM9260
|
||||
+# Board name (case sensitive!!!)
|
||||
+BOARD=qil_a9260
|
||||
+# Link Address and Top_of_Memory
|
||||
+LINK_ADDR=0x200000
|
||||
+TOP_OF_MEMORY=0x301000
|
||||
+# Name of current directory
|
||||
+PROJECT=nandflash
|
||||
+
|
||||
+ifndef BOOT_NAME
|
||||
+BOOT_NAME=$(PROJECT)_$(BOARD)
|
||||
+endif
|
||||
+
|
||||
+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+
|
||||
+AS=$(CROSS_COMPILE)gcc
|
||||
+CC=$(CROSS_COMPILE)gcc
|
||||
+LD=$(CROSS_COMPILE)gcc
|
||||
+NM= $(CROSS_COMPILE)nm
|
||||
+SIZE=$(CROSS_COMPILE)size
|
||||
+OBJCOPY=$(CROSS_COMPILE)objcopy
|
||||
+OBJDUMP=$(CROSS_COMPILE)objdump
|
||||
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
|
||||
+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
|
||||
+
|
||||
+# Linker flags.
|
||||
+# -Wl,...: tell GCC to pass this to linker.
|
||||
+# -Map: create map file
|
||||
+# --cref: add cross reference to map file
|
||||
+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
|
||||
+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
|
||||
+OBJS=crt0_gnu.o
|
||||
+
|
||||
+endif
|
||||
+
|
||||
+OBJS+=\
|
||||
+ $(BOARD).o \
|
||||
+ main.o \
|
||||
+ gpio.o \
|
||||
+ pmc.o \
|
||||
+ debug.o \
|
||||
+ sdramc.o \
|
||||
+ nandflash.o \
|
||||
+ _udivsi3.o \
|
||||
+ _umodsi3.o \
|
||||
+ div0.o \
|
||||
+ udiv.o \
|
||||
+ string.o
|
||||
+
|
||||
+
|
||||
+rebuild: clean all
|
||||
+
|
||||
+all: $(BOOT_NAME)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+$(BOOT_NAME): $(OBJS)
|
||||
+ $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
|
||||
+ $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
|
||||
+
|
||||
+main.o: $(BOOTSTRAP_PATH)/main.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
|
||||
+
|
||||
+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
|
||||
+
|
||||
+pmc.o: $(BOOTSTRAP_PATH)/driver/pmc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
|
||||
+
|
||||
+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
|
||||
+
|
||||
+sdramc.o: $(BOOTSTRAP_PATH)/driver/sdramc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
|
||||
+
|
||||
+dataflash.o: $(BOOTSTRAP_PATH)/driver/dataflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
|
||||
+
|
||||
+nandflash.o: $(BOOTSTRAP_PATH)/driver/nandflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
|
||||
+
|
||||
+crt0_gnu.o: $(BOOTSTRAP_PATH)/crt0_gnu.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
|
||||
+
|
||||
+div0.o: $(BOOTSTRAP_PATH)/lib/div0.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
|
||||
+
|
||||
+string.o: $(BOOTSTRAP_PATH)/lib/string.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
|
||||
+
|
||||
+udiv.o: $(BOOTSTRAP_PATH)/lib/udiv.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
|
||||
+
|
||||
+_udivsi3.o: $(BOOTSTRAP_PATH)/lib/_udivsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
|
||||
+
|
||||
+_umodsi3.o: $(BOOTSTRAP_PATH)/lib/_umodsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
|
||||
+
|
||||
+clean:
|
||||
+ $(ERASE_FCT) *.o *.bin *.elf *.map
|
||||
diff --git a/board/qil_a9260/nandflash/qil-a9260.h b/board/qil_a9260/nandflash/qil-a9260.h
|
||||
new file mode 100644
|
||||
index 0000000..c87002e
|
||||
--- /dev/null
|
||||
+++ b/board/qil_a9260/nandflash/qil-a9260.h
|
||||
@@ -0,0 +1,109 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : qil-a9260.h
|
||||
+ * Object :
|
||||
+ * Creation : GH July 19th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#ifndef _QIL_A9260_H
|
||||
+#define _QIL_A9260_H
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* PMC Settings */
|
||||
+/* */
|
||||
+/* The main oscillator is enabled as soon as possible in the c_startup */
|
||||
+/* and MCK is switched on the main oscillator. */
|
||||
+/* PLL initialization is done later in the hw_init() function */
|
||||
+/* ******************************************************************* */
|
||||
+#define MASTER_CLOCK (180000000/2)
|
||||
+#define PLL_LOCK_TIMEOUT 1000000
|
||||
+
|
||||
+#define PLLA_SETTINGS 0x20593F06
|
||||
+#define PLLB_SETTINGS 0x10483F0E
|
||||
+
|
||||
+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
|
||||
+#define MCKR_SETTINGS (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
|
||||
+#define MCKR_CSS_SETTINGS (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* NandFlash Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_SMARTMEDIA_BASE 0x40000000
|
||||
+
|
||||
+#define AT91_SMART_MEDIA_ALE (1 << 21) /* our ALE is AD21 */
|
||||
+#define AT91_SMART_MEDIA_CLE (1 << 22) /* our CLE is AD22 */
|
||||
+
|
||||
+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
|
||||
+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
|
||||
+
|
||||
+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
|
||||
+
|
||||
+
|
||||
+/* ******************************************************************** */
|
||||
+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 90000000.*/
|
||||
+/* Please refer to SMC section in AT91SAM datasheet to learn how */
|
||||
+/* to generate these values. */
|
||||
+/* ******************************************************************** */
|
||||
+#define AT91C_SM_NWE_SETUP (1 << 0)
|
||||
+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
|
||||
+#define AT91C_SM_NRD_SETUP (1 << 16)
|
||||
+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_PULSE (3 << 0)
|
||||
+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
|
||||
+#define AT91C_SM_NRD_PULSE (3 << 16)
|
||||
+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_CYCLE (5 << 0)
|
||||
+#define AT91C_SM_NRD_CYCLE (5 << 16)
|
||||
+#define AT91C_SM_TDF (2 << 16)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* BootStrap Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define IMG_ADDRESS 0x20000 /* Image Address in NandFlash */
|
||||
+#define IMG_SIZE 0x40000 /* Image Size in NandFlash */
|
||||
+
|
||||
+#define MACH_TYPE 0x6AF /* QIL-A9260 */
|
||||
+#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* Application Settings */
|
||||
+/* ******************************************************************* */
|
||||
+#undef CFG_DEBUG
|
||||
+#undef CFG_DATAFLASH
|
||||
+
|
||||
+#define CFG_NANDFLASH
|
||||
+#undef NANDFLASH_SMALL_BLOCKS /* NANDFLASH_LARGE_BLOCKS used instead */
|
||||
+
|
||||
+#define CFG_HW_INIT
|
||||
+#define CFG_SDRAM
|
||||
+
|
||||
+#endif /* _QIL_A9260_H */
|
||||
diff --git a/board/qil_a9260/qil_a9260.c b/board/qil_a9260/qil_a9260.c
|
||||
new file mode 100644
|
||||
index 0000000..ae122e7
|
||||
--- /dev/null
|
||||
+++ b/board/qil_a9260/qil_a9260.c
|
||||
@@ -0,0 +1,298 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaiimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : qil_a9260.c
|
||||
+ * Object :
|
||||
+ * Creation : GH July 19th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#include "../../include/part.h"
|
||||
+#include "../../include/gpio.h"
|
||||
+#include "../../include/pmc.h"
|
||||
+#include "../../include/debug.h"
|
||||
+#include "../../include/sdramc.h"
|
||||
+#include "../../include/main.h"
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+#include "../../include/nandflash.h"
|
||||
+#endif
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+#include "../../include/dataflash.h"
|
||||
+#endif
|
||||
+
|
||||
+static inline unsigned int get_cp15(void)
|
||||
+{
|
||||
+ unsigned int value;
|
||||
+ __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
|
||||
+ return value;
|
||||
+}
|
||||
+
|
||||
+static inline void set_cp15(unsigned int value)
|
||||
+{
|
||||
+ __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
|
||||
+}
|
||||
+
|
||||
+#ifdef CFG_HW_INIT
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+/* \fn hw_init */
|
||||
+/* \brief This function performs very low level HW initialization */
|
||||
+/* This function is invoked as soon as possible during the c_startup */
|
||||
+/* The bss segment must be initialized */
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+void hw_init(void)
|
||||
+{
|
||||
+ unsigned int cp15;
|
||||
+
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc hw_pio[] = {
|
||||
+#ifdef CFG_DEBUG
|
||||
+ {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Disable watchdog */
|
||||
+ writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
|
||||
+
|
||||
+ /* At this stage the main oscillator is supposed to be enabled
|
||||
+ * PCK = MCK = MOSC */
|
||||
+
|
||||
+ /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
|
||||
+ pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* PCK = PLLA = 2 * MCK */
|
||||
+ pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+ /* Switch MCK on PLLA output */
|
||||
+ pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure PLLB */
|
||||
+ pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure CP15 */
|
||||
+ cp15 = get_cp15();
|
||||
+ cp15 |= I_CACHE;
|
||||
+ set_cp15(cp15);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(hw_pio);
|
||||
+
|
||||
+ /* Configure the EBI Slave Slot Cycle to 64 */
|
||||
+ writel( (readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
|
||||
+
|
||||
+#ifdef CFG_DEBUG
|
||||
+ /* Enable Debug messages on the DBGU */
|
||||
+ dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
|
||||
+
|
||||
+ dbg_print("Start AT91Bootstrap...\n\r");
|
||||
+#endif /* CFG_DEBUG */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+ /* Initialize the matrix */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS1A_SDRAMC, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SDRAM Controller */
|
||||
+ sdram_init( AT91C_SDRAMC_NC_9 |
|
||||
+ AT91C_SDRAMC_NR_13 |
|
||||
+ AT91C_SDRAMC_CAS_2 |
|
||||
+ AT91C_SDRAMC_NB_4_BANKS |
|
||||
+ AT91C_SDRAMC_DBW_32_BITS |
|
||||
+ AT91C_SDRAMC_TWR_2 |
|
||||
+ AT91C_SDRAMC_TRC_7 |
|
||||
+ AT91C_SDRAMC_TRP_2 |
|
||||
+ AT91C_SDRAMC_TRCD_2 |
|
||||
+ AT91C_SDRAMC_TRAS_5 |
|
||||
+ AT91C_SDRAMC_TXSR_8, /* Control Register */
|
||||
+ (MASTER_CLOCK * 7)/1000000, /* Refresh Timer Register */
|
||||
+ AT91C_SDRAMC_MD_SDRAM); /* SDRAM (no low power) */
|
||||
+
|
||||
+
|
||||
+#endif /* CFG_SDRAM */
|
||||
+}
|
||||
+#endif /* CFG_HW_INIT */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn sdramc_hw_init */
|
||||
+/* \brief This function performs SDRAMC HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void sdramc_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+/* const struct pio_desc sdramc_pio[] = {
|
||||
+ {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+*/
|
||||
+ /* Configure the SDRAMC PIO controller to output PCK0 */
|
||||
+/* pio_setup(sdramc_pio); */
|
||||
+
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
|
||||
+
|
||||
+}
|
||||
+#endif /* CFG_SDRAM */
|
||||
+
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_recovery */
|
||||
+/* \brief This function erases DataFlash Page 0 if USR PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_recovery(AT91PS_DF pDf)
|
||||
+{
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb_pio[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb_pio);
|
||||
+
|
||||
+ /* If USR PB is pressed during Boot sequence */
|
||||
+ /* Erase DataFlash Page 0*/
|
||||
+ if ( !pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ df_page_erase(pDf, 0);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_hw_init */
|
||||
+/* \brief This function performs DataFlash HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc df_pio[] = {
|
||||
+ {"MISO", AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"MOSI", AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"SPCK", AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
|
||||
+ {"NPCS0", AT91C_PIN_PA(3), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(df_pio);
|
||||
+}
|
||||
+#endif /* CFG_DATAFLASH */
|
||||
+
|
||||
+
|
||||
+
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nand_recovery */
|
||||
+/* \brief This function erases NandFlash Block 0 if USR PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+static void nand_recovery(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb_pio[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb_pio);
|
||||
+
|
||||
+ /* If USR PB is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if (!pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ AT91F_NandEraseBlock0();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_hw_init */
|
||||
+/* \brief NandFlash HW init */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc nand_pio[] = {
|
||||
+ {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {"NANDCS", AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SMC CS3 */
|
||||
+ writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
|
||||
+ writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
|
||||
+ writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE) , AT91C_BASE_SMC + SMC_CYCLE3);
|
||||
+ writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE |
|
||||
+ AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF) , AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(nand_pio);
|
||||
+
|
||||
+ nand_recovery();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_16bits_dbw_init */
|
||||
+/* \brief Configure SMC in 16 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_16bits_dbw_init(void)
|
||||
+{
|
||||
+ writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_8bits_dbw_init */
|
||||
+/* \brief Configure SMC in 8 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_8bits_dbw_init(void)
|
||||
+{
|
||||
+ writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+
|
||||
+#endif /* #ifdef CFG_NANDFLASH */
|
||||
diff --git a/crt0_gnu.S b/crt0_gnu.S
|
||||
index 042b617..002feef 100644
|
||||
--- a/crt0_gnu.S
|
||||
+++ b/crt0_gnu.S
|
||||
@@ -106,6 +106,13 @@ _relocate_to_sram:
|
||||
#endif /* CFG_NORFLASH */
|
||||
|
||||
_setup_clocks:
|
||||
+/* Test if main osc is bypassed */
|
||||
+ ldr r0,=AT91C_PMC_MOR
|
||||
+ ldr r1, [r0]
|
||||
+ ldr r2,=AT91C_CKGR_OSCBYPASS
|
||||
+ ands r1, r1, r2
|
||||
+ bne _init_data /* branch if OSCBYPASS=1 */
|
||||
+
|
||||
/* Test if main oscillator is enabled */
|
||||
ldr r0,=AT91C_PMC_SR
|
||||
ldr r1, [r0]
|
||||
diff --git a/include/part.h b/include/part.h
|
||||
index ba5985a..bbd33fe 100644
|
||||
--- a/include/part.h
|
||||
+++ b/include/part.h
|
||||
@@ -35,7 +35,11 @@
|
||||
|
||||
#ifdef AT91SAM9260
|
||||
#include "AT91SAM9260_inc.h"
|
||||
-#include "at91sam9260ek.h"
|
||||
+ #ifdef at91sam9260ek
|
||||
+ #include "at91sam9260ek.h"
|
||||
+ #elif qil_a9260
|
||||
+ #include "qil-a9260.h"
|
||||
+ #endif
|
||||
#endif
|
||||
|
||||
#ifdef AT91SAM9XE
|
||||
--
|
||||
1.5.6.3
|
||||
|
||||
36
board/calao/qil-a9260/patches/barebox/0001-qil-a9260.patch
Normal file
36
board/calao/qil-a9260/patches/barebox/0001-qil-a9260.patch
Normal file
@@ -0,0 +1,36 @@
|
||||
From d076aa6182dc6df6bb311e60bbddb03573b9483b Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Fri, 3 Aug 2012 11:25:49 +0200
|
||||
Subject: [PATCH] Enable pull-up on Rx serial ports for the CALAO MB-QIL-A9260
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
arch/arm/boards/qil-a9260/init.c | 6 ++++++
|
||||
1 files changed, 6 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boards/qil-a9260/init.c b/arch/arm/boards/qil-a9260/init.c
|
||||
index 305d733..b43cace 100644
|
||||
--- a/arch/arm/boards/qil-a9260/init.c
|
||||
+++ b/arch/arm/boards/qil-a9260/init.c
|
||||
@@ -196,11 +196,17 @@ device_initcall(qil_a9260_devices_init);
|
||||
static int qil_a9260_console_init(void)
|
||||
{
|
||||
at91_register_uart(0, 0);
|
||||
+ at91_set_A_periph(AT91_PIN_PB14, 1); /* Enable pull-up on DRXD */
|
||||
+
|
||||
at91_register_uart(1, ATMEL_UART_CTS | ATMEL_UART_RTS
|
||||
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
|
||||
| ATMEL_UART_RI);
|
||||
+
|
||||
at91_register_uart(2, ATMEL_UART_CTS | ATMEL_UART_RTS);
|
||||
+ at91_set_A_periph(AT91_PIN_PB7, 1); /* Enable pull-up on RXD1 */
|
||||
+
|
||||
at91_register_uart(3, ATMEL_UART_CTS | ATMEL_UART_RTS);
|
||||
+ at91_set_A_periph(AT91_PIN_PB9, 1); /* Enable pull-up on RXD2 */
|
||||
|
||||
return 0;
|
||||
}
|
||||
--
|
||||
1.5.6.3
|
||||
|
||||
27
board/calao/qil-a9260/patches/linux/0001-qil-a9260.patch
Normal file
27
board/calao/qil-a9260/patches/linux/0001-qil-a9260.patch
Normal file
@@ -0,0 +1,27 @@
|
||||
From fe6432a9728b62bce3db73c5a4efe026018fd495 Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Fri, 3 Aug 2012 16:45:37 +0200
|
||||
Subject: [PATCH] QIL-A9260: rtc modalias m41t48 renamed to rtc-m41t48
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
arch/arm/mach-at91/board-qil-a9260.c | 2 +-
|
||||
1 files changed, 1 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-at91/board-qil-a9260.c b/arch/arm/mach-at91/board-qil-a9260.c
|
||||
index bf351e2..c0df05c 100644
|
||||
--- a/arch/arm/mach-at91/board-qil-a9260.c
|
||||
+++ b/arch/arm/mach-at91/board-qil-a9260.c
|
||||
@@ -78,7 +78,7 @@ static struct at91_udc_data __initdata ek_udc_data = {
|
||||
static struct spi_board_info ek_spi_devices[] = {
|
||||
#if defined(CONFIG_RTC_DRV_M41T94)
|
||||
{ /* M41T94 RTC */
|
||||
- .modalias = "m41t94",
|
||||
+ .modalias = "rtc-m41t94",
|
||||
.chip_select = 0,
|
||||
.max_speed_hz = 1 * 1000 * 1000,
|
||||
.bus_num = 0,
|
||||
--
|
||||
1.5.6.3
|
||||
|
||||
45
board/calao/snowball/linux-3.4.patch
Normal file
45
board/calao/snowball/linux-3.4.patch
Normal file
@@ -0,0 +1,45 @@
|
||||
From 3d1a9b44b9dcd2c0f5d54c09596c96c0524d8340 Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Tue, 13 Nov 2012 11:47:41 +0100
|
||||
Subject: [PATCH] trace-debug[stm]: Fix for BT/WLAN instability
|
||||
|
||||
Pins under mop500_ske_pins array are used for different
|
||||
functionalities in snowball. Ex: GPIO161 pin configured
|
||||
for keypad here must stay configured as GPIO alternate
|
||||
function for operating PMU_EN pin of BT/WLAN chip in snowball.
|
||||
So forbid configuring these pins, for snowball
|
||||
|
||||
Signed-off-by: Rajanikanth H.V <rajanikanth.hv@stericsson.com>
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
arch/arm/mach-ux500/board-mop500-stm.c | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-ux500/board-mop500-stm.c b/arch/arm/mach-ux500/board-mop500-stm.c
|
||||
index 1bef2a0..532fb9e 100644
|
||||
--- a/arch/arm/mach-ux500/board-mop500-stm.c
|
||||
+++ b/arch/arm/mach-ux500/board-mop500-stm.c
|
||||
@@ -121,7 +121,9 @@ static int stm_ste_disable_ape_on_mipi60(void)
|
||||
if (retval)
|
||||
STM_ERR("Failed to disable MIPI60\n");
|
||||
else {
|
||||
- retval = nmk_config_pins(ARRAY_AND_SIZE(mop500_ske_pins));
|
||||
+ if (!machine_is_snowball())
|
||||
+ retval = nmk_config_pins(
|
||||
+ ARRAY_AND_SIZE(mop500_ske_pins));
|
||||
if (retval)
|
||||
STM_ERR("Failed to enable SKE gpio\n");
|
||||
}
|
||||
@@ -314,7 +316,8 @@ static int stm_ste_connection(enum stm_connection_type con_type)
|
||||
/* Enable altC3 on GPIO70-74 (STMMOD) and GPIO75-76 (UARTMOD) */
|
||||
prcmu_enable_stm_mod_uart();
|
||||
/* Enable APE on MIPI60 */
|
||||
- retval = nmk_config_pins_sleep(ARRAY_AND_SIZE(mop500_ske_pins));
|
||||
+ if (!machine_is_snowball())
|
||||
+ retval = nmk_config_pins_sleep(ARRAY_AND_SIZE(mop500_ske_pins));
|
||||
if (retval)
|
||||
STM_ERR("Failed to disable SKE GPIO\n");
|
||||
else {
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
551
board/calao/tny-a9g20-lpw/at91bootstrap-1.16-tny-a9g20-lpw.patch
Normal file
551
board/calao/tny-a9g20-lpw/at91bootstrap-1.16-tny-a9g20-lpw.patch
Normal file
@@ -0,0 +1,551 @@
|
||||
From 53bd82b122f4530a98cba45795832820bb1d0b45 Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Mon, 13 Aug 2012 11:26:10 +0200
|
||||
Subject: [PATCH] Add support for the Calao-systems TNY-A9G20-LPW
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
board/tny_a9g20_lpw/nandflash/Makefile | 121 ++++++++++++
|
||||
board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h | 114 ++++++++++++
|
||||
board/tny_a9g20_lpw/tny_a9g20_lpw.c | 243 +++++++++++++++++++++++++
|
||||
crt0_gnu.S | 6 +
|
||||
include/part.h | 6 +-
|
||||
5 files changed, 489 insertions(+), 1 deletion(-)
|
||||
create mode 100644 board/tny_a9g20_lpw/nandflash/Makefile
|
||||
create mode 100644 board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h
|
||||
create mode 100644 board/tny_a9g20_lpw/tny_a9g20_lpw.c
|
||||
|
||||
diff --git a/board/tny_a9g20_lpw/nandflash/Makefile b/board/tny_a9g20_lpw/nandflash/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..7efbea7
|
||||
--- /dev/null
|
||||
+++ b/board/tny_a9g20_lpw/nandflash/Makefile
|
||||
@@ -0,0 +1,121 @@
|
||||
+# TODO: set this appropriately for your local toolchain
|
||||
+ifndef ERASE_FCT
|
||||
+ERASE_FCT=rm -f
|
||||
+endif
|
||||
+ifndef CROSS_COMPILE
|
||||
+CROSS_COMPILE=arm-elf-
|
||||
+endif
|
||||
+
|
||||
+TOOLCHAIN=gcc
|
||||
+
|
||||
+BOOTSTRAP_PATH=../../..
|
||||
+
|
||||
+# NandFlashBoot Configuration for AT91SAM9260EK
|
||||
+
|
||||
+# Target name (case sensitive!!!)
|
||||
+TARGET=AT91SAM9G20
|
||||
+# Board name (case sensitive!!!)
|
||||
+BOARD=tny_a9g20_lpw
|
||||
+# Link Address and Top_of_Memory
|
||||
+LINK_ADDR=0x200000
|
||||
+TOP_OF_MEMORY=0x301000
|
||||
+# Name of current directory
|
||||
+PROJECT=nandflash
|
||||
+
|
||||
+ifndef BOOT_NAME
|
||||
+BOOT_NAME=$(PROJECT)_$(BOARD)
|
||||
+endif
|
||||
+
|
||||
+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+
|
||||
+AS=$(CROSS_COMPILE)gcc
|
||||
+CC=$(CROSS_COMPILE)gcc
|
||||
+LD=$(CROSS_COMPILE)gcc
|
||||
+NM= $(CROSS_COMPILE)nm
|
||||
+SIZE=$(CROSS_COMPILE)size
|
||||
+OBJCOPY=$(CROSS_COMPILE)objcopy
|
||||
+OBJDUMP=$(CROSS_COMPILE)objdump
|
||||
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
|
||||
+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
|
||||
+
|
||||
+# Linker flags.
|
||||
+# -Wl,...: tell GCC to pass this to linker.
|
||||
+# -Map: create map file
|
||||
+# --cref: add cross reference to map file
|
||||
+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
|
||||
+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
|
||||
+OBJS=crt0_gnu.o
|
||||
+
|
||||
+endif
|
||||
+
|
||||
+OBJS+=\
|
||||
+ $(BOARD).o \
|
||||
+ main.o \
|
||||
+ gpio.o \
|
||||
+ pmc.o \
|
||||
+ debug.o \
|
||||
+ sdramc.o \
|
||||
+ nandflash.o \
|
||||
+ _udivsi3.o \
|
||||
+ _umodsi3.o \
|
||||
+ div0.o \
|
||||
+ udiv.o \
|
||||
+ string.o
|
||||
+
|
||||
+rebuild: clean all
|
||||
+
|
||||
+all: $(BOOT_NAME)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+$(BOOT_NAME): $(OBJS)
|
||||
+ $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
|
||||
+ $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
|
||||
+
|
||||
+main.o: $(BOOTSTRAP_PATH)/main.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
|
||||
+
|
||||
+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
|
||||
+
|
||||
+pmc.o: $(BOOTSTRAP_PATH)/driver/pmc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
|
||||
+
|
||||
+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
|
||||
+
|
||||
+sdramc.o: $(BOOTSTRAP_PATH)/driver/sdramc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
|
||||
+
|
||||
+dataflash.o: $(BOOTSTRAP_PATH)/driver/dataflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
|
||||
+
|
||||
+nandflash.o: $(BOOTSTRAP_PATH)/driver/nandflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
|
||||
+
|
||||
+crt0_gnu.o: $(BOOTSTRAP_PATH)/crt0_gnu.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
|
||||
+
|
||||
+div0.o: $(BOOTSTRAP_PATH)/lib/div0.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
|
||||
+
|
||||
+string.o: $(BOOTSTRAP_PATH)/lib/string.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
|
||||
+
|
||||
+udiv.o: $(BOOTSTRAP_PATH)/lib/udiv.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
|
||||
+
|
||||
+_udivsi3.o: $(BOOTSTRAP_PATH)/lib/_udivsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
|
||||
+
|
||||
+_umodsi3.o: $(BOOTSTRAP_PATH)/lib/_umodsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
|
||||
+
|
||||
+clean:
|
||||
+ $(ERASE_FCT) *.o *.bin *.elf *.map
|
||||
diff --git a/board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h b/board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h
|
||||
new file mode 100644
|
||||
index 0000000..b1f8a1d
|
||||
--- /dev/null
|
||||
+++ b/board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h
|
||||
@@ -0,0 +1,114 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2008, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : tny-a9g20-lpw.h
|
||||
+ * Object :
|
||||
+ * Creation : GH August 13th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#ifndef _TNY_A9G20_LPW_H
|
||||
+#define _TNY_A9G20_LPW_H
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* PMC Settings */
|
||||
+/* */
|
||||
+/* The main oscillator is enabled as soon as possible in the c_startup */
|
||||
+/* and MCK is switched on the main oscillator. */
|
||||
+/* PLL initialization is done later in the hw_init() function */
|
||||
+/* ******************************************************************* */
|
||||
+#define MASTER_CLOCK (100000000)
|
||||
+#define PLL_LOCK_TIMEOUT 1000000
|
||||
+
|
||||
+/* set PLLA to 800Mhz from MAINCK= 12Mhz MULA=199 (0xC7+1= 200), DIVA=0x03 (Fplla=12Mhz x [(199+1)/3]=800Mhz) */
|
||||
+#define PLLA_SETTINGS 0x20C73F03
|
||||
+#define PLLB_SETTINGS 0x100F3F02
|
||||
+
|
||||
+/* Switch MCK on PLLA output PCK = PLLA/2 = 3 * MCK */
|
||||
+/* LP-SDRAM (fmax=100Mhz) PDIV=0 => PRESCALER CLK=PCLK; */
|
||||
+/* MDIV = 2 => PRESCALER CLK / 4 = MCLK=100Mhz */
|
||||
+/* PRESCALER CLK = PLLA (800Mhz) / 2 (PRES=1) = 400Mhz */
|
||||
+#define MCKR_SETTINGS 0x0204
|
||||
+#define MCKR_CSS_SETTINGS (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* NandFlash Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_SMARTMEDIA_BASE 0x40000000
|
||||
+
|
||||
+#define AT91_SMART_MEDIA_ALE (1 << 21) /* our ALE is AD21 */
|
||||
+#define AT91_SMART_MEDIA_CLE (1 << 22) /* our CLE is AD22 */
|
||||
+
|
||||
+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
|
||||
+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
|
||||
+
|
||||
+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
|
||||
+
|
||||
+
|
||||
+/* ******************************************************************** */
|
||||
+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 100000000.*/
|
||||
+/* Please refer to SMC section in AT91SAM9 datasheet to learn how */
|
||||
+/* to generate these values. */
|
||||
+/* ******************************************************************** */
|
||||
+#define AT91C_SM_NWE_SETUP (1 << 0)
|
||||
+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
|
||||
+#define AT91C_SM_NRD_SETUP (1 << 16)
|
||||
+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_PULSE (3 << 0)
|
||||
+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
|
||||
+#define AT91C_SM_NRD_PULSE (3 << 16)
|
||||
+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_CYCLE (5 << 0)
|
||||
+#define AT91C_SM_NRD_CYCLE (5 << 16)
|
||||
+
|
||||
+#define AT91C_SM_TDF (2 << 16)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* BootStrap Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define IMG_ADDRESS 0x20000 /* Image Address in NandFlash */
|
||||
+#define IMG_SIZE 0x40000 /* Image Size in NandFlash */
|
||||
+
|
||||
+#define MACH_TYPE 0x80B /* TNY-A9G20 */
|
||||
+#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* Application Settings */
|
||||
+/* ******************************************************************* */
|
||||
+#undef CFG_DEBUG
|
||||
+#undef CFG_DATAFLASH
|
||||
+
|
||||
+#define CFG_NANDFLASH
|
||||
+#undef NANDFLASH_SMALL_BLOCKS /* NANDFLASH_LARGE_BLOCKS used instead */
|
||||
+
|
||||
+#define CFG_SDRAM
|
||||
+#define CFG_HW_INIT
|
||||
+
|
||||
+#endif /* _TNY_A9G20_LPW_H */
|
||||
diff --git a/board/tny_a9g20_lpw/tny_a9g20_lpw.c b/board/tny_a9g20_lpw/tny_a9g20_lpw.c
|
||||
new file mode 100644
|
||||
index 0000000..cef9055
|
||||
--- /dev/null
|
||||
+++ b/board/tny_a9g20_lpw/tny_a9g20_lpw.c
|
||||
@@ -0,0 +1,243 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2008, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : tny_a9g20_lpw.c
|
||||
+ * Object :
|
||||
+ * Creation : GH August 13th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#include "../../include/part.h"
|
||||
+#include "../../include/gpio.h"
|
||||
+#include "../../include/pmc.h"
|
||||
+#include "../../include/debug.h"
|
||||
+#include "../../include/sdramc.h"
|
||||
+#include "../../include/main.h"
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+#include "../../include/nandflash.h"
|
||||
+#endif
|
||||
+
|
||||
+static inline unsigned int get_cp15(void)
|
||||
+{
|
||||
+ unsigned int value;
|
||||
+ __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
|
||||
+ return value;
|
||||
+}
|
||||
+
|
||||
+static inline void set_cp15(unsigned int value)
|
||||
+{
|
||||
+ __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
|
||||
+}
|
||||
+
|
||||
+#ifdef CFG_HW_INIT
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+/* \fn hw_init */
|
||||
+/* \brief This function performs very low level HW initialization */
|
||||
+/* This function is invoked as soon as possible during the c_startup */
|
||||
+/* The bss segment must be initialized */
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+void hw_init(void)
|
||||
+{
|
||||
+ unsigned int cp15;
|
||||
+
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc hw_pio[] = {
|
||||
+#ifdef CFG_DEBUG
|
||||
+ {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Disable watchdog */
|
||||
+ writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
|
||||
+
|
||||
+ /* At this stage the main oscillator is supposed to be enabled
|
||||
+ * PCK = MCK = MOSC */
|
||||
+ writel(0x00, AT91C_BASE_PMC + PMC_PLLICPR);
|
||||
+
|
||||
+ /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
|
||||
+ pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* PCK = PLLA/2 = 3 * MCK */
|
||||
+ pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+ /* Switch MCK on PLLA output */
|
||||
+ pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure PLLB */
|
||||
+ pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure CP15 */
|
||||
+ cp15 = get_cp15();
|
||||
+ cp15 |= I_CACHE;
|
||||
+ set_cp15(cp15);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(hw_pio);
|
||||
+
|
||||
+ /* Configure the EBI Slave Slot Cycle to 64 */
|
||||
+ writel((readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
|
||||
+
|
||||
+#ifdef CFG_DEBUG
|
||||
+ /* Enable Debug messages on the DBGU */
|
||||
+ dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
|
||||
+
|
||||
+ dbg_print("Start AT91Bootstrap...\n\r");
|
||||
+#endif /* CFG_DEBUG */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+ /* Initialize the matrix (slow slew rate enabled and LPSDRAM memory voltage = 1.8V) */
|
||||
+ writel(((readl(AT91C_BASE_CCFG + CCFG_EBICSA)) | AT91C_EBI_CS1A_SDRAMC | (1<<17)) & ~0x00010000, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SDRAM Controller */
|
||||
+ sdram_init( AT91C_SDRAMC_NC_9 |
|
||||
+ AT91C_SDRAMC_NR_13 |
|
||||
+ AT91C_SDRAMC_CAS_3 |
|
||||
+ AT91C_SDRAMC_NB_4_BANKS |
|
||||
+ AT91C_SDRAMC_DBW_32_BITS |
|
||||
+ AT91C_SDRAMC_TWR_2 |
|
||||
+ AT91C_SDRAMC_TRC_7 |
|
||||
+ AT91C_SDRAMC_TRP_2 |
|
||||
+ AT91C_SDRAMC_TRCD_2 |
|
||||
+ AT91C_SDRAMC_TRAS_5 |
|
||||
+ AT91C_SDRAMC_TXSR_8, /* Control Register */
|
||||
+ (MASTER_CLOCK * 7)/1000000, /* Refresh Timer Register */
|
||||
+ AT91C_SDRAMC_MD_LOW_POWER_SDRAM); /* SDRAM (low power) */
|
||||
+
|
||||
+#endif /* CFG_SDRAM */
|
||||
+}
|
||||
+#endif /* CFG_HW_INIT */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn sdramc_hw_init */
|
||||
+/* \brief This function performs SDRAMC HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void sdramc_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+/* const struct pio_desc sdramc_pio[] = {
|
||||
+ {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+*/
|
||||
+ /* Configure the SDRAMC PIO controller to output PCK0 */
|
||||
+/* pio_setup(sdramc_pio); */
|
||||
+
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
|
||||
+
|
||||
+}
|
||||
+#endif /* CFG_SDRAM */
|
||||
+
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nand_recovery */
|
||||
+/* \brief This function erases NandFlash Block 0 if BP4 is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+static void nand_recovery(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc bp4_pio[] = {
|
||||
+ {"BP4", AT91C_PIN_PA(31), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOA), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(bp4_pio);
|
||||
+
|
||||
+ /* If BP4 is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if (!pio_get_value(AT91C_PIN_PA(31)) )
|
||||
+ AT91F_NandEraseBlock0();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_hw_init */
|
||||
+/* \brief NandFlash HW init */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc nand_pio[] = {
|
||||
+ {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {"NANDCS", AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SMC CS3 */
|
||||
+ writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
|
||||
+ writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
|
||||
+ writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE) , AT91C_BASE_SMC + SMC_CYCLE3);
|
||||
+ writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE |
|
||||
+ AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF) , AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(nand_pio);
|
||||
+
|
||||
+ nand_recovery();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_16bits_dbw_init */
|
||||
+/* \brief Configure SMC in 16 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_16bits_dbw_init(void)
|
||||
+{
|
||||
+ writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_8bits_dbw_init */
|
||||
+/* \brief Configure SMC in 8 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_8bits_dbw_init(void)
|
||||
+{
|
||||
+ writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+#endif /* #ifdef CFG_NANDFLASH */
|
||||
diff --git a/crt0_gnu.S b/crt0_gnu.S
|
||||
index 042b617..c6cd49d 100644
|
||||
--- a/crt0_gnu.S
|
||||
+++ b/crt0_gnu.S
|
||||
@@ -106,6 +106,12 @@ _relocate_to_sram:
|
||||
#endif /* CFG_NORFLASH */
|
||||
|
||||
_setup_clocks:
|
||||
+/* Test if main osc is bypassed */
|
||||
+ ldr r0,=AT91C_PMC_MOR
|
||||
+ ldr r1, [r0]
|
||||
+ ldr r2,=AT91C_CKGR_OSCBYPASS
|
||||
+ ands r1, r1, r2
|
||||
+ bne _init_data /* branch if OSCBYPASS=1 */
|
||||
/* Test if main oscillator is enabled */
|
||||
ldr r0,=AT91C_PMC_SR
|
||||
ldr r1, [r0]
|
||||
diff --git a/include/part.h b/include/part.h
|
||||
index ba5985a..ab79af1 100644
|
||||
--- a/include/part.h
|
||||
+++ b/include/part.h
|
||||
@@ -46,7 +46,11 @@
|
||||
|
||||
#ifdef AT91SAM9G20
|
||||
#include "AT91SAM9260_inc.h"
|
||||
-#include "at91sam9g20ek.h"
|
||||
+ #ifdef at91sam9g20ek
|
||||
+ #include "at91sam9g20ek.h"
|
||||
+ #elif tny_a9g20_lpw
|
||||
+ #include "tny-a9g20-lpw.h"
|
||||
+ #endif
|
||||
#endif
|
||||
|
||||
#ifdef AT91SAM9261
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
187
board/calao/tny-a9g20-lpw/linux-3.9.config
Normal file
187
board/calao/tny-a9g20-lpw/linux-3.9.config
Normal file
@@ -0,0 +1,187 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_EMBEDDED=y
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_LBDAF is not set
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_AT91=y
|
||||
CONFIG_SOC_AT91SAM9260=y
|
||||
CONFIG_SOC_AT91SAM9263=y
|
||||
CONFIG_SOC_AT91SAM9G45=y
|
||||
CONFIG_SOC_AT91SAM9X5=y
|
||||
CONFIG_SOC_AT91SAM9N12=y
|
||||
CONFIG_MACH_AT91SAM_DT=y
|
||||
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
|
||||
CONFIG_AT91_TIMER_HZ=128
|
||||
CONFIG_AEABI=y
|
||||
# CONFIG_OABI_COMPAT is not set
|
||||
CONFIG_UACCESS_WITH_MEMCPY=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_ARM_APPENDED_DTB=y
|
||||
CONFIG_ARM_ATAG_DTB_COMPAT=y
|
||||
CONFIG_CMDLINE="console=ttyS0,115200 initrd=0x21100000,25165824 root=/dev/ram0 rw"
|
||||
CONFIG_KEXEC=y
|
||||
CONFIG_AUTO_ZRELADDR=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_IPV6=y
|
||||
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET6_XFRM_MODE_BEET is not set
|
||||
CONFIG_IPV6_SIT_6RD=y
|
||||
# CONFIG_WIRELESS is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
# CONFIG_STANDALONE is not set
|
||||
# CONFIG_PREVENT_FIRMWARE_BUILD is not set
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_ATMEL=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_MTD_UBI_GLUEBI=y
|
||||
CONFIG_PROC_DEVICETREE=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=4
|
||||
CONFIG_BLK_DEV_RAM_SIZE=8192
|
||||
CONFIG_ATMEL_PWM=y
|
||||
CONFIG_ATMEL_TCLIB=y
|
||||
CONFIG_EEPROM_93CX6=m
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
# CONFIG_SCSI_LOWLEVEL is not set
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_MACB=y
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_FARADAY is not set
|
||||
# CONFIG_NET_VENDOR_INTEL is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_NATSEMI is not set
|
||||
# CONFIG_NET_VENDOR_SEEQ is not set
|
||||
# CONFIG_NET_VENDOR_SMSC is not set
|
||||
# CONFIG_NET_VENDOR_STMICRO is not set
|
||||
CONFIG_DAVICOM_PHY=y
|
||||
CONFIG_MICREL_PHY=y
|
||||
# CONFIG_WLAN is not set
|
||||
CONFIG_INPUT_POLLDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=480
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=272
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
# CONFIG_KEYBOARD_ATKBD is not set
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
# CONFIG_SERIO is not set
|
||||
CONFIG_LEGACY_PTY_COUNT=4
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_GPIO=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_ATMEL=y
|
||||
# CONFIG_HWMON is not set
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_AT91SAM9X_WATCHDOG=y
|
||||
CONFIG_SSB=m
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_MODE_HELPERS=y
|
||||
CONFIG_FB_ATMEL=y
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_ATMEL_LCDC=y
|
||||
# CONFIG_BACKLIGHT_GENERIC is not set
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
|
||||
CONFIG_FONTS=y
|
||||
CONFIG_FONT_8x8=y
|
||||
CONFIG_FONT_ACORN_8x8=y
|
||||
CONFIG_FONT_MINI_4x6=y
|
||||
CONFIG_LOGO=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_ACM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_SERIAL=y
|
||||
CONFIG_USB_SERIAL_GENERIC=y
|
||||
CONFIG_USB_SERIAL_FTDI_SIO=y
|
||||
CONFIG_USB_SERIAL_PL2303=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_AT91=m
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_USB_GADGETFS=m
|
||||
CONFIG_USB_CDC_COMPOSITE=m
|
||||
CONFIG_USB_G_ACM_MS=m
|
||||
CONFIG_USB_G_MULTI=m
|
||||
CONFIG_USB_G_MULTI_CDC=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_ATMELMCI=y
|
||||
CONFIG_MMC_SPI=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_GPIO=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_AT91RM9200=y
|
||||
CONFIG_RTC_DRV_AT91SAM9=y
|
||||
CONFIG_DMADEVICES=y
|
||||
# CONFIG_IOMMU_SUPPORT is not set
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_FANOTIFY=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_STRIP_ASM_SYMS=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_SCHED_DEBUG is not set
|
||||
# CONFIG_DEBUG_BUGVERBOSE is not set
|
||||
# CONFIG_FTRACE is not set
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_CRYPTO_ECB=y
|
||||
CONFIG_CRYPTO_ARC4=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
CONFIG_CRYPTO_USER_API_HASH=m
|
||||
CONFIG_CRYPTO_USER_API_SKCIPHER=m
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
CONFIG_CRC_CCITT=m
|
||||
CONFIG_AVERAGE=y
|
||||
603
board/calao/usb-a9260/at91bootstrap-1.16-usb-a9260.patch
Normal file
603
board/calao/usb-a9260/at91bootstrap-1.16-usb-a9260.patch
Normal file
@@ -0,0 +1,603 @@
|
||||
From 43e8c90f13806405bde8eaaf3a956d0ddc806f64 Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Tue, 2 Oct 2012 09:19:15 +0200
|
||||
Subject: [PATCH] Add support for the USB-A9260
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
board/usb_a9260/nandflash/Makefile | 122 ++++++++++++++
|
||||
board/usb_a9260/nandflash/usb-a9260.h | 109 ++++++++++++
|
||||
board/usb_a9260/usb_a9260.c | 298 +++++++++++++++++++++++++++++++++
|
||||
crt0_gnu.S | 7 +
|
||||
include/part.h | 6 +-
|
||||
5 files changed, 541 insertions(+), 1 deletion(-)
|
||||
create mode 100644 board/usb_a9260/nandflash/Makefile
|
||||
create mode 100644 board/usb_a9260/nandflash/usb-a9260.h
|
||||
create mode 100644 board/usb_a9260/usb_a9260.c
|
||||
|
||||
diff --git a/board/usb_a9260/nandflash/Makefile b/board/usb_a9260/nandflash/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..02f4b50
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9260/nandflash/Makefile
|
||||
@@ -0,0 +1,122 @@
|
||||
+# TODO: set this appropriately for your local toolchain
|
||||
+ifndef ERASE_FCT
|
||||
+ERASE_FCT=rm -f
|
||||
+endif
|
||||
+ifndef CROSS_COMPILE
|
||||
+CROSS_COMPILE=arm-elf-
|
||||
+endif
|
||||
+
|
||||
+TOOLCHAIN=gcc
|
||||
+
|
||||
+BOOTSTRAP_PATH=../../..
|
||||
+
|
||||
+# NandFlashBoot Configuration for USB-A9260
|
||||
+
|
||||
+# Target name (case sensitive!!!)
|
||||
+TARGET=AT91SAM9260
|
||||
+# Board name (case sensitive!!!)
|
||||
+BOARD=usb_a9260
|
||||
+# Link Address and Top_of_Memory
|
||||
+LINK_ADDR=0x200000
|
||||
+TOP_OF_MEMORY=0x301000
|
||||
+# Name of current directory
|
||||
+PROJECT=nandflash
|
||||
+
|
||||
+ifndef BOOT_NAME
|
||||
+BOOT_NAME=$(PROJECT)_$(BOARD)
|
||||
+endif
|
||||
+
|
||||
+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+
|
||||
+AS=$(CROSS_COMPILE)gcc
|
||||
+CC=$(CROSS_COMPILE)gcc
|
||||
+LD=$(CROSS_COMPILE)gcc
|
||||
+NM= $(CROSS_COMPILE)nm
|
||||
+SIZE=$(CROSS_COMPILE)size
|
||||
+OBJCOPY=$(CROSS_COMPILE)objcopy
|
||||
+OBJDUMP=$(CROSS_COMPILE)objdump
|
||||
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
|
||||
+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
|
||||
+
|
||||
+# Linker flags.
|
||||
+# -Wl,...: tell GCC to pass this to linker.
|
||||
+# -Map: create map file
|
||||
+# --cref: add cross reference to map file
|
||||
+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
|
||||
+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
|
||||
+OBJS=crt0_gnu.o
|
||||
+
|
||||
+endif
|
||||
+
|
||||
+OBJS+=\
|
||||
+ $(BOARD).o \
|
||||
+ main.o \
|
||||
+ gpio.o \
|
||||
+ pmc.o \
|
||||
+ debug.o \
|
||||
+ sdramc.o \
|
||||
+ nandflash.o \
|
||||
+ _udivsi3.o \
|
||||
+ _umodsi3.o \
|
||||
+ div0.o \
|
||||
+ udiv.o \
|
||||
+ string.o
|
||||
+
|
||||
+
|
||||
+rebuild: clean all
|
||||
+
|
||||
+all: $(BOOT_NAME)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+$(BOOT_NAME): $(OBJS)
|
||||
+ $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
|
||||
+ $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
|
||||
+
|
||||
+main.o: $(BOOTSTRAP_PATH)/main.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
|
||||
+
|
||||
+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
|
||||
+
|
||||
+pmc.o: $(BOOTSTRAP_PATH)/driver/pmc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
|
||||
+
|
||||
+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
|
||||
+
|
||||
+sdramc.o: $(BOOTSTRAP_PATH)/driver/sdramc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
|
||||
+
|
||||
+dataflash.o: $(BOOTSTRAP_PATH)/driver/dataflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
|
||||
+
|
||||
+nandflash.o: $(BOOTSTRAP_PATH)/driver/nandflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
|
||||
+
|
||||
+crt0_gnu.o: $(BOOTSTRAP_PATH)/crt0_gnu.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
|
||||
+
|
||||
+div0.o: $(BOOTSTRAP_PATH)/lib/div0.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
|
||||
+
|
||||
+string.o: $(BOOTSTRAP_PATH)/lib/string.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
|
||||
+
|
||||
+udiv.o: $(BOOTSTRAP_PATH)/lib/udiv.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
|
||||
+
|
||||
+_udivsi3.o: $(BOOTSTRAP_PATH)/lib/_udivsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
|
||||
+
|
||||
+_umodsi3.o: $(BOOTSTRAP_PATH)/lib/_umodsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
|
||||
+
|
||||
+clean:
|
||||
+ $(ERASE_FCT) *.o *.bin *.elf *.map
|
||||
diff --git a/board/usb_a9260/nandflash/usb-a9260.h b/board/usb_a9260/nandflash/usb-a9260.h
|
||||
new file mode 100644
|
||||
index 0000000..2aaf759
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9260/nandflash/usb-a9260.h
|
||||
@@ -0,0 +1,109 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb-a9260.h
|
||||
+ * Object :
|
||||
+ * Creation : GH Oct 1th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#ifndef _USB_A9260_H
|
||||
+#define _USB_A9260_H
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* PMC Settings */
|
||||
+/* */
|
||||
+/* The main oscillator is enabled as soon as possible in the c_startup */
|
||||
+/* and MCK is switched on the main oscillator. */
|
||||
+/* PLL initialization is done later in the hw_init() function */
|
||||
+/* ******************************************************************* */
|
||||
+#define MASTER_CLOCK (180000000/2)
|
||||
+#define PLL_LOCK_TIMEOUT 1000000
|
||||
+
|
||||
+#define PLLA_SETTINGS 0x20593F06
|
||||
+#define PLLB_SETTINGS 0x10483F0E
|
||||
+
|
||||
+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
|
||||
+#define MCKR_SETTINGS (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
|
||||
+#define MCKR_CSS_SETTINGS (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* NandFlash Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_SMARTMEDIA_BASE 0x40000000
|
||||
+
|
||||
+#define AT91_SMART_MEDIA_ALE (1 << 21) /* our ALE is AD21 */
|
||||
+#define AT91_SMART_MEDIA_CLE (1 << 22) /* our CLE is AD22 */
|
||||
+
|
||||
+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
|
||||
+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
|
||||
+
|
||||
+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
|
||||
+
|
||||
+
|
||||
+/* ******************************************************************** */
|
||||
+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 90000000.*/
|
||||
+/* Please refer to SMC section in AT91SAM datasheet to learn how */
|
||||
+/* to generate these values. */
|
||||
+/* ******************************************************************** */
|
||||
+#define AT91C_SM_NWE_SETUP (1 << 0)
|
||||
+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
|
||||
+#define AT91C_SM_NRD_SETUP (1 << 16)
|
||||
+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_PULSE (3 << 0)
|
||||
+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
|
||||
+#define AT91C_SM_NRD_PULSE (3 << 16)
|
||||
+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_CYCLE (5 << 0)
|
||||
+#define AT91C_SM_NRD_CYCLE (5 << 16)
|
||||
+#define AT91C_SM_TDF (2 << 16)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* BootStrap Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define IMG_ADDRESS 0x20000 /* Image Address in NandFlash */
|
||||
+#define IMG_SIZE 0x40000 /* Image Size in NandFlash */
|
||||
+
|
||||
+#define MACH_TYPE 0x6AD /* USB-A9260 */
|
||||
+#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* Application Settings */
|
||||
+/* ******************************************************************* */
|
||||
+#undef CFG_DEBUG
|
||||
+#undef CFG_DATAFLASH
|
||||
+
|
||||
+#define CFG_NANDFLASH
|
||||
+#undef NANDFLASH_SMALL_BLOCKS /* NANDFLASH_LARGE_BLOCKS used instead */
|
||||
+
|
||||
+#define CFG_HW_INIT
|
||||
+#define CFG_SDRAM
|
||||
+
|
||||
+#endif /* _USB_A9260_H */
|
||||
diff --git a/board/usb_a9260/usb_a9260.c b/board/usb_a9260/usb_a9260.c
|
||||
new file mode 100644
|
||||
index 0000000..de30f0b
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9260/usb_a9260.c
|
||||
@@ -0,0 +1,298 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaiimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb_a9260.c
|
||||
+ * Object :
|
||||
+ * Creation : GH Oct 1th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#include "../../include/part.h"
|
||||
+#include "../../include/gpio.h"
|
||||
+#include "../../include/pmc.h"
|
||||
+#include "../../include/debug.h"
|
||||
+#include "../../include/sdramc.h"
|
||||
+#include "../../include/main.h"
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+#include "../../include/nandflash.h"
|
||||
+#endif
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+#include "../../include/dataflash.h"
|
||||
+#endif
|
||||
+
|
||||
+static inline unsigned int get_cp15(void)
|
||||
+{
|
||||
+ unsigned int value;
|
||||
+ __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
|
||||
+ return value;
|
||||
+}
|
||||
+
|
||||
+static inline void set_cp15(unsigned int value)
|
||||
+{
|
||||
+ __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
|
||||
+}
|
||||
+
|
||||
+#ifdef CFG_HW_INIT
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+/* \fn hw_init */
|
||||
+/* \brief This function performs very low level HW initialization */
|
||||
+/* This function is invoked as soon as possible during the c_startup */
|
||||
+/* The bss segment must be initialized */
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+void hw_init(void)
|
||||
+{
|
||||
+ unsigned int cp15;
|
||||
+
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc hw_pio[] = {
|
||||
+#ifdef CFG_DEBUG
|
||||
+ {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Disable watchdog */
|
||||
+ writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
|
||||
+
|
||||
+ /* At this stage the main oscillator is supposed to be enabled
|
||||
+ * PCK = MCK = MOSC */
|
||||
+
|
||||
+ /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
|
||||
+ pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* PCK = PLLA = 2 * MCK */
|
||||
+ pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+ /* Switch MCK on PLLA output */
|
||||
+ pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure PLLB */
|
||||
+ pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure CP15 */
|
||||
+ cp15 = get_cp15();
|
||||
+ cp15 |= I_CACHE;
|
||||
+ set_cp15(cp15);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(hw_pio);
|
||||
+
|
||||
+ /* Configure the EBI Slave Slot Cycle to 64 */
|
||||
+ writel( (readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
|
||||
+
|
||||
+#ifdef CFG_DEBUG
|
||||
+ /* Enable Debug messages on the DBGU */
|
||||
+ dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
|
||||
+
|
||||
+ dbg_print("Start AT91Bootstrap...\n\r");
|
||||
+#endif /* CFG_DEBUG */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+ /* Initialize the matrix */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS1A_SDRAMC, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SDRAM Controller */
|
||||
+ sdram_init( AT91C_SDRAMC_NC_9 |
|
||||
+ AT91C_SDRAMC_NR_13 |
|
||||
+ AT91C_SDRAMC_CAS_2 |
|
||||
+ AT91C_SDRAMC_NB_4_BANKS |
|
||||
+ AT91C_SDRAMC_DBW_32_BITS |
|
||||
+ AT91C_SDRAMC_TWR_2 |
|
||||
+ AT91C_SDRAMC_TRC_7 |
|
||||
+ AT91C_SDRAMC_TRP_2 |
|
||||
+ AT91C_SDRAMC_TRCD_2 |
|
||||
+ AT91C_SDRAMC_TRAS_5 |
|
||||
+ AT91C_SDRAMC_TXSR_8, /* Control Register */
|
||||
+ (MASTER_CLOCK * 7)/1000000, /* Refresh Timer Register */
|
||||
+ AT91C_SDRAMC_MD_SDRAM); /* SDRAM (no low power) */
|
||||
+
|
||||
+
|
||||
+#endif /* CFG_SDRAM */
|
||||
+}
|
||||
+#endif /* CFG_HW_INIT */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn sdramc_hw_init */
|
||||
+/* \brief This function performs SDRAMC HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void sdramc_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+/* const struct pio_desc sdramc_pio[] = {
|
||||
+ {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+*/
|
||||
+ /* Configure the SDRAMC PIO controller to output PCK0 */
|
||||
+/* pio_setup(sdramc_pio); */
|
||||
+
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
|
||||
+
|
||||
+}
|
||||
+#endif /* CFG_SDRAM */
|
||||
+
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_recovery */
|
||||
+/* \brief This function erases DataFlash Page 0 if USR PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_recovery(AT91PS_DF pDf)
|
||||
+{
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb_pio[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb_pio);
|
||||
+
|
||||
+ /* If USR PB is pressed during Boot sequence */
|
||||
+ /* Erase DataFlash Page 0*/
|
||||
+ if ( !pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ df_page_erase(pDf, 0);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_hw_init */
|
||||
+/* \brief This function performs DataFlash HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc df_pio[] = {
|
||||
+ {"MISO", AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"MOSI", AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"SPCK", AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
|
||||
+ {"NPCS0", AT91C_PIN_PA(3), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(df_pio);
|
||||
+}
|
||||
+#endif /* CFG_DATAFLASH */
|
||||
+
|
||||
+
|
||||
+
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nand_recovery */
|
||||
+/* \brief This function erases NandFlash Block 0 if USR PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+static void nand_recovery(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb_pio[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb_pio);
|
||||
+
|
||||
+ /* If USR PB is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if (!pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ AT91F_NandEraseBlock0();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_hw_init */
|
||||
+/* \brief NandFlash HW init */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc nand_pio[] = {
|
||||
+ {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {"NANDCS", AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SMC CS3 */
|
||||
+ writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
|
||||
+ writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
|
||||
+ writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE) , AT91C_BASE_SMC + SMC_CYCLE3);
|
||||
+ writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE |
|
||||
+ AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF) , AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(nand_pio);
|
||||
+
|
||||
+ nand_recovery();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_16bits_dbw_init */
|
||||
+/* \brief Configure SMC in 16 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_16bits_dbw_init(void)
|
||||
+{
|
||||
+ writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_8bits_dbw_init */
|
||||
+/* \brief Configure SMC in 8 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_8bits_dbw_init(void)
|
||||
+{
|
||||
+ writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+
|
||||
+#endif /* #ifdef CFG_NANDFLASH */
|
||||
diff --git a/crt0_gnu.S b/crt0_gnu.S
|
||||
index 042b617..002feef 100644
|
||||
--- a/crt0_gnu.S
|
||||
+++ b/crt0_gnu.S
|
||||
@@ -106,6 +106,13 @@ _relocate_to_sram:
|
||||
#endif /* CFG_NORFLASH */
|
||||
|
||||
_setup_clocks:
|
||||
+/* Test if main osc is bypassed */
|
||||
+ ldr r0,=AT91C_PMC_MOR
|
||||
+ ldr r1, [r0]
|
||||
+ ldr r2,=AT91C_CKGR_OSCBYPASS
|
||||
+ ands r1, r1, r2
|
||||
+ bne _init_data /* branch if OSCBYPASS=1 */
|
||||
+
|
||||
/* Test if main oscillator is enabled */
|
||||
ldr r0,=AT91C_PMC_SR
|
||||
ldr r1, [r0]
|
||||
diff --git a/include/part.h b/include/part.h
|
||||
index ba5985a..212789f 100644
|
||||
--- a/include/part.h
|
||||
+++ b/include/part.h
|
||||
@@ -35,7 +35,11 @@
|
||||
|
||||
#ifdef AT91SAM9260
|
||||
#include "AT91SAM9260_inc.h"
|
||||
-#include "at91sam9260ek.h"
|
||||
+ #ifdef at91sam9260ek
|
||||
+ #include "at91sam9260ek.h"
|
||||
+ #elif usb_a9260
|
||||
+ #include "usb-a9260.h"
|
||||
+ #endif
|
||||
#endif
|
||||
|
||||
#ifdef AT91SAM9XE
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
97
board/calao/usb-a9260/linux-3.7.4.config
Normal file
97
board/calao/usb-a9260/linux-3.7.4.config
Normal file
@@ -0,0 +1,97 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_AT91=y
|
||||
CONFIG_ARCH_AT91SAM9260=y
|
||||
CONFIG_MACH_USB_A9260=y
|
||||
CONFIG_AT91_SLOW_CLOCK=y
|
||||
# CONFIG_ARM_THUMB is not set
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="mem=64M console=ttyS0,115200"
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_ROUTE_VERBOSE=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_DATAFLASH=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_ATMEL=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_MACB=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_EVBUG=y
|
||||
# CONFIG_KEYBOARD_ATKBD is not set
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_SERIO is not set
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_ATMEL=y
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_USB_HID is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_FUSE_FS=m
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
851
board/calao/usb-a9263/at91bootstrap-1.16-usb-a9263.patch
Normal file
851
board/calao/usb-a9263/at91bootstrap-1.16-usb-a9263.patch
Normal file
@@ -0,0 +1,851 @@
|
||||
From 74796655212d321f50ab89e8c5570245901f4cba Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Thu, 5 Jul 2012 18:44:07 +0200
|
||||
Subject: [PATCH] Add support for the Calao-systems USB-A9263
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
board/usb_a9263/dataflash/Makefile | 115 +++++++++++++
|
||||
board/usb_a9263/dataflash/usb-a9263.h | 97 +++++++++++
|
||||
board/usb_a9263/nandflash/Makefile | 117 ++++++++++++++
|
||||
board/usb_a9263/nandflash/usb-a9263.h | 116 +++++++++++++
|
||||
board/usb_a9263/usb_a9263.c | 285 +++++++++++++++++++++++++++++++++
|
||||
crt0_gnu.S | 7 +
|
||||
driver/dataflash.c | 6 +-
|
||||
include/part.h | 6 +-
|
||||
8 files changed, 745 insertions(+), 4 deletions(-)
|
||||
create mode 100644 board/usb_a9263/dataflash/Makefile
|
||||
create mode 100644 board/usb_a9263/dataflash/usb-a9263.h
|
||||
create mode 100644 board/usb_a9263/nandflash/Makefile
|
||||
create mode 100644 board/usb_a9263/nandflash/usb-a9263.h
|
||||
create mode 100644 board/usb_a9263/usb_a9263.c
|
||||
|
||||
diff --git a/board/usb_a9263/dataflash/Makefile b/board/usb_a9263/dataflash/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..332685e
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9263/dataflash/Makefile
|
||||
@@ -0,0 +1,115 @@
|
||||
+# TODO: set this appropriately for your local toolchain
|
||||
+#SHELL=C:\CYGWIN_REP\dwn_071004\bin\BASH.exe
|
||||
+CROSS_COMPILE=arm-elf-
|
||||
+#CROSS_COMPILE = arm-softfloat-linux-gnu-
|
||||
+
|
||||
+TOOLCHAIN=gcc
|
||||
+
|
||||
+BOOTSTRAP_PATH=../../..
|
||||
+
|
||||
+# DataFlashBoot Configuration for USB-A9263
|
||||
+
|
||||
+# Target name (case sensitive!!!)
|
||||
+TARGET=AT91SAM9263
|
||||
+# Board name (case sensitive!!!)
|
||||
+BOARD=usb_a9263
|
||||
+# Link Address and Top_of_Memory
|
||||
+LINK_ADDR=0x300000
|
||||
+TOP_OF_MEMORY=0x314000
|
||||
+# Name of current directory
|
||||
+PROJECT=dataflash
|
||||
+
|
||||
+ifndef BOOT_NAME
|
||||
+BOOT_NAME=$(PROJECT)_$(BOARD)
|
||||
+endif
|
||||
+
|
||||
+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+
|
||||
+AS=$(CROSS_COMPILE)gcc
|
||||
+CC=$(CROSS_COMPILE)gcc
|
||||
+LD=$(CROSS_COMPILE)gcc
|
||||
+NM= $(CROSS_COMPILE)nm
|
||||
+SIZE=$(CROSS_COMPILE)size
|
||||
+OBJCOPY=$(CROSS_COMPILE)objcopy
|
||||
+OBJDUMP=$(CROSS_COMPILE)objdump
|
||||
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
|
||||
+ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
|
||||
+
|
||||
+# Linker flags.
|
||||
+# -Wl,...: tell GCC to pass this to linker.
|
||||
+# -Map: create map file
|
||||
+# --cref: add cross reference to map file
|
||||
+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
|
||||
+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
|
||||
+OBJS=crt0_gnu.o
|
||||
+
|
||||
+endif
|
||||
+
|
||||
+OBJS+=\
|
||||
+ $(BOARD).o \
|
||||
+ main.o \
|
||||
+ gpio.o \
|
||||
+ pmc.o \
|
||||
+ debug.o \
|
||||
+ sdramc.o \
|
||||
+ dataflash.o \
|
||||
+ _udivsi3.o \
|
||||
+ _umodsi3.o \
|
||||
+ div0.o \
|
||||
+ udiv.o \
|
||||
+ string.o
|
||||
+
|
||||
+rebuild: clean all
|
||||
+
|
||||
+all: $(BOOT_NAME)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+$(BOOT_NAME): $(OBJS)
|
||||
+ $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
|
||||
+ $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
|
||||
+
|
||||
+main.o: $(BOOTSTRAP_PATH)/main.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
|
||||
+
|
||||
+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
|
||||
+
|
||||
+pmc.o: $(BOOTSTRAP_PATH)/driver/pmc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
|
||||
+
|
||||
+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
|
||||
+
|
||||
+sdramc.o: $(BOOTSTRAP_PATH)/driver/sdramc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
|
||||
+
|
||||
+dataflash.o: $(BOOTSTRAP_PATH)/driver/dataflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
|
||||
+
|
||||
+crt0_gnu.o: $(BOOTSTRAP_PATH)/crt0_gnu.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
|
||||
+
|
||||
+div0.o: $(BOOTSTRAP_PATH)/lib/div0.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
|
||||
+
|
||||
+string.o: $(BOOTSTRAP_PATH)/lib/string.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
|
||||
+
|
||||
+udiv.o: $(BOOTSTRAP_PATH)/lib/udiv.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
|
||||
+
|
||||
+_udivsi3.o: $(BOOTSTRAP_PATH)/lib/_udivsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
|
||||
+
|
||||
+_umodsi3.o: $(BOOTSTRAP_PATH)/lib/_umodsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
|
||||
+
|
||||
+clean:
|
||||
+ rm -f *.o *.bin *.elf *.map
|
||||
diff --git a/board/usb_a9263/dataflash/usb-a9263.h b/board/usb_a9263/dataflash/usb-a9263.h
|
||||
new file mode 100644
|
||||
index 0000000..40a3af8
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9263/dataflash/usb-a9263.h
|
||||
@@ -0,0 +1,97 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb-a9263.h
|
||||
+ * Object :
|
||||
+ * Creation : GH Jun 28th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#ifndef _USB_A9263_H
|
||||
+#define _USB_A9263_H
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* PMC Settings */
|
||||
+/* */
|
||||
+/* The main oscillator is enabled as soon as possible in the c_startup */
|
||||
+/* and MCK is switched on the main oscillator. */
|
||||
+/* PLL initialization is done later in the hw_init() function */
|
||||
+/* ******************************************************************* */
|
||||
+#define MASTER_CLOCK (180000000/2)
|
||||
+#define PLL_LOCK_TIMEOUT 1000000
|
||||
+
|
||||
+#define PLLA_SETTINGS 0x20593F06
|
||||
+#define PLLB_SETTINGS 0x10483F0E
|
||||
+
|
||||
+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
|
||||
+#define MCKR_SETTINGS (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
|
||||
+#define MCKR_CSS_SETTINGS (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* DataFlash Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_BASE_SPI AT91C_BASE_SPI0
|
||||
+#define AT91C_ID_SPI AT91C_ID_SPI0
|
||||
+
|
||||
+/* SPI CLOCK */
|
||||
+#define AT91C_SPI_CLK 8000000
|
||||
+/* AC characteristics */
|
||||
+/* DLYBS = tCSS= 250ns min and DLYBCT = tCSH = 250ns */
|
||||
+#define DATAFLASH_TCSS (0x1a << 16) /* 250ns min (tCSS) <=> 12/48000000 = 250ns */
|
||||
+#define DATAFLASH_TCHS (0x1 << 24) /* 250ns min (tCSH) <=> (64*1+SCBR)/(2*48000000) */
|
||||
+
|
||||
+#define DF_CS_SETTINGS (AT91C_SPI_NCPHA | (AT91C_SPI_DLYBS & DATAFLASH_TCSS) | (AT91C_SPI_DLYBCT & DATAFLASH_TCHS) | ((MASTER_CLOCK / AT91C_SPI_CLK) << 8))
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* SDRAMC Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_BASE_SDRAMC AT91C_BASE_SDRAMC0
|
||||
+#define AT91C_EBI_SDRAM AT91C_EBI0_SDRAM
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* BootStrap Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
|
||||
+
|
||||
+#define IMG_ADDRESS 0x4000 /* Image Address in DataFlash */
|
||||
+#define IMG_SIZE 0x40000 /* Image Size in DataFlash */
|
||||
+
|
||||
+#define MACH_TYPE 0x6AE /* USB-A9263 */
|
||||
+#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* Application Settings */
|
||||
+/* ******************************************************************* */
|
||||
+#define CFG_HW_INIT
|
||||
+#define CFG_SDRAM
|
||||
+#undef CFG_DEBUG
|
||||
+
|
||||
+#define CFG_DATAFLASH
|
||||
+
|
||||
+#endif /* _USB_A9263_H */
|
||||
diff --git a/board/usb_a9263/nandflash/Makefile b/board/usb_a9263/nandflash/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..c453098
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9263/nandflash/Makefile
|
||||
@@ -0,0 +1,117 @@
|
||||
+# TODO: set this appropriately for your local toolchain
|
||||
+#SHELL=C:\CYGWIN_REP\dwn_071004\bin\BASH.exe
|
||||
+CROSS_COMPILE=arm-elf-
|
||||
+
|
||||
+TOOLCHAIN=gcc
|
||||
+
|
||||
+BOOTSTRAP_PATH=../../..
|
||||
+
|
||||
+# NandFlashBoot Configuration for USB-A9263
|
||||
+
|
||||
+# Target name (case sensitive!!!)
|
||||
+TARGET=AT91SAM9263
|
||||
+# Board name (case sensitive!!!)
|
||||
+BOARD=usb_a9263
|
||||
+# Link Address and Top_of_Memory
|
||||
+LINK_ADDR=0x300000
|
||||
+TOP_OF_MEMORY=0x314000
|
||||
+# Name of current directory
|
||||
+PROJECT=nandflash
|
||||
+
|
||||
+ifndef BOOT_NAME
|
||||
+BOOT_NAME=$(PROJECT)_$(BOARD)
|
||||
+endif
|
||||
+
|
||||
+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+
|
||||
+AS=$(CROSS_COMPILE)gcc
|
||||
+CC=$(CROSS_COMPILE)gcc
|
||||
+LD=$(CROSS_COMPILE)gcc
|
||||
+NM= $(CROSS_COMPILE)nm
|
||||
+SIZE=$(CROSS_COMPILE)size
|
||||
+OBJCOPY=$(CROSS_COMPILE)objcopy
|
||||
+OBJDUMP=$(CROSS_COMPILE)objdump
|
||||
+CCFLAGS=-g -mcpu=arm9 -O0 -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
|
||||
+ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
|
||||
+
|
||||
+# Linker flags.
|
||||
+# -Wl,...: tell GCC to pass this to linker.
|
||||
+# -Map: create map file
|
||||
+# --cref: add cross reference to map file
|
||||
+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
|
||||
+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
|
||||
+OBJS=crt0_gnu.o
|
||||
+
|
||||
+endif
|
||||
+
|
||||
+OBJS+=\
|
||||
+ $(BOARD).o \
|
||||
+ main.o \
|
||||
+ gpio.o \
|
||||
+ pmc.o \
|
||||
+ debug.o \
|
||||
+ sdramc.o \
|
||||
+ nandflash.o \
|
||||
+ _udivsi3.o \
|
||||
+ _umodsi3.o \
|
||||
+ div0.o \
|
||||
+ udiv.o \
|
||||
+ string.o
|
||||
+
|
||||
+rebuild: clean all
|
||||
+
|
||||
+all: $(BOOT_NAME)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+$(BOOT_NAME): $(OBJS)
|
||||
+ $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
|
||||
+ $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
|
||||
+
|
||||
+main.o: $(BOOTSTRAP_PATH)/main.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
|
||||
+
|
||||
+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
|
||||
+
|
||||
+pmc.o: $(BOOTSTRAP_PATH)/driver/pmc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
|
||||
+
|
||||
+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
|
||||
+
|
||||
+sdramc.o: $(BOOTSTRAP_PATH)/driver/sdramc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
|
||||
+
|
||||
+dataflash.o: $(BOOTSTRAP_PATH)/driver/dataflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
|
||||
+
|
||||
+nandflash.o: $(BOOTSTRAP_PATH)/driver/nandflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
|
||||
+
|
||||
+crt0_gnu.o: $(BOOTSTRAP_PATH)/crt0_gnu.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
|
||||
+
|
||||
+div0.o: $(BOOTSTRAP_PATH)/lib/div0.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
|
||||
+
|
||||
+string.o: $(BOOTSTRAP_PATH)/lib/string.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
|
||||
+
|
||||
+udiv.o: $(BOOTSTRAP_PATH)/lib/udiv.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
|
||||
+
|
||||
+_udivsi3.o: $(BOOTSTRAP_PATH)/lib/_udivsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
|
||||
+
|
||||
+_umodsi3.o: $(BOOTSTRAP_PATH)/lib/_umodsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
|
||||
+
|
||||
+clean:
|
||||
+ rm -f *.o *.bin *.elf *.map
|
||||
diff --git a/board/usb_a9263/nandflash/usb-a9263.h b/board/usb_a9263/nandflash/usb-a9263.h
|
||||
new file mode 100644
|
||||
index 0000000..24e2cf1
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9263/nandflash/usb-a9263.h
|
||||
@@ -0,0 +1,116 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb-a9263.h
|
||||
+ * Object :
|
||||
+ * Creation : GH Jun 28th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#ifndef _USB_A9263_H
|
||||
+#define _USB_A9263_H
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* PMC Settings */
|
||||
+/* */
|
||||
+/* The main oscillator is enabled as soon as possible in the c_startup */
|
||||
+/* and MCK is switched on the main oscillator. */
|
||||
+/* PLL initialization is done later in the hw_init() function */
|
||||
+/* ******************************************************************* */
|
||||
+#define MASTER_CLOCK (180000000/2)
|
||||
+#define PLL_LOCK_TIMEOUT 1000000
|
||||
+
|
||||
+#define PLLA_SETTINGS 0x20593F06
|
||||
+#define PLLB_SETTINGS 0x10483F0E
|
||||
+
|
||||
+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
|
||||
+#define MCKR_SETTINGS (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
|
||||
+#define MCKR_CSS_SETTINGS (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* NandFlash Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_SMARTMEDIA_BASE 0x40000000
|
||||
+
|
||||
+#define AT91_SMART_MEDIA_ALE (1 << 21) /* our ALE is AD21 */
|
||||
+#define AT91_SMART_MEDIA_CLE (1 << 22) /* our CLE is AD22 */
|
||||
+
|
||||
+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOD_SODR = AT91C_PIO_PD15;} while(0)
|
||||
+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOD_CODR = AT91C_PIO_PD15;} while(0)
|
||||
+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOA_PDSR & AT91C_PIO_PA22))
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* SDRAMC Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_BASE_SDRAMC AT91C_BASE_SDRAMC0
|
||||
+#define AT91C_EBI_SDRAM AT91C_EBI0_SDRAM
|
||||
+
|
||||
+/* ******************************************************************** */
|
||||
+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 90000000. */
|
||||
+/* Please refer to SMC section in AT91SAM9x datasheet to learn how */
|
||||
+/* to generate these values. */
|
||||
+/* ******************************************************************** */
|
||||
+#define AT91C_SM_NWE_SETUP (1 << 0)
|
||||
+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
|
||||
+#define AT91C_SM_NRD_SETUP (1 << 16)
|
||||
+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_PULSE (3 << 0)
|
||||
+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
|
||||
+#define AT91C_SM_NRD_PULSE (3 << 16)
|
||||
+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_CYCLE (5 << 0)
|
||||
+#define AT91C_SM_NRD_CYCLE (5 << 16)
|
||||
+
|
||||
+#define AT91C_SM_TDF (2 << 16)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* BootStrap Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define IMG_ADDRESS 0x20000 /* Image Address in NandFlash */
|
||||
+#define IMG_SIZE 0x40000 /* Image Size in NandFlash */
|
||||
+
|
||||
+#define MACH_TYPE 0x6AE /* USB-A9263 */
|
||||
+#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* Application Settings */
|
||||
+/* ******************************************************************* */
|
||||
+#undef CFG_DEBUG
|
||||
+#undef CFG_DATAFLASH
|
||||
+
|
||||
+#define CFG_NANDFLASH
|
||||
+#undef NANDFLASH_SMALL_BLOCKS /* NANDFLASH_LARGE_BLOCKS used instead */
|
||||
+
|
||||
+#define CFG_HW_INIT
|
||||
+#define CFG_SDRAM
|
||||
+
|
||||
+
|
||||
+#endif /* _USB_A9263_H */
|
||||
diff --git a/board/usb_a9263/usb_a9263.c b/board/usb_a9263/usb_a9263.c
|
||||
new file mode 100644
|
||||
index 0000000..5630f99
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9263/usb_a9263.c
|
||||
@@ -0,0 +1,285 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2006, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaiimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb_a9263.c
|
||||
+ * Object :
|
||||
+ * Creation : GH Jun 28th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#include "../../include/part.h"
|
||||
+#include "../../include/gpio.h"
|
||||
+#include "../../include/pmc.h"
|
||||
+#include "../../include/debug.h"
|
||||
+#include "../../include/sdramc.h"
|
||||
+#include "../../include/main.h"
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+#include "../../include/nandflash.h"
|
||||
+#endif
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+#include "../../include/dataflash.h"
|
||||
+#endif
|
||||
+
|
||||
+static inline unsigned int get_cp15(void)
|
||||
+{
|
||||
+ unsigned int value;
|
||||
+ __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
|
||||
+ return value;
|
||||
+}
|
||||
+
|
||||
+static inline void set_cp15(unsigned int value)
|
||||
+{
|
||||
+ __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
|
||||
+}
|
||||
+
|
||||
+
|
||||
+#ifdef CFG_HW_INIT
|
||||
+/*---------------------------------------------------------------------------- */
|
||||
+/* \fn hw_init */
|
||||
+/* \brief This function performs very low level HW initialization */
|
||||
+/* This function is invoked as soon as possible during the c_startup */
|
||||
+/* The bss segment must be initialized */
|
||||
+/*---------------------------------------------------------------------------- */
|
||||
+void hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc hw_pio[] = {
|
||||
+#ifdef CFG_DEBUG
|
||||
+ {"RXD", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"TXD", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Disable watchdog */
|
||||
+ writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
|
||||
+
|
||||
+ /* At this stage the main oscillator is supposed to be enabled
|
||||
+ * PCK = MCK = MOSC */
|
||||
+
|
||||
+ /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
|
||||
+ pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* PCK = PLLA = 2 * MCK */
|
||||
+ pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+ /* Switch MCK on PLLA output */
|
||||
+ pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+
|
||||
+ /* Configure PLLB */
|
||||
+ pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure the PIO controller to output PCK0 */
|
||||
+ pio_setup(hw_pio);
|
||||
+
|
||||
+ /* Configure the EBI0 Slave Slot Cycle to 64 */
|
||||
+ writel( (readl((AT91C_BASE_MATRIX + MATRIX_SCFG4)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG4));
|
||||
+
|
||||
+#ifdef CFG_DEBUG
|
||||
+ /* Enable Debug messages on the DBGU */
|
||||
+ dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
|
||||
+ dbg_print("Start AT91Bootstrap...\n\r");
|
||||
+#endif /* CFG_DEBUG */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+ /* Initialize the matrix */
|
||||
+ /* VDDIOMSEL = 1 -> Memories are 3.3V powered */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBI0CSA) | (1 << 16) | AT91C_EBI_CS1A_SDRAMC, AT91C_BASE_CCFG + CCFG_EBI0CSA);
|
||||
+
|
||||
+ /* Configure SDRAM Controller */
|
||||
+ sdram_init( AT91C_SDRAMC_NC_9 |
|
||||
+ AT91C_SDRAMC_NR_13 |
|
||||
+ AT91C_SDRAMC_CAS_2 |
|
||||
+ AT91C_SDRAMC_NB_4_BANKS |
|
||||
+ AT91C_SDRAMC_DBW_32_BITS |
|
||||
+ AT91C_SDRAMC_TWR_2 |
|
||||
+ AT91C_SDRAMC_TRC_7 |
|
||||
+ AT91C_SDRAMC_TRP_2 |
|
||||
+ AT91C_SDRAMC_TRCD_2 |
|
||||
+ AT91C_SDRAMC_TRAS_5 |
|
||||
+ AT91C_SDRAMC_TXSR_8, /* Control Register */
|
||||
+ (MASTER_CLOCK * 7)/1000000, /* Refresh Timer Register */
|
||||
+ AT91C_SDRAMC_MD_SDRAM); /* SDRAM (no low power) */
|
||||
+#endif /* CFG_SDRAM */
|
||||
+}
|
||||
+#endif /* CFG_HW_INIT */
|
||||
+
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+//*----------------------------------------------------------------------------
|
||||
+//* \fn sdramc_hw_init
|
||||
+//* \brief This function performs SDRAMC HW initialization
|
||||
+//*----------------------------------------------------------------------------*/
|
||||
+void sdramc_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc sdramc_pio[] = {
|
||||
+ {"D16", AT91C_PIN_PD(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D17", AT91C_PIN_PD(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D18", AT91C_PIN_PD(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D19", AT91C_PIN_PD(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D20", AT91C_PIN_PD(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D21", AT91C_PIN_PD(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D22", AT91C_PIN_PD(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D23", AT91C_PIN_PD(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D24", AT91C_PIN_PD(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D25", AT91C_PIN_PD(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D26", AT91C_PIN_PD(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D27", AT91C_PIN_PD(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D28", AT91C_PIN_PD(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D29", AT91C_PIN_PD(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D30", AT91C_PIN_PD(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D31", AT91C_PIN_PD(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the SDRAMC PIO controller */
|
||||
+ pio_setup(sdramc_pio);
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_recovery */
|
||||
+/* \brief This function erases DataFlash Page 0 if USER PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_recovery(AT91PS_DF pDf)
|
||||
+{
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb_pio[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb_pio);
|
||||
+
|
||||
+ /* If USER PB is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if ( !pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ df_page_erase(pDf, 0);
|
||||
+#endif
|
||||
+}
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_hw_init */
|
||||
+/* \brief This function performs DataFlash HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc df_pio[] = {
|
||||
+ {"MISO", AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_B},
|
||||
+ {"MOSI", AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_B},
|
||||
+ {"SPCK", AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_B},
|
||||
+ {"NPCS0", AT91C_PIN_PA(5), 0, PIO_DEFAULT, PIO_PERIPH_B},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(df_pio);
|
||||
+}
|
||||
+#endif /* CFG_DATAFLASH */
|
||||
+
|
||||
+
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nand_recovery */
|
||||
+/* \brief This function erases NandFlash Block 0 if USER PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+static void nand_recovery(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb_pio[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb_pio);
|
||||
+
|
||||
+ /* If USER PB is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if (!pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ AT91F_NandEraseBlock0();
|
||||
+}
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_hw_init */
|
||||
+/* \brief NandFlash HW init */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc nand_pio[] = {
|
||||
+ {"RDY_BSY", AT91C_PIN_PA(22), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {"NANDCS", AT91C_PIN_PD(15), 0, PIO_PULLUP, PIO_OUTPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBI0CSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBI0CSA);
|
||||
+
|
||||
+ /* Configure SMC CS3 */
|
||||
+ writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC0 + SMC_SETUP3);
|
||||
+ writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC0 + SMC_PULSE3);
|
||||
+ writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE) , AT91C_BASE_SMC0 + SMC_CYCLE3);
|
||||
+ writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE |
|
||||
+ AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF) , AT91C_BASE_SMC0 + SMC_CTRL3);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOA), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ writel((1 << AT91C_ID_PIOCDE), PMC_PCER + AT91C_BASE_PMC);
|
||||
+
|
||||
+ pio_setup(nand_pio);
|
||||
+
|
||||
+ nand_recovery();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_16bits_dbw_init */
|
||||
+/* \brief Configure SMC in 16 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_16bits_dbw_init(void)
|
||||
+{
|
||||
+ writel(readl(AT91C_BASE_SMC0 + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC0 + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_8bits_dbw_init */
|
||||
+/* \brief Configure SMC in 8 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_8bits_dbw_init(void)
|
||||
+{
|
||||
+ writel((readl(AT91C_BASE_SMC0 + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC0 + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+#endif /* #ifdef CFG_NANDFLASH */
|
||||
+
|
||||
+
|
||||
diff --git a/crt0_gnu.S b/crt0_gnu.S
|
||||
index 042b617..002feef 100644
|
||||
--- a/crt0_gnu.S
|
||||
+++ b/crt0_gnu.S
|
||||
@@ -106,6 +106,13 @@ _relocate_to_sram:
|
||||
#endif /* CFG_NORFLASH */
|
||||
|
||||
_setup_clocks:
|
||||
+/* Test if main osc is bypassed */
|
||||
+ ldr r0,=AT91C_PMC_MOR
|
||||
+ ldr r1, [r0]
|
||||
+ ldr r2,=AT91C_CKGR_OSCBYPASS
|
||||
+ ands r1, r1, r2
|
||||
+ bne _init_data /* branch if OSCBYPASS=1 */
|
||||
+
|
||||
/* Test if main oscillator is enabled */
|
||||
ldr r0,=AT91C_PMC_SR
|
||||
ldr r1, [r0]
|
||||
diff --git a/driver/dataflash.c b/driver/dataflash.c
|
||||
index e28e49e..4de295a 100644
|
||||
--- a/driver/dataflash.c
|
||||
+++ b/driver/dataflash.c
|
||||
@@ -293,14 +293,14 @@ static int df_init (AT91PS_DF pDf)
|
||||
pDf->dfDescription.pages_size = 264;
|
||||
pDf->dfDescription.page_offset = 9;
|
||||
break;
|
||||
-
|
||||
+*/
|
||||
case AT45DB021B:
|
||||
pDf->dfDescription.pages_number = 1024;
|
||||
pDf->dfDescription.pages_size = 264;
|
||||
pDf->dfDescription.page_offset = 9;
|
||||
break;
|
||||
|
||||
- case AT45DB041B:
|
||||
+/* case AT45DB041B:
|
||||
pDf->dfDescription.pages_number = 2048;
|
||||
pDf->dfDescription.pages_size = 264;
|
||||
pDf->dfDescription.page_offset = 9;
|
||||
@@ -373,7 +373,7 @@ int load_df(unsigned int pcs, unsigned int img_addr, unsigned int img_size, unsi
|
||||
if (!df_init(pDf))
|
||||
return -1;
|
||||
|
||||
-#if defined(AT91SAM9260) || defined(AT91SAM9XE) || defined(AT91SAM9G20)
|
||||
+#if defined(AT91SAM9260) || defined(AT91SAM9263) || defined(AT91SAM9XE) || defined(AT91SAM9G20)
|
||||
/* Test if a button has been pressed or not */
|
||||
/* Erase Page 0 to avoid infinite loop */
|
||||
df_recovery(pDf);
|
||||
diff --git a/include/part.h b/include/part.h
|
||||
index ba5985a..a1863d0 100644
|
||||
--- a/include/part.h
|
||||
+++ b/include/part.h
|
||||
@@ -61,7 +61,11 @@
|
||||
|
||||
#ifdef AT91SAM9263
|
||||
#include "AT91SAM9263_inc.h"
|
||||
-#include "at91sam9263ek.h"
|
||||
+ #ifdef at91sam9263ek
|
||||
+ #include "at91sam9263ek.h"
|
||||
+ #elif usb_a9263
|
||||
+ #include "usb-a9263.h"
|
||||
+ #endif
|
||||
#endif
|
||||
|
||||
#ifdef AT91CAP9
|
||||
--
|
||||
1.5.6.3
|
||||
|
||||
102
board/calao/usb-a9263/linux-3.4.4.config
Normal file
102
board/calao/usb-a9263/linux-3.4.4.config
Normal file
@@ -0,0 +1,102 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_AT91=y
|
||||
CONFIG_ARCH_AT91SAM9263=y
|
||||
CONFIG_MACH_USB_A9263=y
|
||||
CONFIG_AT91_SLOW_CLOCK=y
|
||||
# CONFIG_ARM_THUMB is not set
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="mem=64M console=ttyS0,115200"
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_ROUTE_VERBOSE=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_DATAFLASH=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_ATMEL=y
|
||||
CONFIG_MTD_NAND_ATMEL_ECC_SOFT=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_MACB=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_EVBUG=y
|
||||
# CONFIG_KEYBOARD_ATKBD is not set
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_SERIO is not set
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_ATMEL=y
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_USB_HID is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_FUSE_FS=m
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_UBIFS_FS_XATTR=y
|
||||
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
105
board/calao/usb-a9g20-lpw/linux-3.4.4.config
Normal file
105
board/calao/usb-a9g20-lpw/linux-3.4.4.config
Normal file
@@ -0,0 +1,105 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_SLAB=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_ARCH_AT91=y
|
||||
CONFIG_ARCH_AT91SAM9G20=y
|
||||
CONFIG_MACH_USB_A9G20=y
|
||||
CONFIG_AT91_SLOW_CLOCK=y
|
||||
# CONFIG_ARM_THUMB is not set
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="mem=64M console=ttyS0,115200"
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_ROUTE_VERBOSE=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_LRO is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_DATAFLASH=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_ATMEL=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_MACB=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_EVBUG=y
|
||||
# CONFIG_KEYBOARD_ATKBD is not set
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_SERIO is not set
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_GPIO=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_ATMEL=y
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_USB_HID is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_ETH=m
|
||||
CONFIG_NEW_LEDS=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_RV3029C2=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_FUSE_FS=m
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_UBIFS_FS_XATTR=y
|
||||
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
@@ -0,0 +1,610 @@
|
||||
From 8d84757d5170969e8bdfebc7951f43c5aa2b05fd Mon Sep 17 00:00:00 2001
|
||||
From: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
Date: Fri, 6 Jul 2012 16:32:47 +0200
|
||||
Subject: [PATCH] Add support for the Calao-systems USB-A9G20-LPW
|
||||
|
||||
|
||||
Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
|
||||
---
|
||||
board/usb_a9g20_lpw/nandflash/Makefile | 121 ++++++++++
|
||||
board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h | 112 +++++++++
|
||||
board/usb_a9g20_lpw/usb_a9g20_lpw.c | 303 +++++++++++++++++++++++++
|
||||
crt0_gnu.S | 7 +
|
||||
include/part.h | 6 +-
|
||||
5 files changed, 548 insertions(+), 1 deletions(-)
|
||||
create mode 100644 board/usb_a9g20_lpw/nandflash/Makefile
|
||||
create mode 100644 board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h
|
||||
create mode 100644 board/usb_a9g20_lpw/usb_a9g20_lpw.c
|
||||
|
||||
diff --git a/board/usb_a9g20_lpw/nandflash/Makefile b/board/usb_a9g20_lpw/nandflash/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..8c9d99a
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9g20_lpw/nandflash/Makefile
|
||||
@@ -0,0 +1,121 @@
|
||||
+# TODO: set this appropriately for your local toolchain
|
||||
+ifndef ERASE_FCT
|
||||
+ERASE_FCT=rm -f
|
||||
+endif
|
||||
+ifndef CROSS_COMPILE
|
||||
+CROSS_COMPILE=arm-elf-
|
||||
+endif
|
||||
+
|
||||
+TOOLCHAIN=gcc
|
||||
+
|
||||
+BOOTSTRAP_PATH=../../..
|
||||
+
|
||||
+# NandFlashBoot Configuration for USB-A9G20-LPW
|
||||
+
|
||||
+# Target name (case sensitive!!!)
|
||||
+TARGET=AT91SAM9G20
|
||||
+# Board name (case sensitive!!!)
|
||||
+BOARD=usb_a9g20_lpw
|
||||
+# Link Address and Top_of_Memory
|
||||
+LINK_ADDR=0x200000
|
||||
+TOP_OF_MEMORY=0x301000
|
||||
+# Name of current directory
|
||||
+PROJECT=nandflash
|
||||
+
|
||||
+ifndef BOOT_NAME
|
||||
+BOOT_NAME=$(PROJECT)_$(BOARD)
|
||||
+endif
|
||||
+
|
||||
+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+
|
||||
+AS=$(CROSS_COMPILE)gcc
|
||||
+CC=$(CROSS_COMPILE)gcc
|
||||
+LD=$(CROSS_COMPILE)gcc
|
||||
+NM= $(CROSS_COMPILE)nm
|
||||
+SIZE=$(CROSS_COMPILE)size
|
||||
+OBJCOPY=$(CROSS_COMPILE)objcopy
|
||||
+OBJDUMP=$(CROSS_COMPILE)objdump
|
||||
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
|
||||
+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
|
||||
+
|
||||
+# Linker flags.
|
||||
+# -Wl,...: tell GCC to pass this to linker.
|
||||
+# -Map: create map file
|
||||
+# --cref: add cross reference to map file
|
||||
+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
|
||||
+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
|
||||
+OBJS=crt0_gnu.o
|
||||
+
|
||||
+endif
|
||||
+
|
||||
+OBJS+=\
|
||||
+ $(BOARD).o \
|
||||
+ main.o \
|
||||
+ gpio.o \
|
||||
+ pmc.o \
|
||||
+ debug.o \
|
||||
+ sdramc.o \
|
||||
+ nandflash.o \
|
||||
+ _udivsi3.o \
|
||||
+ _umodsi3.o \
|
||||
+ div0.o \
|
||||
+ udiv.o \
|
||||
+ string.o
|
||||
+
|
||||
+rebuild: clean all
|
||||
+
|
||||
+all: $(BOOT_NAME)
|
||||
+
|
||||
+ifeq ($(TOOLCHAIN), gcc)
|
||||
+$(BOOT_NAME): $(OBJS)
|
||||
+ $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
|
||||
+ $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
|
||||
+
|
||||
+main.o: $(BOOTSTRAP_PATH)/main.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
|
||||
+
|
||||
+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
|
||||
+
|
||||
+pmc.o: $(BOOTSTRAP_PATH)/driver/pmc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
|
||||
+
|
||||
+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
|
||||
+
|
||||
+sdramc.o: $(BOOTSTRAP_PATH)/driver/sdramc.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
|
||||
+
|
||||
+dataflash.o: $(BOOTSTRAP_PATH)/driver/dataflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
|
||||
+
|
||||
+nandflash.o: $(BOOTSTRAP_PATH)/driver/nandflash.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
|
||||
+
|
||||
+crt0_gnu.o: $(BOOTSTRAP_PATH)/crt0_gnu.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
|
||||
+
|
||||
+div0.o: $(BOOTSTRAP_PATH)/lib/div0.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
|
||||
+
|
||||
+string.o: $(BOOTSTRAP_PATH)/lib/string.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
|
||||
+
|
||||
+udiv.o: $(BOOTSTRAP_PATH)/lib/udiv.c
|
||||
+ $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
|
||||
+
|
||||
+_udivsi3.o: $(BOOTSTRAP_PATH)/lib/_udivsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
|
||||
+
|
||||
+_umodsi3.o: $(BOOTSTRAP_PATH)/lib/_umodsi3.S
|
||||
+ $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
|
||||
+
|
||||
+clean:
|
||||
+ $(ERASE_FCT) *.o *.bin *.elf *.map
|
||||
diff --git a/board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h b/board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h
|
||||
new file mode 100644
|
||||
index 0000000..c0bdc6e
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h
|
||||
@@ -0,0 +1,112 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2008, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb-a9g20-lpw.h
|
||||
+ * Object :
|
||||
+ * Creation : GH July 6th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#ifndef _USB_A9G20_LPW_H
|
||||
+#define _USB_A9G20_LPW_H
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* PMC Settings */
|
||||
+/* */
|
||||
+/* The main oscillator is enabled as soon as possible in the c_startup */
|
||||
+/* and MCK is switched on the main oscillator. */
|
||||
+/* PLL initialization is done later in the hw_init() function */
|
||||
+/* ******************************************************************* */
|
||||
+#define MASTER_CLOCK (133000000)
|
||||
+#define PLL_LOCK_TIMEOUT 1000000
|
||||
+
|
||||
+/* Set PLLA to 798Mhz */
|
||||
+#define PLLA_SETTINGS 0x20843F02
|
||||
+#define PLLB_SETTINGS 0x100F3F02
|
||||
+
|
||||
+/* Switch MCK on PLLA output PCK = PLLA/2 = 3 * MCK */
|
||||
+#define MCKR_SETTINGS 0x1300
|
||||
+#define MCKR_CSS_SETTINGS (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* NandFlash Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define AT91C_SMARTMEDIA_BASE 0x40000000
|
||||
+
|
||||
+#define AT91_SMART_MEDIA_ALE (1 << 21) /* our ALE is AD21 */
|
||||
+#define AT91_SMART_MEDIA_CLE (1 << 22) /* our CLE is AD22 */
|
||||
+
|
||||
+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
|
||||
+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
|
||||
+
|
||||
+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
|
||||
+
|
||||
+
|
||||
+/* ******************************************************************** */
|
||||
+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 133000000.*/
|
||||
+/* Please refer to SMC section in AT91SAM9 datasheet to learn how */
|
||||
+/* to generate these values. */
|
||||
+/* ******************************************************************** */
|
||||
+#define AT91C_SM_NWE_SETUP (2 << 0)
|
||||
+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
|
||||
+#define AT91C_SM_NRD_SETUP (2 << 16)
|
||||
+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_PULSE (4 << 0)
|
||||
+#define AT91C_SM_NCS_WR_PULSE (4 << 8)
|
||||
+#define AT91C_SM_NRD_PULSE (4 << 16)
|
||||
+#define AT91C_SM_NCS_RD_PULSE (4 << 24)
|
||||
+
|
||||
+#define AT91C_SM_NWE_CYCLE (7 << 0)
|
||||
+#define AT91C_SM_NRD_CYCLE (7 << 16)
|
||||
+
|
||||
+#define AT91C_SM_TDF (3 << 16)
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* BootStrap Settings */
|
||||
+/* */
|
||||
+/* ******************************************************************* */
|
||||
+#define IMG_ADDRESS 0x20000 /* Image Address in NandFlash */
|
||||
+#define IMG_SIZE 0x40000 /* Image Size in NandFlash */
|
||||
+
|
||||
+#define MACH_TYPE 0x731 /* USB-A9G20 */
|
||||
+#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
|
||||
+
|
||||
+/* ******************************************************************* */
|
||||
+/* Application Settings */
|
||||
+/* ******************************************************************* */
|
||||
+#undef CFG_DEBUG
|
||||
+#undef CFG_DATAFLASH
|
||||
+
|
||||
+#define CFG_NANDFLASH
|
||||
+#undef NANDFLASH_SMALL_BLOCKS /* NANDFLASH_LARGE_BLOCKS used instead */
|
||||
+#undef CFG_NANDFLASH_RECOVERY
|
||||
+
|
||||
+#define CFG_SDRAM
|
||||
+#define CFG_HW_INIT
|
||||
+
|
||||
+#endif /* _USB_A9G20_LPW_H */
|
||||
diff --git a/board/usb_a9g20_lpw/usb_a9g20_lpw.c b/board/usb_a9g20_lpw/usb_a9g20_lpw.c
|
||||
new file mode 100644
|
||||
index 0000000..c372307
|
||||
--- /dev/null
|
||||
+++ b/board/usb_a9g20_lpw/usb_a9g20_lpw.c
|
||||
@@ -0,0 +1,303 @@
|
||||
+/* ----------------------------------------------------------------------------
|
||||
+ * ATMEL Microcontroller Software Support - ROUSSET -
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * Copyright (c) 2008, Atmel Corporation
|
||||
+
|
||||
+ * All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions are met:
|
||||
+ *
|
||||
+ * - Redistributions of source code must retain the above copyright notice,
|
||||
+ * this list of conditions and the disclaimer below.
|
||||
+ *
|
||||
+ * Atmel's name may not be used to endorse or promote products derived from
|
||||
+ * this software without specific prior written permission.
|
||||
+ *
|
||||
+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
|
||||
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+ * ----------------------------------------------------------------------------
|
||||
+ * File Name : usb_a9g20_lpw.c
|
||||
+ * Object :
|
||||
+ * Creation : GH July 6th 2012
|
||||
+ *-----------------------------------------------------------------------------
|
||||
+ */
|
||||
+#include "../../include/part.h"
|
||||
+#include "../../include/gpio.h"
|
||||
+#include "../../include/pmc.h"
|
||||
+#include "../../include/debug.h"
|
||||
+#include "../../include/sdramc.h"
|
||||
+#include "../../include/main.h"
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+#include "../../include/nandflash.h"
|
||||
+#endif
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+#include "../../include/dataflash.h"
|
||||
+#endif
|
||||
+
|
||||
+static inline unsigned int get_cp15(void)
|
||||
+{
|
||||
+ unsigned int value;
|
||||
+ __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
|
||||
+ return value;
|
||||
+}
|
||||
+
|
||||
+static inline void set_cp15(unsigned int value)
|
||||
+{
|
||||
+ __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
|
||||
+}
|
||||
+
|
||||
+#ifdef CFG_HW_INIT
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+/* \fn hw_init */
|
||||
+/* \brief This function performs very low level HW initialization */
|
||||
+/* This function is invoked as soon as possible during the c_startup */
|
||||
+/* The bss segment must be initialized */
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+void hw_init(void)
|
||||
+{
|
||||
+ unsigned int cp15;
|
||||
+
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc hw_pio[] = {
|
||||
+#ifdef CFG_DEBUG
|
||||
+ {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Disable watchdog */
|
||||
+ writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
|
||||
+
|
||||
+ /* At this stage the main oscillator is supposed to be enabled
|
||||
+ * PCK = MCK = MOSC */
|
||||
+ writel(0x00, AT91C_BASE_PMC + PMC_PLLICPR);
|
||||
+
|
||||
+ /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
|
||||
+ pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* PCK = PLLA/2 = 3 * MCK */
|
||||
+ pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+ /* Switch MCK on PLLA output */
|
||||
+ pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure PLLB */
|
||||
+ pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
|
||||
+
|
||||
+ /* Configure CP15 */
|
||||
+ cp15 = get_cp15();
|
||||
+ cp15 |= I_CACHE;
|
||||
+ set_cp15(cp15);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(hw_pio);
|
||||
+
|
||||
+ /* Configure the EBI Slave Slot Cycle to 64 */
|
||||
+ writel((readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
|
||||
+
|
||||
+#ifdef CFG_DEBUG
|
||||
+ /* Enable Debug messages on the DBGU */
|
||||
+ dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
|
||||
+
|
||||
+ dbg_print("Start AT91Bootstrap...\n\r");
|
||||
+#endif /* CFG_DEBUG */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+ /* Initialize the matrix (VDDIOSEL=0: memory voltage = 1.8V ) */
|
||||
+ writel((readl(AT91C_BASE_CCFG + CCFG_EBICSA) & ~0x00010000) | AT91C_EBI_CS1A_SDRAMC , AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SDRAM Controller */
|
||||
+ sdram_init( AT91C_SDRAMC_NC_9 |
|
||||
+ AT91C_SDRAMC_NR_13 |
|
||||
+ AT91C_SDRAMC_CAS_3 |
|
||||
+ AT91C_SDRAMC_NB_4_BANKS |
|
||||
+ AT91C_SDRAMC_DBW_32_BITS |
|
||||
+ AT91C_SDRAMC_TWR_3 |
|
||||
+ AT91C_SDRAMC_TRC_9 |
|
||||
+ AT91C_SDRAMC_TRP_3 |
|
||||
+ AT91C_SDRAMC_TRCD_3 |
|
||||
+ AT91C_SDRAMC_TRAS_6 |
|
||||
+ AT91C_SDRAMC_TXSR_10, /* Control Register */
|
||||
+ (MASTER_CLOCK * 7)/1000000, /* Refresh Timer Register */
|
||||
+ AT91C_SDRAMC_MD_SDRAM); /* SDRAM (no low power) */
|
||||
+
|
||||
+#endif /* CFG_SDRAM */
|
||||
+}
|
||||
+#endif /* CFG_HW_INIT */
|
||||
+
|
||||
+#ifdef CFG_SDRAM
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn sdramc_hw_init */
|
||||
+/* \brief This function performs SDRAMC HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void sdramc_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+/* const struct pio_desc sdramc_pio[] = {
|
||||
+ {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+*/
|
||||
+ /* Configure the SDRAMC PIO controller to output PCK0 */
|
||||
+/* pio_setup(sdramc_pio); */
|
||||
+
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
|
||||
+ writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
|
||||
+
|
||||
+}
|
||||
+#endif /* CFG_SDRAM */
|
||||
+
|
||||
+#ifdef CFG_DATAFLASH
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_recovery */
|
||||
+/* \brief This function erases DataFlash Page 0 if USR PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_recovery(AT91PS_DF pDf)
|
||||
+{
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS1_DATAFLASH)
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb);
|
||||
+
|
||||
+ /* If USR PB is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if ( !pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ df_page_erase(pDf, 0);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn df_hw_init */
|
||||
+/* \brief This function performs DataFlash HW initialization */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void df_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc df_pio[] = {
|
||||
+ {"MISO", AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"MOSI", AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ {"SPCK", AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
|
||||
+ {"NPCS0", AT91C_PIN_PA(3), 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+#endif
|
||||
+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS1_DATAFLASH)
|
||||
+ {"NPCS1", AT91C_PIN_PC(11), 0, PIO_DEFAULT, PIO_PERIPH_B},
|
||||
+#endif
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ pio_setup(df_pio);
|
||||
+}
|
||||
+#endif /* CFG_DATAFLASH */
|
||||
+
|
||||
+
|
||||
+
|
||||
+#ifdef CFG_NANDFLASH
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nand_recovery */
|
||||
+/* \brief This function erases NandFlash Block 0 if USER PB is pressed */
|
||||
+/* during boot sequence */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+#ifdef CFG_NANDFLASH_RECOVERY
|
||||
+static void nand_recovery(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc usrpb[] = {
|
||||
+ {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(usrpb);
|
||||
+
|
||||
+ /* If USER PB is pressed during Boot sequence */
|
||||
+ /* Erase NandFlash block 0*/
|
||||
+ if (!pio_get_value(AT91C_PIN_PB(10)) )
|
||||
+ AT91F_NandEraseBlock0();
|
||||
+}
|
||||
+#else
|
||||
+static void nand_recovery(void) {}
|
||||
+#endif
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_hw_init */
|
||||
+/* \brief NandFlash HW init */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_hw_init(void)
|
||||
+{
|
||||
+ /* Configure PIOs */
|
||||
+ const struct pio_desc nand_pio[] = {
|
||||
+ {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
|
||||
+ {"NANDCS", AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
|
||||
+ {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
|
||||
+ };
|
||||
+
|
||||
+ /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
|
||||
+ writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
|
||||
+
|
||||
+ /* Configure SMC CS3 */
|
||||
+ writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
|
||||
+ writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
|
||||
+ writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE) , AT91C_BASE_SMC + SMC_CYCLE3);
|
||||
+ writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE |
|
||||
+ AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF) , AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+
|
||||
+ /* Configure the PIO controller */
|
||||
+ writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
|
||||
+ pio_setup(nand_pio);
|
||||
+
|
||||
+ nand_recovery();
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_16bits_dbw_init */
|
||||
+/* \brief Configure SMC in 16 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_16bits_dbw_init(void)
|
||||
+{
|
||||
+ writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+/* \fn nandflash_cfg_8bits_dbw_init */
|
||||
+/* \brief Configure SMC in 8 bits mode */
|
||||
+/*------------------------------------------------------------------------------*/
|
||||
+void nandflash_cfg_8bits_dbw_init(void)
|
||||
+{
|
||||
+ writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
|
||||
+}
|
||||
+
|
||||
+#endif /* #ifdef CFG_NANDFLASH */
|
||||
diff --git a/crt0_gnu.S b/crt0_gnu.S
|
||||
index 042b617..002feef 100644
|
||||
--- a/crt0_gnu.S
|
||||
+++ b/crt0_gnu.S
|
||||
@@ -106,6 +106,13 @@ _relocate_to_sram:
|
||||
#endif /* CFG_NORFLASH */
|
||||
|
||||
_setup_clocks:
|
||||
+/* Test if main osc is bypassed */
|
||||
+ ldr r0,=AT91C_PMC_MOR
|
||||
+ ldr r1, [r0]
|
||||
+ ldr r2,=AT91C_CKGR_OSCBYPASS
|
||||
+ ands r1, r1, r2
|
||||
+ bne _init_data /* branch if OSCBYPASS=1 */
|
||||
+
|
||||
/* Test if main oscillator is enabled */
|
||||
ldr r0,=AT91C_PMC_SR
|
||||
ldr r1, [r0]
|
||||
diff --git a/include/part.h b/include/part.h
|
||||
index ba5985a..1d7392a 100644
|
||||
--- a/include/part.h
|
||||
+++ b/include/part.h
|
||||
@@ -46,7 +46,11 @@
|
||||
|
||||
#ifdef AT91SAM9G20
|
||||
#include "AT91SAM9260_inc.h"
|
||||
-#include "at91sam9g20ek.h"
|
||||
+ #ifdef at91sam9g20ek
|
||||
+ #include "at91sam9g20ek.h"
|
||||
+ #elif usb_a9g20_lpw
|
||||
+ #include "usb-a9g20-lpw.h"
|
||||
+ #endif
|
||||
#endif
|
||||
|
||||
#ifdef AT91SAM9261
|
||||
--
|
||||
1.5.6.3
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
diff --git a/arch/arm/configs/usb_a9g20_defconfig b/arch/arm/configs/usb_a9g20_defconfig
|
||||
index 30bf380..7716e0e 100644
|
||||
--- a/arch/arm/configs/usb_a9g20_defconfig
|
||||
+++ b/arch/arm/configs/usb_a9g20_defconfig
|
||||
@@ -15,6 +15,7 @@ CONFIG_HUSH_FANCY_PROMPT=y
|
||||
CONFIG_CMDLINE_EDITING=y
|
||||
CONFIG_AUTO_COMPLETE=y
|
||||
CONFIG_MENU=y
|
||||
+# CONFIG_ERRNO_MESSAGES is not set
|
||||
# CONFIG_CONSOLE_ACTIVATE_FIRST is not set
|
||||
CONFIG_CONSOLE_ACTIVATE_ALL=y
|
||||
CONFIG_PARTITION=y
|
||||
@@ -1 +0,0 @@
|
||||
console=tty1 clk_ignore_unused root=/dev/mmcblk1p2 rootfstype=ext4 ro
|
||||
@@ -1,37 +0,0 @@
|
||||
/dts-v1/;
|
||||
|
||||
/ {
|
||||
description = "Buildroot kernel for Chromebook Snow";
|
||||
images {
|
||||
kernel@1 {
|
||||
description = "kernel";
|
||||
data = /incbin/("zImage");
|
||||
type = "kernel_noload";
|
||||
arch = "arm";
|
||||
os = "linux";
|
||||
compression = "none";
|
||||
load = <0>;
|
||||
entry = <0>;
|
||||
hash@1 {
|
||||
algo = "sha1";
|
||||
};
|
||||
};
|
||||
fdt@1{
|
||||
description = "exynos5250-snow.dtb";
|
||||
data = /incbin/("exynos5250-snow.dtb");
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
hash@1 {
|
||||
algo = "sha1";
|
||||
};
|
||||
};
|
||||
};
|
||||
configurations {
|
||||
default = "conf@1";
|
||||
conf@1{
|
||||
kernel = "kernel@1";
|
||||
fdt = "fdt@1";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,27 +0,0 @@
|
||||
Some versions of u-boot for this Chromebook check for tpm node
|
||||
in the device tree and fail badly (reboot) if it is not found.
|
||||
|
||||
While not exactly correct, it is much easier to patch the mainline
|
||||
device tree to match u-boot expectations than to fix u-boot on
|
||||
this device.
|
||||
|
||||
See https://code.google.com/p/chromium/issues/detail?id=220169
|
||||
and https://lkml.org/lkml/2013/3/4/242
|
||||
|
||||
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
|
||||
|
||||
--- a/arch/arm/boot/dts/exynos5250-snow-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/exynos5250-snow-common.dtsi
|
||||
@@ -466,6 +466,11 @@
|
||||
status = "okay";
|
||||
samsung,i2c-sda-delay = <100>;
|
||||
samsung,i2c-max-bus-freq = <66000>;
|
||||
+
|
||||
+ tpm {
|
||||
+ compatible = "infineon,slb9635tt";
|
||||
+ reg = <0x20>;
|
||||
+ };
|
||||
};
|
||||
|
||||
&i2c_5 {
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
CONFIG_MWIFIEX=m
|
||||
CONFIG_MWIFIEX_SDIO=m
|
||||
@@ -1,69 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This scripts makes a minimal bootable SD card image for the Chromebook.
|
||||
# The resulting file is called bootsd.img. It should be written directly
|
||||
# to the card:
|
||||
#
|
||||
# SD=/dev/mmcblk1 # check your device name!
|
||||
# dd if=output/images/bootsd.img of=$SD
|
||||
#
|
||||
# The partitions are created just large enough to hold the kernel and
|
||||
# the rootfs image. Most of the card will be empty, and the secondary
|
||||
# GPT will not be in its proper location.
|
||||
|
||||
# cgpt does not create protective MBR, and the kernel refuses to read
|
||||
# GPT unless there's some kind of MBR in sector 0. So we need parted
|
||||
# to write that single sector before doing anything with the GPT.
|
||||
cgpt=$HOST_DIR/usr/bin/cgpt
|
||||
parted=$HOST_DIR/usr/sbin/parted
|
||||
kernel=$BINARIES_DIR/uImage.kpart
|
||||
rootfs=$BINARIES_DIR/rootfs.ext2
|
||||
|
||||
run() { echo "$@"; "$@"; }
|
||||
die() { echo "$@" >&2; exit 1; }
|
||||
test -f $kernel || die "No kernel image found"
|
||||
test -f $rootfs || die "No rootfs image found"
|
||||
test -x $cgpt || die "cgpt not found (host-vboot-utils have not been built?)"
|
||||
|
||||
# True file sizes in bytes
|
||||
kernelsize=`stat -t $kernel | cut -d\ -f2`
|
||||
rootfssize=`stat -t $rootfs | cut -d\ -f2`
|
||||
|
||||
# The card is partitioned in sectors of 8KB.
|
||||
# 4 sectors are reserved for MBR+GPT. Their actual size turns out
|
||||
# to be 33 512-blocks which is just over 2 sectors, but we align
|
||||
# it to a nice round number.
|
||||
sec=8192
|
||||
kernelsec=$(((kernelsize+8191)>>13))
|
||||
rootfssec=$(((rootfssize+8191)>>13))
|
||||
headersec=4
|
||||
|
||||
# There is also a copy of MBR+GPT at the end of the image.
|
||||
# It's going to be useless but both tools assume it's there.
|
||||
imagesec=$((2*headersec+kernelsec+rootfssec))
|
||||
bootsd="$BINARIES_DIR/bootsd.img"
|
||||
run dd bs=$sec count=$imagesec if=/dev/zero of=$bootsd
|
||||
|
||||
# cgpt needs offsets and sizes in 512-blocks.
|
||||
block=512
|
||||
kernelstart=$((headersec<<4))
|
||||
kernelblocks=$((kernelsec<<4))
|
||||
rootfsblocks=$((rootfssec<<4))
|
||||
rootfsstart=$((kernelstart+kernelblocks))
|
||||
|
||||
# This command initializes both GPT and MBR
|
||||
run $parted -s $bootsd mklabel gpt
|
||||
|
||||
# The kernel partition must be marked as bootable, that's why -S -T -P
|
||||
run $cgpt add -i 1 -b $kernelstart -s $kernelblocks \
|
||||
-t kernel -l kernel \
|
||||
-S 1 -T 1 -P 10 $bootsd
|
||||
|
||||
# It does not really matter where the rootfs partition is located as long
|
||||
# as the kernel can find it.
|
||||
# However, if anything is changed here, kernel.args must be updated as well.
|
||||
run $cgpt add -i 2 -b $rootfsstart -s $rootfsblocks \
|
||||
-t data -l rootfs $bootsd
|
||||
|
||||
run dd bs=$block if=$kernel of=$bootsd seek=$kernelstart
|
||||
run dd bs=$block if=$rootfs of=$bootsd seek=$rootfsstart
|
||||
@@ -1,137 +0,0 @@
|
||||
Samsung XE303C12 aka Chromebook Snow
|
||||
====================================
|
||||
|
||||
This file describes booting the Chromebook from an SD card containing
|
||||
Buildroot kernel and rootfs, using the original bootloader. This is
|
||||
the least invasive way to get Buildroot onto the devices and a good
|
||||
starting point.
|
||||
|
||||
The bootloader will only boot a kernel from a GPT partition marked
|
||||
bootable with cgpt tool from vboot-utils package.
|
||||
The kernel image must be signed using futility from the same package.
|
||||
The signing part is done by sign.sh script in this directory.
|
||||
|
||||
It does not really matter where rootfs is as long as the kernel is able
|
||||
to find it, but this particular configuration assumes the kernel is on
|
||||
partition 1 and rootfs is on partition 2 of the SD card.
|
||||
Make sure to check kernel.args if you change this.
|
||||
|
||||
Making the boot media
|
||||
---------------------
|
||||
Start by configuring and building the images.
|
||||
|
||||
make chromebook_snow_defconfig
|
||||
make menuconfig # if necessary
|
||||
make
|
||||
|
||||
The important files are:
|
||||
|
||||
uImage.kpart (kernel and device tree, signed)
|
||||
rootfs.tar
|
||||
bootsd.img (SD card image containing both kernel and rootfs)
|
||||
|
||||
Write the image directly to some SD card.
|
||||
WARNING: make sure there is nothing important on that card,
|
||||
and double-check the device name!
|
||||
|
||||
SD=/dev/mmcblk1 # may be /dev/sdX on some hosts
|
||||
dd if=output/images/bootsd.img of=$SD
|
||||
|
||||
Switching to developer mode and booting from SD
|
||||
-----------------------------------------------
|
||||
Power Chromebook down, then power it up while holding Esc+F3.
|
||||
BEWARE: switching to developer mode deletes all user data.
|
||||
Create backups if you need them.
|
||||
|
||||
While in developer mode, Chromebook will boot into a white screen saying
|
||||
"OS verification is off".
|
||||
|
||||
Press Ctrl-D at this screen to boot Chromium OS from eMMC.
|
||||
Press Ctrl-U at this screen to boot from SD (or USB)
|
||||
Press Power to power it off.
|
||||
Do NOT press Space unless you mean it.
|
||||
This will switch it back to normal mode.
|
||||
|
||||
The is no way to get rid of the white screen without re-flashing the bootloader.
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
Loud *BEEP* after pressing Ctrl-U means there's no valid partition to boot from.
|
||||
Which in turn means either bad GPT or improperly signed kernel.
|
||||
|
||||
Return to the OS verification screen without any sounds means the code managed
|
||||
to reboot the board. May indicate properly signed but invalid image.
|
||||
|
||||
Blank screen means the image is valid and properly signed but cannot boot
|
||||
for some reason, like missing or incorrect DT.
|
||||
|
||||
In case the board becomes unresponsive:
|
||||
|
||||
* Press Esc+F3+Power. The board should reboot instantly.
|
||||
Remove SD card to prevent it from attempting a system recovery.
|
||||
|
||||
* Hold Power button for around 10s. The board should shut down into
|
||||
its soft-off mode. Press Power button again or open the lid to turn in on.
|
||||
|
||||
* If that does not work, disconnect the charger and push a hidden
|
||||
button on the underside with a pin of some sort. The board should shut
|
||||
down completely. Opening the lid and pressing Power button will not work.
|
||||
To turn it back on, connect the charger.
|
||||
|
||||
Partitioning SD card manually
|
||||
-----------------------------
|
||||
Check mksd.sh for partitioning commands.
|
||||
|
||||
Use parted and cgpt on a real device, and calculate the partition
|
||||
sizes properly. The kernel partition may be as small as 4MB, but
|
||||
you will probably want the rootfs to occupy the whole remaining space.
|
||||
|
||||
cgpt may be used to check current layout:
|
||||
|
||||
output/host/usr/bin/cgpt show $SD
|
||||
|
||||
All sizes and all offsets are in 512-byte blocks.
|
||||
|
||||
Writing kernel and rootfs to a partitioned SD card
|
||||
--------------------------------------------------
|
||||
Write .kpart directly to the bootable partition:
|
||||
|
||||
dd if=output/images/uImage.kpart of=${SD}1
|
||||
|
||||
Make a new filesystem on the rootfs partition, and unpack rootfs.tar there:
|
||||
|
||||
mkfs.ext4 ${SD}2
|
||||
mount ${SD2} /mnt/<ROOTFS-PARTITION>
|
||||
tar -xvf output/images/rootfs.tar -C /mnt/<ROOTFS-PARTITION>
|
||||
umount /mnt/<ROOTFS-PARTITION>
|
||||
|
||||
This will require root permissions even if you can write to $SD.
|
||||
|
||||
Kernel command line
|
||||
-------------------
|
||||
The command line is taken from board/chromebook/snow/kernel.args and stored
|
||||
in the vboot header (which also holds the signature).
|
||||
|
||||
The original bootloader prepends "cros_secure console= " to the supplied
|
||||
command line. The only way to suppress this is to enable CMDLINE_FORCE
|
||||
in the kernel config, disabling external command line completely.
|
||||
|
||||
That's not necessary however. The mainline kernel ignores cros_secure,
|
||||
and supplying console=tty1 in kernel.args undoes the effect of console=
|
||||
|
||||
Booting with console= suppresses all kernel output.
|
||||
As a side effect, it makes /dev/console unusable, which the init in use must
|
||||
be able to handle.
|
||||
|
||||
WiFi card
|
||||
---------
|
||||
Run modprobe mwifiex_sdio to load the driver.
|
||||
The name of the device should be mlan0.
|
||||
|
||||
Further reading
|
||||
---------------
|
||||
https://www.chromium.org/chromium-os/developer-information-for-chrome-os-devices/samsung-arm-chromebook
|
||||
http://linux-exynos.org/wiki/Samsung_Chromebook_XE303C12/Installing_Linux
|
||||
http://archlinuxarm.org/platforms/armv7/samsung/samsung-chromebook
|
||||
http://www.de7ec7ed.com/2013/05/application-processor-ap-uart-samsung.html
|
||||
http://www.de7ec7ed.com/2013/05/embedded-controller-ec-uart-samsung.html
|
||||
@@ -1,41 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This script creates u-boot FIT image containing the kernel and the DT,
|
||||
# then signs it using futility from vboot-utils.
|
||||
# The resulting file is called uImage.kpart.
|
||||
|
||||
BOARD_DIR=$(dirname $0)
|
||||
mkimage=$HOST_DIR/usr/bin/mkimage
|
||||
futility=$HOST_DIR/usr/bin/futility
|
||||
devkeys=$HOST_DIR/usr/share/vboot/devkeys
|
||||
|
||||
run() { echo "$@"; "$@"; }
|
||||
die() { echo "$@" >&2; exit 1; }
|
||||
test -f $BINARIES_DIR/zImage || \
|
||||
die "No kernel image found"
|
||||
test -x $mkimage || \
|
||||
die "No mkimage found (host-uboot-tools has not been built?)"
|
||||
test -x $futility || \
|
||||
die "No futility found (host-vboot-utils has not been built?)"
|
||||
|
||||
# kernel.its references zImage and exynos5250-snow.dtb, and all three
|
||||
# files must be in current directory for mkimage.
|
||||
run cp $BOARD_DIR/kernel.its $BINARIES_DIR/kernel.its || exit 1
|
||||
echo "# entering $BINARIES_DIR for the next command"
|
||||
(cd $BINARIES_DIR && run $mkimage -f kernel.its uImage.itb) || exit 1
|
||||
|
||||
# futility requires non-empty file to be supplied with --bootloader
|
||||
# even if it does not make sense for the target platform.
|
||||
echo > $BINARIES_DIR/dummy.txt
|
||||
|
||||
run $futility vbutil_kernel \
|
||||
--keyblock $devkeys/kernel.keyblock \
|
||||
--signprivate $devkeys/kernel_data_key.vbprivk \
|
||||
--arch arm \
|
||||
--version 1 \
|
||||
--config $BOARD_DIR/kernel.args \
|
||||
--vmlinuz $BINARIES_DIR/uImage.itb \
|
||||
--bootloader $BINARIES_DIR/dummy.txt \
|
||||
--pack $BINARIES_DIR/uImage.kpart || exit 1
|
||||
|
||||
rm -f $BINARIES_DIR/kernel.its $BINARIES_DIR/dummy.txt
|
||||
36
board/congatec/qmx6/readme.txt
Normal file
36
board/congatec/qmx6/readme.txt
Normal file
@@ -0,0 +1,36 @@
|
||||
This is the minimal buildroot support for the Congatec QMX6 Qseven CoM
|
||||
|
||||
conga-QMX6 is based on the freescale iMX6 SoC. For more information please
|
||||
have a look at http://www.congatec.com/products/qseven/conga-qmx6.html
|
||||
|
||||
The configuration is based on the currently latest kernel release from
|
||||
Congatec's git repository which is based on 3.0.35. The bootloader u-boot
|
||||
is preconfigured on the CPU module and does not need to be replaced.
|
||||
|
||||
To build the default configuration you only have to:
|
||||
|
||||
make qmx6_defconfig && make
|
||||
|
||||
You will need a microSD card of sufficient size and the first or only
|
||||
partition configured as Linux type.
|
||||
|
||||
To transfer the system to the card do:
|
||||
|
||||
$ sudo dd if=output/images/rootfs.ext2 of=/dev/sdX1
|
||||
|
||||
You can optionally extend the filesystem size to the whole partition:
|
||||
|
||||
$ sudo resize2fs /dev/sdX1
|
||||
|
||||
You can also update the card image without completely rewriting it:
|
||||
|
||||
$ sudo mount /dev/sdX1 /mnt
|
||||
$ sudo tar xf output/images/rootfs.tar -C /mnt
|
||||
$ sudo umount /mnt
|
||||
|
||||
Connect a terminal program to the rs232 connector marked "CONSOLE"
|
||||
with baudrate set to 115200, insert the microSD card into the socket
|
||||
on the CPU module and power the board to watch the system boot.
|
||||
|
||||
Booting from the SD card slot on the base board is currently not
|
||||
supported.
|
||||
4
board/cubietech/cubieboard/boot.cmd
Normal file
4
board/cubietech/cubieboard/boot.cmd
Normal file
@@ -0,0 +1,4 @@
|
||||
setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
|
||||
fatload mmc 0 0x43000000 script.bin
|
||||
fatload mmc 0 0x48000000 uImage
|
||||
bootm 0x48000000
|
||||
749
board/cubietech/cubieboard/linux-cubieboard2.config
Normal file
749
board/cubietech/cubieboard/linux-cubieboard2.config
Normal file
@@ -0,0 +1,749 @@
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_SYSVIPC=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_AUDIT=y
|
||||
CONFIG_IRQ_DOMAIN_DEBUG=y
|
||||
CONFIG_RCU_FAST_NO_HZ=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=19
|
||||
CONFIG_CGROUPS=y
|
||||
CONFIG_CGROUP_FREEZER=y
|
||||
CONFIG_CGROUP_DEVICE=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CGROUP_CPUACCT=y
|
||||
CONFIG_RESOURCE_COUNTERS=y
|
||||
CONFIG_CGROUP_MEM_RES_CTLR=y
|
||||
CONFIG_CGROUP_MEM_RES_CTLR_SWAP=y
|
||||
CONFIG_CGROUP_MEM_RES_CTLR_KMEM=y
|
||||
CONFIG_CGROUP_PERF=y
|
||||
CONFIG_CGROUP_SCHED=y
|
||||
CONFIG_CFS_BANDWIDTH=y
|
||||
CONFIG_RT_GROUP_SCHED=y
|
||||
CONFIG_BLK_CGROUP=y
|
||||
CONFIG_RELAY=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_PERF_COUNTERS=y
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_JUMP_LABEL=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_FORCE_LOAD=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_MODVERSIONS=y
|
||||
CONFIG_MODULE_SRCVERSION_ALL=y
|
||||
CONFIG_BLK_DEV_BSGLIB=y
|
||||
CONFIG_BLK_DEV_INTEGRITY=y
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_OSF_PARTITION=y
|
||||
CONFIG_AMIGA_PARTITION=y
|
||||
CONFIG_MAC_PARTITION=y
|
||||
CONFIG_BSD_DISKLABEL=y
|
||||
CONFIG_MINIX_SUBPARTITION=y
|
||||
CONFIG_SOLARIS_X86_PARTITION=y
|
||||
CONFIG_UNIXWARE_DISKLABEL=y
|
||||
CONFIG_SGI_PARTITION=y
|
||||
CONFIG_SUN_PARTITION=y
|
||||
CONFIG_KARMA_PARTITION=y
|
||||
CONFIG_EFI_PARTITION=y
|
||||
CONFIG_CFQ_GROUP_IOSCHED=y
|
||||
CONFIG_ARCH_SUN7I=y
|
||||
CONFIG_SUNXI_SCALING_MIN=408
|
||||
# CONFIG_CACHE_L2X0 is not set
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_SMP=y
|
||||
CONFIG_ARM_ARCH_TIMER=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_AEABI=y
|
||||
# CONFIG_OABI_COMPAT is not set
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_COMPACTION=y
|
||||
CONFIG_KSM=y
|
||||
CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/mmc0p1 rw init=/init loglevel=8"
|
||||
CONFIG_KEXEC=y
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_STAT=m
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_FANTASY=y
|
||||
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
|
||||
CONFIG_CPU_FREQ_GOV_USERSPACE=m
|
||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
|
||||
CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
|
||||
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
|
||||
CONFIG_CPU_FREQ_USR_EVNT_NOTIFY=y
|
||||
CONFIG_CPU_FREQ_DVFS=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
CONFIG_VFP=y
|
||||
CONFIG_NEON=y
|
||||
CONFIG_BINFMT_MISC=y
|
||||
CONFIG_PM_RUNTIME=y
|
||||
CONFIG_PM_DEBUG=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM_USER=y
|
||||
CONFIG_NET_KEY=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_FIB_TRIE_STATS=y
|
||||
CONFIG_IP_MULTIPLE_TABLES=y
|
||||
CONFIG_IP_ROUTE_MULTIPATH=y
|
||||
CONFIG_IP_ROUTE_VERBOSE=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_DHCP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
CONFIG_NET_IPIP=y
|
||||
CONFIG_NET_IPGRE_DEMUX=m
|
||||
CONFIG_NET_IPGRE=m
|
||||
CONFIG_NET_IPGRE_BROADCAST=y
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
CONFIG_ARPD=y
|
||||
CONFIG_SYN_COOKIES=y
|
||||
CONFIG_INET_AH=y
|
||||
CONFIG_INET_ESP=y
|
||||
CONFIG_INET_IPCOMP=y
|
||||
CONFIG_INET_DIAG=m
|
||||
CONFIG_INET_UDP_DIAG=m
|
||||
CONFIG_TCP_CONG_ADVANCED=y
|
||||
CONFIG_TCP_CONG_BIC=y
|
||||
CONFIG_TCP_CONG_WESTWOOD=y
|
||||
CONFIG_TCP_CONG_HTCP=y
|
||||
CONFIG_TCP_CONG_HSTCP=y
|
||||
CONFIG_TCP_CONG_HYBLA=y
|
||||
CONFIG_TCP_CONG_SCALABLE=y
|
||||
CONFIG_TCP_CONG_LP=y
|
||||
CONFIG_TCP_CONG_VENO=y
|
||||
CONFIG_TCP_CONG_YEAH=y
|
||||
CONFIG_TCP_CONG_ILLINOIS=y
|
||||
CONFIG_TCP_MD5SIG=y
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_IPV6_PRIVACY=y
|
||||
CONFIG_IPV6_ROUTER_PREF=y
|
||||
CONFIG_IPV6_ROUTE_INFO=y
|
||||
CONFIG_IPV6_OPTIMISTIC_DAD=y
|
||||
CONFIG_INET6_AH=m
|
||||
CONFIG_INET6_ESP=m
|
||||
CONFIG_INET6_IPCOMP=m
|
||||
CONFIG_IPV6_MIP6=m
|
||||
CONFIG_INET6_XFRM_MODE_TRANSPORT=m
|
||||
CONFIG_INET6_XFRM_MODE_TUNNEL=m
|
||||
CONFIG_INET6_XFRM_MODE_BEET=m
|
||||
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
|
||||
CONFIG_IPV6_SIT=m
|
||||
CONFIG_IPV6_SIT_6RD=y
|
||||
CONFIG_IPV6_TUNNEL=m
|
||||
CONFIG_IPV6_MULTIPLE_TABLES=y
|
||||
CONFIG_IPV6_SUBTREES=y
|
||||
CONFIG_IPV6_MROUTE=y
|
||||
CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
|
||||
CONFIG_IPV6_PIMSM_V2=y
|
||||
# CONFIG_ANDROID_PARANOID_NETWORK is not set
|
||||
CONFIG_NETWORK_SECMARK=y
|
||||
CONFIG_NETWORK_PHY_TIMESTAMPING=y
|
||||
CONFIG_NETFILTER=y
|
||||
CONFIG_NF_CONNTRACK=m
|
||||
CONFIG_NF_CONNTRACK_SECMARK=y
|
||||
CONFIG_NF_CONNTRACK_ZONES=y
|
||||
CONFIG_NF_CONNTRACK_EVENTS=y
|
||||
CONFIG_NF_CONNTRACK_TIMEOUT=y
|
||||
CONFIG_NF_CONNTRACK_TIMESTAMP=y
|
||||
CONFIG_NF_CT_PROTO_DCCP=m
|
||||
CONFIG_NF_CT_PROTO_SCTP=m
|
||||
CONFIG_NF_CT_PROTO_UDPLITE=m
|
||||
CONFIG_NF_CONNTRACK_AMANDA=m
|
||||
CONFIG_NF_CONNTRACK_FTP=m
|
||||
CONFIG_NF_CONNTRACK_H323=m
|
||||
CONFIG_NF_CONNTRACK_IRC=m
|
||||
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
|
||||
CONFIG_NF_CONNTRACK_SNMP=m
|
||||
CONFIG_NF_CONNTRACK_PPTP=m
|
||||
CONFIG_NF_CONNTRACK_SANE=m
|
||||
CONFIG_NF_CONNTRACK_SIP=m
|
||||
CONFIG_NF_CONNTRACK_TFTP=m
|
||||
CONFIG_NF_CT_NETLINK=m
|
||||
CONFIG_NF_CT_NETLINK_TIMEOUT=m
|
||||
CONFIG_NETFILTER_TPROXY=m
|
||||
CONFIG_NETFILTER_XT_SET=m
|
||||
CONFIG_NETFILTER_XT_TARGET_AUDIT=m
|
||||
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
|
||||
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
|
||||
CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
|
||||
CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
|
||||
CONFIG_NETFILTER_XT_TARGET_CT=m
|
||||
CONFIG_NETFILTER_XT_TARGET_DSCP=m
|
||||
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
|
||||
CONFIG_NETFILTER_XT_TARGET_LED=m
|
||||
CONFIG_NETFILTER_XT_TARGET_LOG=m
|
||||
CONFIG_NETFILTER_XT_TARGET_MARK=m
|
||||
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
|
||||
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
|
||||
CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
|
||||
CONFIG_NETFILTER_XT_TARGET_TEE=m
|
||||
CONFIG_NETFILTER_XT_TARGET_TPROXY=m
|
||||
CONFIG_NETFILTER_XT_TARGET_TRACE=m
|
||||
CONFIG_NETFILTER_XT_TARGET_SECMARK=m
|
||||
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
|
||||
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
|
||||
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CPU=m
|
||||
CONFIG_NETFILTER_XT_MATCH_DCCP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_DSCP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_ESP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_HELPER=m
|
||||
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
|
||||
CONFIG_NETFILTER_XT_MATCH_IPVS=m
|
||||
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
|
||||
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_MAC=m
|
||||
CONFIG_NETFILTER_XT_MATCH_MARK=m
|
||||
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_NFACCT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_OSF=m
|
||||
CONFIG_NETFILTER_XT_MATCH_OWNER=m
|
||||
CONFIG_NETFILTER_XT_MATCH_POLICY=m
|
||||
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
|
||||
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
|
||||
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
|
||||
CONFIG_NETFILTER_XT_MATCH_QUOTA2=m
|
||||
CONFIG_NETFILTER_XT_MATCH_RATEEST=m
|
||||
CONFIG_NETFILTER_XT_MATCH_REALM=m
|
||||
CONFIG_NETFILTER_XT_MATCH_RECENT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_SCTP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_SOCKET=m
|
||||
CONFIG_NETFILTER_XT_MATCH_STATE=m
|
||||
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
|
||||
CONFIG_NETFILTER_XT_MATCH_STRING=m
|
||||
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
|
||||
CONFIG_NETFILTER_XT_MATCH_TIME=m
|
||||
CONFIG_NETFILTER_XT_MATCH_U32=m
|
||||
CONFIG_IP_SET=m
|
||||
CONFIG_IP_SET_BITMAP_IP=m
|
||||
CONFIG_IP_SET_BITMAP_IPMAC=m
|
||||
CONFIG_IP_SET_BITMAP_PORT=m
|
||||
CONFIG_IP_SET_HASH_IP=m
|
||||
CONFIG_IP_SET_HASH_IPPORT=m
|
||||
CONFIG_IP_SET_HASH_IPPORTIP=m
|
||||
CONFIG_IP_SET_HASH_IPPORTNET=m
|
||||
CONFIG_IP_SET_HASH_NET=m
|
||||
CONFIG_IP_SET_HASH_NETPORT=m
|
||||
CONFIG_IP_SET_HASH_NETIFACE=m
|
||||
CONFIG_IP_SET_LIST_SET=m
|
||||
CONFIG_IP_VS=m
|
||||
CONFIG_IP_VS_IPV6=y
|
||||
CONFIG_IP_VS_PROTO_TCP=y
|
||||
CONFIG_IP_VS_PROTO_UDP=y
|
||||
CONFIG_IP_VS_PROTO_ESP=y
|
||||
CONFIG_IP_VS_PROTO_AH=y
|
||||
CONFIG_IP_VS_PROTO_SCTP=y
|
||||
CONFIG_IP_VS_RR=m
|
||||
CONFIG_IP_VS_WRR=m
|
||||
CONFIG_IP_VS_LC=m
|
||||
CONFIG_IP_VS_WLC=m
|
||||
CONFIG_IP_VS_LBLC=m
|
||||
CONFIG_IP_VS_LBLCR=m
|
||||
CONFIG_IP_VS_DH=m
|
||||
CONFIG_IP_VS_SH=m
|
||||
CONFIG_IP_VS_SED=m
|
||||
CONFIG_IP_VS_NQ=m
|
||||
CONFIG_IP_VS_FTP=m
|
||||
CONFIG_IP_VS_PE_SIP=m
|
||||
CONFIG_NF_CONNTRACK_IPV4=m
|
||||
CONFIG_IP_NF_QUEUE=m
|
||||
CONFIG_IP_NF_IPTABLES=m
|
||||
CONFIG_IP_NF_MATCH_AH=m
|
||||
CONFIG_IP_NF_MATCH_ECN=m
|
||||
CONFIG_IP_NF_MATCH_RPFILTER=m
|
||||
CONFIG_IP_NF_MATCH_TTL=m
|
||||
CONFIG_IP_NF_FILTER=m
|
||||
CONFIG_IP_NF_TARGET_REJECT=m
|
||||
CONFIG_IP_NF_TARGET_REJECT_SKERR=y
|
||||
CONFIG_IP_NF_TARGET_ULOG=m
|
||||
CONFIG_NF_NAT=m
|
||||
CONFIG_IP_NF_TARGET_MASQUERADE=m
|
||||
CONFIG_IP_NF_TARGET_NETMAP=m
|
||||
CONFIG_IP_NF_TARGET_REDIRECT=m
|
||||
CONFIG_IP_NF_MANGLE=m
|
||||
CONFIG_IP_NF_TARGET_CLUSTERIP=m
|
||||
CONFIG_IP_NF_TARGET_ECN=m
|
||||
CONFIG_IP_NF_TARGET_TTL=m
|
||||
CONFIG_IP_NF_RAW=m
|
||||
CONFIG_IP_NF_ARPTABLES=m
|
||||
CONFIG_IP_NF_ARPFILTER=m
|
||||
CONFIG_IP_NF_ARP_MANGLE=m
|
||||
CONFIG_NF_CONNTRACK_IPV6=m
|
||||
CONFIG_IP6_NF_QUEUE=m
|
||||
CONFIG_IP6_NF_IPTABLES=m
|
||||
CONFIG_IP6_NF_MATCH_AH=m
|
||||
CONFIG_IP6_NF_MATCH_EUI64=m
|
||||
CONFIG_IP6_NF_MATCH_FRAG=m
|
||||
CONFIG_IP6_NF_MATCH_OPTS=m
|
||||
CONFIG_IP6_NF_MATCH_HL=m
|
||||
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
|
||||
CONFIG_IP6_NF_MATCH_MH=m
|
||||
CONFIG_IP6_NF_MATCH_RPFILTER=m
|
||||
CONFIG_IP6_NF_MATCH_RT=m
|
||||
CONFIG_IP6_NF_TARGET_HL=m
|
||||
CONFIG_IP6_NF_FILTER=m
|
||||
CONFIG_IP6_NF_TARGET_REJECT=m
|
||||
CONFIG_IP6_NF_TARGET_REJECT_SKERR=y
|
||||
CONFIG_IP6_NF_MANGLE=m
|
||||
CONFIG_IP6_NF_RAW=m
|
||||
CONFIG_BRIDGE_NF_EBTABLES=m
|
||||
CONFIG_BRIDGE_EBT_BROUTE=m
|
||||
CONFIG_BRIDGE_EBT_T_FILTER=m
|
||||
CONFIG_BRIDGE_EBT_T_NAT=m
|
||||
CONFIG_BRIDGE_EBT_802_3=m
|
||||
CONFIG_BRIDGE_EBT_AMONG=m
|
||||
CONFIG_BRIDGE_EBT_ARP=m
|
||||
CONFIG_BRIDGE_EBT_IP=m
|
||||
CONFIG_BRIDGE_EBT_IP6=m
|
||||
CONFIG_BRIDGE_EBT_LIMIT=m
|
||||
CONFIG_BRIDGE_EBT_MARK=m
|
||||
CONFIG_BRIDGE_EBT_PKTTYPE=m
|
||||
CONFIG_BRIDGE_EBT_STP=m
|
||||
CONFIG_BRIDGE_EBT_VLAN=m
|
||||
CONFIG_BRIDGE_EBT_ARPREPLY=m
|
||||
CONFIG_BRIDGE_EBT_DNAT=m
|
||||
CONFIG_BRIDGE_EBT_MARK_T=m
|
||||
CONFIG_BRIDGE_EBT_REDIRECT=m
|
||||
CONFIG_BRIDGE_EBT_SNAT=m
|
||||
CONFIG_BRIDGE_EBT_LOG=m
|
||||
CONFIG_BRIDGE_EBT_ULOG=m
|
||||
CONFIG_BRIDGE_EBT_NFLOG=m
|
||||
CONFIG_L2TP=m
|
||||
CONFIG_L2TP_V3=y
|
||||
CONFIG_L2TP_IP=m
|
||||
CONFIG_L2TP_ETH=m
|
||||
CONFIG_BRIDGE=m
|
||||
CONFIG_VLAN_8021Q=m
|
||||
CONFIG_VLAN_8021Q_GVRP=y
|
||||
CONFIG_BATMAN_ADV=m
|
||||
CONFIG_OPENVSWITCH=m
|
||||
CONFIG_NETPRIO_CGROUP=m
|
||||
CONFIG_NET_PKTGEN=m
|
||||
CONFIG_IRDA=m
|
||||
CONFIG_IRLAN=m
|
||||
CONFIG_IRNET=m
|
||||
CONFIG_IRCOMM=m
|
||||
CONFIG_IRDA_ULTRA=y
|
||||
CONFIG_IRTTY_SIR=m
|
||||
CONFIG_KINGSUN_DONGLE=m
|
||||
CONFIG_KSDAZZLE_DONGLE=m
|
||||
CONFIG_KS959_DONGLE=m
|
||||
CONFIG_USB_IRDA=m
|
||||
CONFIG_SIGMATEL_FIR=m
|
||||
CONFIG_MCS_FIR=m
|
||||
CONFIG_BT=m
|
||||
CONFIG_BT_RFCOMM=m
|
||||
CONFIG_BT_RFCOMM_TTY=y
|
||||
CONFIG_BT_BNEP=m
|
||||
CONFIG_BT_BNEP_MC_FILTER=y
|
||||
CONFIG_BT_BNEP_PROTO_FILTER=y
|
||||
CONFIG_BT_HIDP=m
|
||||
CONFIG_BT_HCIBTUSB=m
|
||||
CONFIG_BT_HCIBTSDIO=m
|
||||
CONFIG_BT_HCIBCM203X=m
|
||||
CONFIG_BT_HCIBPA10X=m
|
||||
CONFIG_BT_HCIBFUSB=m
|
||||
CONFIG_BT_MRVL=m
|
||||
CONFIG_BT_MRVL_SDIO=m
|
||||
CONFIG_BT_ATH3K=m
|
||||
CONFIG_AF_RXRPC=m
|
||||
CONFIG_RXKAD=m
|
||||
CONFIG_CFG80211=y
|
||||
CONFIG_CFG80211_DEVELOPER_WARNINGS=y
|
||||
CONFIG_WIRELESS_EXT_SYSFS=y
|
||||
CONFIG_LIB80211=m
|
||||
CONFIG_CFG80211_ALLOW_RECONNECT=y
|
||||
CONFIG_MAC80211=m
|
||||
CONFIG_MAC80211_MESH=y
|
||||
CONFIG_WIMAX=m
|
||||
CONFIG_RFKILL=y
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
# CONFIG_FIRMWARE_IN_KERNEL is not set
|
||||
CONFIG_CONNECTOR=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_CRYPTOLOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=2
|
||||
CONFIG_SUNXI_DBGREG=m
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_ATA=y
|
||||
CONFIG_SATA_AHCI_PLATFORM=y
|
||||
CONFIG_SW_SATA_AHCI_PLATFORM=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_BONDING=m
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_CHELSIO is not set
|
||||
# CONFIG_NET_VENDOR_FARADAY is not set
|
||||
# CONFIG_NET_VENDOR_INTEL is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_NATSEMI is not set
|
||||
# CONFIG_NET_VENDOR_SEEQ is not set
|
||||
# CONFIG_NET_VENDOR_SMSC is not set
|
||||
# CONFIG_NET_VENDOR_STMICRO is not set
|
||||
CONFIG_SUNXI_EMAC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PPP=m
|
||||
CONFIG_PPP_BSDCOMP=m
|
||||
CONFIG_PPP_DEFLATE=m
|
||||
CONFIG_PPP_FILTER=y
|
||||
CONFIG_PPP_MPPE=m
|
||||
CONFIG_PPP_MULTILINK=y
|
||||
CONFIG_PPPOE=m
|
||||
CONFIG_PPPOLAC=m
|
||||
CONFIG_PPPOPNS=m
|
||||
CONFIG_PPP_ASYNC=m
|
||||
CONFIG_PPP_SYNC_TTY=m
|
||||
CONFIG_USB_IPHETH=m
|
||||
CONFIG_ATH_COMMON=m
|
||||
CONFIG_ATH9K=m
|
||||
CONFIG_RTL8192CU=m
|
||||
CONFIG_RTL8192CU_SW=m
|
||||
CONFIG_RTL8188EU=m
|
||||
CONFIG_RTXX7X_SW=m
|
||||
CONFIG_INPUT_POLLDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_KEYRESET=y
|
||||
CONFIG_KEYBOARD_HV2605_KEYBOARD=m
|
||||
CONFIG_INPUT_JOYSTICK=y
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_TOUCHSCREEN_GT801=m
|
||||
CONFIG_TOUCHSCREEN_GT811=m
|
||||
CONFIG_TOUCHSCREEN_GT818=m
|
||||
CONFIG_TOUCHSCREEN_FT5X_TS=m
|
||||
CONFIG_TOUCHSCREEN_ZT8031=m
|
||||
CONFIG_GSENSOR=y
|
||||
CONFIG_SENSORS_BMA250=m
|
||||
CONFIG_MEMSIC_ECOMPASS=m
|
||||
CONFIG_SENSORS_MXC622X=m
|
||||
CONFIG_VT_HW_CONSOLE_BINDING=y
|
||||
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_NONSTANDARD=y
|
||||
# CONFIG_DEVKMEM is not set
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=8
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=8
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_DEBUG=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_GPIO_SUNXI=m
|
||||
CONFIG_POWER_SUPPLY=y
|
||||
CONFIG_AW_AXP=y
|
||||
# CONFIG_HWMON is not set
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_MEDIA_SUPPORT=y
|
||||
CONFIG_VIDEO_DEV=y
|
||||
CONFIG_MEDIA_TUNER_CUSTOMISE=y
|
||||
# CONFIG_MEDIA_TUNER_SIMPLE is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA8290 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA827X is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18271 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA9887 is not set
|
||||
# CONFIG_MEDIA_TUNER_TEA5767 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT20XX is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2060 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2266 is not set
|
||||
# CONFIG_MEDIA_TUNER_MT2131 is not set
|
||||
# CONFIG_MEDIA_TUNER_QT1010 is not set
|
||||
# CONFIG_MEDIA_TUNER_MXL5005S is not set
|
||||
# CONFIG_MEDIA_TUNER_MXL5007T is not set
|
||||
# CONFIG_MEDIA_TUNER_MC44S803 is not set
|
||||
# CONFIG_MEDIA_TUNER_MAX2165 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18218 is not set
|
||||
# CONFIG_MEDIA_TUNER_TDA18212 is not set
|
||||
CONFIG_USB_VIDEO_CLASS=m
|
||||
CONFIG_USB_M5602=m
|
||||
CONFIG_USB_STV06XX=m
|
||||
CONFIG_USB_GL860=m
|
||||
CONFIG_USB_GSPCA_BENQ=m
|
||||
CONFIG_USB_GSPCA_CONEX=m
|
||||
CONFIG_USB_GSPCA_CPIA1=m
|
||||
CONFIG_USB_GSPCA_ETOMS=m
|
||||
CONFIG_USB_GSPCA_FINEPIX=m
|
||||
CONFIG_USB_GSPCA_JEILINJ=m
|
||||
CONFIG_USB_GSPCA_JL2005BCD=m
|
||||
CONFIG_USB_GSPCA_KINECT=m
|
||||
CONFIG_USB_GSPCA_KONICA=m
|
||||
CONFIG_USB_GSPCA_MARS=m
|
||||
CONFIG_USB_GSPCA_MR97310A=m
|
||||
CONFIG_USB_GSPCA_NW80X=m
|
||||
CONFIG_USB_GSPCA_OV519=m
|
||||
CONFIG_USB_GSPCA_OV534=m
|
||||
CONFIG_USB_GSPCA_OV534_9=m
|
||||
CONFIG_USB_GSPCA_PAC207=m
|
||||
CONFIG_USB_GSPCA_PAC7302=m
|
||||
CONFIG_USB_GSPCA_PAC7311=m
|
||||
CONFIG_USB_GSPCA_SE401=m
|
||||
CONFIG_USB_GSPCA_SN9C2028=m
|
||||
CONFIG_USB_GSPCA_SN9C20X=m
|
||||
CONFIG_USB_GSPCA_SONIXB=m
|
||||
CONFIG_USB_GSPCA_SONIXJ=m
|
||||
CONFIG_USB_GSPCA_SPCA500=m
|
||||
CONFIG_USB_GSPCA_SPCA501=m
|
||||
CONFIG_USB_GSPCA_SPCA505=m
|
||||
CONFIG_USB_GSPCA_SPCA506=m
|
||||
CONFIG_USB_GSPCA_SPCA508=m
|
||||
CONFIG_USB_GSPCA_SPCA561=m
|
||||
CONFIG_USB_GSPCA_SPCA1528=m
|
||||
CONFIG_USB_GSPCA_SQ905=m
|
||||
CONFIG_USB_GSPCA_SQ905C=m
|
||||
CONFIG_USB_GSPCA_SQ930X=m
|
||||
CONFIG_USB_GSPCA_STK014=m
|
||||
CONFIG_USB_GSPCA_STV0680=m
|
||||
CONFIG_USB_GSPCA_SUNPLUS=m
|
||||
CONFIG_USB_GSPCA_T613=m
|
||||
CONFIG_USB_GSPCA_TOPRO=m
|
||||
CONFIG_USB_GSPCA_TV8532=m
|
||||
CONFIG_USB_GSPCA_VC032X=m
|
||||
CONFIG_USB_GSPCA_VICAM=m
|
||||
CONFIG_USB_GSPCA_XIRLINK_CIT=m
|
||||
CONFIG_USB_GSPCA_ZC3XX=m
|
||||
CONFIG_VIDEO_PVRUSB2=m
|
||||
CONFIG_VIDEO_HDPVR=m
|
||||
CONFIG_VIDEO_EM28XX=m
|
||||
CONFIG_VIDEO_EM28XX_ALSA=m
|
||||
CONFIG_VIDEO_CX231XX=m
|
||||
CONFIG_VIDEO_CX231XX_ALSA=m
|
||||
CONFIG_VIDEO_TM6000=m
|
||||
CONFIG_VIDEO_TM6000_ALSA=m
|
||||
CONFIG_VIDEO_USBVISION=m
|
||||
CONFIG_USB_ET61X251=m
|
||||
CONFIG_USB_SN9C102=m
|
||||
CONFIG_USB_PWC=m
|
||||
CONFIG_VIDEO_CPIA2=m
|
||||
CONFIG_USB_ZR364XX=m
|
||||
CONFIG_USB_STKWEBCAM=m
|
||||
CONFIG_USB_S2255=m
|
||||
CONFIG_V4L_PLATFORM_DRIVERS=y
|
||||
CONFIG_SOC_CAMERA=m
|
||||
CONFIG_SOC_CAMERA_IMX074=m
|
||||
CONFIG_SOC_CAMERA_MT9M001=m
|
||||
CONFIG_SOC_CAMERA_MT9M111=m
|
||||
CONFIG_SOC_CAMERA_MT9T031=m
|
||||
CONFIG_SOC_CAMERA_MT9T112=m
|
||||
CONFIG_SOC_CAMERA_MT9V022=m
|
||||
CONFIG_SOC_CAMERA_RJ54N1=m
|
||||
CONFIG_SOC_CAMERA_TW9910=m
|
||||
CONFIG_SOC_CAMERA_PLATFORM=m
|
||||
CONFIG_SOC_CAMERA_OV2640=m
|
||||
CONFIG_SOC_CAMERA_OV5642=m
|
||||
CONFIG_SOC_CAMERA_OV6650=m
|
||||
CONFIG_SOC_CAMERA_OV772X=m
|
||||
CONFIG_SOC_CAMERA_OV9640=m
|
||||
CONFIG_SOC_CAMERA_OV9740=m
|
||||
CONFIG_V4L_MEM2MEM_DRIVERS=y
|
||||
# CONFIG_VIDEO_CSI_SUN4I is not set
|
||||
CONFIG_RADIO_SI470X=y
|
||||
CONFIG_USB_SI470X=m
|
||||
CONFIG_I2C_SI470X=m
|
||||
CONFIG_USB_MR800=m
|
||||
CONFIG_USB_DSBR=m
|
||||
CONFIG_RADIO_SI4713=m
|
||||
CONFIG_USB_KEENE=m
|
||||
CONFIG_RADIO_TEA5764=m
|
||||
CONFIG_RADIO_SAA7706H=m
|
||||
CONFIG_RADIO_TEF6862=m
|
||||
CONFIG_RADIO_WL1273=m
|
||||
CONFIG_AUDIO_ENGINE=y
|
||||
CONFIG_PA_CONTROL=y
|
||||
CONFIG_DRM=m
|
||||
CONFIG_DRM_MALI=m
|
||||
CONFIG_DRM_UDL=m
|
||||
CONFIG_MALI=m
|
||||
CONFIG_MALI400_DEBUG=y
|
||||
CONFIG_MALI400_GPU_UTILIZATION=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_SUNXI=y
|
||||
CONFIG_FB_SUNXI_LCD=y
|
||||
CONFIG_FB_SUNXI_HDMI=y
|
||||
CONFIG_HDMI_CEC=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_LOGO=y
|
||||
# CONFIG_LOGO_LINUX_MONO is not set
|
||||
# CONFIG_LOGO_LINUX_VGA16 is not set
|
||||
# CONFIG_LOGO_LINUX_CLUT224 is not set
|
||||
CONFIG_SOUND=y
|
||||
CONFIG_SND=y
|
||||
CONFIG_SND_SEQUENCER=m
|
||||
CONFIG_SND_MIXER_OSS=m
|
||||
CONFIG_SND_PCM_OSS=m
|
||||
CONFIG_SND_SEQUENCER_OSS=y
|
||||
CONFIG_SND_HRTIMER=m
|
||||
CONFIG_SND_VERBOSE_PRINTK=y
|
||||
CONFIG_SND_ALOOP=m
|
||||
CONFIG_SND_USB_AUDIO=m
|
||||
CONFIG_SND_SOC=y
|
||||
CONFIG_SND_SUNXI_SOC_SPDIF=y
|
||||
CONFIG_HIDRAW=y
|
||||
CONFIG_UHID=y
|
||||
CONFIG_HID_PID=y
|
||||
CONFIG_USB_HIDDEV=y
|
||||
CONFIG_HID_KYE=y
|
||||
CONFIG_HID_LOGITECH_DJ=y
|
||||
CONFIG_LOGITECH_FF=y
|
||||
# CONFIG_LOGIWHEELS_FF is not set
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_ROOT_HUB_TT=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_STORAGE_REALTEK=y
|
||||
CONFIG_USB_STORAGE_DATAFAB=y
|
||||
CONFIG_USB_STORAGE_FREECOM=y
|
||||
CONFIG_USB_STORAGE_ISD200=y
|
||||
CONFIG_USB_STORAGE_USBAT=y
|
||||
CONFIG_USB_STORAGE_SDDR09=y
|
||||
CONFIG_USB_STORAGE_SDDR55=y
|
||||
CONFIG_USB_STORAGE_JUMPSHOT=y
|
||||
CONFIG_USB_STORAGE_ALAUDA=y
|
||||
CONFIG_USB_STORAGE_ONETOUCH=y
|
||||
CONFIG_USB_STORAGE_KARMA=y
|
||||
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
|
||||
CONFIG_USB_STORAGE_ENE_UB6250=y
|
||||
CONFIG_USB_SERIAL=y
|
||||
CONFIG_USB_SERIAL_CONSOLE=y
|
||||
CONFIG_USB_SERIAL_GENERIC=y
|
||||
CONFIG_USB_SERIAL_FTDI_SIO=m
|
||||
CONFIG_USB_SERIAL_PL2303=m
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_FILE_STORAGE=m
|
||||
CONFIG_USB_FILE_STORAGE_TEST=y
|
||||
CONFIG_MMC=y
|
||||
# CONFIG_MMC_BLOCK_BOUNCE is not set
|
||||
CONFIG_MMC_USHC=y
|
||||
CONFIG_MMC_SUNXI_POWER_CONTROL=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
CONFIG_LEDS_SUNXI=y
|
||||
CONFIG_LEDS_TRIGGER_TIMER=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
|
||||
CONFIG_LEDS_TRIGGER_CPU=y
|
||||
CONFIG_LEDS_TRIGGER_GPIO=y
|
||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_DRV_SUN4I=y
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_ANDROID=y
|
||||
CONFIG_ANDROID_BINDER_IPC=y
|
||||
CONFIG_ANDROID_LOGGER=y
|
||||
CONFIG_ANDROID_RAM_CONSOLE=y
|
||||
CONFIG_ANDROID_LOW_MEMORY_KILLER=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_EXT4_FS_POSIX_ACL=y
|
||||
CONFIG_EXT4_FS_SECURITY=y
|
||||
CONFIG_REISERFS_FS=y
|
||||
CONFIG_QUOTA=y
|
||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
|
||||
# CONFIG_PRINT_QUOTA_WARNING is not set
|
||||
CONFIG_QFMT_V2=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_FUSE_FS=y
|
||||
CONFIG_CUSE=y
|
||||
CONFIG_FSCACHE=y
|
||||
CONFIG_FSCACHE_STATS=y
|
||||
CONFIG_CACHEFILES=y
|
||||
CONFIG_ISO9660_FS=y
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_UDF_FS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
|
||||
CONFIG_NTFS_FS=y
|
||||
CONFIG_NTFS_RW=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_TMPFS_POSIX_ACL=y
|
||||
CONFIG_CONFIGFS_FS=y
|
||||
CONFIG_HFS_FS=y
|
||||
CONFIG_HFSPLUS_FS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_NFS_V4_1=y
|
||||
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="y"
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NFS_USE_LEGACY_DNS=y
|
||||
CONFIG_NFSD=m
|
||||
CONFIG_NFSD_V3_ACL=y
|
||||
CONFIG_NFSD_V4=y
|
||||
CONFIG_NFSD_FAULT_INJECTION=y
|
||||
CONFIG_CIFS=y
|
||||
CONFIG_CIFS_DFS_UPCALL=y
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_936=y
|
||||
CONFIG_NLS_CODEPAGE_950=y
|
||||
CONFIG_NLS_CODEPAGE_932=y
|
||||
CONFIG_NLS_CODEPAGE_949=y
|
||||
CONFIG_NLS_ASCII=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_PRINTK_TIME=y
|
||||
# CONFIG_ENABLE_WARN_DEPRECATED is not set
|
||||
CONFIG_FRAME_WARN=2048
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_STRIP_ASM_SYMS=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
CONFIG_DEBUG_SECTION_MISMATCH=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_DEBUG_SHIRQ=y
|
||||
CONFIG_DETECT_HUNG_TASK=y
|
||||
CONFIG_SCHEDSTATS=y
|
||||
CONFIG_TIMER_STATS=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
CONFIG_DEBUG_LIST=y
|
||||
CONFIG_BOOT_PRINTK_DELAY=y
|
||||
CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y
|
||||
# CONFIG_FTRACE is not set
|
||||
CONFIG_DYNAMIC_DEBUG=y
|
||||
CONFIG_STRICT_DEVMEM=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
CONFIG_SECURITYFS=y
|
||||
# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
|
||||
CONFIG_CRYPTO_GF128MUL=y
|
||||
CONFIG_CRYPTO_SEQIV=y
|
||||
CONFIG_CRYPTO_SHA256=m
|
||||
CONFIG_CRYPTO_SHA512=m
|
||||
CONFIG_CRYPTO_AES=y
|
||||
CONFIG_CRYPTO_ZLIB=y
|
||||
CONFIG_CRYPTO_LZO=y
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
CONFIG_LIBCRC32C=y
|
||||
124
board/cubietech/cubieboard/mkcubiecard.sh
Executable file
124
board/cubietech/cubieboard/mkcubiecard.sh
Executable file
@@ -0,0 +1,124 @@
|
||||
#! /bin/sh
|
||||
# mkCubieCard.sh v0.1:
|
||||
# 2013, Carlo Caione <carlo.caione@gmail.com>
|
||||
# heavely based on :
|
||||
# mkA10card.sh v0.1
|
||||
# 2012, Jason Plum <jplum@archlinuxarm.org>
|
||||
# loosely based on :
|
||||
# mkcard.sh v0.5
|
||||
# (c) Copyright 2009 Graeme Gregory <dp@xora.org.uk>
|
||||
# Licensed under terms of GPLv2
|
||||
#
|
||||
# Parts of the procudure base on the work of Denys Dmytriyenko
|
||||
# http://wiki.omap.com/index.php/MMC_Boot_Format
|
||||
|
||||
IMAGES_DIR=$1
|
||||
SPL_IMG=$IMAGES_DIR/sunxi-spl.bin
|
||||
SPL_UBOOT=$IMAGES_DIR/u-boot-sunxi-with-spl.bin
|
||||
UBOOT_IMG=$IMAGES_DIR/u-boot.bin
|
||||
UIMAGE=$IMAGES_DIR/uImage
|
||||
BIN_BOARD_FILE=$IMAGES_DIR/script.bin
|
||||
ROOTFS=$IMAGES_DIR/rootfs.tar
|
||||
BOOT_CMD_H=$IMAGES_DIR/boot.scr
|
||||
|
||||
export LC_ALL=C
|
||||
|
||||
if [ $# -ne 2 ]; then
|
||||
echo "Usage: $0 <images_dir> <drive>"
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ `id -u` -ne 0 ]; then
|
||||
echo "This script must be run as root" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f $SPL_IMG -a ! -f $SPL_UBOOT ] ||
|
||||
[ ! -f $UBOOT_IMG ] ||
|
||||
[ ! -f $UIMAGE ] ||
|
||||
[ ! -f $BIN_BOARD_FILE ] ||
|
||||
[ ! -f $ROOTFS ] ||
|
||||
[ ! -f $BOOT_CMD_H ]; then
|
||||
echo "File(s) missing."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
DRIVE=$2
|
||||
P1=`mktemp -d`
|
||||
P2=`mktemp -d`
|
||||
|
||||
dd if=/dev/zero of=$DRIVE bs=1M count=3
|
||||
|
||||
SIZE=`fdisk -l $DRIVE | grep Disk | grep bytes | awk '{print $5}'`
|
||||
|
||||
echo DISK SIZE - $SIZE bytes
|
||||
|
||||
|
||||
# ~2048, 16MB, FAT, bootable
|
||||
# ~rest of drive, Ext4
|
||||
{
|
||||
echo 32,512,0x0C,*
|
||||
echo 544,,,-
|
||||
} | sfdisk -D $DRIVE
|
||||
|
||||
sleep 1
|
||||
|
||||
if [ -b ${DRIVE}1 ]; then
|
||||
D1=${DRIVE}1
|
||||
umount ${DRIVE}1
|
||||
mkfs.vfat -n "boot" ${DRIVE}1
|
||||
else
|
||||
if [ -b ${DRIVE}p1 ]; then
|
||||
D1=${DRIVE}p1
|
||||
umount ${DRIVE}p1
|
||||
mkfs.vfat -n "boot" ${DRIVE}p1
|
||||
else
|
||||
echo "Cant find boot partition in /dev"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if [ -b ${DRIVE}2 ]; then
|
||||
D2=${DRIVE}2
|
||||
umount ${DRIVE}2
|
||||
mkfs.ext4 -L "Cubie" ${DRIVE}2
|
||||
else
|
||||
if [ -b ${DRIVE}p2 ]; then
|
||||
D2=${DRIVE}p2
|
||||
umount ${DRIVE}p2
|
||||
mkfs.ext4 -L "Cubie" ${DRIVE}p2
|
||||
else
|
||||
echo "Cant find rootfs partition in /dev"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
mount $D1 $P1
|
||||
mount $D2 $P2
|
||||
|
||||
# write uImage
|
||||
cp $UIMAGE $P1
|
||||
# write board file
|
||||
cp $BIN_BOARD_FILE $P1
|
||||
# write u-boot script
|
||||
cp $BOOT_CMD_H $P1
|
||||
# write rootfs
|
||||
tar -C $P2 -xvf $ROOTFS
|
||||
|
||||
sync
|
||||
|
||||
umount $D1
|
||||
umount $D2
|
||||
|
||||
rm -fr $P1
|
||||
rm -fr $P2
|
||||
|
||||
if [ -e $SPL_UBOOT ]; then
|
||||
dd if=$SPL_UBOOT of=$DRIVE bs=1024 seek=8
|
||||
else
|
||||
# write SPL
|
||||
dd if=$SPL_IMG of=$DRIVE bs=1024 seek=8
|
||||
# write mele u-boot
|
||||
dd if=$UBOOT_IMG of=$DRIVE bs=1024 seek=32
|
||||
fi
|
||||
14
board/cubietech/cubieboard/post-build.sh
Executable file
14
board/cubietech/cubieboard/post-build.sh
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
# post-build.sh for CubieBoard
|
||||
# 2013, Carlo Caione <carlo.caione@gmail.com>
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
MKIMAGE=$HOST_DIR/usr/bin/mkimage
|
||||
BOOT_CMD=$BOARD_DIR/boot.cmd
|
||||
BOOT_CMD_H=$BINARIES_DIR/boot.scr
|
||||
|
||||
# U-Boot script
|
||||
if [ -e $MKIMAGE -a -e $BOOT_CMD ];
|
||||
then
|
||||
$MKIMAGE -C none -A arm -T script -d $BOOT_CMD $BOOT_CMD_H
|
||||
fi
|
||||
62
board/cubietech/cubieboard/readme.txt
Normal file
62
board/cubietech/cubieboard/readme.txt
Normal file
@@ -0,0 +1,62 @@
|
||||
cubieboard and cubieboard2
|
||||
|
||||
-----
|
||||
Intro
|
||||
-----
|
||||
|
||||
To be able to use your cubieboard board with the images generated by
|
||||
Buildroot you have to correctly setup the SD card.
|
||||
|
||||
For more information, please see http://linux-sunxi.org/FirstSteps
|
||||
|
||||
---------------
|
||||
How to build it
|
||||
---------------
|
||||
|
||||
You need to use the cubieboard_defconfig or cubieboard2_defconfig, to do so:
|
||||
* make cubieboard_defconfig
|
||||
or
|
||||
* make cubieboard2_defconfig
|
||||
|
||||
And to compile:
|
||||
* make
|
||||
|
||||
-----------------
|
||||
What is generated
|
||||
-----------------
|
||||
|
||||
After building, you should obtain this tree:
|
||||
|
||||
output/images/
|
||||
+-- rootfs.tar
|
||||
+-- boot.scr
|
||||
+-- script.bin
|
||||
+-- sunxi-spl.bin
|
||||
+-- u-boot.bin
|
||||
+-- u-boot-sunxi-with-spl.bin (optional)
|
||||
`-- uImage
|
||||
|
||||
--------------------------
|
||||
How setting up the SD card
|
||||
--------------------------
|
||||
|
||||
Depending on the rootfs size, you might want to use a 2GB or larger SD-card.
|
||||
The script mkcubiecard.sh will take care of partitioning and formatting
|
||||
the SD-card.
|
||||
|
||||
BEWARE! This process will erase your SD card.
|
||||
|
||||
Use dmesg to find out where the SD card is attached in the /dev tree
|
||||
(<device>) and then:
|
||||
|
||||
# sudo ./mkcubiecard.sh <images_dir> <device>
|
||||
|
||||
where:
|
||||
- <images_dir> is the directory containing the generated files (usually
|
||||
output/images)
|
||||
- <device> is the device file of the SD card (usually /dev/sdX)
|
||||
|
||||
|
||||
|
||||
--
|
||||
Carlo Caione <carlo.caione@gmail.com>
|
||||
@@ -1,5 +0,0 @@
|
||||
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 sun7i-a20-cubieboard2.dtb
|
||||
bootz $kernel_addr_r - $fdt_addr_r
|
||||
@@ -1,37 +0,0 @@
|
||||
# Minimal SD card image for the Cubieboard2
|
||||
# Based in the Orange Pi genimage.cfg
|
||||
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"zImage",
|
||||
"sun7i-a20-cubieboard2.dtb",
|
||||
"boot.scr"
|
||||
}
|
||||
}
|
||||
size = 10M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
in-partition-table = "no"
|
||||
image = "u-boot-sunxi-with-spl.bin"
|
||||
offset = 8192
|
||||
size = 1040384 # 1MB - 8192
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
size = 512M
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
#!/bin/sh
|
||||
# post-build.sh for Cubieboard2
|
||||
# 2013, Carlo Caione <carlo.caione@gmail.com>
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
MKIMAGE=$HOST_DIR/usr/bin/mkimage
|
||||
BOOT_CMD=$BOARD_DIR/boot.cmd
|
||||
BOOT_CMD_H=$BINARIES_DIR/boot.scr
|
||||
|
||||
# U-Boot script
|
||||
$MKIMAGE -C none -A arm -T script -d $BOOT_CMD $BOOT_CMD_H
|
||||
@@ -1,16 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/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}"
|
||||
|
||||
exit $?
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user