Compare commits

..

6 Commits

Author SHA1 Message Date
Fabrice Fontaine
3d4b21dac1 package/dbus: security bump to version 1.12.18
- Fix CVE-2020-12049: An issue was discovered in dbus >= 1.3.0 before
  1.12.18. The DBusServer in libdbus, as used in dbus-daemon, leaks file
  descriptors when a message exceeds the per-message file descriptor
  limit. A local attacker with access to the D-Bus system bus or another
  system service's private AF_UNIX socket could use this to make the
  system service reach its file descriptor limit, denying service to
  subsequent D-Bus clients.
- Also update indentation in hash file (two spaces)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-06-14 22:06:48 +02:00
Norbert Lange
0813d8a324 toolchain: adjust version check to allow for single numbers
A gcc compiler, which was configured with
--with-gcc-major-version-only, will only return a single
number. (debian does this for example).

A simple modification allows the check to work with both
single numbers (eg. '9') and full versions (eg. '9.2.1').

Signed-off-by: Norbert Lange <nolange79@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-06-14 22:02:26 +02:00
Yann E. MORIN
bcf890301f support/docker: add a Fedore-32 based image
Hopefully, this image is reproducible, since we are not using any update
repository, and from the looks of it, the repository of the release is
never touched.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

---
Changes v1 -> v2:
  - fix ordering of packages list  (Ricardo)
2020-06-14 22:00:43 +02:00
Yann E. MORIN
c15a40e128 support/docker: allow the br-user to becone root
When our Dockerfiles (and images) get reused by users, they might need
to locally add new packages or tweak the iamge to heir local needs.

As such, register the br-user to become root by running (exactly!):
    $ sudo su -

This will allow acutally becoing root without prompting for a password,
but no other command will be accepted, and no other paramter will be
accepted either.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc; Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-06-14 22:00:43 +02:00
Yann E. MORIN
5e264875e0 support/docker: add script to generate docker iamges
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-06-14 22:00:43 +02:00
Yann E. MORIN
14fc4fe1ed support/docker: rename the Dockerfile and its accompanying file
Currently, we only generate one docker image, for use by the gitlab-ci
infra.

However, users have expressed an interest in using that image for other
uses, like:

  - reproducing build failures as reported by the gitlab-ci jobs;

  - having a ready-to-use base image to use as-is, or as a template for
    further customisations.

Additionally, some users have reported the need for similar base images,
but based off different distros, with the same goals as above, plus:

  - reproducing build failures reported by users on other distros.

As a first step toward providing such images, rename our Dockerfile to
include the name and version of the distro it is based off.

We add a symlink so that we still have a 'base' image that we can
reference from the gitlab-ci infra.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-06-14 22:00:43 +02:00
3106 changed files with 34260 additions and 62478 deletions

View File

@@ -1,23 +1,533 @@
# Configuration for Gitlab-CI.
# Builds appear on https://gitlab.com/buildroot.org/buildroot/pipelines
# The .gitlab-ci.yml file is generated from .gitlab-ci.yml.in.
# It needs to be regenerated every time a defconfig is added, using
# "make .gitlab-ci.yml".
image: buildroot/base:20200814.2228
image: buildroot/base:20191027.2027
stages:
- generate-gitlab-ci
- build
.check_base:
except:
- /^.*-.*_defconfig$/
- /^.*-tests\..*$/
generate-gitlab-ci-yml:
stage: generate-gitlab-ci
script: ./support/scripts/generate-gitlab-ci-yml support/misc/gitlab-ci.yml.in > generated-gitlab-ci.yml
artifacts:
paths:
- generated-gitlab-ci.yml
check-DEVELOPERS:
extends: .check_base
# get-developers should print just "No action specified"; if it prints
# anything else, it's a parse error.
# The initial ! is removed by YAML so we need to quote it.
script:
- "! utils/get-developers | grep -v 'No action specified'"
buildroot-pipeline:
stage: build
trigger:
include:
- artifact: generated-gitlab-ci.yml
job: generate-gitlab-ci-yml
strategy: depend
check-flake8:
extends: .check_base
before_script:
# Help flake8 to find the Python files without .py extension.
- find * -type f -name '*.py' > files.txt
- find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
- sort -u files.txt | tee files.processed
script:
- python -m flake8 --statistics --count --max-line-length=132 $(cat files.processed)
after_script:
- wc -l files.processed
check-gitlab-ci.yml:
extends: .check_base
script:
- mv .gitlab-ci.yml .gitlab-ci.yml.orig
- make .gitlab-ci.yml
- diff -u .gitlab-ci.yml.orig .gitlab-ci.yml
check-package:
extends: .check_base
script:
- make check-package
.defconfig_base:
script:
- echo "Configure Buildroot for ${DEFCONFIG_NAME}"
- make ${DEFCONFIG_NAME}
- echo 'Build buildroot'
- |
make > >(tee build.log |grep '>>>') 2>&1 || {
echo 'Failed build last output'
tail -200 build.log
exit 1
}
- |
./support/scripts/boot-qemu-image.py "${DEFCONFIG_NAME}" > >(tee runtime-test.log) 2>&1 || {
echo 'Failed runtime test last output'
tail -200 runtime-test.log
exit 1
}
artifacts:
when: always
expire_in: 2 weeks
paths:
- .config
- build.log
- output/images/
- output/build/build-time.log
- output/build/packages-file-list.txt
- output/build/*/.config
- runtime-test.log
.defconfig:
extends: .defconfig_base
# Running the defconfigs for every push is too much, so limit to
# explicit triggers through the API.
only:
- triggers
- tags
- /-defconfigs$/
before_script:
- DEFCONFIG_NAME=${CI_JOB_NAME}
one-defconfig:
extends: .defconfig_base
only:
- /^.*-.*_defconfig$/
before_script:
- DEFCONFIG_NAME=$(echo ${CI_COMMIT_REF_NAME} | sed -e 's,^.*-,,g')
.runtime_test_base:
# Keep build directories so the rootfs can be an artifact of the job. The
# runner will clean up those files for us.
# Multiply every emulator timeout by 10 to avoid sporadic failures in
# elastic runners.
script:
- echo "Starting runtime test ${TEST_CASE_NAME}"
- ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${TEST_CASE_NAME}
artifacts:
when: always
expire_in: 2 weeks
paths:
- test-output/*.log
- test-output/*/.config
- test-output/*/images/*
.runtime_test:
extends: .runtime_test_base
# Running the runtime tests for every push is too much, so limit to
# explicit triggers through the API.
only:
- triggers
- tags
- /-runtime-tests$/
before_script:
- TEST_CASE_NAME=${CI_JOB_NAME}
one-runtime_test:
extends: .runtime_test_base
only:
- /^.*-tests\..*$/
before_script:
- TEST_CASE_NAME=$(echo ${CI_COMMIT_REF_NAME} | sed -e 's,^.*-,,g')
aarch64_efi_defconfig: { extends: .defconfig }
acmesystems_aria_g25_128mb_defconfig: { extends: .defconfig }
acmesystems_aria_g25_256mb_defconfig: { extends: .defconfig }
acmesystems_arietta_g25_128mb_defconfig: { extends: .defconfig }
acmesystems_arietta_g25_256mb_defconfig: { extends: .defconfig }
amarula_a64_relic_defconfig: { extends: .defconfig }
amarula_vyasa_rk3288_defconfig: { extends: .defconfig }
andes_ae3xx_defconfig: { extends: .defconfig }
arcturus_ucls1012a_defconfig: { extends: .defconfig }
arcturus_ucp1020_defconfig: { extends: .defconfig }
arm_foundationv8_defconfig: { extends: .defconfig }
arm_juno_defconfig: { extends: .defconfig }
armadeus_apf27_defconfig: { extends: .defconfig }
armadeus_apf28_defconfig: { extends: .defconfig }
armadeus_apf51_defconfig: { extends: .defconfig }
asus_tinker_rk3288_defconfig: { extends: .defconfig }
at91sam9260eknf_defconfig: { extends: .defconfig }
at91sam9g20dfc_defconfig: { extends: .defconfig }
at91sam9g45m10ek_defconfig: { extends: .defconfig }
at91sam9rlek_defconfig: { extends: .defconfig }
at91sam9x5ek_defconfig: { extends: .defconfig }
at91sam9x5ek_dev_defconfig: { extends: .defconfig }
at91sam9x5ek_mmc_defconfig: { extends: .defconfig }
at91sam9x5ek_mmc_dev_defconfig: { extends: .defconfig }
atmel_sama5d27_som1_ek_mmc_dev_defconfig: { extends: .defconfig }
atmel_sama5d2_xplained_mmc_defconfig: { extends: .defconfig }
atmel_sama5d2_xplained_mmc_dev_defconfig: { extends: .defconfig }
atmel_sama5d3_xplained_defconfig: { extends: .defconfig }
atmel_sama5d3_xplained_dev_defconfig: { extends: .defconfig }
atmel_sama5d3_xplained_mmc_defconfig: { extends: .defconfig }
atmel_sama5d3_xplained_mmc_dev_defconfig: { extends: .defconfig }
atmel_sama5d3xek_defconfig: { extends: .defconfig }
atmel_sama5d4_xplained_defconfig: { extends: .defconfig }
atmel_sama5d4_xplained_dev_defconfig: { extends: .defconfig }
atmel_sama5d4_xplained_mmc_defconfig: { extends: .defconfig }
atmel_sama5d4_xplained_mmc_dev_defconfig: { extends: .defconfig }
bananapi_m1_defconfig: { extends: .defconfig }
bananapi_m2_plus_defconfig: { extends: .defconfig }
bananapi_m2_ultra_defconfig: { extends: .defconfig }
bananapi_m64_defconfig: { extends: .defconfig }
bananapro_defconfig: { extends: .defconfig }
beagleboardx15_defconfig: { extends: .defconfig }
beaglebone_defconfig: { extends: .defconfig }
beaglebone_qt5_defconfig: { extends: .defconfig }
beagleboneai_defconfig: { extends: .defconfig }
beelink_gs1_defconfig: { extends: .defconfig }
chromebook_snow_defconfig: { extends: .defconfig }
ci20_defconfig: { extends: .defconfig }
csky_gx6605s_defconfig: { extends: .defconfig }
cubieboard2_defconfig: { extends: .defconfig }
engicam_imx6qdl_icore_defconfig: { extends: .defconfig }
engicam_imx6qdl_icore_qt5_defconfig: { extends: .defconfig }
engicam_imx6qdl_icore_rqs_defconfig: { extends: .defconfig }
engicam_imx6ul_geam_defconfig: { extends: .defconfig }
engicam_imx6ul_isiot_defconfig: { extends: .defconfig }
freescale_imx28evk_defconfig: { extends: .defconfig }
freescale_imx6dlsabreauto_defconfig: { extends: .defconfig }
freescale_imx6dlsabresd_defconfig: { extends: .defconfig }
freescale_imx6qsabreauto_defconfig: { extends: .defconfig }
freescale_imx6qsabresd_defconfig: { extends: .defconfig }
freescale_imx6sxsabresd_defconfig: { extends: .defconfig }
freescale_imx6ullevk_defconfig: { extends: .defconfig }
freescale_imx7dsabresd_defconfig: { extends: .defconfig }
freescale_imx8mmevk_defconfig: { extends: .defconfig }
freescale_imx8mnevk_defconfig: { extends: .defconfig }
freescale_imx8mqevk_defconfig: { extends: .defconfig }
freescale_imx8qmmek_defconfig: { extends: .defconfig }
freescale_imx8qxpmek_defconfig: { extends: .defconfig }
freescale_p1025twr_defconfig: { extends: .defconfig }
freescale_t1040d4rdb_defconfig: { extends: .defconfig }
freescale_t2080_qds_rdb_defconfig: { extends: .defconfig }
friendlyarm_nanopi_a64_defconfig: { extends: .defconfig }
friendlyarm_nanopi_neo2_defconfig: { extends: .defconfig }
friendlyarm_nanopi_neo_plus2_defconfig: { extends: .defconfig }
galileo_defconfig: { extends: .defconfig }
grinn_chiliboard_defconfig: { extends: .defconfig }
grinn_liteboard_defconfig: { extends: .defconfig }
hifive_unleashed_defconfig: { extends: .defconfig }
imx23evk_defconfig: { extends: .defconfig }
imx6-sabreauto_defconfig: { extends: .defconfig }
imx6-sabresd_defconfig: { extends: .defconfig }
imx6-sabresd_qt5_defconfig: { extends: .defconfig }
imx6slevk_defconfig: { extends: .defconfig }
imx6sx-sdb_defconfig: { extends: .defconfig }
imx6ulevk_defconfig: { extends: .defconfig }
imx6ulpico_defconfig: { extends: .defconfig }
imx7d-sdb_defconfig: { extends: .defconfig }
imx7dpico_defconfig: { extends: .defconfig }
imx8mmpico_defconfig: { extends: .defconfig }
imx8mpico_defconfig: { extends: .defconfig }
lafrite_defconfig: { extends: .defconfig }
lego_ev3_defconfig: { extends: .defconfig }
licheepi_zero_defconfig: { extends: .defconfig }
linksprite_pcduino_defconfig: { extends: .defconfig }
minnowboard_max-graphical_defconfig: { extends: .defconfig }
minnowboard_max_defconfig: { extends: .defconfig }
mx25pdk_defconfig: { extends: .defconfig }
mx51evk_defconfig: { extends: .defconfig }
mx53loco_defconfig: { extends: .defconfig }
mx6cubox_defconfig: { extends: .defconfig }
mx6sx_udoo_neo_defconfig: { extends: .defconfig }
mx6udoo_defconfig: { extends: .defconfig }
nanopi_m1_defconfig: { extends: .defconfig }
nanopi_m1_plus_defconfig: { extends: .defconfig }
nanopi_neo4_defconfig: { extends: .defconfig }
nanopi_neo_defconfig: { extends: .defconfig }
nanopi_r1_defconfig: { extends: .defconfig }
nexbox_a95x_defconfig: { extends: .defconfig }
nitrogen6sx_defconfig: { extends: .defconfig }
nitrogen6x_defconfig: { extends: .defconfig }
nitrogen7_defconfig: { extends: .defconfig }
nitrogen8m_defconfig: { extends: .defconfig }
nitrogen8mm_defconfig: { extends: .defconfig }
nitrogen8mn_defconfig: { extends: .defconfig }
odroidxu4_defconfig: { extends: .defconfig }
olimex_a10_olinuxino_lime_defconfig: { extends: .defconfig }
olimex_a13_olinuxino_defconfig: { extends: .defconfig }
olimex_a20_olinuxino_lime2_defconfig: { extends: .defconfig }
olimex_a20_olinuxino_lime_defconfig: { extends: .defconfig }
olimex_a20_olinuxino_micro_defconfig: { extends: .defconfig }
olimex_a33_olinuxino_defconfig: { extends: .defconfig }
olimex_a64_olinuxino_defconfig: { extends: .defconfig }
olimex_imx233_olinuxino_defconfig: { extends: .defconfig }
olpc_xo175_defconfig: { extends: .defconfig }
olpc_xo1_defconfig: { extends: .defconfig }
openblocks_a6_defconfig: { extends: .defconfig }
orangepi_lite2_defconfig: { extends: .defconfig }
orangepi_lite_defconfig: { extends: .defconfig }
orangepi_one_defconfig: { extends: .defconfig }
orangepi_one_plus_defconfig: { extends: .defconfig }
orangepi_pc2_defconfig: { extends: .defconfig }
orangepi_pc_defconfig: { extends: .defconfig }
orangepi_pc_plus_defconfig: { extends: .defconfig }
orangepi_plus_defconfig: { extends: .defconfig }
orangepi_prime_defconfig: { extends: .defconfig }
orangepi_r1_defconfig: { extends: .defconfig }
orangepi_win_defconfig: { extends: .defconfig }
orangepi_zero_defconfig: { extends: .defconfig }
orangepi_zero_plus2_defconfig: { extends: .defconfig }
pandaboard_defconfig: { extends: .defconfig }
pc_x86_64_bios_defconfig: { extends: .defconfig }
pc_x86_64_efi_defconfig: { extends: .defconfig }
pine64_defconfig: { extends: .defconfig }
pine64_sopine_defconfig: { extends: .defconfig }
qemu_aarch64_virt_defconfig: { extends: .defconfig }
qemu_arm_versatile_defconfig: { extends: .defconfig }
qemu_arm_versatile_nommu_defconfig: { extends: .defconfig }
qemu_arm_vexpress_defconfig: { extends: .defconfig }
qemu_arm_vexpress_tz_defconfig: { extends: .defconfig }
qemu_csky610_virt_defconfig: { extends: .defconfig }
qemu_csky807_virt_defconfig: { extends: .defconfig }
qemu_csky810_virt_defconfig: { extends: .defconfig }
qemu_csky860_virt_defconfig: { extends: .defconfig }
qemu_m68k_mcf5208_defconfig: { extends: .defconfig }
qemu_m68k_q800_defconfig: { extends: .defconfig }
qemu_microblazebe_mmu_defconfig: { extends: .defconfig }
qemu_microblazeel_mmu_defconfig: { extends: .defconfig }
qemu_mips32r2_malta_defconfig: { extends: .defconfig }
qemu_mips32r2el_malta_defconfig: { extends: .defconfig }
qemu_mips32r6_malta_defconfig: { extends: .defconfig }
qemu_mips32r6el_malta_defconfig: { extends: .defconfig }
qemu_mips64_malta_defconfig: { extends: .defconfig }
qemu_mips64el_malta_defconfig: { extends: .defconfig }
qemu_mips64r6_malta_defconfig: { extends: .defconfig }
qemu_mips64r6el_malta_defconfig: { extends: .defconfig }
qemu_nios2_10m50_defconfig: { extends: .defconfig }
qemu_or1k_defconfig: { extends: .defconfig }
qemu_ppc64_e5500_defconfig: { extends: .defconfig }
qemu_ppc64_pseries_defconfig: { extends: .defconfig }
qemu_ppc64le_pseries_defconfig: { extends: .defconfig }
qemu_ppc_g3beige_defconfig: { extends: .defconfig }
qemu_ppc_mac99_defconfig: { extends: .defconfig }
qemu_ppc_mpc8544ds_defconfig: { extends: .defconfig }
qemu_ppc_virtex_ml507_defconfig: { extends: .defconfig }
qemu_riscv32_virt_defconfig: { extends: .defconfig }
qemu_riscv64_virt_defconfig: { extends: .defconfig }
qemu_sh4_r2d_defconfig: { extends: .defconfig }
qemu_sh4eb_r2d_defconfig: { extends: .defconfig }
qemu_sparc64_sun4u_defconfig: { extends: .defconfig }
qemu_sparc_ss10_defconfig: { extends: .defconfig }
qemu_x86_64_defconfig: { extends: .defconfig }
qemu_x86_defconfig: { extends: .defconfig }
qemu_xtensa_lx60_defconfig: { extends: .defconfig }
qemu_xtensa_lx60_nommu_defconfig: { extends: .defconfig }
raspberrypi0_defconfig: { extends: .defconfig }
raspberrypi0w_defconfig: { extends: .defconfig }
raspberrypi2_defconfig: { extends: .defconfig }
raspberrypi3_64_defconfig: { extends: .defconfig }
raspberrypi3_defconfig: { extends: .defconfig }
raspberrypi3_qt5we_defconfig: { extends: .defconfig }
raspberrypi4_64_defconfig: { extends: .defconfig }
raspberrypi4_defconfig: { extends: .defconfig }
raspberrypi_defconfig: { extends: .defconfig }
riotboard_defconfig: { extends: .defconfig }
roc_pc_rk3399_defconfig: { extends: .defconfig }
rock64_defconfig: { extends: .defconfig }
roseapplepi_defconfig: { extends: .defconfig }
s6lx9_microboard_defconfig: { extends: .defconfig }
sheevaplug_defconfig: { extends: .defconfig }
snps_aarch64_vdk_defconfig: { extends: .defconfig }
snps_arc700_axs101_defconfig: { extends: .defconfig }
snps_archs38_axs103_defconfig: { extends: .defconfig }
snps_archs38_haps_defconfig: { extends: .defconfig }
snps_archs38_hsdk_defconfig: { extends: .defconfig }
snps_archs38_vdk_defconfig: { extends: .defconfig }
socrates_cyclone5_defconfig: { extends: .defconfig }
solidrun_clearfog_defconfig: { extends: .defconfig }
solidrun_clearfog_gt_8k_defconfig: { extends: .defconfig }
solidrun_macchiatobin_defconfig: { extends: .defconfig }
stm32f429_disco_defconfig: { extends: .defconfig }
stm32f469_disco_defconfig: { extends: .defconfig }
stm32mp157a_dk1_defconfig: { extends: .defconfig }
stm32mp157c_dk2_defconfig: { extends: .defconfig }
toradex_apalis_imx6_defconfig: { extends: .defconfig }
ts4900_defconfig: { extends: .defconfig }
ts5500_defconfig: { extends: .defconfig }
ts7680_defconfig: { extends: .defconfig }
wandboard_defconfig: { extends: .defconfig }
warp7_defconfig: { extends: .defconfig }
warpboard_defconfig: { extends: .defconfig }
zynq_microzed_defconfig: { extends: .defconfig }
zynq_qmtech_defconfig: { extends: .defconfig }
zynq_zc706_defconfig: { extends: .defconfig }
zynq_zed_defconfig: { extends: .defconfig }
zynqmp_zcu106_defconfig: { extends: .defconfig }
tests.boot.test_atf.TestATFAllwinner: { extends: .runtime_test }
tests.boot.test_atf.TestATFMarvell: { extends: .runtime_test }
tests.boot.test_atf.TestATFVexpress: { extends: .runtime_test }
tests.boot.test_syslinux.TestSysLinuxX86EFI: { extends: .runtime_test }
tests.boot.test_syslinux.TestSysLinuxX86LegacyBios: { extends: .runtime_test }
tests.boot.test_syslinux.TestSysLinuxX86_64EFI: { extends: .runtime_test }
tests.boot.test_syslinux.TestSysLinuxX86_64LegacyBios: { extends: .runtime_test }
tests.core.test_file_capabilities.TestFileCapabilities: { extends: .runtime_test }
tests.core.test_hardening.TestFortifyConserv: { extends: .runtime_test }
tests.core.test_hardening.TestFortifyNone: { extends: .runtime_test }
tests.core.test_hardening.TestRelro: { extends: .runtime_test }
tests.core.test_hardening.TestRelroPartial: { extends: .runtime_test }
tests.core.test_hardening.TestSspNone: { extends: .runtime_test }
tests.core.test_hardening.TestSspStrong: { extends: .runtime_test }
tests.core.test_post_scripts.TestPostScripts: { extends: .runtime_test }
tests.core.test_root_password.TestRootPassword: { extends: .runtime_test }
tests.core.test_rootfs_overlay.TestRootfsOverlay: { extends: .runtime_test }
tests.core.test_timezone.TestGlibcAllTimezone: { extends: .runtime_test }
tests.core.test_timezone.TestGlibcNonDefaultLimitedTimezone: { extends: .runtime_test }
tests.core.test_timezone.TestNoTimezone: { extends: .runtime_test }
tests.download.test_git.TestGitHash: { extends: .runtime_test }
tests.download.test_git.TestGitRefs: { extends: .runtime_test }
tests.fs.test_ext.TestExt2: { extends: .runtime_test }
tests.fs.test_ext.TestExt2r1: { extends: .runtime_test }
tests.fs.test_ext.TestExt3: { extends: .runtime_test }
tests.fs.test_ext.TestExt4: { extends: .runtime_test }
tests.fs.test_f2fs.TestF2FS: { extends: .runtime_test }
tests.fs.test_iso9660.TestIso9660Grub2External: { extends: .runtime_test }
tests.fs.test_iso9660.TestIso9660Grub2ExternalCompress: { extends: .runtime_test }
tests.fs.test_iso9660.TestIso9660Grub2Internal: { extends: .runtime_test }
tests.fs.test_iso9660.TestIso9660SyslinuxExternal: { extends: .runtime_test }
tests.fs.test_iso9660.TestIso9660SyslinuxExternalCompress: { extends: .runtime_test }
tests.fs.test_iso9660.TestIso9660SyslinuxInternal: { extends: .runtime_test }
tests.fs.test_jffs2.TestJffs2: { extends: .runtime_test }
tests.fs.test_squashfs.TestSquashfs: { extends: .runtime_test }
tests.fs.test_ubi.TestUbi: { extends: .runtime_test }
tests.fs.test_yaffs2.TestYaffs2: { extends: .runtime_test }
tests.init.test_busybox.TestInitSystemBusyboxRo: { extends: .runtime_test }
tests.init.test_busybox.TestInitSystemBusyboxRoNet: { extends: .runtime_test }
tests.init.test_busybox.TestInitSystemBusyboxRw: { extends: .runtime_test }
tests.init.test_busybox.TestInitSystemBusyboxRwNet: { extends: .runtime_test }
tests.init.test_none.TestInitSystemNone: { extends: .runtime_test }
tests.init.test_openrc.TestInitSystemOpenrcRoFull: { extends: .runtime_test }
tests.init.test_openrc.TestInitSystemOpenrcRwFull: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRoFull: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRoIfupdown: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRoNetworkd: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRwFull: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRwIfupdown: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRwNetworkd: { extends: .runtime_test }
tests.package.test_atop.TestAtop: { extends: .runtime_test }
tests.package.test_crudini.TestCrudiniPy2: { extends: .runtime_test }
tests.package.test_crudini.TestCrudiniPy3: { extends: .runtime_test }
tests.package.test_docker_compose.TestDockerCompose: { extends: .runtime_test }
tests.package.test_dropbear.TestDropbear: { extends: .runtime_test }
tests.package.test_glxinfo.TestGlxinfo: { extends: .runtime_test }
tests.package.test_gst1_python.TestGst1Python: { extends: .runtime_test }
tests.package.test_ipython.TestIPythonPy3: { extends: .runtime_test }
tests.package.test_libftdi1.TestPythonPy2Libftdi1: { extends: .runtime_test }
tests.package.test_libftdi1.TestPythonPy3Libftdi1: { extends: .runtime_test }
tests.package.test_lpeg.TestLuaLPeg: { extends: .runtime_test }
tests.package.test_lpeg.TestLuajitLPeg: { extends: .runtime_test }
tests.package.test_lsqlite3.TestLuaLsqlite3: { extends: .runtime_test }
tests.package.test_lsqlite3.TestLuajitLsqlite3: { extends: .runtime_test }
tests.package.test_lua.TestLua: { extends: .runtime_test }
tests.package.test_lua.TestLuajit: { extends: .runtime_test }
tests.package.test_lua_cqueues.TestLuaLuaCqueues: { extends: .runtime_test }
tests.package.test_lua_cqueues.TestLuajitLuaCqueues: { extends: .runtime_test }
tests.package.test_lua_curl.TestLuaLuacURL: { extends: .runtime_test }
tests.package.test_lua_curl.TestLuajitLuacURL: { extends: .runtime_test }
tests.package.test_lua_gd.TestLuaLuaGD: { extends: .runtime_test }
tests.package.test_lua_gd.TestLuajitLuaGD: { extends: .runtime_test }
tests.package.test_lua_http.TestLuaHttp: { extends: .runtime_test }
tests.package.test_lua_http.TestLuajitHttp: { extends: .runtime_test }
tests.package.test_lua_lyaml.TestLuaLuaLyaml: { extends: .runtime_test }
tests.package.test_lua_lyaml.TestLuajitLuaLyaml: { extends: .runtime_test }
tests.package.test_lua_sdl2.TestLuaLuaSDL2: { extends: .runtime_test }
tests.package.test_lua_sdl2.TestLuajitLuaSDL2: { extends: .runtime_test }
tests.package.test_lua_utf8.TestLuaUtf8: { extends: .runtime_test }
tests.package.test_lua_utf8.TestLuajitUtf8: { extends: .runtime_test }
tests.package.test_luaexpat.TestLuaLuaExpat: { extends: .runtime_test }
tests.package.test_luaexpat.TestLuajitLuaExpat: { extends: .runtime_test }
tests.package.test_luafilesystem.TestLuaLuaFileSystem: { extends: .runtime_test }
tests.package.test_luafilesystem.TestLuajitLuaFileSystem: { extends: .runtime_test }
tests.package.test_luaossl.TestLuaLuaossl: { extends: .runtime_test }
tests.package.test_luaossl.TestLuajitLuaossl: { extends: .runtime_test }
tests.package.test_luaposix.TestLuaLuaPosix: { extends: .runtime_test }
tests.package.test_luaposix.TestLuajitLuaPosix: { extends: .runtime_test }
tests.package.test_luasec.TestLuaLuaSec: { extends: .runtime_test }
tests.package.test_luasec.TestLuajitLuaSec: { extends: .runtime_test }
tests.package.test_luasocket.TestLuaLuaSocket: { extends: .runtime_test }
tests.package.test_luasocket.TestLuajitLuaSocket: { extends: .runtime_test }
tests.package.test_luasyslog.TestLuaLuasyslog: { extends: .runtime_test }
tests.package.test_luasyslog.TestLuajitLuasyslog: { extends: .runtime_test }
tests.package.test_luvi.TestLuvi: { extends: .runtime_test }
tests.package.test_lxc.TestLxc: { extends: .runtime_test }
tests.package.test_lzlib.TestLuaLzlib: { extends: .runtime_test }
tests.package.test_netdata.TestNetdata: { extends: .runtime_test }
tests.package.test_openjdk.TestOpenJdk: { extends: .runtime_test }
tests.package.test_opkg.TestOpkg: { extends: .runtime_test }
tests.package.test_perl.TestPerl: { extends: .runtime_test }
tests.package.test_perl_class_load.TestPerlClassLoad: { extends: .runtime_test }
tests.package.test_perl_dbd_mysql.TestPerlDBDmysql: { extends: .runtime_test }
tests.package.test_perl_encode_detect.TestPerlEncodeDetect: { extends: .runtime_test }
tests.package.test_perl_gdgraph.TestPerlGDGraph: { extends: .runtime_test }
tests.package.test_perl_html_parser.TestPerlHTMLParser: { extends: .runtime_test }
tests.package.test_perl_io_socket_multicast.TestPerlIOSocketMulticast: { extends: .runtime_test }
tests.package.test_perl_io_socket_ssl.TestPerlIOSocketSSL: { extends: .runtime_test }
tests.package.test_perl_libwww_perl.TestPerllibwwwperl: { extends: .runtime_test }
tests.package.test_perl_lwp_protocol_https.TestPerlLWPProtocolhttps: { extends: .runtime_test }
tests.package.test_perl_mail_dkim.TestPerlMailDKIM: { extends: .runtime_test }
tests.package.test_perl_x10.TestPerlX10: { extends: .runtime_test }
tests.package.test_perl_xml_libxml.TestPerlXMLLibXML: { extends: .runtime_test }
tests.package.test_prosody.TestProsodyLua51: { extends: .runtime_test }
tests.package.test_prosody.TestProsodyLuajit: { extends: .runtime_test }
tests.package.test_python.TestPython2: { extends: .runtime_test }
tests.package.test_python.TestPython3: { extends: .runtime_test }
tests.package.test_python_argh.TestPythonPy2Argh: { extends: .runtime_test }
tests.package.test_python_argh.TestPythonPy3Argh: { extends: .runtime_test }
tests.package.test_python_attrs.TestPythonPy2Attrs: { extends: .runtime_test }
tests.package.test_python_attrs.TestPythonPy3Attrs: { extends: .runtime_test }
tests.package.test_python_autobahn.TestPythonPy3Autobahn: { extends: .runtime_test }
tests.package.test_python_automat.TestPythonPy2Automat: { extends: .runtime_test }
tests.package.test_python_automat.TestPythonPy3Automat: { extends: .runtime_test }
tests.package.test_python_avro.TestPythonAvro: { extends: .runtime_test }
tests.package.test_python_bitstring.TestPythonPy2Bitstring: { extends: .runtime_test }
tests.package.test_python_bitstring.TestPythonPy3Bitstring: { extends: .runtime_test }
tests.package.test_python_can.TestPythonPy2Can: { extends: .runtime_test }
tests.package.test_python_can.TestPythonPy3Can: { extends: .runtime_test }
tests.package.test_python_cbor.TestPythonPy2Cbor: { extends: .runtime_test }
tests.package.test_python_cbor.TestPythonPy3Cbor: { extends: .runtime_test }
tests.package.test_python_click.TestPythonPy2Click: { extends: .runtime_test }
tests.package.test_python_click.TestPythonPy3Click: { extends: .runtime_test }
tests.package.test_python_constantly.TestPythonPy2Constantly: { extends: .runtime_test }
tests.package.test_python_constantly.TestPythonPy3Constantly: { extends: .runtime_test }
tests.package.test_python_crossbar.TestPythonPy3Crossbar: { extends: .runtime_test }
tests.package.test_python_cryptography.TestPythonPy2Cryptography: { extends: .runtime_test }
tests.package.test_python_cryptography.TestPythonPy3Cryptography: { extends: .runtime_test }
tests.package.test_python_django.TestPythonPy3Django: { extends: .runtime_test }
tests.package.test_python_gitdb2.TestPythonPy2Gitdb2: { extends: .runtime_test }
tests.package.test_python_gitdb2.TestPythonPy3Gitdb2: { extends: .runtime_test }
tests.package.test_python_gobject.TestPythonPy3Gobject: { extends: .runtime_test }
tests.package.test_python_incremental.TestPythonPy2Incremental: { extends: .runtime_test }
tests.package.test_python_incremental.TestPythonPy3Incremental: { extends: .runtime_test }
tests.package.test_python_passlib.TestPythonPy2Passlib: { extends: .runtime_test }
tests.package.test_python_passlib.TestPythonPy3Passlib: { extends: .runtime_test }
tests.package.test_python_pexpect.TestPythonPy2Pexpect: { extends: .runtime_test }
tests.package.test_python_pexpect.TestPythonPy3Pexpect: { extends: .runtime_test }
tests.package.test_python_pynacl.TestPythonPy2Pynacl: { extends: .runtime_test }
tests.package.test_python_pynacl.TestPythonPy3Pynacl: { extends: .runtime_test }
tests.package.test_python_pyyaml.TestPythonPy2Pyyaml: { extends: .runtime_test }
tests.package.test_python_pyyaml.TestPythonPy3Pyyaml: { extends: .runtime_test }
tests.package.test_python_service_identity.TestPythonPy2ServiceIdentity: { extends: .runtime_test }
tests.package.test_python_service_identity.TestPythonPy3ServiceIdentity: { extends: .runtime_test }
tests.package.test_python_smmap2.TestPythonPy2Smmap2: { extends: .runtime_test }
tests.package.test_python_smmap2.TestPythonPy3Smmap2: { extends: .runtime_test }
tests.package.test_python_subprocess32.TestPythonPy2Subprocess32: { extends: .runtime_test }
tests.package.test_python_treq.TestPythonPy2Treq: { extends: .runtime_test }
tests.package.test_python_treq.TestPythonPy3Treq: { extends: .runtime_test }
tests.package.test_python_twisted.TestPythonPy2Twisted: { extends: .runtime_test }
tests.package.test_python_twisted.TestPythonPy3Twisted: { extends: .runtime_test }
tests.package.test_python_txaio.TestPythonPy3Txaio: { extends: .runtime_test }
tests.package.test_python_txtorcon.TestPythonPy2Txtorcon: { extends: .runtime_test }
tests.package.test_python_txtorcon.TestPythonPy3Txtorcon: { extends: .runtime_test }
tests.package.test_python_ubjson.TestPythonPy2Ubjson: { extends: .runtime_test }
tests.package.test_python_ubjson.TestPythonPy3Ubjson: { extends: .runtime_test }
tests.package.test_redis.TestRedis: { extends: .runtime_test }
tests.package.test_rings.TestLuaRings: { extends: .runtime_test }
tests.package.test_rings.TestLuajitRings: { extends: .runtime_test }
tests.package.test_rust.TestRust: { extends: .runtime_test }
tests.package.test_rust.TestRustBin: { extends: .runtime_test }
tests.package.test_syslog_ng.TestSyslogNg: { extends: .runtime_test }
tests.package.test_tmux.TestTmux: { extends: .runtime_test }
tests.package.test_turbolua.TestLuajitTurbolua: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainBuildrootMusl: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainBuildrootuClibc: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainCCache: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainCtngMusl: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainLinaroArm: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainSourceryArmv4: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainSourceryArmv5: { extends: .runtime_test }
tests.toolchain.test_external.TestExternalToolchainSourceryArmv7: { extends: .runtime_test }
tests.utils.test_check_package.TestCheckPackage: { extends: .runtime_test }

View File

@@ -1,38 +1,52 @@
.check-DEVELOPERS_base:
# Configuration for Gitlab-CI.
# Builds appear on https://gitlab.com/buildroot.org/buildroot/pipelines
# The .gitlab-ci.yml file is generated from .gitlab-ci.yml.in.
# It needs to be regenerated every time a defconfig is added, using
# "make .gitlab-ci.yml".
image: buildroot/base:20191027.2027
.check_base:
except:
- /^.*-.*_defconfig$/
- /^.*-tests\..*$/
check-DEVELOPERS:
extends: .check_base
# get-developers should print just "No action specified"; if it prints
# anything else, it's a parse error.
# The initial ! is removed by YAML so we need to quote it.
script:
- "! utils/get-developers | grep -v 'No action specified'"
.check-flake8_base:
check-flake8:
extends: .check_base
before_script:
# Help flake8 to find the Python files without .py extension.
- find * -type f -name '*.py' > files.txt
- find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
- sort -u files.txt | tee files.processed
script:
- make check-flake8
- python -m flake8 --statistics --count --max-line-length=132 $(cat files.processed)
after_script:
- wc -l files.processed
.check-package_base:
check-gitlab-ci.yml:
extends: .check_base
script:
- mv .gitlab-ci.yml .gitlab-ci.yml.orig
- make .gitlab-ci.yml
- diff -u .gitlab-ci.yml.orig .gitlab-ci.yml
check-package:
extends: .check_base
script:
- make check-package
.defconfig_check:
before_script:
- DEFCONFIG_NAME=$(echo ${CI_JOB_NAME} | sed -e 's,_check$,,g')
script:
- echo "Configure Buildroot for ${DEFCONFIG_NAME}"
- make ${DEFCONFIG_NAME}
- support/scripts/check-dotconfig.py .config configs/${DEFCONFIG_NAME}
artifacts:
when: on_failure
expire_in: 2 weeks
paths:
- .config
.defconfig_base:
before_script:
- DEFCONFIG_NAME=${CI_JOB_NAME}
script:
- echo "Configure Buildroot for ${DEFCONFIG_NAME}"
- make ${DEFCONFIG_NAME}
- ./support/scripts/check-dotconfig.py .config ./configs/${DEFCONFIG_NAME}
- echo 'Build buildroot'
- |
make > >(tee build.log |grep '>>>') 2>&1 || {
@@ -58,9 +72,25 @@
- output/build/*/.config
- runtime-test.log
.runtime_test_base:
.defconfig:
extends: .defconfig_base
# Running the defconfigs for every push is too much, so limit to
# explicit triggers through the API.
only:
- triggers
- tags
- /-defconfigs$/
before_script:
- TEST_CASE_NAME=${CI_JOB_NAME}
- DEFCONFIG_NAME=${CI_JOB_NAME}
one-defconfig:
extends: .defconfig_base
only:
- /^.*-.*_defconfig$/
before_script:
- DEFCONFIG_NAME=$(echo ${CI_COMMIT_REF_NAME} | sed -e 's,^.*-,,g')
.runtime_test_base:
# Keep build directories so the rootfs can be an artifact of the job. The
# runner will clean up those files for us.
# Multiply every emulator timeout by 10 to avoid sporadic failures in
@@ -76,3 +106,20 @@
- test-output/*/.config
- test-output/*/images/*
.runtime_test:
extends: .runtime_test_base
# Running the runtime tests for every push is too much, so limit to
# explicit triggers through the API.
only:
- triggers
- tags
- /-runtime-tests$/
before_script:
- TEST_CASE_NAME=${CI_JOB_NAME}
one-runtime_test:
extends: .runtime_test_base
only:
- /^.*-tests\..*$/
before_script:
- TEST_CASE_NAME=$(echo ${CI_COMMIT_REF_NAME} | sed -e 's,^.*-,,g')

644
CHANGES
View File

@@ -1,477 +1,3 @@
2020.11-rc2, released November 14th, 2020
Fixes all over the tree.
cve-checker script dropped. Instead the pkg-stats logic has
been extended to be able to only generate stats for the
configured packages using 'make pkg-stats'
Removed defconfigs: rock64
Updated/fixed packages: apparmor, asterisk, bitcoin, busybox,
cups-filters, cryptsetup, davfs2, domoticz, elf2flt, freetype,
ghostscript, glmark2, go, gst1-plugins-bad, guile, jsoncpp,
libcap, libexif, libnetfilter_conntrack, libpam-tacplus,
libsigrokdecode, linux-backports, linux-firmware, mesa3d,
modem-manager, mp4v2, oniguruma, openntpd, python3,
python-lmdb, python-m2crypto, rauc, s390-tools, slirp,
stress-ng, suricata, systemd, tcpdump, tmux, tor, webkitgtk,
wireguard-linux-compat, wpewebkit, xen
Issues resolved (http://bugs.uclibc.org):
#13281: Raspberry Pi 2: overlays folder missing in genimage-ra..
#13291: BR2_DL_DIR is ignored when creating defconfig
#13306: wpewebkit build problem in 2020-11-rc1
2020.11-rc1, released November 4th, 2020
Fixes all over the tree and new features.
Architectures: Support for IBM s390x
Toolchain: use Secure-PLT rather than BSS-PLT for PowerPC
32. Binutils 2.35.1 added, now defaulting to 2.34. ARC
2020.09-release toolchain. GCC 7.x dropped. RISC-V support for
uclibc-ng. Support for Bootlin external toolchains.
SELinux support improvements: File security contexts are now
set when the file systems are created, so there is no need to
run restorecon on first boot / read only rootfs is supported.
An optimized / stripped refpolicy SELinux policy is now
used. Packages can enable additional refpolicy modules using
<pkg>_SELINUX_MODULES.
support/scripts/cve-checker: Utility script to check for known
CVEs in just the packages enabled in a Buildroot configuration
rather than all packages, by passing the output of 'make
show-info' to it.
Go: Modules handling. The module name must be specified using
<pkg>_GOMOD.
BR2_EXTERNAL: Support for defining skeleton and init system
packages in external trees.
meson: Correct SDK cross-compilation.conf file when
per-package builds were used to build SDK.
systemd: Use /run rather than /var/run for PID files in units.
Fakeroot scripts (BR2_ROOTFS_POST_FAKEROOT_SCRIPT) are now run
after all finalization hooks (including pre-rootfs) to ensure
they can override any late configuration done by packages.
support/script/pycompile: Rework logic to ensure .pyc files
contain absolute target paths, fixing code inspection at
runtime when executed with cwd != '/'.
support/scripts/setlocalversion: Correct Mercurial output to
match behaviour with Git.
support/scripts/apply-patches.sh: Use patch
--no-backup-if-mismatch, so we no longer blindly have to
remove *.orig files after patching, fixing issues with
packages containing such files.
New defconfigs: Acer chromebook elm, Friendlyarm nanopc-t4 and
nanopi-m4, Hardkernel odroid-c2, Kontron SMARC-sAL28, NXP
imx8mqevk, Orangepi RK3399 and zero+, PCengines APU2, Pine64
rockpro64, QEMU s390x, Raxda rockpi-n8,
New packages: altera-stapl, asn1c, babeltrace2, cukinia,
easyframes, environment-setup, frr, graphicsmagick, htpdate,
ipcalc, libbacktrace, libblockdev, libbytesize, librelp,
libuev, makedumpfile, meson-tools, mg, mrp, multipath-tools,
netcalc, odroidc2-firmware, php-xdebug, python-aiofiles,
python-ansicolors, python-boto3, python-botocore,
python-bsdiff4, python-crayons, python-iniconfig,
python-intelhex, python-ipdb, python-jmespath,
python-m2crypto, python-opcua-asyncio, python-packaging,
python-piexif, python-pluggy, python-pytest,
python-s3transfer, python-xmodem, qprint, qt5lottie,
qt5remoteobjects, re2, redir, s390-tools, sentry-cli,
sentry-native, timescaledb, tinyhttpd, uhd, uredir, watchdog,
wayland-utils, weston-imx
Removed packages: amd-catalyst, bellagio, gqview, libcroco,
nvidia-tegra23, opencv
Issues resolved (http://bugs.uclibc.org):
#11811: lsblk (util-linux) should depend on libudev if available
#11931: Bugs in support/scripts/apply-patches.sh
#12301: systemd-journal-gatewayd: config options broken
#12911: usb_modeswitch installation race condition
#13236: Can't compile linux 5.4.8 (with gcc 10 on host)
#13286: The system hangs in vmware workstation on the line..
2020.08.2, released November 16th, 2020
Important / security related fixes.
Toolchain-wrapper: Pass -fno-tree-loop-distribute-patterns to
fix kernel build on microblaze with gcc 10.x when
optimizations are enabled.
Updated/fixed packages: apparmor, argp-standalone, asterisk,
bandwidthd, binutils, bitcoin, busybox, collectd, cryptsetup,
cups-filters, darkhttpd, davfs2, docker-cli,
docker-containerd, docker-engine, dovecot-pigeonhole,
dvb-apps, elf2flt, fastd, fbset, fbtft, freetype, gcc,
ghostscript, grpc, gst1-plugins-bad, jsoncpp,
kernel-module-imx-gpu-viv, keepalived, kmscube, libass,
libexif, libiqrf, libnetfilter_conntrack, libpam-tacplus,
libraw, linux-backports, linux-firmware, lzlib, mp4v2,
netsnmp, nginx, numactl, oniguruma, opencv3, openntpd,
patchelf, php, pistache, postgresql, python-pyqt5, qemu,
qt5base, rauc, redis, samba4, slirp, systemd, tcpdump,
tinyproxy, tmux, tor, waf, webkitgtk, wine,
wireguard-linux-compat, wireshark, wpewebkit, xen, xorriso,
xvisor, zeromq, zxing-cpp
Issues resolved (http://bugs.uclibc.org):
#11931: Bugs in support/scripts/apply-patches.sh
2020.08.1, released October 12th, 2020
Important / security related fixes.
Fixes for various compilation issues with GCC 10.x.
meson: Correct SDK cross-compilation.conf file when
per-package builds were used to build SDK.
systemd: Use /run rather than /var/run for PID files in units.
Toolchain: use Secure-PLT rather than BSS-PLT for PowerPC 32.
Fakeroot scripts (BR2_ROOTFS_POST_FAKEROOT_SCRIPT) are now run
after all finalization hooks (including pre-rootfs) to ensure
they can override any late configuration done by packages.
support/script/pycompile: Rework logic to ensure .pyc files
contain absolute target paths, fixing code inspection at
runtime when executed with cwd != '/'.
support/scripts/setlocalversion: Correct Mercurial output to
match behaviour with Git.
support/scripts/apply-patches.sh: Use patch
--no-backup-if-mismatch, so we no longer blindly have to
remove *.orig files after patching, fixing issues with
packages containing such files.
fs/jffs2: Now correctly handles xattrs
Updated/fixed packages: acpica, afboot-stm32, alsa-utils,
apparmor, bandwidthd, barebox, bash, bison, brotli,
cifs-utils, cups, dhcpcd, dhcpdump, docker-cli, docker-engine,
ecryptfs-utils, efl, fail2ban, fbterm, ffmpeg, fontconfig,
freetype, gcc, gdb, ghostscript, gnupg2, gnutls, go, gqview,
gst1-plugins-base, gst1-plugins-ugly, ipmitool, jbig2dec,
kexec, lcdproc, libcamera, libhtp, libnetconf2, libraw,
libssh, libxml2, libxml-parser-perl, libzip, linux-headers,
live555, localedef, ltp-testsuite, lua, matchbox, memcached,
memtester, mesa3d, meson, minidlna, mongodb, mongrel2, motion,
mraa, mtd, musepack, neardal, netatalk, netperf, netsniff-ng,
nginx, nodejs, nss-pam-ldapd, open-plc-utils, openswan,
opentyrian, openvmtools, php, postgresql, python,
python-aenum, python-cycler, python-engineio, python-fire,
python-pymodbus, python-scapy, python-semver,
python-sentry-sdk, python-socketio, python-texttable,
python-tinyrpc, python-txtorcon, python3, qt5base, quagga,
read-edid, redis, rsh-redone, runc, samba4, socketcand,
strace, supertux, suricata, systemd, ti-utils, trinity,
uclibc, usb_modeswitch, vlc, vsftpd, wampcc,
wayland-protocols, wireguard-linux-compat, wireshark, wlroots,
wolfssl, w_scan, xerces, xfsprogs, xdriver-xf86-video-ati,
xserver_xorg-server, ympd, zeromq, zlib-ng, zstd
Issues resolved (http://bugs.uclibc.org):
#12911: usb_modeswitch installation race condition
#13236: Can't compile linux 5.4.8 (with gcc 10 on host)
2020.08, released September 1st, 2020
Various fixes.
Updated/fixed packages: am33x-cm3, avahi, bluez-tools,
busybox, chocolate-doom, collectd, dhcp, docker-cli, domoticz,
gobject-introspection, graphite2, haproxy, ibm-sw-tpm2,
imagemagick, libeXosip2, libressl, lxc, mbedtls, menu-cache,
mongodb, mosquitto, nvidia-driver, paho-mqtt-c, pixz,
postgresql, python-django, rtty, squid, stress-ng, systemd,
trousers, uclibc, wireshark, wolfssl, zbar
2020.08-rc3, released August 28th, 2020
Fixes all over the tree.
Infrastructure: Ensure RPATH entries that may be needed for
dlopen() are not dropped by patchelf.
Toolchain: Drop old GCC 6 based external Sourcery AMD64
toolchain.
Updated/fixed packages: assimp, davfs2, dillo, glibc,
gnuradio, hostapd, ibm-sw-tpm2, ipmitool, json-c, libroxml,
linux, mender, netopeer2, openal, openjpeg, python-matplotlib,
ripgrep, shadowsocks-libev, trousers, xlib_libX11,
xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#13141: Target-finalize fail with "depmod: ERROR: Bad version passed"
2020.08-rc2, released August 24th, 2020
Fixes all over the tree, including a number of fixes for
compilation with GCC-10.
Toolchain: Disallow building uClibc-ng for RISC-V 64-bit,
because of issues with a missing __riscv_flush_icache()
implementation.
Defconfigs: CI20: Use mainline Linux and U-boot. Update
Microchip sama5d27_wlsom1_ek_mmc_dev to use bluez5-utils
instead of (the removed) legacy bluez-utils
Updated/fixed packages: 18xx-ti-utils, aircrack-ng, apache,
atest, bandwidthd, bellagio, bind, bird, bluez-alsa, boost,
c-periphery, capnproto, chrony, collectd, cpio, cvs,
dieharder, domoticz, dovecot, dovecot-pigeonhole, drbd-utils,
dump1090, efl, elixir, f2fs-tools, feh, fluidsynth, fping,
gdbm, gdk-pixbuf, ghostscript, gst1-plugins-bad,
gstreamer1-editing-services, htop, ibm-sw-tpm2, ifplugd,
iftop, igd2-for-linux, ima-evm-utils, iprutils, iputils,
keepalived, kmsxx, libabseil-cpp, libcamera, libcurl,
libfuse3, libnss, librtlsdr, libubox, libunwind, live555,
lttng-tools, luabitop, mender-artifact, minizip,
mjpg-streamer, mpd, mpv, mtd, ncftp, open-lldp, openal,
opencv, opencv3, openfpgaloader, optee-os, owfs, php,
pistache, prosody, pulseview, python-decorator,
python-gunicorn, python-rpi-gpio, python-spidev,
python3-decorator, python3-mako, python3-pyselftools, qt5,
qt5webengine, rauc, redis, ripgrep, rtl8188eu, rtl8821au,
setools, smstools3, supertux, tftpd, tpm2-abrmd,
wpa_supplicant, xen, xlib_libX11, xserver_xorg-server
New packages: python3-cython, python3-pycryptodomex
Issues resolved (http://bugs.uclibc.org):
#12876: nodejs fails to build when host-icu has been built before
#13111: python-gunicorn: missing dependency on python-setuptools
#13121: wpa_supplicant fails to build without libopenssl enabled
#13146: raspberrypi3_defconfig: "Inappropriate ioctl for device"..
#13156: package live555 new license
#13166: python-rpi-gpio: does not work against aarch64, unint..
2020.08-rc1, released August 6th, 2020
Toolchain:
- GCC 10.x added, GCC 9.x is the default
- binutils 2.34 added, binutils 2.33 is the default, binutils
2.31 removed
- glibc updated to 2.31
- ARC toolchain components updated to 2020.03-release.
- Enable uClibc-ng usage for RISC-V 64-bit
Infrastructure:
- qmake-package was fixed to be compatible with
BR2_PER_PACKAGE_DIRECTORIES
- complete rewrite of the Gitlab CI Yaml configuration file,
now generated directly by the Gitlab CI pipeline itselfs
Misc:
- cargo and cargo-bin packages removed, as cargo is now part
of Rust itself
Filesystem: ubinize configuration files can now use
BINARIES_DIR to refer to the $(O)/images directory.
New packages: bitwise, earlyoom, fuse-overlayfs, gloox,
kodi-pvr-octonet, kodi-pvr-zattoo, libabseil-cpp, libcutl,
libnids, libnpupnp, libodb, libodb-boost, libodb-mysql,
libodb-pgsql, mbpfan, netopeer2, odb, parprouted,
python-colorzero, python-gpiozero, python-pybind, python-yatl,
python3-decorator, qt5quicktimeline, resiprocate, ttyd,
unclutter-xfixes, urandom-scripts,
New defconfigs: bananapi_m2_zero, freescale_imx8mnevk,
globalscale_espressobin, imx6ullevk,
microchip_sama5d27_wlsom1_ek, rock_pi_4, rock_pi_n10
Removed packages: cargo, cargo-bin,
kodi-peripheral-steamcontroller
Issues resolved (http://bugs.uclibc.org):
#12941: Python GObject fails to build when using BR2_PER_PACKAGE_DIRECTORIES
#12946: Grub: Decompressor is too big.
#12986: Mtools: Error converting to codepage 850
#13001: openjdk-bin replaces libfreetype.so from host-freetype
#13011: Incorrect selection of gcc version
#13021: Minor code error when building granite-0.4.1
#13026: rpi-firmware: must not rename start files
#13046: Optimize for fast -Ofast is not compliant
#13081: host-e2fsprogs attempts to create udev rules.d on build host if not exists
#13101: BR audit2allow support
2020.05.3, released October 12th, 2020
Important / security related fixes.
meson: Correct SDK cross-compilation.conf file when
per-package builds were used to build SDK.
systemd: Use /run rather than /var/run for PID files in units.
Toolchain: use Secure-PLT rather than BSS-PLT for PowerPC 32.
Fakeroot scripts (BR2_ROOTFS_POST_FAKEROOT_SCRIPT) are now run
after all finalization hooks (including pre-rootfs) to ensure
they can override any late configuration done by packages.
support/script/pycompile: Rework logic to ensure .pyc files
contain absolute target paths, fixing code inspection at
runtime when executed with cwd != '/'.
support/scripts/setlocalversion: Correct Mercurial output to
match behaviour with Git.
support/scripts/apply-patches.sh: Use patch
--no-backup-if-mismatch, so we no longer blindly have to
remove *.orig files after patching, fixing issues with
packages containing such files.
Updated/fixed packages: alsa-utils, apparmor, avahi,
bandwidthd, barebox, bash, bison, brotli, busybox, cifs-utils,
cryptsetup, cups, dhcpcd, dhcpdump, docker-cli, docker-engine,
ecryptfs-utils, efl, fail2ban, freetype, gcc, gdb,
ghostscript, gnutls, go, graphite2, gst1-plugins-base,
gst1-plugins-ugly, imagemagick, ipmitool, jbig2dec, libhtp,
libraw, libssh, libxml2, libxml-parser-perl, linux-headers,
localedef, lua, mbedtls, memcached, mesa3d, meson, minidlna,
mongodb, nginx, nodejs, nss-pam-ldapd, openvmtools,
paho-mqtt-c, php, postgresql, python, python-aenum,
python-django, python-engineio, python-fire, python-pymodbus,
python-scapy, python-semver, python-sentry-sdk,
python-socketio, python-texttable, python-tinyrpc,
python-txtorcon, python3, qt5base, rsh-redone, runc, samba4,
strace, supertux, suricata, systemd, uclibc, usb_modeswitch,
vlc, vsftpd, wayland-protocols, wireguard-linux-compat,
wireshark, wlroots, wolfssl, xserver_xorg-server, ympd,
zeromq, zstd
Issues resolved (http://bugs.uclibc.org):
#12911: usb_modeswitch installation race condition
#13251: cryptsetup does not work on branch 2020.02 following..
2020.05.2, released August 29th, 2020
Important / security related fixes.
Infrastructure: Ensure RPATH entries that may be needed for
dlopen() are not dropped by patchelf.
BR_VERSION_FULL/setlocalversion (used by make print-version
and /etc/os-release): Properly handle local git tags
Updated/fixed packages: apache, assimp, at91bootstrap3, bind,
boost, busybox, capnproto, cegui, chrony, collectd, cpio,
cryptsetup, cups, cvs, dbus, docker-engine, domoticz, dovecot,
dovecot-pigeonhole, dropbear, efl, elixir, f2fs-tools, ffmpeg,
gd, gdk-pixbuf, ghostscript, glibc, gnuradio, grub2,
gst1-plugins-bad, gstreamer1-editing-services, hostapd,
ibm-sw-tpm2, iputils, jasper, json-c, libcurl, libressl,
libwebsockets, linux, live555, mesa3d, mongodb, mosquitto,
mpv, nodejs, opencv, opencv3, openfpgaloader, openjpeg,
patchelf, perl, php, postgresql, prosody, python-django,
python-gunicorn, python-matplotlib, ripgrep, rtl8188eu,
rtl8821au, ruby, shadowsocks-libev, squid, systemd,
tpm2-abrmd, tpm2-tools, trousers, uboot, webkitgtk, wireshark,
wolfssl, wpa_supplicant, wpewebkit, xen, xlib_libX11,
xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#12876: nodejs fails to build when host-icu has been built before
#13111: python-gunicorn: missing dependency on python-setuptools
#13121: wpa_supplicant fails to build without libopenssl enabled
#13141: Target-finalize fail with "depmod: ERROR: Bad version passed"
#13156: package live555 new license
2020.05.1, released July 25th, 2020
Important / security related fixes.
Toolchain:
- Make external toolchain version check also work for
toolchains configured with --with-gcc-major-version-only
- Do not handle SOURCE_DATE_EPOCH in toolchain wrapper if the
compiler supports it, fixing an issue with precompiled
headers
- Ensure debug libs from external toolchains are not installed
into target if debugging is disabled
Download:
- Correct reproducibility issue in handling of git submodules
for older git versions.
- Fix file locking over NFS
fs: Ensure cpio archive element order is reproducible
Br2-external: Fix error reporting for invalid br2-external trees
Per-package:
- Fix an issue with python3 sysconfig data not getting
correctly expanded
- Fix per-package building for packages using the qmake
infrastructure
Updated/fixed packages: a10disp, asterisk, bind, brltty,
cdrkit, clamav, cryptodev-linux, dbus, docker-cli,
docker-engine, dvb-apps, e2fsprogs, exim, exiv2, freerdp, gdb,
gdk-pixbuf, gerbera, gnutls, go, granite, grub2, gssdp,
gst1-plugins-good, gst1-plugins-ugly, gupnp, intel-microcode,
iproute2, irrlicht, iwd, jq, kodi, libcamera, libcec,
libconfuse, libcurl, libevdev, libhttpserver, libmicrohttpd,
libnss, libressl, libvncserver, libxml2, libxmlrpc, lxc,
mbedtls, mediastreamer, mesa3d, meson, minizip, mongodb,
mtools, mutt, nano, network-manager, nghttp2, ngircd, nodejs,
ntp, open-plc-utils, open2300, openjdk-bin, openssh,
oracle-mysql, paho-mqtt-c, pango, php, poco, prosody, putty,
python-greenlet, python-urllib3, python-validators, python3,
readline, redis, rpi-firmware, rtl8821au, samba4, sdl2,
sqlite, squid, strace, sunxi-mali-mainline-driver, syslog-ng,
systemd, tcpreplay, tinydtls, upmpdcli, upx, vlc, webkitgtk,
wireguard-linux-compat, wireshark, wpebackend-fdo, wpewebkit,
x11vnc, znc, zstd
Issues resolved (http://bugs.uclibc.org):
#12941: Python GObject fails to build when using BR2_PER_PACKAGE_..
#12946: Grub: Decompressor is too big.
#12986: Mtools: Error converting to codepage 850
#13001: openjdk-bin replaces libfreetype.so from host-freetype
#13011: Incorrect selection of gcc version
#13021: Minor code error when building granite-0.4.1
#13026: rpi-firmware: must not rename start files
#13031: nodejs: RangeError at new ArrayBuffer()
#13046: Optimize for fast -Ofast is not compliant
2020.05, released June 1st, 2020
Various fixes.
@@ -640,176 +166,6 @@
#12796: Update OpenSSL to Version 1.1.1g to patch CVE-2020-1967
#12811: bootstrap stuck and no login prompt
2020.02.8, released November 16th, 2020
Important / security related fixes.
Updated/fixed packages: angularjs, argp-standalone, asterisk,
bandwidthd, bitcoin, busybox, cryptsetup, darkhttpd, davfs2,
docker-cli, docker-containerd, docker-engine,
dovecot-pigeonhole, fastd, fbset, fbtft, freetype, gcc,
ghostscript, gnuradio, grpc, gst1-plugins-bad, jsoncpp,
keepalived, libass, libexif, libiqrf, libpam-tacplus, libraw,
linux-backports, linux-firmware, lzlib, netsnmp, nginx,
oniguruma, opencv3, openntpd, patchelf, php, postgresql,
python-pyqt5, qt5base, rauc, redis, samba4, slirp, systemd,
tcpdump, tmux, tor, webkitgtk, wireguard-linux-compat,
wireshark, wpewebkit, xen, xorriso, zeromq, zxing-cpp
Issues resolved (http://bugs.uclibc.org):
#11931: Bugs in support/scripts/apply-patches.sh
2020.02.7, released October 12th, 2020
Important / security related fixes.
meson: Correct SDK cross-compilation.conf file when
per-package builds were used to build SDK.
systemd: Use /run rather than /var/run for PID files in units.
Toolchain: use Secure-PLT rather than BSS-PLT for PowerPC 32.
support/script/pycompile: Rework logic to ensure .pyc files
contain absolute target paths, fixing code inspection at
runtime when executed with cwd != '/'.
support/scripts/setlocalversion: Correct Mercurial output to
match behaviour with Git.
support/scripts/apply-patches.sh: Use patch
--no-backup-if-mismatch, so we no longer blindly have to
remove *.orig files after patching, fixing issues with
packages containing such files.
Updated/fixed packages: bandwidthd, barebox, bash, bison,
brotli, cifs-utils, cryptsetup, dhcpcd, dhcpdump, docker-cli,
docker-engine, ecryptfs-utils, efl, fail2ban, freetype, gcc,
gdb, ghostscript, gnutls, go, gst1-plugins-base,
gst1-plugins-ugly, ipmitool, libhtp, libraw, libssh, libxml2,
libxml-parser-perl, localedef, lua, memcached, mesa3d, meson,
minidlna, nginx, nodejs, nss-pam-ldapd, openvmtools, php,
postgresql, python, python-aenum, python-autobahn,
python-engineio, python-fire, python-pymodbus, python-scapy,
python-semver, python-sentry-sdk, python-socketio,
python-texttable, python-tinyrpc, python-txtorcon, python3,
qt5base, runc, samba4, strace, supertux, suricata, systemd,
vlc, wayland-protocols, wireguard-linux-compat, wireshark,
xserver_xorg-server, zeromq, zstd
Issues resolved (http://bugs.uclibc.org):
#12911: usb_modeswitch installation race condition
#13251: cryptsetup does not work on branch 2020.02 following..
2020.02.6, released September 5th, 2020
Important / security related fixes.
Fix a 2020.02.5 build regression in busybox when systemd (and
not less) are enabled because of missing infrastructure.
Updated/fixed packages: alsa-utils, avahi, busybox, cups,
docker-cli, graphite2, imagemagick, libeXosip2, mbedtls,
nvidia-driver, paho-mqtt-c, python-django, systemd, uclibc,
usb_modeswitch, wolfssl
Issues resolved (http://bugs.uclibc.org):
#12911: usb_modeswitch installation race condition
2020.02.5, released August 29th, 2020
Important / security related fixes.
Infrastructure: Ensure RPATH entries that may be needed for
dlopen() are not dropped by patchelf.
BR_VERSION_FULL/setlocalversion (used by make print-version
and /etc/os-release): Properly handle local git tags
Updated/fixed packages: apache, at91bootstrap3, bind, boost,
busybox, capnproto, chrony, collectd, cpio, cryptsetup, cups,
cvs, dbus, docker-engine, domoticz, dovecot,
dovecot-pigeonhole, dropbear, efl, elixir, f2fs-tools, ffmpeg,
gd, gdk-pixbuf, ghostscript, glibc, grub2, gst1-plugins-bad,
hostapd, iputils, jasper, json-c, libcurl, libwebsockets,
linux, live555, mesa3d, mosquitto, mpv, nodejs, opencv,
opencv3, openjpeg, patchelf, perl, php, postgresql,
python-django, python-gunicorn, python-matplotlib, ripgrep,
rtl8188eu, rtl8821au, ruby, shadowsocks-libev, squid,
tpm2-abrmd, tpm2-tools, trousers, uacme, webkitgtk, wireshark,
wolfssl, wpa_supplicant, wpewebkit, xen, xlib_libX11,
xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#12876: nodejs fails to build when host-icu has been built before
#13111: python-gunicorn: missing dependency on python-setuptools
#13121: wpa_supplicant fails to build without libopenssl enabled
#13141: Target-finalize fail with "depmod: ERROR: Bad version passed"
#13156: package live555 new license
2020.02.4, released July 26th, 2020
Important / security related fixes.
Toolchain:
- Make external toolchain version check also work for
toolchains configured with --with-gcc-major-version-only
- Do not handle SOURCE_DATE_EPOCH in toolchain wrapper if the
compiler supports it, fixing an issue with precompiled
headers
- Ensure debug libs from external toolchains are not installed
into target if debugging is disabled
Download:
- Correct reproducibility issue in handling of git submodules
for older git versions.
- Fix file locking over NFS
fs: Ensure cpio archive element order is reproducible
Br2-external: Fix error reporting for invalid br2-external trees
Per-package:
- Fix an issue with python3 sysconfig data not getting
correctly expanded
- Fix per-package building for packages using the qmake
infrastructure
Updated/fixed packages: a10disp, asterisk, bind, cdrkit,
checkpolicy, clamav, dbus, docker-cli, docker-engine,
dvb-apps, e2fsprogs, exim, exiv2, freerdp, gnutls, go, grub2,
gssdp, gst1-plugins-good, gst1-plugins-ugly, gupnp,
intel-microcode, iproute2, irrlicht, iwd, jq, kodi, libcamera,
libconfuse, libcurl, libglib2, libhttpserver, libmicrohttpd,
libopenssl, libvncserver, libxml2, libxmlrpc, lxc, mbedtls,
mesa3d, meson, mongodb, mtools, mutt, nghttp2, ngircd, nodejs,
ntp, open-plc-utils, open2300, openjdk-bin, openssh,
oracle-mysql, paho-mqtt-c, pcre, php, poco, prosody, putty,
python-twisted, python-urllib3, python-validators, python3,
qt5xmlpatterns, redis, rpi-firmware, rtl8821au, samba4, sdl2,
sqlite, squid, syslog-ng, systemd, tcpreplay, tinydtls,
upmpdcli, upx, vlc, webkitgtk, wireguard-linux-compat,
wireshark, wpebackend-fdo, wpewebkit, zstd
Issues resolved (http://bugs.uclibc.org):
#12941: Python GObject fails to build when using BR2_PER_PACKAGE_..
#12946: Grub: Decompressor is too big.
#12986: Mtools: Error converting to codepage 850
#13001: openjdk-bin replaces libfreetype.so from host-freetype
#13011: Incorrect selection of gcc version
#13026: rpi-firmware: must not rename start files
#13031: nodejs: RangeError at new ArrayBuffer()
#13046: Optimize for fast -Ofast is not compliant
2020.02.3, released June 3rd, 2020
Important / security related fixes.

View File

@@ -80,11 +80,6 @@ config BR2_HOSTARCH_NEEDS_IA32_COMPILER
config BR2_NEEDS_HOST_UTF8_LOCALE
bool
# Hidden boolean selected by packages that need the host to have
# support for building gcc plugins
config BR2_NEEDS_HOST_GCC_PLUGIN_SUPPORT
bool
source "arch/Config.in"
menu "Build options"
@@ -521,14 +516,13 @@ config BR2_OPTIMIZE_S
This is the default.
config BR2_OPTIMIZE_FAST
bool "optimize for fast (may break packages!)"
bool "optimize for fast"
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
help
Optimize for fast. Disregard strict standards
compliance. -Ofast enables all -O3 optimizations. It also
enables optimizations that are not valid for all
standard-compliant programs, so be careful, as it may break
some packages. It turns on -ffast-math and the
standard-compliant programs. It turns on -ffast-math and the
Fortran-specific -fstack-arrays, unless -fmax-stack-var-size
is specified, and -fno-protect-parens.

File diff suppressed because it is too large Load Diff

View File

@@ -26,6 +26,70 @@
# infrastructure, and will be CC'ed on all patches that add or
# modify packages that use this infrastructure.
N: Adam Duskett <aduskett@gmail.com>
F: package/audit/
F: package/busybox/
F: package/checkpolicy/
F: package/cppdb/
F: package/gobject-introspection/
F: package/gstreamer1/gstreamer1/
F: package/gstreamer1/gstreamer1-mm/
F: package/gstreamer1/gst1-plugins-bad/
F: package/gstreamer1/gst1-plugins-base/
F: package/gstreamer1/gst1-plugins-good/
F: package/gstreamer1/gst1-plugins-ugly/
F: package/gstreamer1/gst1-python/
F: package/gstreamer1/gst1-vaapi/
F: package/imx-usb-loader/
F: package/janus-gateway/
F: package/json-for-modern-cpp/
F: package/libcpprestsdk/
F: package/libressl/
F: package/libselinux/
F: package/libsemanage/
F: package/libsepol/
F: package/libtextstyle/
F: package/libwebsockets/
F: package/mender-grubenv/
F: package/nginx-naxsi/
F: package/openjdk/
F: package/openjdk-bin/
F: package/php/
F: package/pkcs11-helper/
F: package/policycoreutils/
F: package/prelink-cross/
F: package/polkit/
F: package/python3/
F: package/python-aioredis/
F: package/python-asgiref/
F: package/python-channels/
F: package/python-channels-redis/
F: package/python-daphne/
F: package/python-django-enumfields/
F: package/python-flask-sqlalchemy/
F: package/python-gitdb2/
F: package/python-gobject/
F: package/python-lockfile/
F: package/python-mutagen/
F: package/python-nested-dict/
F: package/python-pbr/
F: package/python-pip/
F: package/python-psycopg2/
F: package/python-smmap2/
F: package/python-sqlalchemy/
F: package/python-sqlparse/
F: package/python-visitor/
F: package/restorecond/
F: package/refpolicy/
F: package/selinux-python/
F: package/semodule-utils/
F: package/setools/
F: package/sngrep/
F: package/spidermonkey/
F: package/systemd/
F: support/testing/tests/package/test_gst1_python.py
F: support/testing/tests/package/test_python_gobject.py
N: Adam Heinrich <adam@adamh.cz>
F: package/jack1/
@@ -47,10 +111,6 @@ N: Adrien Gallouët <adrien@gallouet.fr>
F: package/bird/
F: package/glorytun/
N: Alejandro González <alejandro.gonzalez.correo@gmail.com>
F: package/qprint/
F: package/watchdog/
N: Aleksander Morgado <aleksander@aleksander.es>
F: package/libmbim/
F: package/libqmi/
@@ -72,16 +132,6 @@ F: package/fastd/
F: package/libuecc/
F: package/putty/
N: Alexander Egorenkov <egorenar-dev@posteo.net>
F: package/makedumpfile/
F: package/multipath-tools/
N: Alexander Egorenkov <egorenar@linux.ibm.com>
F: arch/Config.in.s390x
F: board/qemu/s390x/
F: configs/qemu_s390x_defconfig
F: package/s390-tools/
N: Alexander Kurz <akurz@blala.de>
F: package/minimodem/
@@ -149,27 +199,19 @@ F: package/rauc/
N: Angelo Compagnucci <angelo.compagnucci@gmail.com>
F: package/apparmor/
F: package/corkscrew/
F: package/cups/
F: package/cups-filters/
F: package/fail2ban/
F: package/grep/
F: package/htpdate/
F: package/i2c-tools/
F: package/jq/
F: package/libapparmor/
F: package/libb64/
F: package/mender/
F: package/mender-artifact/
F: package/mono/
F: package/mono-gtksharp3/
F: package/monolite/
F: package/openjpeg/
F: package/python-can/
F: package/python-pillow/
F: package/python-pydal/
F: package/python-spidev/
F: package/python-web2py/
F: package/sam-ba/
F: package/sshguard/
F: package/sunwait/
F: package/sysdig/
@@ -182,13 +224,8 @@ F: package/pkg-golang.mk
N: Anthony Viallard <viallard@syscom-instruments.com>
F: package/gnuplot/
N: Antoine Tenart <atenart@kernel.org>
F: package/libselinux/
F: package/refpolicy/
F: support/testing/tests/core/test_selinux/
F: support/testing/tests/core/test_selinux.py
F: support/testing/tests/init/test_systemd_selinux/
F: support/testing/tests/init/test_systemd_selinux.py
N: Antoine Ténart <antoine.tenart@bootlin.com>
F: package/wf111/
N: Antony Pavlov <antonynpavlov@gmail.com>
F: package/lsscsi/
@@ -257,7 +294,6 @@ F: board/stmicroelectronics/stm32mp157a-dk1/
F: configs/stm32mp157a_dk1_defconfig
F: package/python-esptool/
F: package/python-pyaes/
F: package/ttyd/
F: package/qt5/qt5scxml/
F: package/qt5/qt5webview/
@@ -451,10 +487,6 @@ N: Biagio Montaruli <biagio.hkr@gmail.com>
F: board/acmesystems/
F: configs/acmesystems_*
N: Bilal Wasim <bilalwasim676@gmail.com>
F: board/chromebook/elm/
F: configs/chromebook_elm_defconfig
N: Bogdan Radulescu <bogdan@nimblex.net>
F: package/iftop/
F: package/ncdu/
@@ -506,9 +538,7 @@ F: package/docker-cli/
F: package/docker-containerd/
F: package/docker-engine/
F: package/docker-proxy/
F: package/fuse-overlayfs/
F: package/go/
F: package/mbpfan/
F: package/mosh/
F: package/pkg-golang.mk
F: package/rtl8821au/
@@ -584,12 +614,6 @@ N: Cyril Bur <cyrilbur@gmail.com>
F: arch/Config.in.powerpc
F: package/kvm-unit-tests
N: Dagg Stompler <daggs@gmx.com>
F: board/hardkernel/odroidc2/
F: configs/odroidc2_defconfig
F: package/meson-tools/
F: package/odroidc2-firmware/
N: Daniel J. Leach <dleach@belcan.com>
F: package/dacapo/
@@ -607,10 +631,6 @@ F: package/redis/
N: Daniel Sangue <daniel.sangue@sangue.ch>
F: package/libftdi1/
N: Danilo Bargen <mail@dbrgn.ch>
F: board/pcengines/apu2/
F: configs/pcengines_apu2_defconfig
N: Danomi Manchego <danomimanchego123@gmail.com>
F: package/cjson/
F: package/jq/
@@ -638,9 +658,6 @@ F: package/openldap/
N: David du Colombier <0intro@gmail.com>
F: package/x264/
N: David GOUARIN <dgouarin@gmail.com>
F: package/librelp/
N: David Lechner <david@lechnology.com>
F: board/lego/ev3/
F: configs/lego_ev3_defconfig
@@ -659,9 +676,6 @@ F: package/tcllib/
N: Denis Bodor <lefinnois@lefinnois.net>
F: package/libstrophe/
N: Derrick Lyndon Pallas <derrick@meter.com>
F: package/ipcalc/
N: Dimitrios Siganos <dimitris@siganos.org>
F: package/wireless-regdb/
@@ -669,7 +683,7 @@ N: Dominik Faessler <faessler@was.ch>
F: package/logsurfer/
F: package/python-id3/
N: Doug Kehn <rdkehn@gmail.com>
N: Doug Kehn <rdkehn@yahoo.com>
F: package/nss-pam-ldapd/
F: package/sp-oops-extract/
F: package/unscd/
@@ -684,6 +698,8 @@ F: package/gstreamer1/gst1-plugins-bayer2rgb-neon/
N: Eric Le Bihan <eric.le.bihan.dev@free.fr>
F: docs/manual/adding-packages-meson.txt
F: package/adwaita-icon-theme/
F: package/cargo-bin/
F: package/cargo/
F: package/darkhttpd/
F: package/eudev/
F: package/execline/
@@ -770,11 +786,9 @@ F: configs/imx6-sabre*
F: configs/imx6slevk_defconfig
F: configs/imx6sx-sdb_defconfig
F: configs/imx6ulevk_defconfig
F: configs/imx6ullevk_defconfig
F: configs/imx6ulpico_defconfig
F: configs/imx7d-sdb_defconfig
F: configs/imx7dpico_defconfig
F: configs/imx8mqevk_defconfig
F: configs/mx25pdk_defconfig
F: configs/mx51evk_defconfig
F: configs/mx53loco_defconfig
@@ -840,7 +854,6 @@ F: package/libmatroska/
F: package/libmpdclient/
F: package/libnetfilter_conntrack/
F: package/libnetfilter_queue/
F: package/libnpupnp/
F: package/liboping/
F: package/libpfm4/
F: package/libraw/
@@ -867,7 +880,6 @@ F: package/pcmanfm/
F: package/python-backcall/
F: package/python-jedi/
F: package/python-parso/
F: package/python-yatl/
F: package/rocksdb/
F: package/rygel/
F: package/safeclib/
@@ -921,7 +933,6 @@ F: package/netsurf/
F: package/perl*
F: package/pkg-perl.mk
F: package/pkg-luarocks.mk
F: package/quickjs/
F: package/rings/
F: package/tekui/
F: package/wpebackend-fdo/
@@ -1019,7 +1030,6 @@ N: Grzegorz Blach <grzegorz@blach.pl>
F: fs/f2fs/
F: package/bluez5_utils-headers/
F: package/f2fs-tools/
F: package/graphicsmagick/
F: package/pigpio/
F: package/python-aioblescan/
F: package/python-bluezero/
@@ -1040,7 +1050,6 @@ F: package/c-icap-modules/
F: package/sdl2/
N: Guillaume William Brs <guillaume.bressaix@gmail.com>
F: package/libnids/
F: package/liquid-dsp/
F: package/pixiewps/
F: package/python-pybind/
@@ -1053,9 +1062,6 @@ F: board/qemu/csky
F: configs/csky_*
F: configs/qemu_csky*
N: Gustavo Heinz <gustavo@gsthnz.com>
F: package/python-m2crypto/
N: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
F: configs/arm_juno_defconfig
F: board/arm/juno/
@@ -1064,22 +1070,16 @@ N: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
F: package/gnuradio/
F: package/gqrx/
F: package/gr-osmosdr/
F: package/librtlsdr/
F: package/libusbgx/
F: package/matio/
F: package/python-cheetah/
F: package/python-markdown/
F: package/python-remi/
F: package/python-sip/
F: package/uhd/
N: Heiko Thiery <heiko.thiery@gmail.com>
F: package/altera-stapl/
F: package/ipmitool/
F: package/libnetconf2/
F: package/libyang/
F: package/linuxptp/
F: package/netopeer2/
F: package/sysrepo/
N: Henrique Camargo <henrique@henriquecamargo.com>
@@ -1090,10 +1090,6 @@ F: package/gauche/
F: package/gmrender-resurrect/
F: package/squeezelite/
N: Horatiu Vultur <horatiu.vultur@microchip.com>
F: package/easyframes/
F: package/mrp/
N: Ian Haylock <haylocki@yahoo.co.uk>
F: package/python-rpi-gpio/
@@ -1263,19 +1259,10 @@ F: package/libuhttpd/
F: package/libuwsc/
F: package/rtty/
N: Joachim Wiberg <troglobit@gmail.com>
F: configs/globalscale_espressobin_defconfig
F: board/globalscale/espressobin/
F: package/mg/
F: package/netcalc/
N: Joao Pinto <jpinto@synopsys.com>
F: board/synopsys/vdk/
F: configs/snps_aarch64_vdk_defconfig
N: Jochen Baltes <jochen.baltes@gmail.com>
F: package/altera-stapl
N: Joel Carlson <JoelsonCarl@gmail.com>
F: package/c-capnproto/
F: package/capnproto/
@@ -1380,20 +1367,13 @@ F: package/python-schedule/
F: package/python-sentry-sdk/
F: package/python-websockets/
F: package/python-xlib/
F: package/sentry-cli/
F: package/sentry-native/
F: package/unclutter-xfixes/
N: Joshua Henderson <joshua.henderson@microchip.com>
F: package/qt5/qt5wayland/
N: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
F: package/python-aiofiles/
F: package/python-crayons/
F: package/python-cycler/
F: package/python-matplotlib/
F: package/python-opcua-asyncio/
F: package/python-piexif/
N: Juha Rantanen <juha@codercoded.com>
F: package/acsccid/
@@ -1425,7 +1405,7 @@ F: board/technologic/ts7680/
F: configs/ts7680_defconfig
F: package/paho-mqtt-c
N: Julien Olivain <ju.o@free.fr>
N: Julien Olivain <juju@cotds.org>
F: board/qmtech/zynq/
F: board/technexion/imx8mmpico/
F: board/technexion/imx8mpico/
@@ -1445,10 +1425,6 @@ F: package/easy-rsa/
N: Justin Maggard <jmaggard@netgear.com>
F: package/dtach/
N: Kamel Bouhara <kamel.bouhara@gmail.com>
F: package/libodb-boost/
F: package/libodb-mysql/
N: Karoly Kasza <kaszak@gmail.com>
F: package/irqbalance/
F: package/openvmtools/
@@ -1550,7 +1526,6 @@ N: Ludovic Desroches <ludovic.desroches@microchip.com>
F: board/atmel/
F: configs/at91*
F: configs/atmel_*
F: configs/microchip_*
F: package/fb-test-app/
F: package/python-json-schema-validator/
F: package/python-keyring/
@@ -1569,6 +1544,9 @@ F: package/mpv/
F: package/rpi-firmware/
F: package/rpi-userland/
N: Mamatha Inamdar <mamatha4@linux.vnet.ibm.com>
F: package/nvme/
N: Manuel Vögele <develop@manuel-voegele.de>
F: package/python-pyqt5/
F: package/python-requests-toolbelt/
@@ -1580,9 +1558,7 @@ F: package/ecryptfs-utils/
N: Marcin Niestroj <m.niestroj@grinn-global.com>
F: board/grinn/
F: board/orangepi/orangepi-zero-plus/
F: configs/grinn_*
F: configs/orangepi_zero_plus_defconfig
F: package/argparse/
F: package/dt-utils/
F: package/easydbus/
@@ -1591,18 +1567,9 @@ F: package/lua-stdlib/
F: package/luaossl/
F: package/murata-cyw-fw/
F: package/netdata/
F: package/python-ansicolors/
F: package/python-iniconfig/
F: package/python-intelhex/
F: package/python-packaging/
F: package/python-pluggy/
F: package/python-pytest/
F: package/python-xmodem/
F: package/rs485conf/
F: package/turbolua/
F: support/testing/tests/package/sample_python_pytest.py
F: support/testing/tests/package/test_netdata.py
F: support/testing/tests/package/test_python_pytest.py
N: Marcus Folkesson <marcus.folkesson@gmail.com>
F: package/libostree/
@@ -1787,9 +1754,6 @@ F: package/python-wsaccel/
N: Max Filippov <jcmvbkbc@gmail.com>
F: arch/Config.in.xtensa
N: Maxim Kochetkov <fido_max@inbox.ru>
F: package/timescaledb/
N: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
F: package/babeld/
F: package/dante/
@@ -1820,6 +1784,9 @@ F: package/systemd-bootchart/
F: package/tinyalsa/
F: package/tinyxml/
N: Maxime Ripard <maxime.ripard@bootlin.com>
F: package/kmsxx/
N: Michael Durrant <mdurrant@arcturusnetworks.com>
F: board/arcturus/
F: configs/arcturus_ucp1020_defconfig
@@ -1829,13 +1796,6 @@ N: Michael Fischer <mf@go-sys.de>
F: package/gnuplot/
F: package/sdl2/
N: Michael Nosthoff <buildroot@heine.tech>
F: package/grpc/
F: package/gtest/
F: package/libabseil-cpp/
F: package/protobuf/
F: package/re2/
N: Michael Rommel <rommel@layer-7.net>
F: package/knock/
F: package/python-crc16/
@@ -1849,12 +1809,12 @@ F: package/jasper/
F: package/libstrophe/
N: Michael Walle <michael@walle.cc>
F: board/kontron/smarc-sal28/
F: configs/kontron_smarc_sal28_defconfig
F: package/libavl/
N: Michał Łyszczek <michal.lyszczek@bofc.pl>
F: board/altera/socrates_cyclone5/
F: board/pine64/rock64
F: configs/rock64_defconfig
F: configs/socrates_cyclone5_defconfig
F: package/netifrc/
F: package/openrc/
@@ -1864,9 +1824,6 @@ N: Michel Stempin <michel.stempin@wanadoo.fr>
F: board/licheepi/
F: configs/licheepi_zero_defconfig
N: Mike Frampton <mikeframpo@gmail.com>
F: package/qcom-db410c-firmware/
N: Mike Harmony <mike.harmony@snapav.com>
F: board/sinovoip/m2-plus/
F: configs/bananapi_m2_plus_defconfig
@@ -1888,7 +1845,7 @@ N: Murat Demirten <mdemirten@yh.com.tr>
F: package/jpeg-turbo/
F: package/libgeotiff/
N: Mylène Josserand <mylene.josserand@collabora.com>
N: Mylène Josserand <mylene.josserand@bootlin.com>
F: package/rtl8723bu/
N: Nathaniel Roach <nroach44@gmail.com>
@@ -1907,14 +1864,13 @@ N: Nicholas Sielicki <sielicki@yandex.com>
F: board/intel/galileo/
F: configs/galileo_defconfig
N: Nicolas Carrier <nicolas.carrier@orolia.com>
F: package/php-xdebug/
N: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
F: package/libgit2/
N: Nicolas Serafini <nicolas.serafini@sensefly.com>
F: package/exiv2/
F: package/nvidia-tegra23/nvidia-tegra23-binaries/
F: package/nvidia-tegra23/nvidia-tegra23-codecs/
F: package/ofono/
N: Nikolay Dimitrov <nikolay.dimitrov@retrohub.org>
@@ -1929,7 +1885,6 @@ F: package/tpm-tools/
F: package/trousers/
N: Norbert Lange <nolange79@gmail.com>
F: package/systemd/
F: package/tcf-agent/
N: Nylon Chen <nylon7@andestech.com>
@@ -1964,9 +1919,6 @@ F: package/openjpeg/
N: Olivier Singla <olivier.singla@gmail.com>
F: package/shellinabox/
N: Owen Walpole <owen@walpole.dev>
F: package/parprouted/
N: Parnell Springmeyer <parnell@digitalmentat.com>
F: package/scrypt/
@@ -2065,22 +2017,16 @@ F: package/dillo/
F: package/edid-decode/
F: package/ell/
F: package/ghostscript-fonts/
F: package/gstreamer1/gst1-devtools/
F: package/gstreamer1/gst1-interpipe/
F: package/gstreamer1/gst1-validate/
F: package/gstreamer1/gstreamer1-editing-services/
F: package/iwd/
F: package/libevdev/
F: package/libuev/
F: package/log4cplus/
F: package/postgresql/
F: package/python-colorzero/
F: package/python-gpiozero/
F: package/qt5/
F: package/quotatool/
F: package/racehound/
F: package/redir/
F: package/uredir/
F: package/wayland-utils/
N: Peter Thompson <peter.macleod.thompson@gmail.com>
F: package/sdl2_gfx/
@@ -2110,7 +2056,6 @@ N: Philipp Richter <richterphilipp.pops@gmail.com>
F: package/libtorrent-rasterbar/
N: Philippe Proulx <eeppeliteloop@gmail.com>
F: package/babeltrace2/
F: package/lttng-babeltrace/
F: package/lttng-libust/
F: package/lttng-modules/
@@ -2176,20 +2121,13 @@ N: Rahul Jain <rahul.jain@imgtec.com>
F: package/uhttpd/
F: package/ustream-ssl/
N: Ramon Fried <rfried.dev@gmail.com>
F: package/bitwise/
N: Raphaël Mélotte <raphael.melotte@essensium.com>
F: package/jbig2dec/
F: package/python-boto3/
F: package/python-botocore/
F: package/python-jmespath/
F: package/python-s3transfer/
N: Refik Tuzakli <tuzakli.refik@gmail.com>
F: package/freescale-imx/
F: package/paho-mqtt-cpp/
N: Raphaël Mélotte <raphael.melotte@essensium.com>
F: package/jbig2dec/
N: Rémi Rérolle <remi.rerolle@gmail.com>
F: package/libfreeimage/
@@ -2272,7 +2210,6 @@ F: package/waffle/
F: package/xenomai/
F: package/zziplib/
F: support/testing/tests/package/test_glxinfo.py
F: support/testing/tests/package/test_openssh.py
F: toolchain/
N: Roman Gorbenkov <roman.gorbenkov@ens2m.org>
@@ -2280,14 +2217,17 @@ F: package/davfs2/
N: Ryan Barnett <ryan.barnett@rockwellcollins.com>
F: package/atftp/
F: package/c-periphery/
F: package/miraclecast/
F: package/python-pysnmp/
F: package/python-pysnmp-mibs/
F: package/python-tornado/
F: package/resiprocate/
F: package/websocketpp/
N: Ryan Coe <bluemrp9@gmail.com>
F: package/inadyn/
F: package/libite/
F: package/mariadb/
N: Ryan Wilkins <ryan@deadfrog.net>
F: package/biosdevname/
@@ -2301,6 +2241,7 @@ F: package/clapack/
F: package/cwiid/
F: package/flite/
F: package/nginx/
F: package/opencv/
F: package/opencv3/
F: package/openobex/
F: package/pkg-cmake.mk
@@ -2356,8 +2297,6 @@ N: Sergio Prado <sergio.prado@e-labworks.com>
F: board/toradex/apalis-imx6/
F: configs/toradex_apalis_imx6_defconfig
F: package/aoetools/
F: package/asn1c/
F: package/azure-iot-sdk-c/
F: package/curlpp/
F: package/daq/
F: package/libgdiplus/
@@ -2370,9 +2309,6 @@ F: package/tunctl/
F: package/ubus/
F: package/wolfssl/
N: Shyam Saini <shyam.saini@savoirfairelinux.com>
F: package/cukinia/
N: Simon Dawson <spdawson@gmail.com>
F: boot/at91bootstrap3/
F: package/cppzmq/
@@ -2457,26 +2393,9 @@ F: package/powertop/
N: Suniel Mahesh <sunil@amarulasolutions.com>
F: board/firefly/
F: board/friendlyarm/nanopc-t4
F: board/friendlyarm/nanopi-m4
F: board/orangepi/orangepi-rk3399
F: board/pine64/rockpro64
F: board/radxa/rockpi-4
F: board/radxa/rockpi-n8
F: board/radxa/rockpi-n10
F: configs/nanopc_t4_defconfig
F: configs/nanopi_m4_defconfig
F: configs/orangepi_rk3399_defconfig
F: configs/roc_pc_rk3399_defconfig
F: configs/rock_pi_4_defconfig
F: configs/rock_pi_n8_defconfig
F: configs/rock_pi_n10_defconfig
F: configs/rockpro64_defconfig
F: package/arm-gnu-a-toolchain/
N: Sven Fischer <sven@leiderfischer.de>
F: package/qt5/qt5remoteobjects/
N: Sven Haardiek <sven.haardiek@iotec-gmbh.de>
F: package/lcdproc/
F: package/python-influxdb/
@@ -2610,6 +2529,9 @@ F: package/waf/
F: support/testing/tests/package/test_crudini.py
F: support/testing/tests/package/test_redis.py
N: Trent Piepho <tpiepho@impinj.com>
F: package/libp11/
N: Tudor Holton <buildroot@tudorholton.com>
F: package/openjdk/
@@ -2619,7 +2541,6 @@ F: package/tstools/
N: Vadim Kochan <vadim4j@gmail.com>
F: package/brcm-patchram-plus/
F: package/frr/
F: package/gettext-tiny/
F: package/tinyssh/
@@ -2640,8 +2561,6 @@ F: package/nss-myhostname/
F: package/utp_com/
N: Vincent Stehlé <vincent.stehle@laposte.net>
F: board/bananapi/bananapi-m2-zero/
F: configs/bananapi_m2_zero_defconfig
F: package/i7z/
F: package/msr-tools/
F: package/pixz/
@@ -2661,8 +2580,6 @@ N: Wade Berrier <wberrier@gmail.com>
F: package/ngrep/
N: Waldemar Brodkorb <wbx@openadk.org>
F: package/mksh/
F: package/ruby/
F: package/uclibc/
F: package/uclibc-ng-test/

View File

@@ -92,9 +92,9 @@ all:
.PHONY: all
# Set and export the version string
export BR2_VERSION := 2020.11-rc2
export BR2_VERSION := 2020.08-git
# Actual time the release is cut (for reproducible builds)
BR2_VERSION_EPOCH = 1605361000
BR2_VERSION_EPOCH = 1591045000
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
@@ -113,19 +113,13 @@ DATE := $(shell date +%Y%m%d)
# Compute the full local version string so packages can use it as-is
# Need to export it, so it can be got from environment in children (eg. mconf)
BR2_LOCALVERSION := $(shell $(TOPDIR)/support/scripts/setlocalversion)
ifeq ($(BR2_LOCALVERSION),)
export BR2_VERSION_FULL := $(BR2_VERSION)
else
export BR2_VERSION_FULL := $(BR2_LOCALVERSION)
endif
export BR2_VERSION_FULL := $(BR2_VERSION)$(shell $(TOPDIR)/support/scripts/setlocalversion)
# List of targets and target patterns for which .config doesn't need to be read in
noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \
defconfig %_defconfig allyesconfig allnoconfig alldefconfig syncconfig release \
randpackageconfig allyespackageconfig allnopackageconfig \
print-version olddefconfig distclean manual manual-% check-package check-flake8
print-version olddefconfig distclean manual manual-% check-package
# Some global targets do not trigger a build, but are used to collect
# metadata, or do various checks. When such targets are triggered,
@@ -445,7 +439,6 @@ KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \
-e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
-e s/riscv.*/riscv/ \
-e s/sh.*/sh/ \
-e s/s390x/s390/ \
-e s/microblazeel/microblaze/)
ZCAT := $(call qstrip,$(BR2_ZCAT))
@@ -464,12 +457,12 @@ endif
ifneq ($(HOST_DIR),$(BASE_DIR)/host)
HOST_DIR_SYMLINK = $(BASE_DIR)/host
$(HOST_DIR_SYMLINK): | $(BASE_DIR)
$(HOST_DIR_SYMLINK): $(BASE_DIR)
ln -snf $(HOST_DIR) $(HOST_DIR_SYMLINK)
endif
STAGING_DIR_SYMLINK = $(BASE_DIR)/staging
$(STAGING_DIR_SYMLINK): | $(BASE_DIR)
$(STAGING_DIR_SYMLINK): $(BASE_DIR)
ln -snf $(STAGING_DIR) $(STAGING_DIR_SYMLINK)
# Quotes are needed for spaces and all in the original PATH content.
@@ -702,7 +695,8 @@ LOCALE_NOPURGE = $(call qstrip,$(BR2_ENABLE_LOCALE_WHITELIST))
# in the whitelist file. If it doesn't, kill it.
# Finally, specifically for X11, regenerate locale.dir from the whitelist.
define PURGE_LOCALES
printf '%s\n' $(LOCALE_NOPURGE) locale-archive > $(LOCALE_WHITELIST)
rm -f $(LOCALE_WHITELIST)
for i in $(LOCALE_NOPURGE) locale-archive; do echo $$i >> $(LOCALE_WHITELIST); done
for dir in $(addprefix $(TARGET_DIR),/usr/share/locale /usr/share/X11/locale /usr/lib/locale); \
do \
@@ -763,7 +757,6 @@ ifneq ($(BR2_PACKAGE_GDB),y)
endif
ifneq ($(BR2_PACKAGE_BASH),y)
rm -rf $(TARGET_DIR)/usr/share/bash-completion
rm -rf $(TARGET_DIR)/etc/bash_completion.d
endif
ifneq ($(BR2_PACKAGE_ZSH),y)
rm -rf $(TARGET_DIR)/usr/share/zsh
@@ -773,9 +766,6 @@ endif
rm -rf $(TARGET_DIR)/usr/doc $(TARGET_DIR)/usr/share/doc
rm -rf $(TARGET_DIR)/usr/share/gtk-doc
rmdir $(TARGET_DIR)/usr/share 2>/dev/null || true
ifneq ($(BR2_ENABLE_DEBUG):$(BR2_STRIP_strip),y:)
rm -rf $(TARGET_DIR)/lib/debug $(TARGET_DIR)/usr/lib/debug
endif
$(STRIP_FIND_CMD) | xargs -0 $(STRIPCMD) 2>/dev/null || true
$(STRIP_FIND_SPECIAL_LIBS_CMD) | xargs -0 -r $(STRIPCMD) $(STRIP_STRIP_DEBUG) 2>/dev/null || true
@@ -800,9 +790,9 @@ endif
# counterparts are appropriately setup as symlinks ones to the others.
ifeq ($(BR2_ROOTFS_MERGED_USR),y)
$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
@$(call MESSAGE,"Sanity check in overlay $(d)")$(sep) \
$(Q)not_merged_dirs="$$(support/scripts/check-merged-usr.sh $(d))"; \
@$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
$(call MESSAGE,"Sanity check in overlay $(d)"); \
not_merged_dirs="$$(support/scripts/check-merged-usr.sh $(d))"; \
test -n "$$not_merged_dirs" && { \
echo "ERROR: The overlay in $(d) is not" \
"using a merged /usr for the following directories:" \
@@ -812,20 +802,20 @@ ifeq ($(BR2_ROOTFS_MERGED_USR),y)
endif # merged /usr
$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
@$(call MESSAGE,"Copying overlay $(d)")$(sep) \
$(Q)$(call SYSTEM_RSYNC,$(d),$(TARGET_DIR))$(sep))
@$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
$(call MESSAGE,"Copying overlay $(d)"); \
$(call SYSTEM_RSYNC,$(d),$(TARGET_DIR))$(sep))
$(Q)$(if $(TARGET_DIR_FILES_LISTS), \
$(if $(TARGET_DIR_FILES_LISTS), \
cat $(TARGET_DIR_FILES_LISTS)) > $(BUILD_DIR)/packages-file-list.txt
$(Q)$(if $(HOST_DIR_FILES_LISTS), \
$(if $(HOST_DIR_FILES_LISTS), \
cat $(HOST_DIR_FILES_LISTS)) > $(BUILD_DIR)/packages-file-list-host.txt
$(Q)$(if $(STAGING_DIR_FILES_LISTS), \
$(if $(STAGING_DIR_FILES_LISTS), \
cat $(STAGING_DIR_FILES_LISTS)) > $(BUILD_DIR)/packages-file-list-staging.txt
$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_BUILD_SCRIPT)), \
@$(call MESSAGE,"Executing post-build script $(s)")$(sep) \
$(Q)$(EXTRA_ENV) $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
@$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_BUILD_SCRIPT)), \
$(call MESSAGE,"Executing post-build script $(s)"); \
$(EXTRA_ENV) $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
touch $(TARGET_DIR)/usr
@@ -937,14 +927,6 @@ show-info:
) \
)
.PHONY: pkg-stats
pkg-stats:
@cd "$(CONFIG_DIR)" ; \
$(TOPDIR)/support/scripts/pkg-stats -c \
--json $(O)/pkg-stats.json \
--html $(O)/pkg-stats.html \
--nvd-path $(DL_DIR)/buildroot-nvd
else # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
# Some subdirectories are also package names. To avoid that "make linux"
@@ -1035,7 +1017,7 @@ savedefconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@$(COMMON_CONFIG_ENV) $< \
--savedefconfig=$(if $(DEFCONFIG),$(DEFCONFIG),$(CONFIG_DIR)/defconfig) \
$(CONFIG_CONFIG_IN)
@$(SED) '/^BR2_DEFCONFIG=/d' $(if $(DEFCONFIG),$(DEFCONFIG),$(CONFIG_DIR)/defconfig)
@$(SED) '/BR2_DEFCONFIG=/d' $(if $(DEFCONFIG),$(DEFCONFIG),$(CONFIG_DIR)/defconfig)
.PHONY: defconfig savedefconfig update-defconfig
@@ -1162,7 +1144,6 @@ help:
@echo ' external-deps - list external packages used'
@echo ' legal-info - generate info about license compliance'
@echo ' show-info - generate info about packages, as a JSON blurb'
@echo ' pkg-stats - generate info about packages as JSON and HTML'
@echo ' printvars - dump internal variables selected with VARS=...'
@echo
@echo ' make V=0|1 - 0 => quiet build (default), 1 => verbose build'
@@ -1218,17 +1199,14 @@ release:
print-version:
@echo $(BR2_VERSION_FULL)
check-flake8:
$(Q)git ls-tree -r --name-only HEAD \
| xargs file \
| grep 'Python script' \
| cut -d':' -f1 \
| xargs -- python3 -m flake8 --statistics --max-line-length=132
check-package:
find $(TOPDIR) -type f \( -name '*.mk' -o -name '*.hash' -o -name 'Config.*' \) \
-exec ./utils/check-package {} +
.PHONY: .gitlab-ci.yml
.gitlab-ci.yml: .gitlab-ci.yml.in
./support/scripts/generate-gitlab-ci-yml $< > $@
include docs/manual/manual.mk
-include $(foreach dir,$(BR2_EXTERNAL_DIRS),$(sort $(wildcard $(dir)/docs/*/*.mk)))

View File

@@ -219,15 +219,6 @@ config BR2_riscv
https://riscv.org/
https://en.wikipedia.org/wiki/RISC-V
config BR2_s390x
bool "s390x"
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
s390x is a big-endian architecture made by IBM.
http://www.ibm.com/
http://en.wikipedia.org/wiki/IBM_System/390
config BR2_sh
bool "SuperH"
select BR2_ARCH_HAS_MMU_OPTIONAL
@@ -317,10 +308,6 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_9
bool
select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
config BR2_ARCH_NEEDS_GCC_AT_LEAST_10
bool
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
# The following string values are defined by the individual
# Config.in.$ARCH files
config BR2_ARCH
@@ -466,10 +453,6 @@ if BR2_riscv
source "arch/Config.in.riscv"
endif
if BR2_s390x
source "arch/Config.in.s390x"
endif
if BR2_sh
source "arch/Config.in.sh"
endif

View File

@@ -1,29 +0,0 @@
choice
prompt "Target Architecture Variant"
help
Specific CPU variant to use
config BR2_s390x_z13
bool "z13"
config BR2_s390x_z14
bool "z14"
config BR2_s390x_z15
bool "z15"
endchoice
config BR2_ARCH
default "s390x" if BR2_s390x
config BR2_ENDIAN
default "BIG"
config BR2_GCC_TARGET_ARCH
default "arch11" if BR2_s390x_z13
default "arch12" if BR2_s390x_z14
default "arch13" if BR2_s390x_z15
config BR2_READELF_ARCH_NAME
default "IBM S/390" if BR2_s390x

View File

@@ -1,5 +0,0 @@
#!/bin/sh
mkdir -p ${TARGET_DIR}/lib/firmware
cp -f ${BUILD_DIR}/linux-custom/firmware/ppfe/* ${TARGET_DIR}/lib/firmware/
cp -f ${BUILD_DIR}/linux-custom/br2-ucls1012a.its ${BINARIES_DIR}/

View File

@@ -3,18 +3,17 @@ 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=4807186
https://silver.arm.com/download/download.tm?pv=2663527
Then, use the arm_foundationv8_defconfig configuration to build your
Buildroot system.
Finally, boot your system with:
${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-6.4/Foundation_Platform \
${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-4.7/Foundation_Platform \
--image output/images/linux-system.axf \
--block-device output/images/rootfs.ext2 \
--network=nat \
--cores 4
--network=nat
You can get network access from within the simulated environment
by requesting an IP address using DHCP (run the command 'udhcpc').

View File

@@ -1,6 +1,6 @@
This document explains how to set up a basic Buildroot system on
various Atmel/Microchip boards. Additional details can also be found
on the Linux4SAM website: http://www.linux4sam.org
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/
This guide covers the following configurations:
- at91sam9g45m10ek_defconfig
@@ -19,8 +19,6 @@ This guide covers the following configurations:
- atmel_sama5d4_xplained_mmc_dev_defconfig
- atmel_sama5d2_xplained_mmc_defconfig
- atmel_sama5d2_xplained_mmc_dev_defconfig
- microchip_sama5d27_wlsom1_ek_mmc_defconfig
- microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig
These configurations will use AT91Bootstrap, u-boot and a linux kernel from
the git trees maintained by Atmel.
@@ -31,23 +29,23 @@ tests the features of the SoC:
- FFMPEG to record video from the ISI/ISC
- I2C, SPI, CAN, etc. tools
- modetest for LCD screens, HDMI
- Wilc1000/Wilc3000 firmware for the Atmel Wireless sdio module
- Wilc1000 firmware for the Atmel Wireless sdio module
- SSH for convenience
- GDB/GDB server for debug
Configuring and building Buildroot
==================================
For the Xplained/Evaluation Kit boards, the 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 "Preparing the SD card" section.
For the other configurations listed above, the Buildroot configuration
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 "Preparing the SD card" section.
To configure and build Buildroot, run:
make <board>_defconfig
@@ -146,10 +144,10 @@ lost. To copy the image on the SD card:
dd if=output/images/sdcard.img of=/dev/mmcblk0
Insert your SD card in your Xplained/Evaluation Kit 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.
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

View File

@@ -1,31 +0,0 @@
# Image for SD card boot on Microchip SAMA5D27 WLSOM1 EK
#
image boot.vfat {
vfat {
files = {
"zImage",
"at91-sama5d27_wlsom1_ek.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
}
}

View File

@@ -1,7 +0,0 @@
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
mmc dev 0
fatload mmc 0 $kernel_addr_r zImage
fatload mmc 0 $fdt_addr_r sun8i-h2-plus-bananapi-m2-zero.dtb
bootz $kernel_addr_r - $fdt_addr_r

View File

@@ -1,33 +0,0 @@
image boot.vfat {
vfat {
files = {
"zImage",
"sun8i-h2-plus-bananapi-m2-zero.dtb",
"boot.scr"
}
}
size = 64M
}
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"
}
}

View File

@@ -1,34 +0,0 @@
Intro
=====
This default configuration will allow you to start experimenting with the
Buildroot environment for the Bananapi M2 Zero. With the current configuration
it will bring-up the board, and allow access through the serial console.
Bananapi M2 Zero link:
http://www.banana-pi.org/m2z.html
This configuration uses U-Boot mainline and kernel mainline.
How to build
============
$ make bananapi_m2_zero_defconfig
$ make
Note: you will need access to the internet to download the required
sources.
How to write the SD card
========================
Once the build process is finished you will have an image called "sdcard.img"
in the output/images/ directory.
Copy the bootable "sdcard.img" onto an SD card with "dd":
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
$ sync
Insert the micro SDcard in your Bananapi M2 Zero and power it up. The console
is on the Debug UART on the CON3 header, with serial settings 115200 8N1.

View File

@@ -1 +0,0 @@
root=PARTUUID=%U/PARTNROFF=1 rootwait rw noinitrd kern_guid=%U console=tty0

View File

@@ -1,38 +0,0 @@
/dts-v1/;
/ {
description = "Chrome OS kernel image with FDT";
#address-cells = <1>;
images {
kernel-1 {
data = /incbin/("Image");
type = "kernel_noload";
arch = "arm64";
os = "linux";
compression = "none";
load = <0>;
entry = <0>;
};
fdt-1 {
description = "mt8173-elm.dtb";
data = /incbin/("mt8173-elm.dtb");
type = "flat_dt";
arch = "arm64";
compression = "none";
hash-1 {
algo = "sha1";
};
};
};
configurations {
default = "conf-1";
conf-1 {
kernel = "kernel-1";
fdt = "fdt-1";
};
};
};

View File

@@ -1,453 +0,0 @@
CONFIG_SYSVIPC=y
CONFIG_NO_HZ_IDLE=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_PREEMPT=y
CONFIG_IRQ_TIME_ACCOUNTING=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_NUMA_BALANCING=y
CONFIG_MEMCG=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CPUSETS=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_PERF=y
CONFIG_USER_NS=y
CONFIG_SCHED_AUTOGROUP=y
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_KALLSYMS_ALL=y
# CONFIG_COMPAT_BRK is not set
CONFIG_SLAB=y
CONFIG_PROFILING=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_ARM64_VA_BITS_48=y
CONFIG_SCHED_MC=y
CONFIG_SCHED_SMT=y
CONFIG_NR_CPUS=4
CONFIG_NUMA=y
CONFIG_SECCOMP=y
CONFIG_PARAVIRT=y
CONFIG_CRASH_DUMP=y
CONFIG_COMPAT=y
CONFIG_RANDOMIZE_BASE=y
# CONFIG_EFI is not set
# CONFIG_SUSPEND is not set
CONFIG_PM=y
CONFIG_PM_DEBUG=y
CONFIG_PM_ADVANCED_DEBUG=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
CONFIG_CPUFREQ_DT=y
CONFIG_ARM_SCPI_CPUFREQ=y
CONFIG_ARM_MEDIATEK_CPUFREQ=y
CONFIG_ARM_SCPI_PROTOCOL=y
CONFIG_JUMP_LABEL=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEBUG_FS is not set
# CONFIG_MQ_IOSCHED_KYBER is not set
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
CONFIG_KSM=y
CONFIG_MEMORY_FAILURE=y
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_CMA=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_INET_UDP_DIAG=y
# CONFIG_IPV6 is not set
CONFIG_CFG80211=y
# CONFIG_CFG80211_DEFAULT_PS is not set
CONFIG_MAC80211=y
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_FW_LOADER_USER_HELPER=y
CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
CONFIG_BRCMSTB_GISB_ARB=y
CONFIG_VEXPRESS_CONFIG=y
CONFIG_MTD=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_CFI=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
CONFIG_MTD_CFI_INTELEXT=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_MTD_CFI_STAA=y
CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MTD_DATAFLASH=y
CONFIG_MTD_SST25L=y
CONFIG_MTD_RAW_NAND=y
CONFIG_MTD_NAND_DENALI_DT=y
CONFIG_MTD_SPI_NOR=y
CONFIG_SPI_CADENCE_QUADSPI=y
CONFIG_OF_OVERLAY=y
# CONFIG_BLK_DEV is not set
CONFIG_SRAM=y
CONFIG_EEPROM_AT24=m
CONFIG_EEPROM_AT25=m
CONFIG_RAID_ATTRS=m
CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_SAS_LIBSAS=y
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_UFSHCD_PLATFORM=y
CONFIG_MD=y
CONFIG_BLK_DEV_MD=m
CONFIG_BLK_DEV_DM=m
CONFIG_DM_MIRROR=m
CONFIG_DM_ZERO=m
CONFIG_NETDEVICES=y
# CONFIG_ETHERNET is not set
CONFIG_USB_RTL8152=y
CONFIG_USB_USBNET=y
# CONFIG_USB_NET_AX88179_178A is not set
# CONFIG_USB_NET_NET1080 is not set
# CONFIG_USB_NET_CDC_SUBSET is not set
# CONFIG_USB_NET_ZAURUS is not set
# CONFIG_WLAN_VENDOR_ADMTEK is not set
# CONFIG_WLAN_VENDOR_ATH is not set
# CONFIG_WLAN_VENDOR_ATMEL is not set
# CONFIG_WLAN_VENDOR_BROADCOM is not set
# CONFIG_WLAN_VENDOR_CISCO is not set
# CONFIG_WLAN_VENDOR_INTEL is not set
# CONFIG_WLAN_VENDOR_INTERSIL is not set
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_SDIO=m
# CONFIG_WLAN_VENDOR_MEDIATEK is not set
# CONFIG_WLAN_VENDOR_RALINK is not set
# CONFIG_WLAN_VENDOR_REALTEK is not set
# CONFIG_WLAN_VENDOR_RSI is not set
# CONFIG_WLAN_VENDOR_ST is not set
# CONFIG_WLAN_VENDOR_TI is not set
# CONFIG_WLAN_VENDOR_ZYDAS is not set
# CONFIG_WLAN_VENDOR_QUANTENNA is not set
CONFIG_INPUT_POLLDEV=m
CONFIG_INPUT_EVDEV=y
CONFIG_KEYBOARD_ADC=m
CONFIG_KEYBOARD_GPIO=y
CONFIG_KEYBOARD_CROS_EC=y
CONFIG_MOUSE_ELAN_I2C=y
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ATMEL_MXT=m
CONFIG_TOUCHSCREEN_ELAN=y
CONFIG_INPUT_MISC=y
# CONFIG_SERIO_SERPORT is not set
CONFIG_SERIO_AMBAKMI=y
CONFIG_LEGACY_PTY_COUNT=16
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DW=y
CONFIG_SERIAL_8250_MT6577=y
CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_SERIAL_XILINX_PS_UART=y
CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
CONFIG_SERIAL_FSL_LPUART=y
CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
CONFIG_SERIAL_FSL_LINFLEXUART=y
CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y
CONFIG_SERIAL_DEV_BUS=y
CONFIG_VIRTIO_CONSOLE=y
CONFIG_IPMI_HANDLER=m
CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_SI=m
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS_I2C_INFINEON=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX_PCA954x=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_GPIO=m
CONFIG_I2C_MT65XX=y
CONFIG_I2C_RK3X=y
CONFIG_I2C_CROS_EC_TUNNEL=y
CONFIG_I2C_SLAVE=y
CONFIG_SPI=y
CONFIG_SPI_NXP_FLEXSPI=y
CONFIG_SPI_GPIO=y
CONFIG_SPI_MT65XX=y
CONFIG_SPI_PL022=y
CONFIG_SPI_ROCKCHIP=y
CONFIG_SPI_SPIDEV=y
CONFIG_PINCTRL_SINGLE=y
CONFIG_PINCTRL_MAX77620=y
CONFIG_GPIO_ALTERA=m
CONFIG_GPIO_DWAPB=y
CONFIG_GPIO_MB86S7X=y
CONFIG_GPIO_PL061=y
CONFIG_GPIO_XGENE=y
CONFIG_GPIO_MAX732X=y
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
CONFIG_POWER_AVS=y
CONFIG_POWER_RESET_BRCMSTB=y
CONFIG_POWER_RESET_XGENE=y
CONFIG_POWER_RESET_SYSCON=y
CONFIG_SYSCON_REBOOT_MODE=y
CONFIG_BATTERY_SBS=m
CONFIG_BATTERY_BQ27XXX=y
CONFIG_SENSORS_ARM_SCPI=y
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_PWM_FAN=m
CONFIG_SENSORS_INA2XX=m
CONFIG_SENSORS_INA3221=m
CONFIG_THERMAL=y
CONFIG_CPU_THERMAL=y
CONFIG_DEVFREQ_THERMAL=y
CONFIG_THERMAL_EMULATION=y
CONFIG_WATCHDOG=y
CONFIG_MEDIATEK_WATCHDOG=y
CONFIG_MFD_BD9571MWV=y
CONFIG_MFD_AXP20X_I2C=y
CONFIG_MFD_HI6421_PMIC=y
CONFIG_MFD_MAX77620=y
CONFIG_MFD_MT6397=y
CONFIG_MFD_RK808=y
CONFIG_MFD_SEC_CORE=y
CONFIG_MFD_ROHM_BD718XX=y
CONFIG_REGULATOR_DEBUG=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_AXP20X=y
CONFIG_REGULATOR_BD718XX=y
CONFIG_REGULATOR_BD9571MWV=y
CONFIG_REGULATOR_DA9211=y
CONFIG_REGULATOR_FAN53555=y
CONFIG_REGULATOR_GPIO=y
CONFIG_REGULATOR_HI6421V530=y
CONFIG_REGULATOR_MAX77620=y
CONFIG_REGULATOR_MAX8973=y
CONFIG_REGULATOR_MT6397=y
CONFIG_REGULATOR_PFUZE100=y
CONFIG_REGULATOR_PWM=y
CONFIG_REGULATOR_RK808=y
CONFIG_REGULATOR_S2MPS11=y
CONFIG_REGULATOR_VCTRL=m
CONFIG_MEDIA_SUPPORT=y
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
CONFIG_MEDIA_SDR_SUPPORT=y
CONFIG_VIDEO_V4L2_SUBDEV_API=y
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_DRM=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_SIL164=m
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_MALI_DISPLAY=m
CONFIG_DRM_PANEL_LVDS=m
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m
CONFIG_DRM_DISPLAY_CONNECTOR=y
CONFIG_DRM_PARADE_PS8640=y
CONFIG_DRM_SII902X=m
CONFIG_DRM_THINE_THC63LVD1024=m
CONFIG_DRM_TI_SN65DSI86=m
CONFIG_DRM_ANALOGIX_ANX78XX=y
CONFIG_DRM_I2C_ADV7511=m
CONFIG_DRM_MEDIATEK=y
CONFIG_DRM_MEDIATEK_HDMI=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_SIMPLE=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_PWM=y
CONFIG_BACKLIGHT_LP855X=y
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_SOC=y
CONFIG_SND_SOC_MT8173=y
CONFIG_SND_SOC_MT8173_RT5650_RT5676=y
CONFIG_I2C_HID=m
CONFIG_USB_CONN_GPIO=y
CONFIG_USB=y
CONFIG_USB_XHCI_HCD=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_MTU3=y
CONFIG_USB_MUSB_HDRC=y
CONFIG_USB_DWC3=y
CONFIG_USB_DWC2=y
CONFIG_USB_CHIPIDEA=y
CONFIG_USB_CHIPIDEA_UDC=y
CONFIG_USB_CHIPIDEA_HOST=y
CONFIG_USB_ISP1760=y
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_CONSOLE=y
CONFIG_USB_SERIAL_PL2303=y
CONFIG_USB_HSIC_USB3503=y
CONFIG_NOP_USB_XCEIV=y
CONFIG_USB_ULPI=y
CONFIG_USB_GADGET=y
CONFIG_USB_SNP_UDC_PLAT=y
CONFIG_USB_BDC_UDC=y
CONFIG_USB_ETH=m
CONFIG_USB_ETH_EEM=y
CONFIG_TYPEC=m
CONFIG_TYPEC_TCPM=m
CONFIG_TYPEC_FUSB302=m
CONFIG_MMC=y
CONFIG_MMC_BLOCK_MINORS=32
CONFIG_MMC_ARMMMCI=y
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_SDHCI_OF_ARASAN=y
CONFIG_MMC_SDHCI_CADENCE=y
CONFIG_MMC_SDHCI_F_SDH30=y
CONFIG_MMC_SPI=y
CONFIG_MMC_DW=y
CONFIG_MMC_DW_EXYNOS=y
CONFIG_MMC_DW_HI3798CV200=y
CONFIG_MMC_DW_K3=y
CONFIG_MMC_MTK=y
CONFIG_MMC_SDHCI_XENON=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_SYSCON=y
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_CPU=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_LEDS_TRIGGER_PANIC=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_DRV_DS1307=m
CONFIG_RTC_DRV_MAX77686=y
CONFIG_RTC_DRV_RK808=m
CONFIG_RTC_DRV_PCF85363=m
CONFIG_RTC_DRV_RX8581=m
CONFIG_RTC_DRV_S5M=y
CONFIG_RTC_DRV_DS3232=y
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_CROS_EC=y
CONFIG_RTC_DRV_PL031=y
CONFIG_DMADEVICES=y
CONFIG_FSL_EDMA=y
CONFIG_MV_XOR_V2=y
CONFIG_PL330_DMA=y
CONFIG_MTK_CQDMA=y
CONFIG_QCOM_HIDMA_MGMT=y
CONFIG_QCOM_HIDMA=y
# CONFIG_VIRTIO_MENU is not set
CONFIG_MFD_CROS_EC=y
CONFIG_CROS_EC_I2C=y
CONFIG_CROS_EC_SPI=y
CONFIG_COMMON_CLK_RK808=y
CONFIG_COMMON_CLK_SCPI=y
CONFIG_COMMON_CLK_CS2000_CP=y
CONFIG_COMMON_CLK_S2MPS11=y
CONFIG_CLK_QORIQ=y
CONFIG_COMMON_CLK_XGENE=y
CONFIG_COMMON_CLK_PWM=y
CONFIG_COMMON_CLK_VC5=y
CONFIG_COMMON_CLK_MT6797_MMSYS=y
CONFIG_COMMON_CLK_MT6797_IMGSYS=y
CONFIG_COMMON_CLK_MT6797_VDECSYS=y
CONFIG_COMMON_CLK_MT6797_VENCSYS=y
CONFIG_HWSPINLOCK=y
CONFIG_ARM_MHU=y
CONFIG_PLATFORM_MHU=y
CONFIG_ARM_SMMU=y
CONFIG_ARM_SMMU_V3=y
CONFIG_MTK_IOMMU=y
CONFIG_REMOTEPROC=y
CONFIG_MTK_CMDQ=y
CONFIG_MTK_PMIC_WRAP=y
CONFIG_EXTCON_USB_GPIO=y
CONFIG_EXTCON_USBC_CROS_EC=y
CONFIG_IIO=y
CONFIG_MAX9611=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_SENSORS_ISL29018=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_MPL3115=m
CONFIG_PWM=y
CONFIG_PWM_CROS_EC=m
CONFIG_PWM_MTK_DISP=y
CONFIG_PWM_MEDIATEK=y
CONFIG_PHY_XGENE=y
CONFIG_PHY_FSL_IMX8MQ_USB=y
CONFIG_PHY_MTK_TPHY=y
CONFIG_PHY_QCOM_USB_HS=y
CONFIG_PHY_SAMSUNG_USB2=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_FANOTIFY=y
CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
CONFIG_QUOTA=y
CONFIG_AUTOFS4_FS=y
CONFIG_FUSE_FS=m
CONFIG_CUSE=m
CONFIG_OVERLAY_FS=y
CONFIG_OVERLAY_FS_INDEX=y
CONFIG_OVERLAY_FS_XINO_AUTO=y
CONFIG_OVERLAY_FS_METACOPY=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_HUGETLBFS=y
CONFIG_CONFIGFS_FS=y
CONFIG_PSTORE=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ISO8859_1=y
CONFIG_SECURITY=y
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_DH=m
CONFIG_CRYPTO_ECDH=m
CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_ECHAINIV=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_XXHASH=m
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_DES=m
CONFIG_CRYPTO_ANSI_CPRNG=y
CONFIG_CRYPTO_DEV_CCREE=m
CONFIG_PACKING=y
CONFIG_INDIRECT_PIO=y
CONFIG_CRC_CCITT=m
CONFIG_CRC_T10DIF=y
CONFIG_LIBCRC32C=m
CONFIG_DMA_CMA=y
CONFIG_CMA_SIZE_MBYTES=32
CONFIG_IRQ_POLL=y
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_INFO=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_PREEMPT is not set
CONFIG_STACKTRACE=y
# CONFIG_FTRACE is not set
# CONFIG_STRICT_DEVMEM is not set

View File

@@ -1,35 +0,0 @@
From 510d0ad0ce1b51c072309ba12dfb024fc2c3dbac Mon Sep 17 00:00:00 2001
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Date: Wed, 26 Aug 2020 10:15:22 +0200
Subject: [PATCH 1/5] drm/bridge_connector: Set default status connected for
eDP connectors
In an eDP application, HPD is not required and on most bridge chips
useless. If HPD is not used, we need to set initial status as connected,
otherwise the connector created by the drm_bridge_connector API remains
in an unknown state.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Reviewed-by: Bilal Wasim <bwasim.lkml@gmail.com>
Tested-by: Bilal Wasim <bwasim.lkml@gmail.com>
---
drivers/gpu/drm/drm_bridge_connector.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/drm_bridge_connector.c b/drivers/gpu/drm/drm_bridge_connector.c
index c6994fe673f3..a58cbde59c34 100644
--- a/drivers/gpu/drm/drm_bridge_connector.c
+++ b/drivers/gpu/drm/drm_bridge_connector.c
@@ -187,6 +187,7 @@ drm_bridge_connector_detect(struct drm_connector *connector, bool force)
case DRM_MODE_CONNECTOR_DPI:
case DRM_MODE_CONNECTOR_LVDS:
case DRM_MODE_CONNECTOR_DSI:
+ case DRM_MODE_CONNECTOR_eDP:
status = connector_status_connected;
break;
default:
--
2.25.1

View File

@@ -1,50 +0,0 @@
From cc0f2fea61fb34ca84e4812a615e0035d812aa8b Mon Sep 17 00:00:00 2001
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Date: Wed, 26 Aug 2020 10:15:23 +0200
Subject: [PATCH 2/5] drm/bridge: ps8640: Get the EDID from eDP control
The PS8640 DSI-to-eDP bridge can retrieve the EDID, so implement the
.get_edid callback and set the flag to indicate the core to use it.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
---
drivers/gpu/drm/bridge/parade-ps8640.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c b/drivers/gpu/drm/bridge/parade-ps8640.c
index 4b099196afeb..13755d278db6 100644
--- a/drivers/gpu/drm/bridge/parade-ps8640.c
+++ b/drivers/gpu/drm/bridge/parade-ps8640.c
@@ -242,8 +242,18 @@ static int ps8640_bridge_attach(struct drm_bridge *bridge,
return ret;
}
+static struct edid *ps8640_bridge_get_edid(struct drm_bridge *bridge,
+ struct drm_connector *connector)
+{
+ struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
+
+ return drm_get_edid(connector,
+ ps_bridge->page[PAGE0_DP_CNTL]->adapter);
+}
+
static const struct drm_bridge_funcs ps8640_bridge_funcs = {
.attach = ps8640_bridge_attach,
+ .get_edid = ps8640_bridge_get_edid,
.post_disable = ps8640_post_disable,
.pre_enable = ps8640_pre_enable,
};
@@ -294,6 +304,8 @@ static int ps8640_probe(struct i2c_client *client)
ps_bridge->bridge.funcs = &ps8640_bridge_funcs;
ps_bridge->bridge.of_node = dev->of_node;
+ ps_bridge->bridge.ops = DRM_BRIDGE_OP_EDID;
+ ps_bridge->bridge.type = DRM_MODE_CONNECTOR_eDP;
ps_bridge->page[PAGE0_DP_CNTL] = client;
--
2.25.1

View File

@@ -1,35 +0,0 @@
From 62afc499fc46c8018f40733c31a675b28f0717d8 Mon Sep 17 00:00:00 2001
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Date: Wed, 26 Aug 2020 10:15:24 +0200
Subject: [PATCH 3/5] drm/bridge: ps8640: Return an error for incorrect attach
flags
Bridge drivers that implement the new model only shall return an error
from their attach() handler when the DRM_BRIDGE_ATTACH_NO_CONNECTOR flag
is not set. So make sure we return an error because only the new
drm_bridge model is supported.
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
---
drivers/gpu/drm/bridge/parade-ps8640.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c b/drivers/gpu/drm/bridge/parade-ps8640.c
index 13755d278db6..ce3e8b2da8c9 100644
--- a/drivers/gpu/drm/bridge/parade-ps8640.c
+++ b/drivers/gpu/drm/bridge/parade-ps8640.c
@@ -200,6 +200,10 @@ static int ps8640_bridge_attach(struct drm_bridge *bridge,
.channel = 0,
.node = NULL,
};
+
+ if (!(flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR))
+ return -EINVAL;
+
/* port@0 is ps8640 dsi input port */
in_ep = of_graph_get_endpoint_by_regs(dev->of_node, 0, -1);
if (!in_ep)
--
2.25.1

View File

@@ -1,58 +0,0 @@
From 4897262a71cbf55d726d9174f5f646897dc13704 Mon Sep 17 00:00:00 2001
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Date: Wed, 26 Aug 2020 10:15:25 +0200
Subject: [PATCH 4/5] drm/bridge: ps8640: Print an error if VDO control fails
Print an error message inside ps8640_bridge_vdo_control() function when
it fails so we can simplify a bit the callers, they will only need to
check the error code.
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
---
drivers/gpu/drm/bridge/parade-ps8640.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c b/drivers/gpu/drm/bridge/parade-ps8640.c
index ce3e8b2da8c9..9f7b7a9c53c5 100644
--- a/drivers/gpu/drm/bridge/parade-ps8640.c
+++ b/drivers/gpu/drm/bridge/parade-ps8640.c
@@ -82,8 +82,11 @@ static int ps8640_bridge_vdo_control(struct ps8640 *ps_bridge,
ret = i2c_smbus_write_i2c_block_data(client, PAGE3_SET_ADD,
sizeof(vdo_ctrl_buf),
vdo_ctrl_buf);
- if (ret < 0)
+ if (ret < 0) {
+ DRM_ERROR("failed to %sable VDO: %d\n",
+ ctrl == ENABLE ? "en" : "dis", ret);
return ret;
+ }
return 0;
}
@@ -150,10 +153,8 @@ static void ps8640_pre_enable(struct drm_bridge *bridge)
}
ret = ps8640_bridge_vdo_control(ps_bridge, ENABLE);
- if (ret) {
- DRM_ERROR("failed to enable VDO: %d\n", ret);
+ if (ret)
goto err_regulators_disable;
- }
/* Switch access edp panel's edid through i2c */
ret = i2c_smbus_write_byte_data(client, PAGE2_I2C_BYPASS,
@@ -175,9 +176,7 @@ static void ps8640_post_disable(struct drm_bridge *bridge)
struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
int ret;
- ret = ps8640_bridge_vdo_control(ps_bridge, DISABLE);
- if (ret < 0)
- DRM_ERROR("failed to disable VDO: %d\n", ret);
+ ps8640_bridge_vdo_control(ps_bridge, DISABLE);
gpiod_set_value(ps_bridge->gpio_reset, 1);
gpiod_set_value(ps_bridge->gpio_powerdown, 1);
--
2.25.1

View File

@@ -1,162 +0,0 @@
From 5bb60fe7c748a0aae2bdbab10e73b2dc48c09dda Mon Sep 17 00:00:00 2001
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Date: Wed, 26 Aug 2020 10:15:26 +0200
Subject: [PATCH 5/5] drm/bridge: ps8640: Rework power state handling
The get_edid() callback can be triggered anytime by an ioctl, i.e
drm_mode_getconnector (ioctl)
-> drm_helper_probe_single_connector_modes
-> drm_bridge_connector_get_modes
-> ps8640_bridge_get_edid
Actually if the bridge pre_enable() function was not called before
get_edid(), the driver will not be able to get the EDID properly and
display will not work until a second get_edid() call is issued and if
pre_enable() is called before. The side effect of this, for example, is
that you see anything when `Frecon` starts, neither the splash screen,
until the graphical session manager starts.
To fix this we need to make sure that all we need is enabled before
reading the EDID. This means the following:
1. If get_edid() is called before having the device powered we need to
power on the device. In such case, the driver will power off again the
device.
2. If get_edid() is called after having the device powered, all should
just work. We added a powered flag in order to avoid recurrent calls
to ps8640_bridge_poweron() and unneeded delays.
3. This seems to be specific for this device, but we need to make sure
the panel is powered on before do a power on cycle on this device.
Otherwise the device fails to retrieve the EDID.
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
---
drivers/gpu/drm/bridge/parade-ps8640.c | 64 +++++++++++++++++++++++---
1 file changed, 58 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c b/drivers/gpu/drm/bridge/parade-ps8640.c
index 9f7b7a9c53c5..c5d76e209bda 100644
--- a/drivers/gpu/drm/bridge/parade-ps8640.c
+++ b/drivers/gpu/drm/bridge/parade-ps8640.c
@@ -65,6 +65,7 @@ struct ps8640 {
struct regulator_bulk_data supplies[2];
struct gpio_desc *gpio_reset;
struct gpio_desc *gpio_powerdown;
+ bool powered;
};
static inline struct ps8640 *bridge_to_ps8640(struct drm_bridge *e)
@@ -91,13 +92,15 @@ static int ps8640_bridge_vdo_control(struct ps8640 *ps_bridge,
return 0;
}
-static void ps8640_pre_enable(struct drm_bridge *bridge)
+static void ps8640_bridge_poweron(struct ps8640 *ps_bridge)
{
- struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
struct i2c_client *client = ps_bridge->page[PAGE2_TOP_CNTL];
unsigned long timeout;
int ret, status;
+ if (ps_bridge->powered)
+ return;
+
ret = regulator_bulk_enable(ARRAY_SIZE(ps_bridge->supplies),
ps_bridge->supplies);
if (ret < 0) {
@@ -164,6 +167,8 @@ static void ps8640_pre_enable(struct drm_bridge *bridge)
goto err_regulators_disable;
}
+ ps_bridge->powered = true;
+
return;
err_regulators_disable:
@@ -171,12 +176,12 @@ static void ps8640_pre_enable(struct drm_bridge *bridge)
ps_bridge->supplies);
}
-static void ps8640_post_disable(struct drm_bridge *bridge)
+static void ps8640_bridge_poweroff(struct ps8640 *ps_bridge)
{
- struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
int ret;
- ps8640_bridge_vdo_control(ps_bridge, DISABLE);
+ if (!ps_bridge->powered)
+ return;
gpiod_set_value(ps_bridge->gpio_reset, 1);
gpiod_set_value(ps_bridge->gpio_powerdown, 1);
@@ -184,6 +189,28 @@ static void ps8640_post_disable(struct drm_bridge *bridge)
ps_bridge->supplies);
if (ret < 0)
DRM_ERROR("cannot disable regulators %d\n", ret);
+
+ ps_bridge->powered = false;
+}
+
+static void ps8640_pre_enable(struct drm_bridge *bridge)
+{
+ struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
+ int ret;
+
+ ps8640_bridge_poweron(ps_bridge);
+
+ ret = ps8640_bridge_vdo_control(ps_bridge, DISABLE);
+ if (ret < 0)
+ ps8640_bridge_poweroff(ps_bridge);
+}
+
+static void ps8640_post_disable(struct drm_bridge *bridge)
+{
+ struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
+
+ ps8640_bridge_vdo_control(ps_bridge, DISABLE);
+ ps8640_bridge_poweroff(ps_bridge);
}
static int ps8640_bridge_attach(struct drm_bridge *bridge,
@@ -249,9 +276,34 @@ static struct edid *ps8640_bridge_get_edid(struct drm_bridge *bridge,
struct drm_connector *connector)
{
struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
+ bool poweroff = !ps_bridge->powered;
+ struct edid *edid;
+
+ /*
+ * When we end calling get_edid() triggered by an ioctl, i.e
+ *
+ * drm_mode_getconnector (ioctl)
+ * -> drm_helper_probe_single_connector_modes
+ * -> drm_bridge_connector_get_modes
+ * -> ps8640_bridge_get_edid
+ *
+ * We need to make sure that what we need is enabled before reading
+ * EDID, for this chip, we need to do a full poweron, otherwise it will
+ * fail.
+ */
+ drm_bridge_chain_pre_enable(bridge);
- return drm_get_edid(connector,
+ edid = drm_get_edid(connector,
ps_bridge->page[PAGE0_DP_CNTL]->adapter);
+
+ /*
+ * If we call the get_edid() function without having enabled the chip
+ * before, return the chip to its original power state.
+ */
+ if (poweroff)
+ drm_bridge_chain_post_disable(bridge);
+
+ return edid;
}
static const struct drm_bridge_funcs ps8640_bridge_funcs = {
--
2.25.1

View File

@@ -1,41 +0,0 @@
From 51109530891c981b681816152bd205724deabcca Mon Sep 17 00:00:00 2001
From: Jitao Shi <jitao.shi@mediatek.com>
Date: Sat, 10 Oct 2020 15:09:09 +0800
Subject: [PATCH] Revert "drm/mediatek: dsi: Fix scrolling of panel with small
hfp or hbp"
This reverts commit 35bf948f1edbf507f6e57e0879fa6ea36d2d2930.
Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
Reviewed-by: Bilal Wasim <bilal.wasim@imgtec.com>
Tested-by: Bilal Wasim <bilal.wasim@imgtec.com>
---
drivers/gpu/drm/mediatek/mtk_dsi.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 80b7a082e874..16fd99dcdacf 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -466,13 +466,14 @@ static void mtk_dsi_config_vdo_timing(struct mtk_dsi *dsi)
horizontal_sync_active_byte = (vm->hsync_len * dsi_tmp_buf_bpp - 10);
if (dsi->mode_flags & MIPI_DSI_MODE_VIDEO_SYNC_PULSE)
- horizontal_backporch_byte = vm->hback_porch * dsi_tmp_buf_bpp;
+ horizontal_backporch_byte =
+ (vm->hback_porch * dsi_tmp_buf_bpp - 10);
else
- horizontal_backporch_byte = (vm->hback_porch + vm->hsync_len) *
- dsi_tmp_buf_bpp;
+ horizontal_backporch_byte = ((vm->hback_porch + vm->hsync_len) *
+ dsi_tmp_buf_bpp - 10);
data_phy_cycles = timing->lpx + timing->da_hs_prepare +
- timing->da_hs_zero + timing->da_hs_exit;
+ timing->da_hs_zero + timing->da_hs_exit + 3;
if (dsi->mode_flags & MIPI_DSI_MODE_VIDEO_BURST) {
if ((vm->hfront_porch + vm->hback_porch) * dsi_tmp_buf_bpp >
--
2.25.1

View File

@@ -1,56 +0,0 @@
Mediatek MT8173 aka Chromebook Elm
==================================
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_elm_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.

View File

@@ -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)/${BOARD_NAME}
mkimage=$HOST_DIR/bin/mkimage
futility=$HOST_DIR/bin/futility
devkeys=$HOST_DIR/share/vboot/devkeys
run() { echo "$@"; "$@"; }
die() { echo "$@" >&2; exit 1; }
test -f $BINARIES_DIR/Image || \
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 Image and mt8173-elm.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 aarch64 \
--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

View File

@@ -1,4 +1,4 @@
From e9a88fddc149fc52cdc5a8997f9fd3a29416c643 Mon Sep 17 00:00:00 2001
From e9b507b695331ef6fa941b471be0a7f284ec6980 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= <vincent.stehle@freescale.com>
Date: Tue, 12 Aug 2014 10:17:31 +0200
Subject: [PATCH] mx6qsabre_common: boot Linux to /init in mfgtools mode
@@ -20,10 +20,10 @@ Signed-off-by: Julien Olivain <julien.olivain@oss.nxp.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/configs/imx_env.h b/include/configs/imx_env.h
index c03748d93f..aa1a8bf488 100644
index 234af33e55..7e31d208dc 100644
--- a/include/configs/imx_env.h
+++ b/include/configs/imx_env.h
@@ -29,7 +29,7 @@
@@ -20,7 +20,7 @@
#define CONFIG_MFG_ENV_SETTINGS_DEFAULT \
"mfgtool_args=setenv bootargs console=${console},${baudrate} " \
@@ -33,5 +33,5 @@ index c03748d93f..aa1a8bf488 100644
"\0" \
"kboot="MFG_BOOT_CMD"\0"\
--
2.26.2
2.25.1

View File

@@ -9,18 +9,8 @@ Build
First, configure Buildroot for your i.MX6ULL EVK board:
In order to to do so there are two supported options:
make freescale_imx6ullevk_defconfig
if you plan to use NXP provided U-Boot and kernel.
or
make imx6ullevk_defconfig
if you plan to use mainline U-Boot and mainline kernel.
Build all components:
make

View File

@@ -10,14 +10,8 @@ Build
First, configure Buildroot for the i.MX8MQ EVK board:
If you want to use the NXP kernel:
make freescale_imx8mqevk_defconfig
Or if you want to use a mainline kernel:
make imx8mqevk_defconfig
Build all components:
make

View File

@@ -1,4 +0,0 @@
label RK3399_NanoPC_T4 linux
kernel /Image
devicetree /rk3399-nanopc-t4.dtb
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk1p4 rootwait

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"rk3399-nanopc-t4.dtb",
"extlinux"
}
}
size = 64M
}
image sdcard.img {
hdimage {
gpt = true
}
partition loader1 {
image = "idbloader.img"
offset = 32K
}
partition loader2 {
image = "u-boot.itb"
offset = 8M
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 16M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,5 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf

View File

@@ -1,45 +0,0 @@
FriendlyARM NANOPC-T4
=====================
Build:
$ make nanopc_t4_defconfig
$ make
Files created in output directory
=================================
output/images
├── bl31.elf
├── boot.vfat
├── extlinux
├── idbloader.img
├── Image
├── rk3399-nanopc-t4.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card:
==========================
Simply invoke (as root)
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device
Serial console
--------------
Baudrate for this board is 1500000
Login:
------
Apply power and press the PWR button for 3 sec. Enter 'root' as login user, and the prompt is ready.
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/npc_t4.html

View File

@@ -1,4 +0,0 @@
label RK3399_NANOPI_M4 linux
kernel /Image
devicetree /rk3399-nanopi-m4.dtb
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk1p4 rw rootwait

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"rk3399-nanopi-m4.dtb",
"extlinux"
}
}
size = 64M
}
image sdcard.img {
hdimage {
gpt = true
}
partition loader1 {
image = "idbloader.img"
offset = 32K
}
partition loader2 {
image = "u-boot.itb"
offset = 8M
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 16M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,5 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf

View File

@@ -1,45 +0,0 @@
FriendlyARM NANOPI-M4
=====================
Build:
$ make nanopi_m4_defconfig
$ make
Files created in output directory
=================================
output/images
├── bl31.elf
├── boot.vfat
├── extlinux
├── idbloader.img
├── Image
├── rk3399-nanopi-m4.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card:
==========================
Simply invoke (as root)
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device
Serial console
--------------
Baudrate for this board is 1500000
Login:
------
Enter 'root' as login user, and the prompt is ready.
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/nanopi_m4.html

View File

@@ -1,11 +0,0 @@
# Minimal image, no U-boot since v3/v5 cannot boot from sdcard, see
# readme.txt for details on configuring the on-board u-boot.
image sdcard.img {
hdimage {
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,14 +0,0 @@
#
# The Espressobin has a switchcore with full support in the kernel.
# This fragment enables DSA and its drivers, inclding VLAN aware bridge
# support to allow users to easily set up a LAN switch + WAN interface.
#
CONFIG_NET_DSA=m
CONFIG_VLAN_8021Q=y
CONFIG_BRIDGE=m
CONFIG_BRIDGE_IGMP_SNOOPING=y
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_NET_DSA_MV88E6XXX=m
CONFIG_NET_DSA_MV88E6XXX_PTP=y

View File

@@ -1,90 +0,0 @@
Marvell ESPRESSObin
===================
This default configuration allows you to quickly get up and running with
the Marvell ESPRESSObin board by Globalscale Technologies Inc.
The ESPRESSObin is based on the Marvell Armada 88F3720 SoC, coupled with
a Marvell 88E6341 switch core "Topaz", with three exposed gigabit ports.
_________________________
|# U W L L U #|
|# S A A A S #|
|# B N N N B #|
|# 0 1 #|
|# Mini #|
|# -PCI #|
|# #|
|# 5 #|
|#__V___usb_PWR_SATA__SW_#|
Fig 1: Overview of board
Notice difference in Ethernet port layout compared to the Globalscale
docs. They order the ports; LAN2, LAN1, WAN (left to right in figure
above). For more information, see http://espressobin.net
Building
--------
$ make globalscale_espressobin_defconfig
$ make
This generates the kernel image, the devicetree binary, the rootfs as a
tar.gz, and a filesystem image containing everything.
All build artifacts are located in `output/images/`
Booting
-------
To boot, you need a UART connection, using the on-board micro USB port
set to 115200 8N1.
By default, the ESPRESSObin comes with a pre-flashed U-Boot set up to
load the kernel, device-tree and rootfs from SPI NOR flash. The board
jumpers can be changed to boot from different sources, see the quick
start guide for each board revision for details:
- ftp://downloads.globalscaletechnologies.com/Downloads/Espressobin/ESPRESSObin%20V5/
- ftp://downloads.globalscaletechnologies.com/Downloads/Espressobin/ESPRESSObin%20V7/
Note: the v5, and earlier, cannot boot from sdcard, so you have to set
up the factory U-Boot to boot into Buildroot:
1. Flash rootfs image to sdcard drive, your `of=` device may differ:
$ sudo dd if=output/images/sdcard.img of=/dev/mmcblk0 bs=1M
$ sync
2. Boot board from SPI NOR, interrupt boot by pressing any key ...
3. Check with `printenv` that the default setup is OK, otherwise ensure
the following are set, and define `bootcmd` for automatic boot:
> setenv kernel_addr 0x5000000
> setenv fdt_addr 0x1800000
> setenv fdt_name boot/armada-3720-espressobin.dtb
> setenv console console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000
> setenv bootcmd 'mmc dev 0; ext4load mmc 0:1 $kernel_addr $image_name;ext4load mmc 0:1 $fdt_addr $fdt_name;setenv bootargs $console root=/dev/mmcblk0p1 rw rootwait; booti $kernel_addr - $fdt_addr'
4. Call the boot command, or `reset` the board to start:
> run bootcmd
Networking
----------
To enable Ethernet networking, load the `mv88e6xxx` kernel module, and
bring up each respective interface needed:
# modprobe mv88e6xxx
# ifconfig wan up
A more advanced scenario is setting up switching between the ports using
the Linux bridge. The kernel switchdev layer, and DSA driver, ensure
switch functions are "offloaded" to the HW switch, i.e., all traffic
between LAN ports never reach the CPU. For this you need the iproute2
suite of tools.

View File

@@ -1,11 +0,0 @@
setenv kernel_filename "Image"
setenv fdt_filename "meson-gxbb-odroidc2.dtb"
setenv bootargs "console=ttyAML0,115200n8 earlyprintk root=/dev/mmcblk1p2 rootwait rw"
echo > Loading Kernel...
fatload mmc 0:1 ${kernel_addr_r} ${kernel_filename}
echo > Loading FDT...
fatload mmc 0:1 ${fdt_addr_r} ${fdt_filename}
echo > Booting System...
booti ${kernel_addr_r} - ${fdt_addr_r}

View File

@@ -1,38 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"meson-gxbb-odroidc2.dtb",
"boot.scr"
}
}
size = 64M
}
image sdcard.img {
hdimage {
}
partition bl1 {
in-partition-table = "no"
image = "bl1.bin.hardkernel"
offset = 0
}
partition u-boot {
in-partition-table = "no"
image = "uboot-odc2.img"
offset = 49664
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,21 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
${HOST_DIR}/bin/fip_create \
--bl30 ${BINARIES_DIR}/bl30.bin \
--bl301 ${BINARIES_DIR}/bl301.bin \
--bl31 ${BINARIES_DIR}/bl31.bin \
--bl33 ${BINARIES_DIR}/u-boot.bin \
${BINARIES_DIR}/fip.bin
${HOST_DIR}/bin/fip_create --dump ${BINARIES_DIR}/fip.bin
cat ${BINARIES_DIR}/bl2.package ${BINARIES_DIR}/fip.bin \
> ${BINARIES_DIR}/boot_new.bin
${HOST_DIR}/bin/amlbootsig ${BINARIES_DIR}/boot_new.bin ${BINARIES_DIR}/u-boot.img
dd if=${BINARIES_DIR}/u-boot.img of=${BINARIES_DIR}/uboot-odc2.img bs=512 skip=96
support/scripts/genimage.sh -c ${BOARD_DIR}/genimage.cfg

View File

@@ -1,64 +0,0 @@
ODROID-C2
Intro
=====
To be able to use ODROID-C2 board with the images generated by
Buildroot, you have to prepare the SDCard or eMMC.
How to build it
===============
$ make odroidc2_defconfig
Then you can edit the build options using
$ make menuconfig
Compile all and build rootfs image:
$ make
Note: you will need to have access to the network, since Buildroot will
download the packages' sources.
Result of the build
-------------------
After building, you should obtain this tree:
output/images/
+-- bl1.bin.hardkernel
+-- bl2.package
+-- bl301.bin
+-- bl30.bin
+-- bl31.bin
+-- boot_new.bin
+-- boot.scr [1]
+-- boot.vfat
+-- fip.bin
+-- Image [2]
+-- meson-gxbb-odroidc2.dtb
+-- rootfs.ext2
+-- rootfs.ext4
+-- rootfs.tar
+-- sdcard.img
+-- u-boot.bin
+-- u-boot.img
+-- uboot-odc2.img [3]
[1] This is the ODROID-C2 configuration file used in u-boot.
[2] This is the ODROID-C2 kernel image file which will be booted.
[3] This is the ODROID-C2 signed u-boot image which will be used.
How to write the SD card or eMMC
================================
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 or eMMC with "dd":
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
Insert the SDcard into your ODROID-C2, and power it up. Your new system
should come up now.

View File

@@ -1,23 +0,0 @@
#!/bin/sh
#
load_drivers()
{
echo "Loading needed modules..."
for file in $(echo "dwmac_generic dwmac-meson8b meson_dw_hdmi meson_gxbb_wdt"); do
modprobe ${file}
done
}
case "$1" in
start)
load_drivers
;;
stop)
;;
restart|reload)
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac

View File

@@ -1,4 +0,0 @@
label buildroot
kernel /boot/Image
devicetreedir /boot
append root=PARTUUID=%PARTUUID% rootwait

View File

@@ -1,11 +0,0 @@
image sdcard-emmc.img {
hdimage {
gpt = true
}
partition rootfs {
offset = 2M
image = rootfs.ext4
partition-uuid = %PARTUUID%
}
}

View File

@@ -1,7 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
PARTUUID="$($HOST_DIR/bin/uuidgen)"
install -d "$TARGET_DIR/boot/extlinux/"
sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"

View File

@@ -1,80 +0,0 @@
Kontron SMARC-sAL28
===================
How to build it
===============
Configure Buildroot:
$ make kontron_smarc_sal28_defconfig
Change settings to fit your needs (optional):
$ make menuconfig
Compile everything and build the rootfs image:
$ make
Copying the image to a storage device
=====================================
Buildroot builds an image which can be written to the internal eMMC
storage, a SD card or an USB thumb drive. You can use the following
command on your host:
$ sudo dd if=output/images/sdcard-emmc.img of=/dev/sdx bs=1M
Where /dev/sdx is the corresponding block device of your SD card or USB
thumb drive. To flash it on your internal eMMC use the following command on
the board:
# dd if=sdcard-emmc.img of=/dev/mmcblk1 bs=1M
Be sure you have not booted from the internal eMMC in this case!
Booting the board
=================
By default the bootloader will search for the first valid image, starting
with the internal eMMC. Consult the vendor documentation on how to use the
DIP switches to select specific boot devices. To use the bootloader
environment set the boot_targets correspondingly. E.g.:
# setenv boot_targets usb0
To boot from an USB thumb drive.
The device tree is loaded according to the filename in fdtfile. The
following command will set the default device tree, which works on almost
all variants (with less features of course):
# setenv fdtfile freescale/fsl-ls1028a-kontron-sl28.dtb
Set this to a device tree which fits your board variant.
Connect your serial cable to SER1 and open your favorite terminal emulation
program (baudrate 115200, 8n1). E.g.:
$ picocom -b 115200 /dev/ttyUSB0
You will get a warning reported by fdisk when you examine the SD card.
This is because the genimage.cfg file doesn't specify the SD card size
(as people will naturally have different sized cards), so the
secondary GPT header is placed after the rootfs rather than at the end
of the disk where it is expected to be.
You will see something like this at boot time:
[ 4.552797] GPT:Primary header thinks Alt. header is not at the end of the disk.
[ 4.560237] GPT:266272 != 7864319
[ 4.563565] GPT:Alternate GPT header not at the end of the disk.
[ 4.569596] GPT:266272 != 7864319
[ 4.572925] GPT: Use GNU Parted to correct GPT errors.
What does not work
==================
For reasons unknown, the network card doesn't work if you use the original
vendor bootloader. Board support patches for upstream u-boot are currently
pending. Stay tuned.

View File

@@ -1,8 +0,0 @@
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.0", DRIVERS=="fsl_enetc", NAME="eno0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.1", DRIVERS=="fsl_enetc", NAME="eno1"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.2", DRIVERS=="fsl_enetc", NAME="eno2"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.6", DRIVERS=="fsl_enetc", NAME="eno3"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.0", DRIVERS=="fsl_enetc_vf", NAME="eno0vf0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.1", DRIVERS=="fsl_enetc_vf", NAME="eno0vf1"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.2", DRIVERS=="fsl_enetc_vf", NAME="eno1vf0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.3", DRIVERS=="fsl_enetc_vf", NAME="eno1vf1"

View File

@@ -1,6 +0,0 @@
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p0", NAME="swp0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p1", NAME="swp1"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p2", NAME="swp2"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p3", NAME="swp3"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p4", NAME="swp4"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p5", NAME="swp5"

View File

@@ -1,19 +0,0 @@
# Map the GBE0 and GBE1 names from the SMARC standard to the network
# interfaces. This depends on the variant of the board.
# get the variant compatible string
PROGRAM=="/bin/grep '^kontron,sl28-var[1-4]$' /sys/firmware/devicetree/base/compatible", ENV{sl28_compatible}="%c"
# variant 1
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.1", DRIVERS=="fsl_enetc", ENV{sl28_compatible}=="kontron,sl28-var1", NAME="gbe0"
# variant 2
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p0", ENV{sl28_compatible}=="kontron,sl28-var2", NAME="gbe0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p1", ENV{sl28_compatible}=="kontron,sl28-var2", NAME="gbe1"
# variant 3
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.0", DRIVERS=="fsl_enetc", ENV{sl28_compatible}=="kontron,sl28-var3", NAME="gbe0"
# variant 4
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.0", DRIVERS=="fsl_enetc", ENV{sl28_compatible}=="kontron,sl28-var4", NAME="gbe0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.1", DRIVERS=="fsl_enetc", ENV{sl28_compatible}=="kontron,sl28-var4", NAME="gbe1"

View File

@@ -19,9 +19,6 @@ CONFIG_SCSI=y
CONFIG_BLK_DEV_SD=y
CONFIG_BLK_DEV_SR=y
CONFIG_CHR_DEV_SG=y
CONFIG_MTD=y
CONFIG_MTD_BLOCK=y
CONFIG_GPIO_SYSFS=y
CONFIG_NETDEVICES=y
CONFIG_LIBERTAS=m
CONFIG_INPUT_MOUSEDEV=y
@@ -30,9 +27,9 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_X=1200
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=900
CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_TABLET=y
CONFIG_SERIO_OLPC_APSP=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_POWER_SUPPLY=y
CONFIG_BATTERY_OLPC=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_MEDIA_SUPPORT=y
@@ -47,7 +44,6 @@ CONFIG_DRM_PANEL_SIMPLE=m
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FB_SIMPLE=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_USB=y
@@ -55,17 +51,16 @@ CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
CONFIG_MMC=y
CONFIG_MMC_SDHCI=y
CONFIG_NEW_LEDS=y
CONFIG_MMC_SDHCI_PCI=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_RTC_CLASS=y
CONFIG_EXT4_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_FONTS=y
CONFIG_FONT_TER16x32=y

View File

@@ -5,11 +5,10 @@
" /aliases" find-device " last" get-property
abort" No last alias"
" /pci/sd@c" 2over substring? if " root=/dev/mmcblk0p1 " to boot-file then
" /sd/sdhci@d4280000" 2over substring? if " root=/dev/mmcblk1p1 " to boot-file then
" /pci/usb@" 2over substring? if " root=/dev/sda1 " to boot-file then
" /usb@" 2over substring? if " root=/dev/sda1 " to boot-file then
" /pci/nandflash@c" 2over substring? if " root=/dev/mtdblock0 rootfstype=jffs2 " to boot-file then
" /pci/sd@c" 2over substring? if " root=/dev/mmcblk0p1 " to boot-file then
" /sd/sdhci@d4280000" 2over substring? if " root=/dev/mmcblk1p1 " to boot-file then
" /pci/usb@" 2over substring? if " root=/dev/sda1 " to boot-file then
" /usb@" 2over substring? if " root=/dev/sda1 " to boot-file then
2drop
root-device " compatible" get-property dend if 0 0 then ( compatible$ )

View File

@@ -9,13 +9,10 @@ Supported models
* OLPC XO-1
The original NS Geode based OLPC laptop, uses the x86 architecture.
Can be booted either from an internal MTD device formatted with JFFS2
or from a FAT or EXT4 partition on a SD card or a USB flash stick.
* OLPC XO-7.5
The ARM-based laptop. Needs a recent enough firmware to provide a good
enough flattened device tree to the kernel. Can be from a FAT or EXT4
partition on a internal eMMC, a SD card or a USB flash stick.
enough flattened device tree to the kernel.
Configure and build
===================
@@ -31,6 +28,18 @@ Then:
$ make menuconfig # Customize the build configuration
$ make # Build
Create the bootable media
=========================
When the build is finished, the resulting image file will be called
"sdcard.img". It can be written directly to a SD-card or and USB flash stick.
Please double check that you're using the right device (e.g. with "lsblk"
command). Doing the following will DESTROY ALL DATA that's currently on the
media.
# cat output/images/sdcard.img >/dev/<device>
Preparing the machine
=====================
@@ -62,37 +71,8 @@ to update the firmware:
ok flash ext:\q4e00ja.rom \ Flash the "q4e00ja.rom" from the SD card
ok flash u:\q4e00ja.rom \ Flash the "q4e00ja.rom" from USB stick
Create the bootable SD card or USB flash stick
==============================================
When the build is finished, an image file called "sdcard.img" will be created.
It is suitable for writing directly to a SD card, USB flash stick or (on a
XO-1.75) the internal eMMC flash.
Before writing the image, please double check that you're using the right
device (e.g. with "lsblk" command). Doing the following will DESTROY ALL DATA
that's currently on the media.
# cat output/images/sdcard.img >/dev/<device>
Flashing the JFFS2 image (XO-1 only)
====================================
Unlike XO-1.75, the internal NAND flash on XO-1 is accessed without a
FTL and needs a flash-friendly filesystem. A build configured for XO-1
creates a file named "root.jffs2" that can be written to it.
One way to write it is from the Open Firmware prompt. First, partition
and format a USB flash disk with a FAT file system and place the
"root.jffs2" file onto it. Then power on the machine, enter the
Open Firmware port by pressing the ESC key and run the following:
ok patch noop ?open-crcs copy-nand \ Disable CRC check
ok copy-nand u:\root.jffs2
Booting the machine
===================
Once your machine is unlocked, it will automatically boot from your media
wherever it will detect it attached to the USB bus or the SD card slot,
otherwise it will proceed booting from the internal flash.
wherever it will detect it attached to the USB bus or the SD card slot.

View File

@@ -12,19 +12,14 @@ CONFIG_ARM_APPENDED_DTB=y
CONFIG_ARM_ATAG_DTB_COMPAT=y
CONFIG_VFP=y
CONFIG_NEON=y
CONFIG_SENSORS_LIS3_SPI=y
CONFIG_SERIO_OLPC_APSP=y
CONFIG_REGULATOR_88PG86X=m
CONFIG_MEDIA_PLATFORM_SUPPORT=y
CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_VIDEO_MMP_CAMERA=y
CONFIG_DRM_ARMADA=y
CONFIG_DRM_CHRONTEL_CH7033=m
CONFIG_DRM_DISPLAY_CONNECTOR=m
CONFIG_DRM_SIMPLE_BRIDGE=m
CONFIG_DRM_ETNAVIV=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_USB_EHCI_MV=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_SDHCI_PXAV3=y
CONFIG_OLPC_XO175=y
CONFIG_OLPC_XO175_EC=y
@@ -36,20 +31,17 @@ CONFIG_LIBERTAS_THINFIRM=m
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_SDIO=m
CONFIG_MTD_SPI_NOR=m
CONFIG_SRAM=y
CONFIG_MTD=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_SPI_NOR=m
CONFIG_I2C_PXA=y
CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SPI=y
CONFIG_SPI_PXA2XX=y
CONFIG_SPI_SLAVE=y
CONFIG_SND_SOC=y
CONFIG_SND_MMP_SOC_SSPA=y
CONFIG_SND_SOC_RT5631=y
CONFIG_SND_AUDIO_GRAPH_CARD=y
CONFIG_PWRSEQ_SD8787=m
CONFIG_RTC_DRV_DS1307=y
CONFIG_DMADEVICES=y
CONFIG_MMP_TDMA=y
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ZFORCE=y
CONFIG_COMMON_CLK_MMP2_AUDIO=y

View File

@@ -4,27 +4,30 @@ CONFIG_MGEODE_LX=y
CONFIG_X86_MSR=y
CONFIG_HZ_100=y
CONFIG_KEXEC=y
CONFIG_PHYSICAL_START=0x400000
CONFIG_CMDLINE_BOOL=y
CONFIG_ACPI=y
# CONFIG_ACPI is not set
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_OLPC=y
CONFIG_OLPC_XO1_PM=y
CONFIG_OLPC_XO1_RTC=y
CONFIG_OLPC_XO1_SCI=y
# CONFIG_FIRMWARE_MEMMAP is not set
# CONFIG_VIRTUALIZATION is not set
CONFIG_ARCH_MMAP_RND_BITS=16
CONFIG_REFCOUNT_FULL=y
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_CMA=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_REDBOOT_PARTS=y
CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=0
CONFIG_MTD_ONENAND=y
CONFIG_MTD_ONENAND_GENERIC=y
CONFIG_MTD_RAW_NAND=y
CONFIG_MTD_NAND_CAFE=y
CONFIG_MTD_UBI=y
CONFIG_CS5535_MFGPT=y
CONFIG_CS5535_CLOCK_EVENT_SRC=y
CONFIG_SENSORS_LIS3_SPI=y
CONFIG_MOUSE_PS2_OLPC=y
CONFIG_SERIAL_8250_NR_UARTS=1
CONFIG_SERIAL_8250_RUNTIME_UARTS=1
@@ -39,6 +42,7 @@ CONFIG_NVRAM=y
CONFIG_SCx200_ACB=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_SINGLE=y
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_CS5535=y
CONFIG_THERMAL=y
CONFIG_WATCHDOG=y
@@ -59,15 +63,12 @@ CONFIG_SND_AC97_POWER_SAVE=y
CONFIG_SND_CS5535AUDIO=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_OHCI_HCD=y
CONFIG_MMC_SDHCI_PCI=y
CONFIG_STAGING=y
CONFIG_FB_OLPC_DCON=y
CONFIG_XO1_RFKILL=y
CONFIG_RESET_CONTROLLER=y
CONFIG_GENERIC_PHY=y
CONFIG_PROC_KCORE=y
CONFIG_HUGETLBFS=y
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_WBUF_VERIFY=y
CONFIG_JFFS2_SUMMARY=y
CONFIG_JFFS2_FS_XATTR=y

View File

@@ -2,3 +2,4 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
CONFIG_REGULATOR_SY8106A=y
CONFIG_DRM_SUN8I_DW_HDMI=y
CONFIG_SUN8I_DE2_CCU=y
CONFIG_SND_SUN8I_CODEC_ANALOG=y

View File

@@ -1,4 +0,0 @@
label RK3399_ROCKPRO64 linux
kernel /Image
devicetree /rk3399-orangepi.dtb
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk1p4 rw rootwait

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"rk3399-orangepi.dtb",
"extlinux"
}
}
size = 64M
}
image sdcard.img {
hdimage {
gpt = true
}
partition loader1 {
image = "idbloader.img"
offset = 32K
}
partition loader2 {
image = "u-boot.itb"
offset = 8M
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 16M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,5 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf

View File

@@ -1,56 +0,0 @@
Orangepi Rk3399
================
http://www.orangepi.org/Orange%20Pi%20RK3399/
Build:
======
$ make orangepi_rk3399_defconfig
$ make
Files created in output directory
=================================
output/images
├── bl31.elf
├── boot.vfat
├── extlinux
├── idbloader.img
├── Image
├── rk3399-orangepi.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card:
==========================
Simply invoke (as root)
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device.
Booting:
========
Orangepi-RK3399 by default boots from emmc. For SD card boot to
happen, emmc should be empty. If emmc happens to have any bootable
image then erase emmc so that bootrom will look for a proper image in SD.
emmc can be erased once after booted into linux as shown in below link.
https://wiki.amarulasolutions.com/bsp/setup/rockchip/rk3399_emmc.html
Serial console:
---------------
Baudrate for this board is 1500000.
Login:
------
Enter 'root' as login user, and the prompt is ready.
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/orangepi.html

View File

@@ -1,6 +0,0 @@
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
fatload mmc 0 $kernel_addr_r Image
fatload mmc 0 $fdt_addr_r sun50i-h5-orangepi-zero-plus.dtb
booti $kernel_addr_r - $fdt_addr_r

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"sun50i-h5-orangepi-zero-plus.dtb",
"boot.scr"
}
}
size = 64M
}
image sdcard.img {
hdimage {
}
partition spl {
in-partition-table = "no"
image = "sunxi-spl.bin"
offset = 8192
}
partition u-boot {
in-partition-table = "no"
image = "u-boot.itb"
offset = 40K
size = 1M # 1MB - 40K
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,34 +0,0 @@
Intro
=====
This default configuration will allow you to start experimenting with the
buildroot environment for the Orangepi Zero Plus. With the current configuration
it will bring-up the board, and allow access through the serial console.
Orangepi Zero Plus link:
http://www.orangepi.org/OrangePiZeroPlus/
This configuration uses U-Boot mainline and kernel mainline.
How to build
============
$ make orangepi_zero_plus_defconfig
$ make
Note: you will need access to the internet to download the required
sources.
How to write the SD card
========================
Once the build process is finished you will have an image called "sdcard.img"
in the output/images/ directory.
Copy the bootable "sdcard.img" onto an SD card with "dd":
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
$ sudo sync
Insert the micro SDcard in your Orangepi Zero Plus and power it up. The console
is on the serial line, 115200 8N1.

View File

@@ -10,8 +10,7 @@ image efi-part.vfat {
image = "bzImage"
}
}
# 16MB - 32KB
size = 16744448
size = 16777216
}
image disk.img {
@@ -23,6 +22,7 @@ image disk.img {
image = "efi-part.vfat"
partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
offset = 32768
size = 16777216
bootable = true
}
@@ -30,5 +30,6 @@ image disk.img {
partition-type-uuid = 44479540-f297-41b2-9af7-d131d5f0458a
partition-uuid = UUID_TMP
image = "rootfs.ext2"
offset = 16809984
}
}

View File

@@ -1,6 +0,0 @@
serial 0 115200
default 1
label 1
kernel __KERNEL_PATH__
initrd __INITRD_PATH__
append root=/dev/sr0 console=ttyS0,115200n8

View File

@@ -1,51 +0,0 @@
CONFIG_SYSVIPC=y
CONFIG_CGROUPS=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_SMP=y
CONFIG_HYPERVISOR_GUEST=y
CONFIG_PARAVIRT=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
# CONFIG_WIRELESS is not set
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_VIRTIO_BLK=y
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_VIRTIO=y
CONFIG_ATA=y
CONFIG_SATA_AHCI=y
CONFIG_ATA_PIIX=y
CONFIG_NETDEVICES=y
CONFIG_VIRTIO_NET=y
CONFIG_IGB=y
CONFIG_NE2K_PCI=y
CONFIG_8139CP=y
# CONFIG_WLAN is not set
CONFIG_INPUT_EVDEV=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_VIRTIO_CONSOLE=y
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_DRM=y
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_PCI is not set
CONFIG_USB=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_UHCI_HCD=y
CONFIG_USB_STORAGE=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_INPUT=y
CONFIG_VIRTIO_MMIO=y
CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
CONFIG_EXT4_FS=y
CONFIG_AUTOFS4_FS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_UNWINDER_FRAME_POINTER=y

View File

@@ -1,40 +0,0 @@
Intro
=====
This is a board configuration for the apu2 platform by PC Engines.
https://pcengines.ch/apu2.htm
Since the apu2 does not have any graphical output, the default configuration
will ensure that the kernel output as well as the login prompt will be sent to
the serial port.
How to build
============
The provided defconfig creates a hybrid isolinux image that can be booted from
either an USB stick or a CD.
$ make pcengines_apu2_defconfig
$ make
How to write to an USB stick
============================
Once the build process is finished you will have an image
called "rootfs.iso9660" in the output/images/ directory.
Copy the bootable "rootfs.iso9660" onto the USB stick with "dd":
$ sudo dd if=output/images/rootfs.iso9660 of=/dev/sdX bs=1M conv=fsync
$ sudo sync
How to connect to the apu2
==========================
Connect to the DB9 serial port of the apu2 board (either directly or through a
USB adapter) with a baudrate of 115200.
For example with miniterm (part of pyserial):
$ miniterm.py -f direct /dev/ttyUSB0 115200

View File

@@ -0,0 +1,4 @@
label rock64-buildroot
kernel /boot/Image
devicetree /boot/rk3328-rock64.dtb
append console=ttyS2,1500000n8 root=/dev/mmcblk0p1 ro rootwait

View File

@@ -0,0 +1,23 @@
image sdcard.img {
hdimage {
}
partition uboot-spl {
in-partition-table = "no"
image = "u-boot-tpl-spl.img"
offset = 32768 # 512 * 0x40 from start of sd card
}
partition uboot {
in-partition-table = "no"
image = "u-boot.itb"
offset = 262144 # 512 * 0x200 from start of sd card
}
partition rootfs {
partition-type = 0x83
bootable = "yes"
image = "rootfs.ext2"
size = 500M
}
}

View File

@@ -0,0 +1,32 @@
From 211bf049084e6e374dac253138fa813682910146 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20=C5=81yszczek?= <michal.lyszczek@bofc.pl>
Date: Tue, 5 Feb 2019 22:08:54 +0100
Subject: [PATCH] Makefile: rk3328 needs itb image to boot properly
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
---
Makefile | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Makefile b/Makefile
index 8086f3c93e..a6425b5b03 100644
--- a/Makefile
+++ b/Makefile
@@ -799,6 +799,11 @@ ifneq ($(BUILD_ROM),)
ALL-$(CONFIG_X86_RESET_VECTOR) += u-boot.rom
endif
+# rk3328 needs itb image to boot properly
+ifeq ($(CONFIG_ROCKCHIP_RK3328),y)
+ALL-y += u-boot.itb
+endif
+
# enable combined SPL/u-boot/dtb rules for tegra
ifeq ($(CONFIG_TEGRA)$(CONFIG_SPL),yy)
ALL-y += u-boot-tegra.bin u-boot-nodtb-tegra.bin
--
2.18.1

View File

@@ -0,0 +1,9 @@
#!/bin/sh
MKIMAGE=$HOST_DIR/bin/mkimage
BOARD_DIR="$(dirname $0)"
$MKIMAGE -n rk3328 -T rksd -d $BINARIES_DIR/u-boot-tpl.bin $BINARIES_DIR/u-boot-tpl.img
cat $BINARIES_DIR/u-boot-tpl.img $BINARIES_DIR/u-boot-spl.bin > $BINARIES_DIR/u-boot-tpl-spl.img
install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf

View File

@@ -0,0 +1,95 @@
Intro
=====
This default configuration will allow you to start experimenting with the
buildroot environment for the Rock64. With this default configuration you
can log in into board via uart and look around.
Board homepage: https://www.pine64.org/?page_id=7147
Build
=====
First, load rock64 config for buildroot
$ make rock64_defconfig
Optionally make changes to buildroot config (to install more programs)
$ make menuconfig
And then build everything
$ make
When completed, following files will be generated in output/images directory:
.
├── Image
├── bl31.bin
├── bl31.elf
├── rk3328-rock64.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot-spl.bin
├── u-boot-tpl-spl.img
├── u-boot-tpl.bin
├── u-boot-tpl.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card
=========================
!!! THIS COMMAND MAY WIPE YOUR DISK!
!!! MAKE SURE YOU PASSED CORRECT DEVICE!
!!! OR IT THIS WILL WIPE YOUR DISK!
Simply invoke (as root)
# dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device (not partition), of= argument may also be
/dev/mmcblk0 if you are using built-in sd card reader.
Runtime
=======
Login
-----
By default, buildroot has no password, just type 'root' as login user, and
you will be logged in.
Serial console
--------------
Serial console needs to be connected to pins (into 40pin rpi compatible part)
pin 6: gnd
pin 8: tx
pin 10: rx
Pin numbers are printed on board.
Uart configuration is not standard. Rock64 uses 1500000 (1,5M) baudrate
with standard 8n1.
Ethernet
--------
To enable ethernet you need to load modules for it:
# modprobe stmmac
# modprobe dwmac-rk
and since by default there is no dhcp installed, you need to configure ip
address, remember to change address to fit your network.
# ifconfig eth0 up
# ip addr add 10.1.1.180/24 dev eth0
# ping 10.1.1.1
PING 10.1.1.1 (10.1.1.1): 56 data bytes
64 bytes from 10.1.1.1: seq=0 ttl=64 time=0.695 ms

View File

@@ -1,4 +0,0 @@
label RK3399_ROCKPRO64 linux
kernel /Image
devicetree /rk3399-rockpro64.dtb
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk0p4 rw rootwait

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"rk3399-rockpro64.dtb",
"extlinux"
}
}
size = 64M
}
image sdcard.img {
hdimage {
gpt = true
}
partition loader1 {
image = "idbloader.img"
offset = 32K
}
partition loader2 {
image = "u-boot.itb"
offset = 8M
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 16M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,5 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf

View File

@@ -1,60 +0,0 @@
PINE64 ROCKPro64
================
https://www.pine64.org/rockpro64/
Build:
======
$ make rockpro64_defconfig
$ make
Files created in output directory
=================================
output/images
├── bl31.elf
├── boot.vfat
├── extlinux
├── idbloader.img
├── Image
├── rk3399-rockpro64.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card:
==========================
Simply invoke (as root)
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device.
Booting:
========
RockPro64 has a 40-pin PI-2 GPIO Bus.
Connect a jumper between pin 23 and pin 25 for SD card boot.
Serial console:
---------------
The pin layout for serial console on PI-2 GPIO Bus is as follows:
pin 6: gnd
pin 8: tx
pin 10: rx
Initially connect pin 6 and pin 8(transmit). Apply power to RockPro64, once the
power is on then connect pin 10(receive).
Baudrate for this board is 1500000.
Login:
------
Enter 'root' as login user, and the prompt is ready.
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/rockpro64.html

View File

@@ -5,15 +5,13 @@ CONFIG_HIGH_RES_TIMERS=y
CONFIG_TASKSTATS=y
CONFIG_SCHED_AUTOGROUP=y
CONFIG_PROFILING=y
CONFIG_ARCH_VEXPRESS=y
CONFIG_COMPAT=y
CONFIG_FW_CFG_SYSFS=y
CONFIG_FW_CFG_SYSFS_CMDLINE=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_BLK_DEV_BSGLIB=y
CONFIG_BINFMT_MISC=y
CONFIG_ARCH_VEXPRESS=y
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_BINFMT_MISC=y
CONFIG_COMPAT=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_DIAG=y
@@ -25,8 +23,6 @@ CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_BRIDGE=m
CONFIG_NET_SCHED=y
CONFIG_VSOCKETS=y
CONFIG_PCI=y
CONFIG_PCI_HOST_GENERIC=y
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_VIRTIO_BLK=y
@@ -42,25 +38,17 @@ CONFIG_DUMMY=y
CONFIG_MACVLAN=y
CONFIG_VIRTIO_NET=y
CONFIG_NLMON=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_VIRTIO_CONSOLE=y
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_VIRTIO=y
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS=y
CONFIG_DRM=y
CONFIG_DRM_VIRTIO_GPU=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_DRV_PL031=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_MMIO=y
CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
CONFIG_MAILBOX=y
CONFIG_PL320_MBOX=y
CONFIG_ARM_SMMU_V3=y
CONFIG_EXT4_FS=y
CONFIG_FUSE_FS=y
CONFIG_VIRTIO_FS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y

View File

@@ -1,149 +0,0 @@
From bb04c220d82598066eeadf49defaec1157d4d206 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 25 Jul 2020 11:46:01 +0200
Subject: [PATCH] mips: Do not include hi and lo in clobber list for R6
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From [1]
"GCC 10 (PR 91233) won't silently allow registers that are not architecturally
available to be present in the clobber list anymore, resulting in build failure
for mips*r6 targets in form of:
...
.../sysdep.h:146:2: error: the register lo cannot be clobbered in asm for the current target
146 | __asm__ volatile ( \
| ^~~~~~~
This is because base R6 ISA doesn't define hi and lo registers w/o DSP extension.
This patch provides the alternative clobber list for r6 targets that won't include
those registers."
Since kernel 5.4 and mips support for generic vDSO [2], the kernel fail to build
for mips r6 cpus with gcc 10 for the same reason as glibc.
[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=020b2a97bb15f807c0482f0faee2184ed05bcad8
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=24640f233b466051ad3a5d2786d2951e43026c9d
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/mips/include/asm/vdso/gettimeofday.h | 45 +++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/arch/mips/include/asm/vdso/gettimeofday.h b/arch/mips/include/asm/vdso/gettimeofday.h
index 0ae9b4cbc153..ea600e0ebfe7 100644
--- a/arch/mips/include/asm/vdso/gettimeofday.h
+++ b/arch/mips/include/asm/vdso/gettimeofday.h
@@ -36,12 +36,21 @@ static __always_inline long gettimeofday_fallback(
register long nr asm("v0") = __NR_gettimeofday;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (tv), "r" (tz), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (tv), "r" (tz), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -60,12 +69,21 @@ static __always_inline long clock_gettime_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -84,12 +102,21 @@ static __always_inline int clock_getres_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -108,12 +135,21 @@ static __always_inline long clock_gettime32_fallback(
register long nr asm("v0") = __NR_clock_gettime;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -128,12 +164,21 @@ static __always_inline int clock_getres32_fallback(
register long nr asm("v0") = __NR_clock_getres;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
--
2.25.4

View File

@@ -1,149 +0,0 @@
From bb04c220d82598066eeadf49defaec1157d4d206 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 25 Jul 2020 11:46:01 +0200
Subject: [PATCH] mips: Do not include hi and lo in clobber list for R6
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From [1]
"GCC 10 (PR 91233) won't silently allow registers that are not architecturally
available to be present in the clobber list anymore, resulting in build failure
for mips*r6 targets in form of:
...
.../sysdep.h:146:2: error: the register lo cannot be clobbered in asm for the current target
146 | __asm__ volatile ( \
| ^~~~~~~
This is because base R6 ISA doesn't define hi and lo registers w/o DSP extension.
This patch provides the alternative clobber list for r6 targets that won't include
those registers."
Since kernel 5.4 and mips support for generic vDSO [2], the kernel fail to build
for mips r6 cpus with gcc 10 for the same reason as glibc.
[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=020b2a97bb15f807c0482f0faee2184ed05bcad8
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=24640f233b466051ad3a5d2786d2951e43026c9d
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/mips/include/asm/vdso/gettimeofday.h | 45 +++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/arch/mips/include/asm/vdso/gettimeofday.h b/arch/mips/include/asm/vdso/gettimeofday.h
index 0ae9b4cbc153..ea600e0ebfe7 100644
--- a/arch/mips/include/asm/vdso/gettimeofday.h
+++ b/arch/mips/include/asm/vdso/gettimeofday.h
@@ -36,12 +36,21 @@ static __always_inline long gettimeofday_fallback(
register long nr asm("v0") = __NR_gettimeofday;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (tv), "r" (tz), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (tv), "r" (tz), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -60,12 +69,21 @@ static __always_inline long clock_gettime_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -84,12 +102,21 @@ static __always_inline int clock_getres_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -108,12 +135,21 @@ static __always_inline long clock_gettime32_fallback(
register long nr asm("v0") = __NR_clock_gettime;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -128,12 +164,21 @@ static __always_inline int clock_getres32_fallback(
register long nr asm("v0") = __NR_clock_getres;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
--
2.25.4

View File

@@ -1,149 +0,0 @@
From cfb381d8f4b64f3752c95b4bdd787be63ef84fb2 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 25 Jul 2020 11:46:01 +0200
Subject: [PATCH] mips: Do not include hi and lo in clobber list for R6
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From [1]
"GCC 10 (PR 91233) won't silently allow registers that are not architecturally
available to be present in the clobber list anymore, resulting in build failure
for mips*r6 targets in form of:
...
.../sysdep.h:146:2: error: the register lo cannot be clobbered in asm for the current target
146 | __asm__ volatile ( \
| ^~~~~~~
This is because base R6 ISA doesn't define hi and lo registers w/o DSP extension.
This patch provides the alternative clobber list for r6 targets that won't include
those registers."
Since kernel 5.4 and mips support for generic vDSO [2], the kernel fail to build
for mips r6 cpus with gcc 10 for the same reason as glibc.
[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=020b2a97bb15f807c0482f0faee2184ed05bcad8
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=24640f233b466051ad3a5d2786d2951e43026c9d
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/mips/include/asm/vdso/gettimeofday.h | 45 +++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/arch/mips/include/asm/vdso/gettimeofday.h b/arch/mips/include/asm/vdso/gettimeofday.h
index 0ae9b4cbc153..ea600e0ebfe7 100644
--- a/arch/mips/include/asm/vdso/gettimeofday.h
+++ b/arch/mips/include/asm/vdso/gettimeofday.h
@@ -36,12 +36,21 @@ static __always_inline long gettimeofday_fallback(
register long nr asm("v0") = __NR_gettimeofday;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (tv), "r" (tz), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (tv), "r" (tz), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -60,12 +69,21 @@ static __always_inline long clock_gettime_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -84,12 +102,21 @@ static __always_inline int clock_getres_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -108,12 +135,21 @@ static __always_inline long clock_gettime32_fallback(
register long nr asm("v0") = __NR_clock_gettime;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -128,12 +164,21 @@ static __always_inline int clock_getres32_fallback(
register long nr asm("v0") = __NR_clock_getres;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
--
2.25.4

View File

@@ -1,149 +0,0 @@
From cfb381d8f4b64f3752c95b4bdd787be63ef84fb2 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 25 Jul 2020 11:46:01 +0200
Subject: [PATCH] mips: Do not include hi and lo in clobber list for R6
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From [1]
"GCC 10 (PR 91233) won't silently allow registers that are not architecturally
available to be present in the clobber list anymore, resulting in build failure
for mips*r6 targets in form of:
...
.../sysdep.h:146:2: error: the register lo cannot be clobbered in asm for the current target
146 | __asm__ volatile ( \
| ^~~~~~~
This is because base R6 ISA doesn't define hi and lo registers w/o DSP extension.
This patch provides the alternative clobber list for r6 targets that won't include
those registers."
Since kernel 5.4 and mips support for generic vDSO [2], the kernel fail to build
for mips r6 cpus with gcc 10 for the same reason as glibc.
[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=020b2a97bb15f807c0482f0faee2184ed05bcad8
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=24640f233b466051ad3a5d2786d2951e43026c9d
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/mips/include/asm/vdso/gettimeofday.h | 45 +++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/arch/mips/include/asm/vdso/gettimeofday.h b/arch/mips/include/asm/vdso/gettimeofday.h
index 0ae9b4cbc153..ea600e0ebfe7 100644
--- a/arch/mips/include/asm/vdso/gettimeofday.h
+++ b/arch/mips/include/asm/vdso/gettimeofday.h
@@ -36,12 +36,21 @@ static __always_inline long gettimeofday_fallback(
register long nr asm("v0") = __NR_gettimeofday;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (tv), "r" (tz), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (tv), "r" (tz), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -60,12 +69,21 @@ static __always_inline long clock_gettime_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -84,12 +102,21 @@ static __always_inline int clock_getres_fallback(
#endif
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -108,12 +135,21 @@ static __always_inline long clock_gettime32_fallback(
register long nr asm("v0") = __NR_clock_gettime;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
@@ -128,12 +164,21 @@ static __always_inline int clock_getres32_fallback(
register long nr asm("v0") = __NR_clock_getres;
register long error asm("a3");
+#if MIPS_ISA_REV >= 6
+ asm volatile(
+ " syscall\n"
+ : "=r" (ret), "=r" (error)
+ : "r" (clkid), "r" (ts), "r" (nr)
+ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
+ "$14", "$15", "$24", "$25", "memory");
+#else
asm volatile(
" syscall\n"
: "=r" (ret), "=r" (error)
: "r" (clkid), "r" (ts), "r" (nr)
: "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
"$14", "$15", "$24", "$25", "hi", "lo", "memory");
+#endif
return error ? -ret : ret;
}
--
2.25.4

View File

@@ -1,53 +0,0 @@
From 44e3424424b447b00fbe1f10ddba81b55817e970 Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Wed, 26 Dec 2018 00:00:40 +0000
Subject: [PATCH] powerpc: Fix -mcpu= options for SPE-only compiler
GCC for Debian's "powerpcspe" architecture only supports 32-bit
SPE targets, and using -mcpu=powerpc or -mcpu=powerpc64 is a fatal
error.
* Change the test for a biarch compiler to pass both the -m32 and -m64
options, so that it doesn't catch 32-bit-only compilers
* Add an ifdef CONFIG_PPC64 around the 64-bit CPU option definitions
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
[Romain: Patch from Debian repository:
https://salsa.debian.org/kernel-team/linux/-/blob/buster/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/powerpc/Makefile | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 37ac731a556b..5211ea4f48b1 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -12,7 +12,7 @@
# Rewritten by Cort Dougan and Paul Mackerras
#
-HAS_BIARCH := $(call cc-option-yn, -m32)
+HAS_BIARCH := $(call cc-option-yn, -m32 -m64)
# Set default 32 bits cross compilers for vdso and boot wrapper
CROSS32_COMPILE ?=
@@ -166,6 +166,7 @@ CFLAGS-$(CONFIG_PPC32) += $(call cc-option, $(MULTIPLEWORD))
CFLAGS-$(CONFIG_PPC32) += $(call cc-option,-mno-readonly-in-sdata)
+ifdef CONFIG_PPC64
ifdef CONFIG_PPC_BOOK3S_64
ifdef CONFIG_CPU_LITTLE_ENDIAN
CFLAGS-$(CONFIG_GENERIC_CPU) += -mcpu=power8
@@ -177,6 +178,7 @@ endif
else
CFLAGS-$(CONFIG_GENERIC_CPU) += -mcpu=powerpc64
endif
+endif
ifdef CONFIG_FUNCTION_TRACER
CC_FLAGS_FTRACE := -pg
--
2.25.4

View File

@@ -0,0 +1,66 @@
From 15f62343916fcb3cae82e618da28eaa82bc8c007 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair.francis@wdc.com>
Date: Tue, 16 Apr 2019 09:03:41 -0700
Subject: [PATCH] Revert "riscv: Use latest system call ABI"
This reverts commit d4c08b9776b392e20efc6198ebe1bc8ec1911d9b.
The latest RISC-V 32bit glibc submission doesn't work with this patch,
so let's revert it. This revert can be reverted when the glibc
submission is updated to work on the 5.1 kernel.
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
arch/riscv/Kconfig | 1 +
arch/riscv/include/uapi/asm/unistd.h | 5 ++++-
arch/riscv/kernel/vdso/Makefile | 2 --
3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index eb56c82d8aa1..43dd2680c696 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -11,6 +11,7 @@ config 32BIT
config RISCV
def_bool y
+ select ARCH_32BIT_OFF_T if !64BIT
# even on 32-bit, physical (and DMA) addresses are > 32-bits
select PHYS_ADDR_T_64BIT
select OF
diff --git a/arch/riscv/include/uapi/asm/unistd.h b/arch/riscv/include/uapi/asm/unistd.h
index 0e2eeeb1fd27..486a288b454c 100644
--- a/arch/riscv/include/uapi/asm/unistd.h
+++ b/arch/riscv/include/uapi/asm/unistd.h
@@ -17,8 +17,11 @@
#ifdef __LP64__
#define __ARCH_WANT_NEW_STAT
-#define __ARCH_WANT_SET_GET_RLIMIT
#endif /* __LP64__ */
+#define __ARCH_WANT_SET_GET_RLIMIT
+#ifndef __LP64__
+#define __ARCH_WANT_TIME32_SYSCALLS
+#endif
#include <asm-generic/unistd.h>
diff --git a/arch/riscv/kernel/vdso/Makefile b/arch/riscv/kernel/vdso/Makefile
index fec62b24df89..eed1c137f618 100644
--- a/arch/riscv/kernel/vdso/Makefile
+++ b/arch/riscv/kernel/vdso/Makefile
@@ -2,11 +2,9 @@
# Symbols present in the vdso
vdso-syms = rt_sigreturn
-ifdef CONFIG_64BIT
vdso-syms += gettimeofday
vdso-syms += clock_gettime
vdso-syms += clock_getres
-endif
vdso-syms += getcpu
vdso-syms += flush_icache
--
2.21.0

View File

@@ -1,5 +1,5 @@
Run Linux in emulation with:
qemu-system-riscv32 -M virt -bios output/images/fw_jump.elf -kernel output/images/Image -append "rootwait root=/dev/vda ro" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic # qemu_riscv32_virt_defconfig
qemu-system-riscv32 -M virt -kernel output/images/fw_jump.elf -device loader,file=output/images/Image,addr=0x80400000 -append "rootwait root=/dev/vda ro" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic # qemu_riscv32_virt_defconfig
The login prompt will appear in the terminal that started Qemu.

View File

@@ -1,5 +1,5 @@
Run Linux in emulation with:
qemu-system-riscv64 -M virt -bios output/images/fw_jump.elf -kernel output/images/Image -append "rootwait root=/dev/vda ro" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic # qemu_riscv64_virt_defconfig
qemu-system-riscv64 -M virt -kernel output/images/fw_jump.elf -device loader,file=output/images/Image,addr=0x80200000 -append "rootwait root=/dev/vda ro" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic # qemu_riscv64_virt_defconfig
The login prompt will appear in the terminal that started Qemu.

View File

@@ -1,8 +0,0 @@
Run the emulation with:
qemu-system-s390x -M s390-ccw-virtio -cpu max,zpci=on -m 4G -smp 2 \
-kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw \
-append "rootwait root=/dev/vda net.ifnames=0 biosdevname=0" -display none -serial mon:stdio \
-net nic,model=virtio -net user # qemu_s390x_defconfig
The login prompt will appear in the terminal that started Qemu.

View File

@@ -1,32 +0,0 @@
From fe657afd48fc67841d32207ef9eeeb5f099764cd Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 21 Dec 2019 11:52:04 +0100
Subject: [PATCH] arch/sh: vmlinux.scr
Building the kernel using a toolchain built with Binutils 2.33.1 prevent
booting a sh4 system under Qemu.
Apply the patch provided by Alan Modra [2] that fix alignment of rodata.
[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ebd2263ba9a9124d93bbc0ece63d7e0fae89b40e
[2] https://www.sourceware.org/ml/binutils/2019-12/msg00112.html
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/sh/boot/compressed/vmlinux.scr | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/sh/boot/compressed/vmlinux.scr b/arch/sh/boot/compressed/vmlinux.scr
index 862d74808236..dd292b4b9082 100644
--- a/arch/sh/boot/compressed/vmlinux.scr
+++ b/arch/sh/boot/compressed/vmlinux.scr
@@ -1,6 +1,6 @@
SECTIONS
{
- .rodata..compressed : {
+ .rodata..compressed : ALIGN(8) {
input_len = .;
LONG(input_data_end - input_data) input_data = .;
*(.data)
--
2.24.1

View File

@@ -1,32 +0,0 @@
From 7f92adbba385a4e512abfd6633ac0f9f0cdf91f8 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 21 Dec 2019 11:54:07 +0100
Subject: [PATCH] include/asm-generic: vmlinux.lds.h
Building the kernel using a toolchain built with Binutils 2.33.1 prevent
booting a sh4 system under Qemu.
Apply the patch provided by Alan Modra [2] that fix alignment of rodata.
[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ebd2263ba9a9124d93bbc0ece63d7e0fae89b40e
[2] https://www.sourceware.org/ml/binutils/2019-12/msg00112.html
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
include/asm-generic/vmlinux.lds.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index d7701d466b60..1aa33597e91e 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -306,6 +306,7 @@
*/
#ifndef RO_AFTER_INIT_DATA
#define RO_AFTER_INIT_DATA \
+ . = ALIGN(8); \
__start_ro_after_init = .; \
*(.data..ro_after_init) \
__end_ro_after_init = .;
--
2.24.1

View File

@@ -1,32 +0,0 @@
From fe657afd48fc67841d32207ef9eeeb5f099764cd Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 21 Dec 2019 11:52:04 +0100
Subject: [PATCH] arch/sh: vmlinux.scr
Building the kernel using a toolchain built with Binutils 2.33.1 prevent
booting a sh4 system under Qemu.
Apply the patch provided by Alan Modra [2] that fix alignment of rodata.
[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ebd2263ba9a9124d93bbc0ece63d7e0fae89b40e
[2] https://www.sourceware.org/ml/binutils/2019-12/msg00112.html
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
arch/sh/boot/compressed/vmlinux.scr | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/sh/boot/compressed/vmlinux.scr b/arch/sh/boot/compressed/vmlinux.scr
index 862d74808236..dd292b4b9082 100644
--- a/arch/sh/boot/compressed/vmlinux.scr
+++ b/arch/sh/boot/compressed/vmlinux.scr
@@ -1,6 +1,6 @@
SECTIONS
{
- .rodata..compressed : {
+ .rodata..compressed : ALIGN(8) {
input_len = .;
LONG(input_data_end - input_data) input_data = .;
*(.data)
--
2.24.1

View File

@@ -1,27 +0,0 @@
From 7f92adbba385a4e512abfd6633ac0f9f0cdf91f8 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 21 Dec 2019 11:54:07 +0100
Subject: [PATCH] include/asm-generic: vmlinux.lds.h
https://www.sourceware.org/ml/binutils/2019-12/msg00112.html
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
include/asm-generic/vmlinux.lds.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index d7701d466b60..1aa33597e91e 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -306,6 +306,7 @@
*/
#ifndef RO_AFTER_INIT_DATA
#define RO_AFTER_INIT_DATA \
+ . = ALIGN(8); \
__start_ro_after_init = .; \
*(.data..ro_after_init) \
__end_ro_after_init = .;
--
2.24.1

View File

@@ -1,4 +0,0 @@
label RK3399_ROCK_PI_4 linux
kernel /Image
devicetree /rk3399-rock-pi-4.dtb
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk1p4 rw rootwait

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"rk3399-rock-pi-4.dtb",
"extlinux"
}
}
size = 112M
}
image sdcard.img {
hdimage {
gpt = true
}
partition loader1 {
image = "idbloader.img"
offset = 32K
}
partition loader2 {
image = "u-boot.itb"
offset = 8M
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 16M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,5 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf

View File

@@ -1,61 +0,0 @@
RADXA ROCK_PI_4
================
https://rockpi.org/rockpi4
ROCK Pi 4 is a Single Board Computer (SBC) from radxa. This guide is valid
for the below models:
- ROCK PI 4 Model A
- ROCK PI 4 Model B
- ROCK PI 4 Model C
Build:
======
$ make rock_pi_4_defconfig
$ make
Files created in output directory
=================================
output/images
├── bl31.elf
├── boot.vfat
├── extlinux
├── idbloader.img
├── Image
├── rk3399-rock-pi-4.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card:
==========================
Simply invoke (as root)
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device.
Booting:
========
Serial console:
---------------
RockPi4 has a 40-pin GPIO header. The pin layout is as follows:
pin 6: gnd
pin 8: tx
pin 10: rx
Baudrate for this board is 1500000.
Login:
------
Enter 'root' as login user, and the prompt is ready.
Wiki link:
https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/rock-pi-4.html

View File

@@ -1,4 +0,0 @@
label RK3399_ROCK_PI_N10 linux
kernel /Image
devicetree /rk3399pro-rock-pi-n10.dtb
append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk0p4 rw rootwait

View File

@@ -1,39 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"rk3399pro-rock-pi-n10.dtb",
"extlinux"
}
}
size = 112M
}
image sdcard.img {
hdimage {
gpt = true
}
partition loader1 {
image = "idbloader.img"
offset = 32K
}
partition loader2 {
image = "u-boot.itb"
offset = 8M
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 16M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

Some files were not shown because too many files have changed in this diff Show More