-
4a2c9229ee
Fix warmboot vs cpu_on check
TuxSH
2018-03-03 19:43:44 +01:00
-
03c1ad7119
Add most of warmboot_main
TuxSH
2018-03-03 19:31:22 +01:00
-
be6b67669f
Finish writing warmboot _crt0_
TuxSH
2018-03-03 16:58:23 +01:00
-
48e8d9c7de
Fix bugs required to successfully hand off to kernel
Michael Scire
2018-03-03 06:15:46 -08:00
-
93864f2289
Use the boot critical section
TuxSH
2018-03-03 03:43:46 +01:00
-
92d2abaf1c
Fix section alignment, attempt to clean up the crt0 a bit
TuxSH
2018-03-03 02:02:10 +01:00
-
661bcaa3ec
Change 'success' panic location to end of coldboot_main()
Michael Scire
2018-03-02 15:09:51 -08:00
-
102fb5004f
Cleanup TODOs, implement bootconfig SCR_EL3 bit setting
Michael Scire
2018-03-02 15:04:16 -08:00
-
bf63a077b1
Implement critical section (Lamport's Baker s algorithm)...
TuxSH
2018-03-02 23:32:50 +01:00
-
301b166684
Implement CPU state init, fix bug in cpu_context restore
Michael Scire
2018-03-02 14:16:54 -08:00
-
a292e95c2f
Finish bootup_misc_mmio() - Cur build gets to end of pk2ldr.
Michael Scire
2018-03-02 13:44:21 -08:00
-
ca7b441079
Add call to se_generate_stored_vector() before validating
Michael Scire
2018-03-02 12:59:12 -08:00
-
3388198a26
Add coldboot mmio init (for non 4.x), required for FLOW writes to succeed.
Michael Scire
2018-03-02 12:45:37 -08:00
-
e7e62ef90b
Implement half of bootup_misc_mmio()
Michael Scire
2018-03-02 12:16:30 -08:00
-
b3dbfd8ee0
Update pk2ldr outline, prepare for bootup_misc_mmio() impl
Michael Scire
2018-03-02 11:28:05 -08:00
-
303e189559
Implement a few TODOs with CAR driver.
Michael Scire
2018-03-01 23:33:43 -08:00
-
5f7308efd1
Implement Clock/Reset Driver.
Michael Scire
2018-03-01 22:50:00 -08:00
-
cad9cdc6e0
Reintroduce unmap_* in package2.c
TuxSH
2018-03-02 07:33:47 +01:00
-
78bee60485
Fix dangling comments
Michael Scire
2018-03-01 21:24:22 -08:00
-
7b6d15ec36
Fix up package2.c, current build makes it to the panic() on hardware
Michael Scire
2018-03-01 21:15:19 -08:00
-
2390df4d07
Fix start.s to pass reloc_list properly to package2ldr
Michael Scire
2018-03-01 20:39:49 -08:00
-
0a80a7caf5
Fix coldboot init, Exosphere makes it to PK2LDR in this commit.
Michael Scire
2018-03-01 20:10:05 -08:00
-
63d0b08ac4
Rewrite relocation stuff
TuxSH
2018-03-02 02:19:35 +01:00
-
6903b20579
Fix wrong subsection name
TuxSH
2018-03-01 21:28:50 +01:00
-
82f10b4320
Implements missings parts of pk2ldr, refactor relocation a bit
TuxSH
2018-03-01 19:11:09 +01:00
-
568781bc7e
Strongly validate SPL's buffer address
TuxSH
2018-03-01 12:30:24 +01:00
-
9553c69c8f
Properly detect PK21 master key rev.
Michael Scire
2018-03-01 03:28:34 -08:00
-
205d3b8b80
Fix PK2LDR bugs, Fix SE bugs
Michael Scire
2018-03-01 03:24:45 -08:00
-
7850d3fd57
Put the loaded bootconfig in the evt page
TuxSH
2018-03-01 11:06:55 +01:00
-
b67ce08f84
Fix Modulus Exponentiation in SE driver
Michael Scire
2018-03-01 02:00:39 -08:00
-
4025781f1c
Make clear_bss work regardless of load address
Michael Scire
2018-03-01 00:59:08 -08:00
-
1d621f3bf4
Fix tzram_map_all_segments
TuxSH
2018-03-01 02:36:16 +01:00
-
78b9698260
Finish writing coldboot_main
TuxSH
2018-03-01 01:40:09 +01:00
-
19dda5ed48
Can't copy to VAs if VA don't exist (at that point of the program)
TuxSH
2018-03-01 01:13:10 +01:00
-
e34d86b16f
Fix the set_memory_registers_enable_mmu call
TuxSH
2018-03-01 00:05:18 +01:00
-
3d4dcdde13
Fix ttbl init pointer arith bug, other fixes
TuxSH
2018-02-28 23:35:30 +01:00
-
0a89831193
Clear bss at runtime like Nintendo actually does
TuxSH
2018-02-28 22:29:17 +01:00
-
303774aeb7
Use bic instead of and in finalize_powerdown
TuxSH
2018-02-28 19:58:59 +01:00
-
6be5b0a52f
Implement flush_dcache_all_tzram_pa and invalidate_icache_all_inner_shareable_tzram_pa for the crt0s
TuxSH
2018-02-28 19:06:41 +01:00
-
e5f293e004
Implement and use set_memory_registers_enable_mmu
TuxSH
2018-02-28 13:32:18 +01:00
-
64c8612342
Fix wrongly named register in __set_memory_registers, add prototype
TuxSH
2018-02-28 07:32:14 +01:00
-
c5b0639b8a
Implement BootConfig.
Michael Scire
2018-02-27 20:28:34 -08:00
-
d0b74d7751
Panic Bright Red on failed master key detection.
Michael Scire
2018-02-27 20:00:48 -08:00
-
694872b4cc
Fix decrypt_data_into_keyslot
Michael Scire
2018-02-27 19:59:51 -08:00
-
0508ee29d8
Clean up SE TODOs, implement GIC nonsecure init
Michael Scire
2018-02-27 19:58:56 -08:00
-
1463266190
Status callback keys have guaranteed atomicity from caller locks.
Michael Scire
2018-02-27 19:50:31 -08:00
-
66b3b3a706
Implement Panic() stub.
Michael Scire
2018-02-27 19:43:07 -08:00
-
fba3d1c2d9
Finish implementing Security Engine context save
Michael Scire
2018-02-27 19:05:45 -08:00
-
a8a2f8c3f6
Implement more SE context save functionality
Michael Scire
2018-02-27 17:40:47 -08:00
-
93634d08e3
Implement __set_memory_registers
TuxSH
2018-02-28 02:37:08 +01:00
-
924d469344
Implement the rest of smcCpuSuspend with skeleton SE API calls.
Michael Scire
2018-02-27 17:07:30 -08:00
-
a90a431d61
Refactor save/restore_current_core_context, fix memory ordering issue with inline asm
TuxSH
2018-02-28 01:59:50 +01:00
-
c18af9f3d2
Finish smcCpuOff
Michael Scire
2018-02-27 16:35:35 -08:00
-
7a9e031bff
Uncomment more sleep/suspend code
Michael Scire
2018-02-27 16:10:51 -08:00
-
235b7b65e1
Uncomment BPMP firmware copy in LP0
Michael Scire
2018-02-27 16:01:09 -08:00
-
c2c6745f60
Implement save/restore current core context
Michael Scire
2018-02-27 15:40:05 -08:00
-
9a5bc05259
Fix missing titlekey revision assignment
Michael Scire
2018-02-27 15:14:23 -08:00
-
602507ee8f
Rename cache.s/.h to arm.s/.h
TuxSH
2018-02-27 22:29:47 +01:00
-
5bade9ee1c
Use specs file, remove -nostartfiles
TuxSH
2018-02-27 20:14:12 +01:00
-
0258324872
Use provided __libc_init_array and __libc_fini_array, bugfixes
TuxSH
2018-02-27 16:10:56 +01:00
-
24b15dad40
Unstub lma2vma code
TuxSH
2018-02-27 13:26:51 +01:00
-
b0cb819b06
Add proper linkscript...
TuxSH
2018-02-27 04:19:38 +01:00
-
c4789a5a11
Skeleton smcCpuOff, fix building, fix smcConfigureCarveout
Michael Scire
2018-02-26 17:41:31 -08:00
-
23e9a8369a
Fix Makefile
TuxSH
2018-02-27 01:00:58 +01:00
-
9384546753
Adapt code to match last commit, link in bpmpfw_bin(_size)
TuxSH
2018-02-26 22:30:51 +01:00
-
984ade3ede
Merge pull request #58 from MerryMage/context_id-rename
TuxSH
2018-02-26 22:26:46 +01:00
-
-
c7d83c6eb6
Rewrite the memory map-related code...
TuxSH
2018-02-26 22:09:35 +01:00
-
3d40051146
Rename set_core_entrypoint_and_context_id
MerryMage
2018-02-26 17:11:49 +00:00
-
-
bda9dcbe73
Start implementing smcCpuSuspend
Michael Scire
2018-02-26 02:00:02 -08:00
-
18d0a81bd5
Merge pull request #51 from lioncash/const
TuxSH
2018-02-26 10:26:58 +01:00
-
-
1de6b336bb
all: Make file-scope variables internally linked where applicable (#57)
Mat M
2018-02-26 03:42:21 -05:00
-
c94cfe4898
lock: Use stdatomic.h (#56)
Mat M
2018-02-26 01:59:48 -05:00
-
461105a501
fuse: simplify checks in fuse_get_reserved_odm and fuse_get_spare_bit (#54)
Mat M
2018-02-26 00:23:31 -05:00
-
fff3912c81
mc: Remove dead code in get_carveout_by_id (#52)
Mat M
2018-02-26 00:13:07 -05:00
-
991d4f1355
se: Remove memset in se_perform_aes_block_operation (#53)
Mat M
2018-02-26 00:12:49 -05:00
-
b328effd9b
memory_map: Remove unnecessary const
Lioncash
2018-02-25 23:56:44 -05:00
-
-
4d3f1f6ae8
Remove built files that somehow got here
TuxSH
2018-02-25 22:36:32 +01:00
-
969b781a68
Failed attempt to fix loops not being unrolled, other fixes.
TuxSH
2018-02-25 21:41:16 +01:00
-
ed5f43ef39
Update .gitignore
TuxSH
2018-02-25 20:03:30 +01:00
-
b0ea9c1a0b
Move source files to src/, add Makefile, fix all build and linkage errors, etc.
TuxSH
2018-02-25 20:00:50 +01:00
-
4c7aa566f0
Fix user page mmu mapping and naming scheme
TuxSH
2018-02-25 15:05:52 +01:00
-
ab38217720
Fix mmu descriptor mistakes
TuxSH
2018-02-25 14:37:44 +01:00
-
c46a3cc794
Map userpage in at appropriate address (TODO: Invalidate TLB)
Michael Scire
2018-02-25 01:31:45 -08:00
-
78c8fe36fe
Fix read64le
Michael Scire
2018-02-25 01:26:40 -08:00
-
82b4c6763d
Implement getters for fuse values, fill out smcGetConfig
Michael Scire
2018-02-25 01:21:52 -08:00
-
b0079e404d
Clear pk2ldr in coldboot_main
TuxSH
2018-02-25 03:54:28 +01:00
-
a00e68e94a
Write a significant chunk of coldboot init...
TuxSH
2018-02-25 03:34:15 +01:00
-
be67169390
Merge pull request #50 from lioncash/error
TuxSH
2018-02-25 00:14:50 +01:00
-
-
a081c93094
bootconfig/configitem: Fix includes and identifiers (#49)
Mat M
2018-02-24 15:46:57 -05:00
-
a34813bcf4
memory_map: Fix most compilation issues
Lioncash
2018-02-24 15:38:24 -05:00
-
-
f6008d947d
More previously unknown fuses
Mike H
2018-02-24 18:48:11 +00:00
-
3929ba77e6
Adding FUSE_RESERVED_SW
Mike H
2018-02-24 18:34:49 +00:00
-
e2d45878c3
Preliminary Exosphere FUSE driver
hexkyz
2018-02-24 18:15:47 +00:00
-
cc4f6f7f84
Introduce memory_map.h
TuxSH
2018-02-24 17:13:42 +01:00
-
ed5850ebbf
Implement se_trigger_interrupt, fix up some configitems
Michael Scire
2018-02-24 07:25:38 -08:00
-
e8b1e0b965
Implement exception vectors.
Michael Scire
2018-02-24 06:20:45 -08:00
-
422cd14aac
Implement driver for the GIC-400.
Michael Scire
2018-02-24 05:33:16 -08:00
-
c94fe287cb
Exosphere I2C Driver.
Michael Scire
2018-02-24 04:27:23 -08:00
-
672d76cb31
Fix I2C success mask
Michael Scire
2018-02-23 22:03:13 -08:00
-
56f5b56235
smc_user: Correct cache_flush to flush_dcache_range (#48)
Mat M
2018-02-23 23:38:21 -05:00