Michael Scire
a51d355707
exo: there's no reason to not always init uart to be safe, actually
2018-12-04 16:01:26 -08:00
Michael Scire
a79f4cf6f6
exosphere: fix sleep mode when debugmode is enabled
2018-12-04 15:59:30 -08:00
Michael Scire
fc426a06b2
exo: fix vaddr/paddr confusion in rcm reboot code
2018-12-01 13:56:13 -08:00
Michael Scire
be5b58d033
fatal: Reboot to RCM if VOL is pressed instead of PWR.
2018-11-30 05:33:35 -08:00
Michael Scire
8d3b8354c3
Exosphere: Add extension to perform a reboot to rcm.
2018-11-30 04:57:17 -08:00
Michael Scire
72a2c10896
exosphere: Add support for enabling debugmode via BCT.ini
2018-11-30 03:10:27 -08:00
SciresM
ab33329129
Merge pull request #266 from Atmosphere-NX/fatal
...
Implement custom fatal sysmodule.
2018-11-29 12:04:40 -08:00
Michael Scire
767a4b3606
fusee/exo: BYOK support for 6.2.0. Proper support TODO.
2018-11-25 22:37:24 -08:00
Michael Scire
a71d98d78b
exosphere: Implement optional 6.2.0+ keygen
2018-11-25 17:11:21 -08:00
Michael Scire
eab5e0df9b
exosphere: add EXOSPHERE_TARGET_FIRMWARE_620
2018-11-25 16:06:46 -08:00
Michael Scire
e214f4d325
exosphere: update for new master key
2018-11-25 15:51:04 -08:00
hexkyz
7e3b5c37d0
exosphere: Add missing register write.
2018-11-15 21:38:32 +00:00
SciresM
c530bb8910
Merge branch 'master' into fatal
2018-11-14 14:15:01 -08:00
hexkyz
7c61e935ee
exosphere: Fix virtual mapping of MC_SECURITY_CFG3.
...
Allow DRAM magic test value to be written on < 4.0.0.
2018-11-14 21:12:36 +00:00
hexkyz
e5e9968d22
fusee: Remove obsolete MC carveout configuration.
...
exosphere: Fix client access for MC carveout 2.
2018-11-14 20:14:41 +00:00
Michael Scire
2838e41819
Add defines for atmosphere git revision.
2018-11-13 12:42:35 -08:00
Michael Scire
f9f9997d3f
Exosphere: fix warmboot constant for 4.0.0-4.1.0
2018-10-17 16:40:57 -07:00
Michael Scire
6711cd93a8
atmosphere: extract API version management to common folder
2018-10-16 17:54:50 -07:00
Michael Scire
412511f32a
Exosphere: Bump version to 0.7.0
2018-10-16 17:30:24 -07:00
Michael Scire
11159f5fa9
exosphere: Add package2 support for 6.0.0
2018-10-16 14:10:00 -07:00
TuxSH
06088d4c60
exosphere: fix neon regs being used => don't link against newlib, use -mgeneral-regs-only
2018-09-27 23:56:01 +02:00
TuxSH
210c6425c3
Cull unmainted exosphere/src/dbg folder
2018-09-27 22:54:30 +02:00
Michael Scire
a2b4d9168d
exosphere: ConfigItem_IsQuestUnit was added in 3.0, not 4.0
2018-09-20 13:47:20 -07:00
hexkyz
39d812f434
fusee: Move nxboot hand-off to IRAM.
...
fusee/exosphere: Minor cleanup.
2018-09-15 21:08:58 +01:00
Michael Scire
fa0e906129
exosphere: Add support for 6.0.0.
2018-09-08 23:51:52 -07:00
hexkyz
28e4d4411d
Add and fix copyright notices for better GPL compliance (thanks @naehrwert and @CTCaer).
2018-09-07 16:00:13 +01:00
Resaec
d8451eb804
Merge branch 'master' of https://github.com/Atmosphere-NX/Atmosphere
2018-09-05 05:56:06 +02:00
Resaec
1c8abb4afb
name some MC registers
...
replace hex values with enum
cleanup code for better readability
2018-09-05 05:55:46 +02:00
hexkyz
a8ac5c651f
exosphere: Add SYSCTR0 register definitions.
2018-08-31 22:38:46 +00:00
hexkyz
611e85e6ee
fusee: Implement BootConfig and Boot Reason handling.
2018-08-29 18:28:21 +01:00
Michael Scire
c40bb9b317
Exosphere: Fix crash for certain games on newer firmwares
2018-08-20 19:31:15 -07:00
SciresM
b5234e9efb
exo: cleanup + (theoretical) 1.0.0 support in smcCpuSuspend
2018-08-20 14:38:39 +09:00
Michael Scire
d9f83ce368
exosphere: add theoretical dev unit key support
2018-08-16 22:13:29 -07:00
Michael Scire
7346ede1e1
exosphere: use our open source bpmpfw (warmboot still works)
2018-08-16 20:46:33 -07:00
Michael Scire
46f68fcbff
Exosphere: Fix carveout saving (warmboot now works on 5.1.0)
2018-08-16 20:17:37 -07:00
Michael Scire
a0deea8ae0
exo: fix SAVE_WP_REG definition
2018-08-16 18:56:49 -07:00
Michael Scire
ee0117b59e
exo: tabs->spaces...
2018-08-16 18:56:04 -07:00
Michael Scire
f41aaccaa2
exosphere: commit WIP warmboot progress
...
-15+ bugs fixed
-We now receive ~0x400 SMCs from user processes
(including from psm) on wake-from-sleep
2018-08-16 18:45:38 -07:00
Michael Scire
adc496b6a7
Exosphere: Change physical segment maps depending on firmware version
2018-08-02 21:33:55 -07:00
Michael Scire
a9b20b5553
Exosphere: Fix CFLAGs for latest devkitA64
2018-07-29 11:02:20 -07:00
hexkyz
7836609839
Fix multiple issues reported by Coverity Scan
2018-07-26 18:45:18 +01:00
hexkyz
116eb6c67c
Merge pull request #73 from Resaec/uart
...
Add UART register enumerators
2018-06-04 16:33:43 +01:00
Michael Scire
fa4c219395
Exosphere: Fix bugs, now boots 5.1.0 successfully.
2018-06-01 22:20:04 -06:00
Michael Scire
b566d04036
Exosphere: Fix 4.0+ hang while waiting for BPMP shutdown.
2018-06-01 01:39:08 -06:00
Michael Scire
af9bee6e7f
Exosphere: Fix SE definition bug, misc other bugs. Now boots on 1.0.0
2018-06-01 00:46:05 -06:00
Michael Scire
1058ac7b2d
Exosphere: Fix MMIO configuration on low firmware versions.
2018-05-31 18:32:51 -06:00
TuxSH
ad5be3cae5
Refactor exosphère's linker script
...
To properly separate text/rodata/data+bss, page-alignment needs to be added, as well as some symbol definitions and support code...
2018-05-27 00:36:41 +02:00
Michael Scire
ef9adabb40
Exosphere: Fix MC carveout setup bug, now receives smcCpuOn from kernel on 1.0.0.
2018-05-21 20:14:18 -06:00
TuxSH
561fa90669
Use uintX_t for the SE & copy bugfixed SE struct definition
2018-05-21 19:05:00 +02:00
Michael Scire
366cc5e189
Exosphere: Fix extremely spooky Security Engine bugs, now makes it to the end of package2loader.
2018-05-21 04:30:53 -06:00
TuxSH
b4eeddd7e1
Revamp all the Makefiles (thanks @fincs @WinterMute)
...
... dependencies are now properly handled (e.g. header changes, etc.)
2018-05-19 01:07:27 +02:00
Michael Scire
9424510f8f
Exosphere: Fix remaining crt0 bugs, we now make it to pk2ldr.
2018-05-18 07:16:41 -06:00
Michael Scire
6954925f71
Exosphere: Fix bug, we now make it past MMU enable.
2018-05-18 06:58:49 -06:00
Michael Scire
ea905725c4
Exosphere: Copy initial data image to DRAM for coldboot init.
2018-05-18 06:49:49 -06:00
Michael Scire
1a9f095463
Exosphere: Fix relocation bug (warmboot relocs currently broken in edge case)
2018-05-18 03:10:48 -06:00
TuxSH
5b5d3c69c2
[exosphere] Fix bug in package2.c
2018-05-17 16:15:30 +02:00
TuxSH
3dac6c9268
Fix bug in fusee: package2.c, etc.
2018-05-17 16:11:10 +02:00
TuxSH
912590b2fd
[exosphere] linker.ld: remove some unneeded "AT" commands
2018-05-11 16:28:55 +02:00
TuxSH
0d8ba7706d
[exosphere] Map the crt0 too
2018-05-11 16:14:12 +02:00
TuxSH
05b8b42164
[exosphere] Rewrite crt0/init and ld script
2018-05-11 14:07:37 +02:00
Michael Scire
02e01360fd
Exosphere: Fix crt0 bug resulting in bad relocation calculations
2018-05-10 18:37:11 -06:00
Michael Scire
ba7d0c2cb6
Exosphere: Add API for retrieving versioning info.
2018-05-09 06:29:56 -06:00
Resaec
1c32f1ae34
replacing tabs with spaces
2018-05-01 18:33:39 +02:00
Resaec
5430415578
somehow forgot to rename them
2018-04-28 01:27:16 +02:00
Resaec
dd319debe8
adding comment for uart_wait_idle to warn about a possible dead lock
2018-04-28 01:13:16 +02:00
Resaec
5dcf2cb319
adding UartFifoControl and UartInterruptIdentification for the UART_IIR_FCR_0 register
...
adding reference manual intem numbers for register enums
2018-04-28 00:58:42 +02:00
Resaec
b6b0073178
minor style fixes
2018-04-28 00:55:28 +02:00
Resaec
e0f586d2d5
change multiline comments, they game (only?) me strange spacing errors in the VS info popup
2018-04-28 00:54:43 +02:00
Resaec
ae69126509
adding UartVendorStatus, UartLineStatus and UartLineControl
...
refactor defines
edited uart_wait_idle() second parameter type to UartVendorStatus
2018-04-27 23:57:20 +02:00
Resaec
b6b8ca0eac
ENUMs for APB Slave Security Enable registers ( #67 )
...
Exosphere: add enums for the APB_MISC_SECURE registers.
2018-04-25 09:46:17 -07:00
Naomi Peori
0075a42d39
Changed PACKAGE2_MAXVER_400_CURRENT to PACKAGE2_MAXVER_400_410. ( #64 )
...
* Changed PACKAGE2_MAXVER_400_CURRENT to PACKAGE2_MAXVER_400_410.
* Added top-level makefile and a .gitignore for thermosphere build files.
2018-04-23 11:07:49 -07:00
Michael Scire
7ddf5a922c
Exosphere: Support unsigned/plaintext Package2s if signature is clear.
2018-04-11 21:56:30 -06:00
Michael Scire
3140ddc301
Reserve AMS0 magic for later use, change to eXosphere Boot Config rev 0
2018-03-25 17:02:24 -06:00
Michael Scire
c2eed3caf6
Integrate 5.x SMC API changes, add 4.x specific setup, implement target firmware selection
2018-03-25 15:05:08 -06:00
TuxSH
171c82ea9e
Add build system for fusee
2018-03-14 21:14:02 +01:00
TuxSH
965971edbd
Fix off-by-one mkey revision errors
2018-03-14 16:03:16 +01:00
TuxSH
6a0946378a
Remove useless "pack" pragmas
2018-03-11 16:32:33 +01:00
TuxSH
52f7adfc50
Add spsr_el3 to cpu_context
2018-03-11 12:53:52 +01:00
Michael Scire
f624cccd0d
Fix LP0 TZRAM CMAC calculation
2018-03-10 19:11:58 -08:00
Michael Scire
32bd5b3a73
Fix LP0 entry. Exit still fails in warmboot bin.
2018-03-10 18:57:17 -08:00
Michael Scire
ab2b8e4db5
Fix CpuSuspend not making it to finalize_powerdown()
2018-03-09 23:56:48 -08:00
Michael Scire
c2676c359c
Fix CAR primitives
2018-03-09 15:40:11 -08:00
Michael Scire
88c4dfd444
Fix flow controller set functions
2018-03-09 14:56:16 -08:00
TuxSH
3f627798e7
Fix and/bic inversions in finalize_powerdown
2018-03-09 22:56:41 +01:00
TuxSH
3d72183471
Add 4.x configitem stuff
2018-03-09 12:47:58 +01:00
Michael Scire
1ffa239b5a
Fix async expMod output + smcUnwrapAesWrappedTitlekey
2018-03-08 19:48:35 -08:00
Michael Scire
7e780301de
Fix AES-GCM code.
2018-03-08 17:26:42 -08:00
Michael Scire
8e5228866c
Fix smcComputeCmac, generally improve userpage cache usage
2018-03-08 04:59:00 -08:00
Michael Scire
ec8f27f1be
Fix AES ECB encryption not encrypting
2018-03-08 03:16:50 -08:00
TuxSH
b35c418558
memcpy(x, NULL, 0) is undefined behavior
2018-03-08 11:17:46 +01:00
Michael Scire
3d8ff446ad
Implement BootReason config
2018-03-08 01:48:57 -08:00
TuxSH
ff9322a468
Use and adapt the UART driver from hekate/hwinit
2018-03-08 01:02:45 +01:00
TuxSH
a409016a88
Fix fuse_get_hardware_type for 4.x
2018-03-07 23:24:38 +01:00
TuxSH
d5bb96c0f8
Fix and with mask issue in smc_user.c
2018-03-07 19:24:52 +01:00
Mike H
22f6c27654
Fix up comment
2018-03-07 16:11:53 +00:00
TuxSH
54fac349f2
Fix user_generate_specific_aes_key wrong register use
2018-03-07 15:50:50 +01:00
TuxSH
4f0e8b8467
Fix bug in user_generate_specific_aes_key, add other read/write le/be funcs
2018-03-07 15:11:53 +01:00
TuxSH
71f01aaa43
Fix freudian slip
2018-03-07 14:34:47 +01:00
Michael Scire
6592744b3b
Add debug region to mapped memory
2018-03-07 04:00:19 -08:00
Michael Scire
b26b8e1f5c
Fix smcConfigureCarveout
2018-03-07 03:45:27 -08:00
Michael Scire
d4c1e0b982
Merge branch 'master' of https://github.com/SciresM/Atmosphere-NX
2018-03-07 03:44:37 -08:00
Michael Scire
11e694d15c
Fix SMMU Enable preventing FS from talking to NAND MMIO
2018-03-07 03:37:11 -08:00
TuxSH
d2b1febb43
Implement dbg log interface
2018-03-06 01:29:06 +01:00
TuxSH
a65d380889
Make enum names consistent
2018-03-05 23:59:46 +01:00
TuxSH
827280ca12
Fix lock_try_acquire(&g_is_user_smc_in_progress) calls
2018-03-05 21:07:09 +01:00
Michael Scire
6b10c21a10
Default kernel carveout is ID 4, not 5
2018-03-05 03:27:24 -08:00
TuxSH
5e75d8b2bd
Fix func_copy null deref (?)
2018-03-05 09:41:39 +01:00
Michael Scire
ffd0181aa1
Fix Stack Overflow in SMC handler
2018-03-04 19:07:17 -08:00
Michael Scire
1fa64fccbf
Add pre-defined panic utilities
2018-03-04 17:23:54 -08:00
TuxSH
4c38be1560
Fix lock clear in warmboot_main
2018-03-04 21:57:25 +01:00
TuxSH
3e128a8b3e
Add TI charger stuff to warmboot_main, add 4.x hw_type stuff as well
2018-03-04 14:04:49 +01:00
TuxSH
ca80408349
Fix latest commit and set MAILBOX_NX_SECMON_BOOT_TIME
2018-03-04 00:36:40 +01:00
Michael Scire
58036dac0b
Fix coldboot init (presentations lie)
2018-03-03 12:22:50 -08:00
TuxSH
a6c7a2c57e
Refactor 32-bit register definitions
2018-03-03 20:23:13 +01:00
TuxSH
c0f99fcd1c
Fix invalidate_icache_all dsb correctness
2018-03-03 20:03:52 +01:00
TuxSH
3d974857e4
warmboot_main: fix panic reason in panic code
2018-03-03 19:49:25 +01:00
TuxSH
4a2c9229ee
Fix warmboot vs cpu_on check
2018-03-03 19:43:44 +01:00
TuxSH
03c1ad7119
Add most of warmboot_main
2018-03-03 19:31:22 +01:00
TuxSH
be6b67669f
Finish writing warmboot _crt0_
2018-03-03 16:58:23 +01:00
Michael Scire
48e8d9c7de
Fix bugs required to successfully hand off to kernel
2018-03-03 06:15:46 -08:00
TuxSH
93864f2289
Use the boot critical section
2018-03-03 03:43:46 +01:00
TuxSH
92d2abaf1c
Fix section alignment, attempt to clean up the crt0 a bit
2018-03-03 02:02:10 +01:00
Michael Scire
661bcaa3ec
Change 'success' panic location to end of coldboot_main()
2018-03-02 15:09:51 -08:00
Michael Scire
102fb5004f
Cleanup TODOs, implement bootconfig SCR_EL3 bit setting
2018-03-02 15:04:16 -08:00
TuxSH
bf63a077b1
Implement critical section (Lamport's Baker s algorithm)...
...
thanks @fincs for sample code
2018-03-02 23:37:36 +01:00
Michael Scire
301b166684
Implement CPU state init, fix bug in cpu_context restore
2018-03-02 14:16:54 -08:00
Michael Scire
a292e95c2f
Finish bootup_misc_mmio() - Cur build gets to end of pk2ldr.
2018-03-02 13:44:21 -08:00
Michael Scire
ca7b441079
Add call to se_generate_stored_vector() before validating
2018-03-02 12:59:12 -08:00
Michael Scire
3388198a26
Add coldboot mmio init (for non 4.x), required for FLOW writes to succeed.
2018-03-02 12:45:37 -08:00
Michael Scire
e7e62ef90b
Implement half of bootup_misc_mmio()
2018-03-02 12:16:30 -08:00
Michael Scire
b3dbfd8ee0
Update pk2ldr outline, prepare for bootup_misc_mmio() impl
2018-03-02 11:28:05 -08:00
Michael Scire
303e189559
Implement a few TODOs with CAR driver.
2018-03-01 23:33:43 -08:00
Michael Scire
5f7308efd1
Implement Clock/Reset Driver.
2018-03-01 22:50:07 -08:00
TuxSH
cad9cdc6e0
Reintroduce unmap_* in package2.c
2018-03-02 07:33:47 +01:00
Michael Scire
78bee60485
Fix dangling comments
2018-03-01 21:24:22 -08:00
Michael Scire
7b6d15ec36
Fix up package2.c, current build makes it to the panic() on hardware
2018-03-01 21:15:19 -08:00
Michael Scire
2390df4d07
Fix start.s to pass reloc_list properly to package2ldr
2018-03-01 20:39:49 -08:00
Michael Scire
0a80a7caf5
Fix coldboot init, Exosphere makes it to PK2LDR in this commit.
2018-03-01 20:10:05 -08:00
TuxSH
63d0b08ac4
Rewrite relocation stuff
2018-03-02 02:47:19 +01:00
TuxSH
6903b20579
Fix wrong subsection name
2018-03-01 21:28:50 +01:00
TuxSH
82f10b4320
Implements missings parts of pk2ldr, refactor relocation a bit
2018-03-01 19:11:09 +01:00
TuxSH
568781bc7e
Strongly validate SPL's buffer address
2018-03-01 12:35:02 +01:00
Michael Scire
9553c69c8f
Properly detect PK21 master key rev.
2018-03-01 03:28:34 -08:00
Michael Scire
205d3b8b80
Fix PK2LDR bugs, Fix SE bugs
2018-03-01 03:25:12 -08:00
TuxSH
7850d3fd57
Put the loaded bootconfig in the evt page
2018-03-01 11:06:55 +01:00
Michael Scire
b67ce08f84
Fix Modulus Exponentiation in SE driver
2018-03-01 02:00:39 -08:00
Michael Scire
4025781f1c
Make clear_bss work regardless of load address
2018-03-01 00:59:48 -08:00
TuxSH
1d621f3bf4
Fix tzram_map_all_segments
2018-03-01 02:36:16 +01:00
TuxSH
78b9698260
Finish writing coldboot_main
2018-03-01 01:40:09 +01:00
TuxSH
19dda5ed48
Can't copy to VAs if VA don't exist (at that point of the program)
2018-03-01 01:13:10 +01:00
TuxSH
e34d86b16f
Fix the set_memory_registers_enable_mmu call
2018-03-01 00:05:18 +01:00
TuxSH
3d4dcdde13
Fix ttbl init pointer arith bug, other fixes
2018-02-28 23:35:30 +01:00
TuxSH
0a89831193
Clear bss at runtime like Nintendo actually does
2018-02-28 22:29:17 +01:00
TuxSH
303774aeb7
Use bic instead of and in finalize_powerdown
2018-02-28 20:01:42 +01:00
TuxSH
6be5b0a52f
Implement flush_dcache_all_tzram_pa and invalidate_icache_all_inner_shareable_tzram_pa for the crt0s
2018-02-28 19:06:41 +01:00
TuxSH
e5f293e004
Implement and use set_memory_registers_enable_mmu
2018-02-28 13:32:18 +01:00
TuxSH
64c8612342
Fix wrongly named register in __set_memory_registers, add prototype
2018-02-28 07:32:14 +01:00
Michael Scire
c5b0639b8a
Implement BootConfig.
2018-02-27 20:28:34 -08:00
Michael Scire
d0b74d7751
Panic Bright Red on failed master key detection.
2018-02-27 20:00:48 -08:00
Michael Scire
694872b4cc
Fix decrypt_data_into_keyslot
2018-02-27 19:59:51 -08:00
Michael Scire
0508ee29d8
Clean up SE TODOs, implement GIC nonsecure init
2018-02-27 19:58:56 -08:00
Michael Scire
1463266190
Status callback keys have guaranteed atomicity from caller locks.
2018-02-27 19:50:31 -08:00
Michael Scire
66b3b3a706
Implement Panic() stub.
2018-02-27 19:43:07 -08:00
Michael Scire
fba3d1c2d9
Finish implementing Security Engine context save
2018-02-27 19:05:45 -08:00
Michael Scire
a8a2f8c3f6
Implement more SE context save functionality
2018-02-27 17:40:59 -08:00
TuxSH
93634d08e3
Implement __set_memory_registers
2018-02-28 02:37:08 +01:00
Michael Scire
924d469344
Implement the rest of smcCpuSuspend with skeleton SE API calls.
2018-02-27 17:07:30 -08:00
TuxSH
a90a431d61
Refactor save/restore_current_core_context, fix memory ordering issue with inline asm
2018-02-28 01:59:50 +01:00
Michael Scire
c18af9f3d2
Finish smcCpuOff
2018-02-27 16:35:35 -08:00
Michael Scire
7a9e031bff
Uncomment more sleep/suspend code
2018-02-27 16:10:51 -08:00
Michael Scire
235b7b65e1
Uncomment BPMP firmware copy in LP0
2018-02-27 16:01:09 -08:00
Michael Scire
c2c6745f60
Implement save/restore current core context
2018-02-27 15:40:05 -08:00
Michael Scire
9a5bc05259
Fix missing titlekey revision assignment
2018-02-27 15:14:23 -08:00
TuxSH
602507ee8f
Rename cache.s/.h to arm.s/.h
2018-02-27 22:29:47 +01:00
TuxSH
5bade9ee1c
Use specs file, remove -nostartfiles
2018-02-27 20:14:12 +01:00
TuxSH
0258324872
Use provided __libc_init_array and __libc_fini_array, bugfixes
2018-02-27 16:10:56 +01:00
TuxSH
24b15dad40
Unstub lma2vma code
2018-02-27 13:26:51 +01:00
TuxSH
b0cb819b06
Add proper linkscript...
...
...adapted from @fincs' own linkscripts
2018-02-27 04:19:38 +01:00
Michael Scire
c4789a5a11
Skeleton smcCpuOff, fix building, fix smcConfigureCarveout
2018-02-26 17:41:31 -08:00
TuxSH
23e9a8369a
Fix Makefile
2018-02-27 01:00:58 +01:00
TuxSH
9384546753
Adapt code to match last commit, link in bpmpfw_bin(_size)
2018-02-26 22:30:51 +01:00
TuxSH
984ade3ede
Merge pull request #58 from MerryMage/context_id-rename
...
Rename set_core_entrypoint_and_context_id
2018-02-26 22:26:46 +01:00
TuxSH
c7d83c6eb6
Rewrite the memory map-related code...
...
...other style fixes, etc.
2018-02-26 22:09:35 +01:00
MerryMage
3d40051146
Rename set_core_entrypoint_and_context_id
2018-02-26 17:11:49 +00:00
Michael Scire
bda9dcbe73
Start implementing smcCpuSuspend
2018-02-26 02:00:17 -08:00
TuxSH
18d0a81bd5
Merge pull request #51 from lioncash/const
...
memory_map: Remove unnecessary const
2018-02-26 10:26:58 +01:00
Mat M
1de6b336bb
all: Make file-scope variables internally linked where applicable ( #57 )
...
Narrows the scope of visible symbols to where they're actually used. Also
makes it easier to see true globals in source files
(ones used from multiple translation units)
2018-02-26 00:42:21 -08:00
Mat M
c94cfe4898
lock: Use stdatomic.h ( #56 )
...
Provides the same assembly output while using the standardized interface
e.g.
0000000000000000 <set_priv_smc_in_progress>:
0: 90000000 adrp x0, 0 <set_priv_smc_in_progress>
4: 91000000 add x0, x0, #0x0
8: 52800022 mov w2, #0x1 // #1
c: d503201f nop
10: 085ffc01 ldaxrb w1, [x0]
14: 08037c02 stxrb w3, w2, [x0]
18: 35ffffc3 cbnz w3, 10 <set_priv_smc_in_progress+0x10>
1c: 72001c3f tst w1, #0xff
20: 54ffff81 b.ne 10 <set_priv_smc_in_progress+0x10> // b.any
24: d65f03c0 ret
2018-02-25 22:59:48 -08:00
Mat M
461105a501
fuse: simplify checks in fuse_get_reserved_odm and fuse_get_spare_bit ( #54 )
...
A separate variable isn't particularly necessary here, and given that the type
is unsigned, we only need to test the upper bound.
This also resolves two -Wtype-limits warnings
2018-02-25 21:23:31 -08:00
Mat M
fff3912c81
mc: Remove dead code in get_carveout_by_id ( #52 )
2018-02-25 21:13:07 -08:00
Mat M
991d4f1355
se: Remove memset in se_perform_aes_block_operation ( #53 )
...
We can just initialize the array to be zeroed out. This is safer and less error-prone,
since the initializer is now associated with the variable directly, making it
impossible to put code relying on the zeroed out state before it (unlike with memset).
2018-02-25 21:12:49 -08:00
Lioncash
b328effd9b
memory_map: Remove unnecessary const
...
Since the return value isn't a pointer thing doesn't have much use.
2018-02-25 23:56:47 -05:00
TuxSH
4d3f1f6ae8
Remove built files that somehow got here
2018-02-25 22:36:32 +01:00
TuxSH
969b781a68
Failed attempt to fix loops not being unrolled, other fixes.
2018-02-25 21:41:16 +01:00
TuxSH
b0ea9c1a0b
Move source files to src/, add Makefile, fix all build and linkage errors, etc.
2018-02-25 20:00:50 +01:00
TuxSH
4c7aa566f0
Fix user page mmu mapping and naming scheme
2018-02-25 15:12:49 +01:00
TuxSH
ab38217720
Fix mmu descriptor mistakes
2018-02-25 14:37:44 +01:00
Michael Scire
c46a3cc794
Map userpage in at appropriate address (TODO: Invalidate TLB)
2018-02-25 01:31:45 -08:00
Michael Scire
78c8fe36fe
Fix read64le
2018-02-25 01:26:40 -08:00
Michael Scire
82b4c6763d
Implement getters for fuse values, fill out smcGetConfig
2018-02-25 01:21:52 -08:00