Lioncash
0d6f6c516c
all: Make file-scope variables internally linked where applicable
...
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 01:39:05 -05: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
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
ed5f43ef39
Update .gitignore
2018-02-25 20:03:30 +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
TuxSH
b0079e404d
Clear pk2ldr in coldboot_main
2018-02-25 03:54:28 +01:00
TuxSH
a00e68e94a
Write a significant chunk of coldboot init...
...
...merge start.cold.s and start.warm.s, other changes, etc.
2018-02-25 03:34:15 +01:00
TuxSH
be67169390
Merge pull request #50 from lioncash/error
...
memory_map: Fix most compilation issues
2018-02-25 00:14:50 +01:00
Mat M
a081c93094
bootconfig/configitem: Fix includes and identifiers ( #49 )
2018-02-24 12:46:57 -08:00
Lioncash
a34813bcf4
memory_map: Fix most compilation issues
2018-02-24 15:38:48 -05:00
Mike H
f6008d947d
More previously unknown fuses
2018-02-24 18:48:11 +00:00
Mike H
3929ba77e6
Adding FUSE_RESERVED_SW
2018-02-24 18:34:49 +00:00
hexkyz
e2d45878c3
Preliminary Exosphere FUSE driver
2018-02-24 18:15:47 +00:00
TuxSH
cc4f6f7f84
Introduce memory_map.h
2018-02-24 17:22:55 +01:00
Michael Scire
ed5850ebbf
Implement se_trigger_interrupt, fix up some configitems
2018-02-24 07:25:38 -08:00
Michael Scire
e8b1e0b965
Implement exception vectors.
2018-02-24 07:06:29 -08:00
Michael Scire
422cd14aac
Implement driver for the GIC-400.
2018-02-24 05:33:16 -08:00
Michael Scire
c94fe287cb
Exosphere I2C Driver.
2018-02-24 04:27:34 -08:00
Michael Scire
672d76cb31
Fix I2C success mask
2018-02-24 04:27:34 -08:00
Mat M
56f5b56235
smc_user: Correct cache_flush to flush_dcache_range ( #48 )
...
cache_flush is a non-existent function
2018-02-23 20:38:21 -08:00
Mat M
44a2b7a344
smc_user: Add missing gcm.h include ( #47 )
...
Resolves an implicit declaration warning for gcm_decrypt_key
2018-02-23 16:09:55 -08:00
Mat M
e3897bb731
se: Add missing string.h include ( #46 )
...
Resolves implicit declaration warnings for memcpy and memset
2018-02-23 16:09:44 -08:00
Mat M
34d8a859ab
timers: Fix identifier name in wait's spin-lock ( #45 )
...
Also resolves implicit definition warnings for wait by including the necessary header where applicable
2018-02-23 16:09:34 -08:00
Michael Scire
dbf2eb7ed1
Clean up BPMPFW I2C prototypes.
...
Prototypes for internal functions shouldn't be in shared headers.
2018-02-23 12:07:02 -08:00
TuxSH
0a0a1b088d
Merge pull request #43 from lioncash/prototype
...
i2c: Fix -Wmissing-prototypes warnings
2018-02-23 19:18:46 +01:00
TuxSH
b3f8908ece
Merge pull request #44 from lioncash/mmu
...
mmu: Remove phys_addr parameter from mmu_unmap_range
2018-02-23 19:18:06 +01:00
Lioncash
b4229f0fa8
mmu: Remove phys_addr parameter from mmu_unmap_range
...
It's unused
2018-02-23 09:25:21 -05:00
Lioncash
296b43744c
i2c: Fix -Wmissing-prototypes warnings
2018-02-23 09:19:32 -05:00
TuxSH
8e4a5bf32b
Merge pull request #17 from lioncash/include
...
Add missing string.h includes
2018-02-23 14:51:27 +01:00
TuxSH
dd3498a356
Merge pull request #27 from lioncash/param
...
mmu: Fix compilation issues
2018-02-23 14:50:54 +01:00
Mat M
9dfa6e2732
start.cold/warm: Correct MSR instructions ( #42 )
...
The second operand needs to be an immediate
2018-02-23 05:46:06 -08:00
Mat M
7b1fa3a8f0
start.cold/warm.s: Correct DSB instruction instances ( #41 )
...
DSB requires that the barrier option be specified
2018-02-23 05:42:55 -08:00
Merry
85df3dcb7e
mc: fix invalid range comparison ( #37 )
2018-02-23 05:42:47 -08:00
Mat M
615216edeb
smc_api: Fix compilation issues ( #40 )
...
* smc_api: Add missing includes
MASTERKEY_REVISION_400_CURRENT, seal_titlekey, PMC_BASE and the randomcache functions aren't visible without them
* smc_api: Add missing parameter name to smc_get_result
* smc_api: Fix buffer being passed to se_get_exp_mod_output in smc_unwrap_rsa_oaep_wrapped_titlekey_get_result
wrapped_titlekey doesn't exist
* smc_api: Correct device physical address accesses in smc_read_write_register
2018-02-23 05:41:26 -08:00
Merry
e29123cac3
randomcache: Typo in randomcache_refill ( #38 )
...
g_random_cache_low > high_plus_one didn't update g_random_cache_high.
2018-02-23 05:40:47 -08:00
Mat M
0ec1ceca1f
sealedkeys: Fix compilation issues ( #39 )
...
* sealedkeys: Remove non-existent variable in condition in seal_titlekey
* sealedkeys: call unseal_key_internal in unseal_key instead of seal_key_internal
2018-02-23 05:40:38 -08:00
TuxSH
91d1b047c4
Fix bpmpfw/Makefile, other changes.
2018-02-23 13:56:23 +01:00
Lioncash
705802d749
mmu: Fix call to non-existent mmu_unmap_page_range function in mmio_unmap_all_devices
2018-02-23 07:32:23 -05:00
Lioncash
d2f12c5900
mmu: Remove extraneous argument to mmu_unmap in mmu_unmap_range
2018-02-23 07:30:48 -05:00
Michael Scire
90f792b1cc
Remove Makefile copy/paste leftovers for bpmpfw
2018-02-23 04:15:14 -08:00
Michael Scire
5370c7b150
Implement LP0-Entry BPMP Firmware
2018-02-23 04:13:18 -08:00
Michael Scire
f7598cb433
Implement smcConfigureCarveout
2018-02-23 01:12:38 -08:00