summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2019-07-17 23:43:26 +0200
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2019-07-18 02:03:34 +0200
commitd84a728a1ec2711110856e0bc92655a9d37d0bcd (patch)
treec483d1ca8d7b9201c504bf642d2ee87eee07555e
parent16f0fc27b48432127723f65832971763f57b5503 (diff)
downloadpresentations-d84a728a1ec2711110856e0bc92655a9d37d0bcd.tar.gz
presentations-d84a728a1ec2711110856e0bc92655a9d37d0bcd.tar.bz2
presentations-d84a728a1ec2711110856e0bc92655a9d37d0bcd.zip
July 2019 Replicant meeting: bootloaders: Add init
This could be useful information to share. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
-rw-r--r--Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Makefile5
-rw-r--r--Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Replicant_and_bootloaders.tex2
-rw-r--r--Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/dot/init.dot44
3 files changed, 50 insertions, 1 deletions
diff --git a/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Makefile b/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Makefile
index 78a829a..251c4ac 100644
--- a/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Makefile
+++ b/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Makefile
@@ -7,13 +7,16 @@ all: test
output:
mkdir output
-$(TITLE)_en.pdf: output/boot_midas.png output
+$(TITLE)_en.pdf: output/boot_midas.png output/init.png output
pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}'
pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}'
output/boot_midas.png: dot/boot_midas.dot output
dot -T png $< > $@
+output/init.png: dot/init.dot output
+ dot -T png $< > $@
+
test: $(TITLE)_en.pdf
xdg-open output/$(TITLE).pdf
diff --git a/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Replicant_and_bootloaders.tex b/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Replicant_and_bootloaders.tex
index a7a6c94..8a081cd 100644
--- a/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Replicant_and_bootloaders.tex
+++ b/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/Replicant_and_bootloaders.tex
@@ -93,6 +93,8 @@
\pictureframe{output/boot_midas.png}
+\pictureframe{output/init.png}
+
\begin{frame}
\center{General nonfree bootloader issues:}
diff --git a/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/dot/init.dot b/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/dot/init.dot
new file mode 100644
index 0000000..b923c2f
--- /dev/null
+++ b/Replicant_contributors_meeting_27_28_July_2019_Paris_France/bootloaders/dot/init.dot
@@ -0,0 +1,44 @@
+digraph {
+ bgcolor="#ffffff00" # Transparent background
+ ratio=0.8
+ overlap=false
+ subgraph cluster_1 {
+ label="system/core/init/init.cpp";
+ "early-init";
+ "init";
+ "late-init";
+ "early-init" -> "init";
+ "early-init" -> "wait_for_coldboot_done" [label="async"];
+ "early-init" -> "MixHwrngIntoLinuxRng" [label="async"];
+ "early-init" -> "SetMmapRndBits" [label="async"];
+ "early-init" -> "SetKptrRestrict" [label="async"];
+ "early-init" -> "keychord_init" [label="async"];
+ "early-init" -> "console_init" [label="async"];
+ "early-init" -> "StartBoringSslSelfTest" [label="async"];
+ "early-init" -> "StartBoringSslSelfTest" [label="async"];
+ "init" -> "charger" [label="(bootmode == charger)"];
+ "init" -> "late-init" [label="(bootmode != charger)"];
+ "init" -> "queue_property_triggers" [label="async"];
+ };
+ subgraph cluster_2 {
+ label="system/core/rootdir/init.rc";
+ subgraph cluster_2 {
+ label="on late-init";
+ "fs";
+ "boot";
+ "early-boot";
+ "post-fs-data";
+ "late-fs";
+
+ "late-init" -> "fs";
+ "fs" -> "post-fs";
+ "post-fs" -> "late-fs";
+ "late-fs" -> "post-fs-data";
+ "post-fs-data" -> "zygote-start";
+ "zygote-start" -> "load_persist_props_action";
+ "load_persist_props_action" -> "firmware_mounts_complete";
+ "firmware_mounts_complete" -> "early-boot";
+ "early-boot" -> "boot";
+ };
+ };
+}