summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/boards/openrisc.rst2
-rw-r--r--Documentation/devicetree/index.rst1
-rw-r--r--Documentation/index.rst1
-rw-r--r--Documentation/talks.rst130
-rw-r--r--Documentation/user/introduction.rst13
-rw-r--r--Documentation/user/watchdog.rst11
-rw-r--r--commands/mmc.c1
-rw-r--r--fs/fs.c2
-rw-r--r--lib/kasan/test_kasan.c1
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
diff --git a/fs/fs.c b/fs/fs.c
index 60fdb29078..02ced6d6df 100644
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -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