diff options
-rw-r--r-- | Documentation/boards/openrisc.rst | 2 | ||||
-rw-r--r-- | Documentation/devicetree/index.rst | 1 | ||||
-rw-r--r-- | Documentation/index.rst | 1 | ||||
-rw-r--r-- | Documentation/talks.rst | 130 | ||||
-rw-r--r-- | Documentation/user/introduction.rst | 13 | ||||
-rw-r--r-- | Documentation/user/watchdog.rst | 11 | ||||
-rw-r--r-- | commands/mmc.c | 1 | ||||
-rw-r--r-- | fs/fs.c | 2 | ||||
-rw-r--r-- | lib/kasan/test_kasan.c | 1 |
9 files changed, 159 insertions, 3 deletions
diff --git a/Documentation/boards/openrisc.rst b/Documentation/boards/openrisc.rst index 34586b4a76..17b0aef4a6 100644 --- a/Documentation/boards/openrisc.rst +++ b/Documentation/boards/openrisc.rst @@ -22,7 +22,7 @@ Example of downloading and installing a toolchain:: $ export PATH=$PATH:$PWD/or1k-elf/bin Running OpenRISC barebox on qemu ------------------------------- +-------------------------------- Running barebox on qemu is similar to running linux on qemu see more details on the qemu wiki site at https://wiki.qemu.org/Documentation/Platforms/OpenRISC diff --git a/Documentation/devicetree/index.rst b/Documentation/devicetree/index.rst index 198c4893ff..d03db3cf82 100644 --- a/Documentation/devicetree/index.rst +++ b/Documentation/devicetree/index.rst @@ -114,4 +114,5 @@ Contents: bindings/leds/* bindings/misc/* bindings/mtd/* + bindings/regulator/* bindings/rtc/* diff --git a/Documentation/index.rst b/Documentation/index.rst index 836dc41af2..a3e019e9f0 100644 --- a/Documentation/index.rst +++ b/Documentation/index.rst @@ -20,6 +20,7 @@ Contents: glossary devicetree/* devel/devel.rst + talks * :ref:`search` * :ref:`genindex` diff --git a/Documentation/talks.rst b/Documentation/talks.rst new file mode 100644 index 0000000000..5f1af59931 --- /dev/null +++ b/Documentation/talks.rst @@ -0,0 +1,130 @@ +Talks and Lectures +================== + +This is a collection of talks held about barebox use and development +at different technical conferences. The most recent overview talk +is from 2020: + +Beyond 'Just' Booting: Barebox Bells and Whistles +------------------------------------------------- + +Ahmad Fatoum, Embedded Linux Conference - Europe 2020 +`[slides] <https://elinux.org/images/9/9d/Barebox-bells-n-whistles.pdf>`__ +`[video] <https://www.youtube.com/watch?v=fru1n54s2W4>`__ + + Porting barebox to a new STM32MP1 board and a general discussion + of design choices like multi-image, VFS, POSIX/Linux API, + fail-safe updates, boot fall-back mechanisms, etc. + +Besides older overview talks, there's a number of talks held +about different aspects of barebox use. +These are listed here in reverse chronological order. + +DOOM portieren für Einsteiger - Heavy Metal auf Bare Metal (German) +------------------------------------------------------------------- + +Ahmad Fatoum, FrOSCon 2021 +`[slides] <https://programm.froscon.de/2021/system/event_attachments/attachments/000/000/622/original/heavy-metal-on-bare-metal.pdf>`__ +`[video] <https://media.ccc.de/v/froscon2021-2687-doom_portieren_fur_einsteiger>`__ + + "DOOM as a boot splash. How, why and how to get it on your nearest + home appliance". A (German) walkthrough on how to leverage barebox + APIs to run DOOM on any hardware supported by barebox. + +Initializing RISC-V: A Guided Tour for ARM Developers +----------------------------------------------------- + +Rouven Czerwinski & Ahmad Fatoum, Embedded Linux Conference 2021 +`[slides] <https://elinux.org/images/8/80/Initializing-riscv.pdf>`__ +`[video] <https://www.youtube.com/watch?v=70oYYuflFLs>`__ + + A guide through the RISC-V architecture and some of its ISA extensions + and a walkthrough of the barebox port to the Beagle-V Starlight. + +From Reset Vector to Kernel - Navigating the ARM Matryoshka +----------------------------------------------------------- + +Ahmad Fatoum, FOSDEM 2021 +`[slides & video] <https://archive.fosdem.org/2021/schedule/event/from_reset_vector_to_kernel/>`__ + + A walkthrough of NXP i.MX8M bootstrap. From Boot ROM through barebox to Linux. + +Booting your i.MX processor secure and implementing i.MX8 secure boot in barebox +-------------------------------------------------------------------------------- + +Rouven Czerwinski, `Stratum 0 Talk 2019 <https://stratum0.org/wiki/Vortr%C3%A4ge/Vorbei#2019>`__ +`[video] <https://www.youtube.com/watch?v=ZUGLEulZLWM>`__ + + A walkthrough of NXP i.MX8MQ high assurance boot with barebox. + +Porting Barebox to the Digi CC-MX6UL SBC Pro (German) +----------------------------------------------------- + +Rouven Czerwinski, `Stratum 0 Live-Hacking 2019 <https://stratum0.org/wiki/Vortr%C3%A4ge/Vorbei#2019>`__ +`[video] <https://www.youtube.com/watch?v=FIwF6GfmsWM>`__ + + Live-coding a barebox port to a new i.MX6UL board while + explaining the details (in German). + +Remote update adventures with RAUC, Yocto and Barebox +----------------------------------------------------- + +Patrick Boettcher, `Embedded Recipes 2019 <https://embedded-recipes.org/2019/remote-update-adventures-with-rauc-yocto-and-barebox/>`__ +`[video] <https://www.youtube.com/watch?v=hS3Fjf7fuHM>`__ + + Remote update and redundant boot of Embedded Linux devices + in the field with RAUC and barebox bootchooser. + +Verified Boot: From ROM to Userspace +------------------------------------ + +Marc Kleine-Budde, Embedded Linux Conference - Europe 2016 +`[slides] <https://elinux.org/images/f/f8/Verified_Boot.pdf>`__ +`[video] <https://www.youtube.com/watch?v=lkFKtCh2SaU>`__ + + Using FOSS components, including barebox, for a cryptographically + secured boot chain on NXP i.MX6 SoCs. + +Booting Linux Made Easy: A Barebox Update +----------------------------------------- + +Robert Schwebel, `FOSDEM 2014 <https://archive.fosdem.org/2014/schedule/event/_booting_linux_made_easy:_a_barebox_update/>`__ +`[video] <https://www.youtube.com/watch?v=p-mHAQaJQcM>`__ + + An overview talk on barebox use in embedded Linux systems. + +Barebox and Bootloader Specification +------------------------------------ + +Sascha Hauer, Embedded Linux Conference - Europe 2013 +`[slides] <https://elinux.org/images/9/90/Barebox-elce2013-bootloaderspec.pdf>`__ +`[video] <https://www.youtube.com/watch?v=Z8FcIGXox_Y>`__ + + The freedesktop.org bootloader specification and its support in barebox. + +Barebox Bootloader +------------------ + +Sascha Hauer, Embedded Linux Conference - Europe 2012 +`[slides] <https://elinux.org/images/6/6b/PRE-20121108-1-Barebox.pdf>`__ +`[video] <https://www.youtube.com/watch?v=oY8BjCEt_p8>`__ + + An update on barebox development progress with a discussion of newly + implemented features in the preceding three years. + +Barebox: Booting Linux Fast and Fancy +------------------------------------- + +Robert Schwebel & Sascha Hauer, Embedded Linux Conference - Europe 2010 +`[slides] <https://elinux.org/images/8/89/ELCE-2010-Barebox-Booting-Linux-Fast-and-Fancy.pdf>`__ + + Boot time optimization while using barebox. + +U-Boot-v2 +--------- + +Sascha Hauer & Marc Kleine-Budde, Embedded Linux Conference 2009 +`[slides] <https://elinux.org/images/9/90/Hauer-U_BootV2.pdf>`__ + + Early barebox (still named U-Boot v2 back then) presentation on + the motivation for the fork and the niceties made possible by it. diff --git a/Documentation/user/introduction.rst b/Documentation/user/introduction.rst index 8f7be7d583..e7388b8bc9 100644 --- a/Documentation/user/introduction.rst +++ b/Documentation/user/introduction.rst @@ -26,6 +26,15 @@ discussion of barebox takes place here: http://lists.infradead.org/mailman/listinfo/barebox/ -There's also an IRC channel: +Mails sent to the barebox mailing list are archived on +`lore.barebox.org <https://lore.barebox.org/barebox/>`_. -IRC: #barebox (Freenode) +Patch series sent there can be fetched with `b4 <https://pypi.org/project/b4/>`_ :: + + git config b4.midmask https://lore.barebox.org/%s + git config b4.linkmask https://lore.barebox.org/%s + b4 am https://lore.barebox.org/$messageid # replace with link + +There's also an IRC channel, which is +`bridged to Matrix <https://app.element.io/#/room/#barebox:matrix.org>`_: +#barebox on Libera Chat diff --git a/Documentation/user/watchdog.rst b/Documentation/user/watchdog.rst index ff400317a0..0220965598 100644 --- a/Documentation/user/watchdog.rst +++ b/Documentation/user/watchdog.rst @@ -10,6 +10,15 @@ the bootloader. For these scenarios barebox provides the watchdog framework with the following functionality and at least ``CONFIG_WATCHDOG`` should be enabled. +Disabling for development +~~~~~~~~~~~~~~~~~~~~~~~~~ + +The shorthand command ``wd -x`` will disable all watchdogs. +If hardware (or driver) doesn't support turning off the watchdog, +an autpoller will be registered to periodically feed watchdogs. +This should only be needed for development. +See :ref:`boot-watchdog-timeout` for how to use the watchdog in the field. + Polling ~~~~~~~ @@ -98,6 +107,8 @@ device tree or via the ``priority`` device parameter. Normally, watchdogs that have a wider effect should be given the higher priority (e.g. PMIC watchdog resetting the board vs. SoC's watchdog resetting only itself). +.. _boot-watchdog-timeout: + Boot Watchdog Timeout ~~~~~~~~~~~~~~~~~~~~~ diff --git a/commands/mmc.c b/commands/mmc.c index cbbb9d6151..1e62b71850 100644 --- a/commands/mmc.c +++ b/commands/mmc.c @@ -194,5 +194,6 @@ BAREBOX_CMD_HELP_END BAREBOX_CMD_START(mmc) .cmd = do_mmc, BAREBOX_CMD_OPTS("enh_area [-c] /dev/mmcX") + BAREBOX_CMD_GROUP(CMD_GRP_HWMANIP) BAREBOX_CMD_HELP(cmd_mmc_help) BAREBOX_CMD_END @@ -3255,6 +3255,7 @@ static int do_lookup_dentry(int argc, char *argv[]) BAREBOX_CMD_START(lookup_dentry) .cmd = do_lookup_dentry, + BAREBOX_CMD_GROUP(CMD_GRP_MISC) BAREBOX_CMD_END static struct dentry *debug_follow_mount(struct dentry *dentry) @@ -3309,5 +3310,6 @@ static int do_debug_fs_dump(int argc, char *argv[]) BAREBOX_CMD_START(debug_fs_dump) .cmd = do_debug_fs_dump, + BAREBOX_CMD_GROUP(CMD_GRP_MISC) BAREBOX_CMD_END #endif diff --git a/lib/kasan/test_kasan.c b/lib/kasan/test_kasan.c index e472bb3499..d0ea915477 100644 --- a/lib/kasan/test_kasan.c +++ b/lib/kasan/test_kasan.c @@ -474,5 +474,6 @@ static int do_kasan_test(int argc, char *argv[]) BAREBOX_CMD_START(kasan_tests) .cmd = do_kasan_test, BAREBOX_CMD_DESC("Run KAsan tests") + BAREBOX_CMD_GROUP(CMD_GRP_MISC) BAREBOX_CMD_COMPLETE(empty_complete) BAREBOX_CMD_END |