Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[validate these changes] GIC improvements etc - from ToolmanP #33

Draft
wants to merge 73 commits into
base: main
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
5697664
feat(asm): add tlbi support and rewrite barrier static methods
ToolmanP Jan 21, 2024
56c73aa
feat: init mmu modules
ToolmanP Jan 21, 2024
6327884
feat: add TTBR1_EL2 module
ToolmanP Jan 21, 2024
3a89770
deps: bmp Cargo deps
ToolmanP Jan 21, 2024
afa6141
fix(barrier): wrap barrier
ToolmanP Jan 24, 2024
57b2930
feat: impl mmu features
ToolmanP Jan 24, 2024
e9bfd4c
fix(tlb): fix missing vmalle2is
ToolmanP Feb 1, 2024
a2c35d2
feat(barrier): add barrier with no option support
ToolmanP Feb 1, 2024
3079c68
feat(cache): add cache invalidation support
ToolmanP Feb 1, 2024
3532cfd
feat: add at instruction
Varia7 Feb 8, 2024
6368eb1
feat(reg): add hpfar_el2 register
Varia7 Feb 8, 2024
7f18a56
fix(descriptor): fix offset for address
ToolmanP Feb 8, 2024
5fa44b8
refactor(cache): refactor all cache flush operations
ToolmanP Feb 12, 2024
faea5e2
feat(irq): add irq support
ToolmanP Feb 12, 2024
0dc1e39
fix: fix typo
ToolmanP Feb 12, 2024
0a2351e
Merge branch 'main' of https://github.com/ToolmanP/aarch64-cpu
Varia7 Feb 13, 2024
9ee5d78
feat: update exception reason enum
ToolmanP Feb 13, 2024
edf1591
feat(mmu): update mmtype/mmprot abstraction
ToolmanP Feb 22, 2024
befb6ca
feat(registers): add TTBR traits for loading generics
ToolmanP Feb 22, 2024
81fde03
feat(reg): add field about data abort for esr_el2
Varia7 Mar 4, 2024
99d4b6f
feat(registers): add vmpidr_el2
ToolmanP Mar 7, 2024
8a52975
feat(asm): add tlbi support and rewrite barrier static methods
ToolmanP Jan 21, 2024
0ad2db1
feat: init mmu modules
ToolmanP Jan 21, 2024
b43b419
feat: add TTBR1_EL2 module
ToolmanP Jan 21, 2024
fe0d945
deps: bmp Cargo deps
ToolmanP Jan 21, 2024
7c99a11
fix(barrier): wrap barrier
ToolmanP Jan 24, 2024
21b8836
feat: impl mmu features
ToolmanP Jan 24, 2024
a2dc639
fix(tlb): fix missing vmalle2is
ToolmanP Feb 1, 2024
29bbeb7
feat(barrier): add barrier with no option support
ToolmanP Feb 1, 2024
231affb
feat(cache): add cache invalidation support
ToolmanP Feb 1, 2024
ab18327
feat: add at instruction
Varia7 Feb 8, 2024
ad22e69
feat(reg): add hpfar_el2 register
berkus Nov 8, 2024
816cca3
Merge branch 'main' of https://github.com/ToolmanP/aarch64-cpu
Varia7 Feb 13, 2024
852bef6
feat: update exception reason enum
ToolmanP Feb 13, 2024
7f1162b
feat(mmu): update mmtype/mmprot abstraction
ToolmanP Feb 22, 2024
c6bf5d3
feat(registers): add TTBR traits for loading generics
ToolmanP Feb 22, 2024
54212df
feat(reg): add field about data abort for esr_el2
Varia7 Mar 4, 2024
a503376
feat(exception): add a new exception reason
Varia7 Mar 22, 2024
1b86688
Merge branch 'main' of github.com:ToolmanP/aarch64-cpu
Varia7 Mar 22, 2024
de895d2
feat(mmu): refactor imports
berkus Nov 8, 2024
5a78e53
feat(mmu): add virt page entry def
ToolmanP Mar 31, 2024
a99c625
feat(registers): add icc_sre_elx registers
berkus Nov 8, 2024
811a0a7
feat(registers): add gicv3 support
berkus Nov 8, 2024
ed28bd8
refactor: add lower field value for descriptor
ToolmanP Apr 18, 2024
8180359
feat(gic): add gic (re)distributer structure
ToolmanP Apr 18, 2024
73bb63b
feat(gic): add gicv2 distributer register
ToolmanP Apr 18, 2024
74f2b92
chore: bump Cargo.toml
ToolmanP Apr 18, 2024
9517b6a
feat(gic): add gicv2 handlers
ToolmanP Apr 27, 2024
78d07d6
feat(mmu): refactor vadescriptor
ToolmanP May 2, 2024
9f98f67
fix(gic): remove unused mods
ToolmanP May 2, 2024
754c180
refactor: move PageMode into aarch64-cpu
ToolmanP May 9, 2024
88438de
feat: add timer source for EL2
berkus Nov 8, 2024
8cb5b1f
feat: refine gicv2 methods
ToolmanP Jun 25, 2024
f20b70e
feat: add AMO annoation
ToolmanP Jun 28, 2024
812e8af
feat: add raw set method
ToolmanP Jun 28, 2024
046277a
refactor: change into impl for PageMode
ToolmanP Jun 28, 2024
d5480f5
feat: add Derive Debug in MM
ToolmanP Jul 5, 2024
14673ac
refactor: export ReadWritable
berkus Nov 8, 2024
20a86dc
feat: add translation command
ToolmanP Jul 18, 2024
b628461
fix(sctlr): add missing fields
berkus Nov 8, 2024
d866874
feat: add MMAttrIdx support
ToolmanP Jul 24, 2024
ccdd5d7
add gicv3 support
xyyan0123 Jul 25, 2024
9979147
fix: fix DCACHE flush_all
zhr1502 Jul 25, 2024
7221ffa
fix: fix sl2 page descriptors bug
ToolmanP Aug 2, 2024
17236c3
refactor: rename variable
ToolmanP Aug 7, 2024
21681f5
mm: add size method
ToolmanP Aug 16, 2024
2b1d2b6
chore: rustfmt
berkus Nov 8, 2024
74356c7
add GICD_PIDR2 for gicv3
xyyan0123 Aug 19, 2024
1540463
add GICR_PIDR2 and GICR_TYPER field
xyyan0123 Aug 20, 2024
3a97cc4
feat(exception): add HVC64 exception reason field
zhr1502 Aug 26, 2024
ea1d62c
change all visibility of GICD registers to pub
xyyan0123 Aug 26, 2024
0fa3c67
fix typo
xyyan0123 Aug 26, 2024
4bbfb6a
make gicr members public
xyyan0123 Aug 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat(exception): add HVC64 exception reason field
  • Loading branch information
zhr1502 authored and berkus committed Nov 8, 2024
commit 3a97cc4c7a63e1fb38063ffe7c1ecb9b6eb3eb60
1 change: 1 addition & 0 deletions src/exception.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#[derive(Copy, Clone)]
pub enum ExceptionReason {
HVC64 = 0b010110,
DataAbortLowerEl = 0b100100,
DataAbortCurrentEl = 0b100101,
Unimplemented = 0xff,