summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-04-04 09:25:46 +0200
committerGitHub <noreply@github.com>2025-04-04 09:25:46 +0200
commitaf3ba9171e70ce3dc42defafd91370abf3f12519 (patch)
tree7a908bfccc9530a818d730a6a4de22739a910b6e
parentab54bcd5bee32eeb5e182ffff4e8bb187e875aa0 (diff)
parent5e1ef5e23dd3e594072f8f32cbb4a6f392d36e55 (diff)
Merge pull request #3 from amlel-el-mahrouss/dev
fw/modules: add astdx for embdfs.
-rw-r--r--.gitmodules3
-rw-r--r--CREDITS2
-rw-r--r--compile_flags.txt1
-rw-r--r--docs/drawio/FIRMWARE.drawio43
-rw-r--r--docs/md/SPECIFICATION_FIRMWARE.md (renamed from docs/SPECIFICATION_FIRMWARE.md)6
-rwxr-xr-xformat.sh2
-rw-r--r--lib/ppc64/processor.h2
-rw-r--r--mmap/aarch64-epm.json9
-rw-r--r--pci-map/.gitkeep0
-rw-r--r--pci-map/standard.json11
-rw-r--r--src/hal/coreboot-ahci-driver.c (renamed from src/coreboot-ahci-driver.c)0
-rw-r--r--src/hal/coreboot-flash.c (renamed from src/custom_hw/coreboot-flash.c)0
m---------vendor/astdx0
13 files changed, 62 insertions, 17 deletions
diff --git a/.gitmodules b/.gitmodules
index 8624630..a055e73 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,6 @@
[submodule "meta/css"]
path = meta/css
url = https://github.com/jothepro/doxygen-awesome-css.git
+[submodule "vendor/astdx"]
+ path = vendor/astdx
+ url = git@github.com:amlel-el-mahrouss/astdx.git
diff --git a/CREDITS b/CREDITS
new file mode 100644
index 0000000..91be5d4
--- /dev/null
+++ b/CREDITS
@@ -0,0 +1,2 @@
+lib/ppc64/: Forked from a repository, which I can't recall.
+vendor/astdx: Amlal El Mahrouss \ No newline at end of file
diff --git a/compile_flags.txt b/compile_flags.txt
index 26d546d..4e3bed0 100644
--- a/compile_flags.txt
+++ b/compile_flags.txt
@@ -1,2 +1,3 @@
-I./
-std=c17
+-I./vendor/
diff --git a/docs/drawio/FIRMWARE.drawio b/docs/drawio/FIRMWARE.drawio
new file mode 100644
index 0000000..7cfc174
--- /dev/null
+++ b/docs/drawio/FIRMWARE.drawio
@@ -0,0 +1,43 @@
+<mxfile host="65bd71144e">
+ <diagram id="Y4IiTM2VAUaSzFU077Gh" name="Page-1">
+ <mxGraphModel dx="1144" dy="698" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
+ <root>
+ <mxCell id="0"/>
+ <mxCell id="1" parent="0"/>
+ <mxCell id="2" value="EMBDFS (LAST BYTES TO BE LOADED BY BFL)" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxGeometry x="305" y="180" width="240" height="70" as="geometry"/>
+ </mxCell>
+ <mxCell id="5" style="edgeStyle=none;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="3" target="4">
+ <mxGeometry relative="1" as="geometry"/>
+ </mxCell>
+ <mxCell id="6" value="Loads Stage2 from" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="5">
+ <mxGeometry x="-0.1733" relative="1" as="geometry">
+ <mxPoint as="offset"/>
+ </mxGeometry>
+ </mxCell>
+ <mxCell id="7" style="edgeStyle=none;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="3" target="2">
+ <mxGeometry relative="1" as="geometry"/>
+ </mxCell>
+ <mxCell id="8" value="Loads Driver from" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="7">
+ <mxGeometry x="0.15" y="-2" relative="1" as="geometry">
+ <mxPoint as="offset"/>
+ </mxGeometry>
+ </mxCell>
+ <mxCell id="3" value="BASE FIRMWARE LAYER (FIRST BYTES&lt;div&gt;TO BE LOADED)&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxGeometry x="305" y="370" width="240" height="60" as="geometry"/>
+ </mxCell>
+ <mxCell id="9" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="4" target="3">
+ <mxGeometry relative="1" as="geometry"/>
+ </mxCell>
+ <mxCell id="10" value="If Stage2 part, load it and replace current context&lt;div&gt;with Stage2&lt;/div&gt;" style="edgeLabel;html=1;align=left;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="9">
+ <mxGeometry x="0.414" y="-2" relative="1" as="geometry">
+ <mxPoint as="offset"/>
+ </mxGeometry>
+ </mxCell>
+ <mxCell id="4" value="EPM Partition" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" vertex="1" parent="1">
+ <mxGeometry x="30" y="540" width="190" height="70" as="geometry"/>
+ </mxCell>
+ </root>
+ </mxGraphModel>
+ </diagram>
+</mxfile> \ No newline at end of file
diff --git a/docs/SPECIFICATION_FIRMWARE.md b/docs/md/SPECIFICATION_FIRMWARE.md
index b0b40b4..39aa2a0 100644
--- a/docs/SPECIFICATION_FIRMWARE.md
+++ b/docs/md/SPECIFICATION_FIRMWARE.md
@@ -5,7 +5,7 @@
==================================================================
==================================================================
-0. What we want:
+0. What the objective:
==================================================================
- Optimized for each target.
@@ -25,8 +25,8 @@
2. Executable Layout:
==================================================================
-- 0x80000000/0x00FF/0x1000: Firmware Startup Code
-- 0x90000000/0x7c00: Executable Information Header or equivalent.
+- 0x80000000/0x00FF/0x0000: Firmware Startup Code
+- 0x90000000/0x7c00: Linear Header or EPM partition.
==================================================================
3. Error Codes:
diff --git a/format.sh b/format.sh
index 0bfa3e0..145caf5 100755
--- a/format.sh
+++ b/format.sh
@@ -7,7 +7,7 @@ THIS_DIR="$(dirname "$THIS_PATH")"
# in the regular expression just below
FILE_LIST="$(find "$THIS_DIR" | grep -E ".*(\.cc|\.c|\.h)$")"
-echo -e "Files found to format = \n\"\"\"\n$FILE_LIST\n\"\"\""
+echo -e "Files found to format: \n\"\"\"\n$FILE_LIST\n\"\"\""
# Format each file.
# - NB: do NOT put quotes around `$FILE_LIST` below or else the `clang-format` command will
diff --git a/lib/ppc64/processor.h b/lib/ppc64/processor.h
index 602ff08..c0d7b03 100644
--- a/lib/ppc64/processor.h
+++ b/lib/ppc64/processor.h
@@ -1,8 +1,6 @@
#ifndef __ASM_PPC_PROCESSOR_H
#define __ASM_PPC_PROCESSOR_H
-/// ! @note The NeWS SoC is based on the e5500 core.
-
/*
* Default implementation of macro that returns current
* instruction pointer ("program counter").
diff --git a/mmap/aarch64-epm.json b/mmap/aarch64-epm.json
new file mode 100644
index 0000000..8311a52
--- /dev/null
+++ b/mmap/aarch64-epm.json
@@ -0,0 +1,9 @@
+{
+ "machine": "EPM AARCH64",
+ "type": "Generic",
+ "vendor": "Amlal El Mahrouss",
+ "fb": "0x1000000",
+ "boot": "0x4000000",
+ "pci-tree": "0x8002000",
+ "eeprom": "0x0000000"
+} \ No newline at end of file
diff --git a/pci-map/.gitkeep b/pci-map/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/pci-map/.gitkeep
+++ /dev/null
diff --git a/pci-map/standard.json b/pci-map/standard.json
deleted file mode 100644
index cf9c334..0000000
--- a/pci-map/standard.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
- {
- "Machine": "Standard PC",
- "Type": "Desktop",
- "Vendor": "Amlal EL Mahrouss.",
- "FrameBuffer": "0x1000000",
- "BootLoader": "0x4000000",
- "PCITree": "0x8002000",
- "ROM": "0xFFFF000"
- }
-]
diff --git a/src/coreboot-ahci-driver.c b/src/hal/coreboot-ahci-driver.c
index 2ef2098..2ef2098 100644
--- a/src/coreboot-ahci-driver.c
+++ b/src/hal/coreboot-ahci-driver.c
diff --git a/src/custom_hw/coreboot-flash.c b/src/hal/coreboot-flash.c
index 1416bc3..1416bc3 100644
--- a/src/custom_hw/coreboot-flash.c
+++ b/src/hal/coreboot-flash.c
diff --git a/vendor/astdx b/vendor/astdx
new file mode 160000
+Subproject 6dd868e57f32905e5e553f6e3ed5ef35ae5cae7