v2023.06.0
Sascha Hauer
sha at pengutronix.de
Wed Jun 21 05:26:22 PDT 2023
Hi All,
It's the longest (or shortest) day of the year, let's celebrate this
with a new barebox release: v2023.06.0 is out.
This release brings us CI implemented in GitHub actions. With this each
push to the GitHub barebox repository triggers a build of all
defconfigs. Also the images we have Qemu support for get runtime tested
with the selftest framework Ahmad created. We are confident that this
increases the quality of the barebox releases in future. See
https://github.com/barebox/barebox/actions for the current status.
Also there is a MMU rework on ARM within this release. We previously
used 1MiB (1GiB on Aarch64) sections in early MMU setup and reconfigured
the MMU during barebox startup. Now we use 4KiB pages directly in the
early code. This has the advantage that we do not have to reconfigure
the MMU and that we can properly set the XN flag for areas used by the
secure world in early code so that the CPU cannot speculate into these
protected areas. Based on that Ahmad then added support for non-1:1
mappings in arch_remap_range which helps in some situations where
devices are mapped to 0x0, we had to disable NULL pointer protection in
these cases.
Beginning with v2023.06.0 barebox has support for the Rockchip RK3588
SoC. The only board supported so far is the Radxa Rock 5b. As this
particular board has ethernet connected to PCI instead of using the
SoC internal network controller, we have support for that as well.
Along with this the RTL8169 got an overhaul, the old driver supported
only a fraction of the available devices with the one found on the
Rock 5b not being one of it.
barebox manipulates the Linux device tree in many ways which sometimes
causes problems. There is a new command to help debugging these
problems. The of_fixup command allows to list the fixups that will be
applied on the Linux device tree and offers options to disable/enable
them one by one, so it will be easier to find problematic fixups.
As usual, there are several other changes not explicitly mentioned here,
see below for a full list.
Have Fun!
Sascha
----------------------------------------------------------------
Ahmad Fatoum (58):
clk: implement clk_to_clk_hw using container_of_safe
sandbox: watchdog: handle missing stickypage gracefully
sandbox: power: handle missing stickypage gracefully
sandbox: hostfile: don't warn on failed hostfile fixup
treewide: drop trailing space
driver: be explicit about supported #feature-cells
featctrl: drop useless NULL check
sandbox: hostfile: add feature controller support
asm-generic: atomic: implement atomic_inc/dec_return stubs
phy: stm32-usphyc: sync with Linux v6.3-rc5
ARM: stm32mp: defconfig: enable use of DKx USB hubs
clk: bulk: return -EPROBE_DEFER in silence
ARM: stm32mp: dkx: enable deep probe
ARM: configs: multi_v7_defconfig: enable CONFIG_USB_ONBOARD_HUB
commands: add new of_fixup command to list and disable DT fixups
linux: limits: define INTPTR_MAX/UINTPTR_MAX
treewide: use remap_range instead of arch_remap_range
mmu: add physical address parameter to arch_remap_range
ARM: mmu32: support non-1:1 mappings in arch_remap_range
ARM: mmu64: support non-1:1 mappings in arch_remap_range
of: platform: remap memory when encountering virtual-reg property
common: boards: qemu-virt: remap cfi-flash from 0 to 0x1000
ARM: prepare extending mmuinfo beyond ARMv7
ARM64: mmu: implement ARMv8 mmuinfo command
common: memtest: prepare for reuse in self test
test: self: add MMU remapping self test
ARM: mmuinfo: add options for enabling/disabling zero page trapping
ARM: rockchip: don't attempt building MACH_RADXA_ROCK5 without firmware
test: self: mmu: remap buffer with default attributes on exit
test: self: mmu: fix invalid use of __is_defined
ARM64: configs: multi_v8_defconfig: enable what qemu_virt64_defconfig had
i.MX: HABv4: fix left-over old arch_remap_range prototype use
ARM: mmu64: request TTB region
ARM: mmu64: define early_remap_range for mmu_early_enable usage
ARM: mmu32: define early_remap_range for mmu_early_enable usage
ARM: mmu: invalidate when mapping range uncached
ARM: rockchip: pine64-quartz64: add sdram-init.bin to .gitignore
scripts: kwbimage: check return value of asprintf
scripts: omap3-usb-loader: fix heap overflow
ddr: imx8m: align function definition with prototype
include: bitmask: avoid -Wint-in-bool-context warning
net: fec_mpc5200: fix false positive -Wmisleading-indentation
MIPS: boot: main_entry: use malloc_end instead of _stext
MIPS: longsoon: restart: hide access to zero page
bootm: booti: fix false positive uninitialized variable access
of: override existing reg property in of_fixup_reserved_memory
ARM: dts: state-example: fix use with Phytec phyFLEX i.MX6
ci: fix build on master with newer container image
net: smc1111: add missing drive's of_device_id array sentinel
scripts: remove openssl dependency in multi_v7_defconfig
clocksource: armv7m_systick: fix MMIO address
of: select OF_OVERLAY where appropriate
memory_display: don't skip va_end in error case
regmap-mmio: fix use-after-free
treewide: add MODULE_DEVICE_TABLE markers
kbuild: Port silent mode detection to future gnu make.
Documentation: user: usb: bring up to date
of: define of_read_file/barebox_register_of when !CONFIG_OFTREE
Alexander Shiyan (3):
ARM: clps711x: Remove unused file
ARM: i.MX: Use postcore_platform_driver() macro for imx src driver
ARM: dts: am335x-myirtech: Cosmetic: Remove empty extra line
Antony Pavlov (1):
crypto: imx-scc: Kconfig: drop references to unknown symbols
Christian Melki (1):
barebox: Fix excessive loading of FIT images
Christopher Ebner (1):
partitions: efi: Continue partition enumeration on invalid pte
Hans Christian Lonstad (1):
/arch/arm/dts: imx8mp: Do not mask out mediamix power domain
Johannes Zink (6):
net: phy: print error messages to log
imx-usb-loader: exit with success when displaying help on purpose
imx-usb-loader: use proper return code macros
imx-usb-loader: add commandline option for displaying version number
imx-usb-loader: fix compilation if prepare make target was not called before
imx-usb-loader: also add version information on target tool
Marc Reilly (1):
Documentation: boards: nxp-imx8mp-evk; clarify firmware folder
Marco Felsch (1):
gpiolib: fix gpio-hog functionality
Michael Grzeschik (1):
usb: dwc2: fix multiplier handling in endpoint setup
Michael Olbrich (1):
net: ifup: pass hostname and linuxdevname to linux with DHCP
Oleksij Rempel (3):
usb: dwc2: Port support for USB FIFO devicetree properties from Linux v6.3
usb: dwc2: Port FIFO configuration sync from Linux v6.3
arm: dts: stm32mp151-prtt1l: Configure USB gadget FIFOs for multiple gadgets support
Roland Hieber (4):
ARM: i.MX6: tqma6x: make use of ENTRY_FUNCTION_WITHSTACK
ARM: i.MX: TQMa6x: migrate flash partitions to device tree
ARM: i.MX6: TQMa6x: make tqma6x_env_init reusable
commands: ethlog: wire up help text
Sascha Hauer (109):
ARM: versatile: Enable CONFIG_RELOCATABLE
ARM: versatile: Use common clk framework
ARM: versatile: drop platform code to register UART
ARM: versatile: drop platform code to register GPIOs
ARM: versatile: Use flash from device tree
ARM: versatile: Use smc91c111 from device tree
ARM: versatile: make sure to run initcalls on versatile only
ARM: versatile: simplify ARM1176 support
ARM: versatile: move over to multi image support
ARM: versatile: move over to multi arch support
ARM: versatile: Use existing clocksource driver
ARM: Merge imx_defconfig and versatilepb_defconfig into multi_v5_v6_defconfig
ARM: vexpress: Disable non working devices
Kconfig: source Kconfig.include earlier
ARM: Rockchip: make boards only selectable when firmware is present
dts: update to v6.3-rc7
dts: update to v6.3
mci: dove: Add unhandled enumeration value
MAKEALL: Configure before setting up CROSS_COMPILE
MAKEALL: Select arm64 toolchain for 64bit ARM configs
MAKEALL: order configs alphabetically
MAKEALL: Do not print sizes
MAKEALL: Do not trap
MAKEALL: fix printing number of compiled configs
MAKEALL: support Kconfig fragments
MAKEALL: rename variables
MAKEALL: separate errors and warnings
MAKEALL: allow multiple defconfigs as arguments
ARM: arm64virt: move to multiarch
ARM: multi_v8_defconfig: Enable ARM64 QEMU Virt board
ARM: Remove qemu_virt64_defconfig
ARM: remove vexpress_defconfig
firmware: make drivers/firmware/ obj-y
stddef: add sizeof_field()
pci: add pci_select_bars() helper
ARM: i.MX: make boards selectable only when firmware files are present
dts: update to v6.4-rc1
dts: update to v6.4-rc2
ARM: remove unused membase argument
ARM: remove unused define
ARM: rename __arm_mem_scratch to arm_mem_scratch
ARM: put scratch mem area below OP-TEE
ARM: add arm_mem_optee()
ARM: make arm_mem_scratch() a static inline function
ARM: raspberry-pi: put video core fdt at end of RAM
ARM: define stack base consistently
ARM: move arm_mem_scratch_get() lower for consistency
ARM: drop cache function initialization
ARM: Add _32 suffix to aarch32 specific filenames
ARM: cpu.c: remove unused include
ARM: mmu-common.c: use common mmu include
ARM: mmu32: rename mmu.h to mmu_32.h
ARM: mmu: implement MAP_FAULT
ARM: mmu64: Use arch_remap_range where possible
ARM: mmu32: implement zero_page_*()
ARM: i.MX: Drop HAB workaround
ARM: Move early MMU after malloc initialization
ARM: mmu: move dma_sync_single_for_device to extra file
ARM: mmu: merge mmu-early_xx.c into mmu_xx.c
ARM: mmu: alloc 64k for early page tables
ARM: mmu32: create alloc_pte()
ARM: mmu64: create alloc_pte()
ARM: mmu: drop ttb argument
ARM: mmu: always do MMU initialization early when MMU is enabled
ARM: mmu32: Assume MMU is on
ARM: mmu32: Fix pmd_flags_to_pte() for ARMv4/5/6
ARM: mmu32: Add pte_flags_to_pmd()
ARM: mmu32: add get_pte_flags, get_pmd_flags
ARM: mmu32: move functions into c file
ARM: mmu32: read TTB value from register
ARM: mmu32: Use pages for early MMU setup
ARM: mmu32: Skip reserved ranges during initialization
ARM: mmu64: Use two level pagetables in early code
of: add function to read a file as unflattened device tree
test: Add emulated sabrelite labgrid config
test: Add emulated raspberry pi labgrid configs
pci: set upper word for 64bit base addresses
ARM: SCMI: Use correct smc/hvc instructions on ARM64
clk: rockchip: Add rk3588 support
pinctrl: rockchip: Move struct definitions to separate header file
ARM: rockchip: detect rockchip SoC type when asked for
pinctrl/gpio: rockchip: separate gpio from pinctrl driver
pinctrl: Update pinctrl-rockchip from kernel
phy: rockchip: naneng-combphy: add rk3588 support
reset: Implement reset array support
pci: designware: add rockchip support
phy: realtek: Add RTL8125 internal phy support
net: Update Realtek r8169 driver
ARM: rockchip: rk3588: add memsize detection
ARM: rockchip: Add rk3588 support
ARM: dts: Add rk3588 device trees
ARM: rockchip: Add Radxa ROCK 5B support
Merge branch 'for-next/arm-mmu'
Merge branch 'for-next/arm64-virt'
Merge branch 'for-next/dts'
Merge branch 'for-next/kconfig-missing-firmware'
Merge branch 'for-next/makeall'
Merge branch 'for-next/misc'
Merge branch 'for-next/rockchip'
Merge branch 'for-next/stm32mp'
Merge branch 'for-next/versatile'
Merge branch 'for-next/vexpress'
Add GitHub CI
ARM: set zero page accessible before copying ATAGs there
ARM: mmu_32: fix setting up zero page when it is in SDRAM
Revert "dma: use dma/cpu conversions correctly in dma_map/unmap_single"
ARM: mmu_32: Fix zero page faulting
net: gianfar: make MAC addr setup endian safe, cleanup
Release v2023.06.0
Yegor Yefremov (1):
net: cpsw: increase a delay before reading the ALIVE register
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list