Michael Scire
903789cf6e
fusee: fix error printing pre-SD card init ( closes #289 ).
2018-12-04 04:01:22 -08:00
Michael Scire
49ba3a86e2
fusee: move BCT.ini/secondary into atmosphere/
2018-12-04 03:55:01 -08:00
Michael Scire
021d84ff04
fusee: remove duplicate hook
2018-12-01 21:39:29 -08:00
Michael Scire
8ecf68cb65
fusee: Add support for 1.0.0-7.
2018-12-01 21:38:28 -08:00
Michael Scire
bd76e73b25
fusee: fix configuration typo
2018-12-01 13:58:09 -08:00
Michael Scire
33b7e227d4
fusee: do PMC reboots, not CAR reboots.
2018-11-30 06:34:20 -08:00
Michael Scire
5201803685
fusee: auto-apply nogc if fuses say we should.
2018-11-30 04:36:29 -08:00
Michael Scire
72f028efae
fusee: Implement built-in support for togglable nogc patches
2018-11-30 04:10:23 -08:00
Michael Scire
72a2c10896
exosphere: Add support for enabling debugmode via BCT.ini
2018-11-30 03:10:27 -08:00
hexkyz
ed37706915
fusee: Add full 6.2.0 support via SMMU virtualization.
2018-11-29 23:32:31 +00: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
c3569ec5e2
fusee: support getting old tsec key from new tsec fw.
2018-11-25 16:22:47 -08:00
hexkyz
982797df31
fusee: Fix custom splash screen loading.
2018-11-19 20:05:47 +00:00
hexkyz
6e7eb47d33
fusee: Minor hardware configuration fixes.
2018-11-17 21:50:31 +00:00
SciresM
c530bb8910
Merge branch 'master' into fatal
2018-11-14 14:15:01 -08: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
hexkyz
b19e50e720
fusee: Implement DRAM training:
...
- Based on reverse engineered code and Peter De Schrijver's patches;
- Complemented with CTCaer's minerva_tc project.
2018-11-12 01:55:16 +00:00
Michael Scire
ce1a6a68bf
fs.mitm/loader: Fix crashes when launching too many processes.
2018-11-08 16:02:04 -08:00
Michael Scire
6711cd93a8
atmosphere: extract API version management to common folder
2018-10-16 17:54:50 -07:00
Michael Scire
2f29bcef3a
fusee: Fix IPS patching for KIPs. ( closes #3 ).
2018-10-16 17:21:08 -07:00
Michael Scire
472059134a
fusee: Hook up kip/kernel patch support (needs testing).
2018-10-16 16:17:30 -07:00
Michael Scire
b78a3f7065
fusee: Add support for loading kernel from SD
2018-10-16 16:03:23 -07:00
Michael Scire
d4d197a26a
fusee: add untested, not hooked up ips code
2018-10-16 15:54:42 -07:00
Michael Scire
bfa5847e48
fusee: Greatly simplify and improve KIP loading
2018-10-16 15:08:06 -07:00
Michael Scire
49f627bb28
fusee: Load fs.mitm by default.
2018-10-16 14:19:55 -07:00
hexkyz
ca0e41e8a0
fusee: Improve integration with the new logging system
...
fusee: Implement log level configuration from BCT.ini
2018-09-28 21:12:59 +01:00
hexkyz
2e6983d214
Merge pull request #209 from Resaec/new_print
...
Silenced boot from stage 2
2018-09-28 16:26:42 +01:00
hexkyz
b2b7bf2bb3
fusee: Fix support for firmware 6.0.0
2018-09-26 21:31:18 +01:00
hexkyz
7b0ed094a7
fusee: Fix support for firmware 6.0.0
2018-09-26 21:30:53 +01:00
Resaec
1d22bb7b81
we need to strip the NO_PREFIX flag so your log_level is corrected for checking against the global
2018-09-26 02:47:24 +02:00
Resaec
81355415d0
port log.c log.h for fusee-primary
...
refactor printing
remove lib/printk as it is replaced with log
remove lib/driver_utils.h
added log levels as they seem right, might need adjustments
2018-09-26 02:18:50 +02:00
Resaec
d67a7c0a87
moving log.c and log.h to lib/
...
removing lib/driver_utils.h as it have no purpose anymore now
2018-09-26 02:13:20 +02:00
Resaec
762383f0d2
fix stray [DEBUG]
at the end of sdmmc log
2018-09-26 00:25:01 +02:00
Resaec
d2355cdc9b
add the ability to print without adding a prefix for multi part/line prints
2018-09-25 23:43:52 +02:00
Resaec
1eb3d7969e
changes to fit the codestyle
...
improved a comment
removed unused code and imports
2018-09-24 00:02:58 +02:00
Resaec
8cc266174d
change all print* calls to use the new print with a log_level
2018-09-23 23:22:25 +02:00
Resaec
7548c8ecfa
rather call the files log.c and log.h
...
changed LOG_LEVEL order
export only externaly used functions
add todos
2018-09-23 23:18:41 +02:00
Resaec
840242b68e
started on centralized printing/logging
...
some character problems with "atmosphère" and such strings
2018-09-22 05:14:43 +02:00
hexkyz
f622eac36e
fusee: Finish implementing support for 6.0.0
2018-09-20 20:02:10 +01:00
hexkyz
99d36c423e
fusee: Add missing const qualifiers (thanks @aveao)
2018-09-18 16:39:18 +00:00
hexkyz
f864b0835d
fusee: Add support for firmware version 6.0.0.
...
fusee: Implement splash screen rendering.
fusee: Add minor notes and update lz library.
2018-09-17 21:03:03 +01:00
hexkyz
39d812f434
fusee: Move nxboot hand-off to IRAM.
...
fusee/exosphere: Minor cleanup.
2018-09-15 21:08:58 +01:00
Michael Scire
d61ec20679
fusee: add fs.mitm kernel patches for 6.0.0
2018-09-10 15:54:14 -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
hexkyz
2f8edfa8e2
fusee: Minor bugfixes.
2018-09-05 20:51:03 +01:00
hexkyz
ad4605abde
fusee: Fix a bug in cluster boot code.
2018-09-04 19:16:03 +01:00
hexkyz
5542352239
fusee: Fix CAR registers' definition.
2018-09-04 19:14:29 +01:00
hexkyz
e02bfe036c
fusee: Fix CAR registers' definition.
2018-09-04 19:13:36 +01:00
hexkyz
8007480a15
fusee: Re-enable built-in PM system module.
2018-09-03 18:48:01 +01:00
hexkyz
abf57d2e43
fusee: Unmount *after* reading the splash screen.
2018-08-31 22:52:31 +00:00
hexkyz
58a42be38f
fusee: Comment out splash screen delay.
2018-08-31 22:46:08 +00:00
hexkyz
70c4e64d20
fusee: SYSCTR0 was still wrong...
2018-08-31 22:36:26 +00:00
hexkyz
97d1ca3cc9
fusee: Disable built-in PM system module.
2018-08-31 20:10:06 +00:00
hexkyz
3cf37330ca
fusee: Disable AHB redirection when necessary.
...
fusee: Add 3.0.0/3.0.1/3.0.2 warmboot fix.
2018-08-30 19:49:33 +01:00
hexkyz
611e85e6ee
fusee: Implement BootConfig and Boot Reason handling.
2018-08-29 18:28:21 +01:00
Lioncash
a400b10921
fusee-primary: Fix always false conditional in xmemmove
...
This was corrected in 4b8455baf9
for
fusee-secondary, but I neglected to also fix it in fusee-primary (my
bad!)
2018-08-24 22:30:36 -04:00
hexkyz
43bde3fcc9
fusee: Fix register definition.
2018-08-24 17:03:53 +01:00
hexkyz
8edec43be2
fusee: Add automatic firmware version detection.
2018-08-23 19:57:01 +01:00
hexkyz
e5bfb95c22
fusee: Add warmboot support.
2018-08-19 17:09:30 +01:00
hexkyz
320ec38be1
fusee: Complete re-write of the hardware initialization code:
...
- Updated code to match hekate's;
- Improved nxboot (now boots firmwares 2.x successfully);
- Temporarily disabled built-in boot system module support;
- Fixed multiple bugs.
2018-08-18 17:59:33 +01:00
hexkyz
6eac78595e
fusee-secondary: Remove restriction for loading from eMMC
2018-08-01 21:15:16 +01:00
Lioncash
4b8455baf9
fusee-secondary: Correct else-if condition in xmemmove()
...
Previously both the if and else conditions were the same.
2018-07-29 20:53:01 -07:00
Lioncash
bbdf2868c9
fusee-secondary/fs_dev: Correct uninitialized cast within fsdev_seek()
...
Previously this was casting the same unassigned variable that was being
assigned to.
2018-07-29 20:15:44 -07:00
Luke Street
a3d53fbb2c
Define wait() in fusee-primary/secondary
2018-07-29 10:53:06 -07:00
hexkyz
054c65dffb
Revert unnecessary change (thanks @rajkosto)
2018-07-26 19:26:43 +01:00
hexkyz
7836609839
Fix multiple issues reported by Coverity Scan
2018-07-26 18:45:18 +01:00
hexkyz
fd88bd1d2c
fusee: Disable the SDCLK when switching to low voltage.
2018-07-24 19:06:41 +01:00
hexkyz
a2104b85ce
fusee: Disable the SDCLK when switching to low voltage.
2018-07-24 19:05:27 +01:00
hexkyz
e58927a8ab
fusee: Fix SDMMC high speed support and other bugs.
2018-07-23 20:14:53 +01:00
hexkyz
3db9ce32fa
Fusee: Deployed new SDMMC driver in fusee-secondary. All stages boot now.
...
Fusee: Fixed wrong argument in se.c function.
Fusee: Improved timers.
2018-07-19 21:07:53 +01:00
hexkyz
22ae5b861c
fusee: Correct wrong comment (thanks @desowin)
2018-07-05 16:05:38 +01:00
hexkyz
3394f0cf0d
Merge pull request #161 from TheDgtl/fix_4xx_kernel
...
Fix issue with fusee-secondary 4.x kernel patches
2018-07-04 22:06:11 +01:00
hexkyz
c5e9aec013
fusee: Temporarily disable anything that prevents the fusee-primary to fusee-secondary transition.
2018-07-04 22:04:41 +01:00
hexkyz
ddbbb0b758
fusee: SDMMC driver re-design:
...
- Based on hekate's, linux's and u-boot's source code;
- Full support for SD and MMC;
- Fixes multiple issues;
- Deployed first in fusee-primary.
fusee: Code cleanup and style fixes.
2018-07-04 21:55:27 +01:00
Drakia
6ab81e1780
Fix issue with fusee-secondary 4.x kernel patches
2018-07-01 17:50:02 -07:00
Benoit7413
0f6d4baa8e
Replace NAND by eMMC
...
Using NAND doens't really make sense
2018-06-26 08:49:50 +02:00
Michael Scire
9687218fbc
Fusee: lfs kernel patches for 3.0.0/3.0.2
2018-06-24 16:24:22 -06:00
Michael Scire
1252c4d5e1
Fusee: Complete hashes (Thanks @Thog), lfs patches for 2.0.0
2018-06-24 15:51:29 -06:00
Michael Scire
040cfa90d3
Fusee: Add kernel patches for 1.0.0.
2018-06-24 15:20:16 -06:00
Drakia
a446aca2c4
Fix a few issues in the secondary kernel_patches.c file
2018-06-17 19:28:19 -07:00
hexkyz
fca9ed2a15
Merge pull request #145 from Traiver/master
...
fusee: Add 4.1.0 kernel patch definitions
2018-06-17 16:56:36 +01:00
Traiver
33af704ee2
Update kernel_patches.c
2018-06-17 15:54:06 +02:00
Traiver
57819fa345
Update kernel_patches.c
2018-06-17 14:02:08 +02:00
Traiver
0295c8a51d
Update kernel_patches.c
2018-06-17 12:38:57 +02:00
Traiver
b211a7cf05
add kernel patches for 4.1.0
2018-06-17 11:00:42 +02:00
DavidBuchanan314
20a721a4a6
fusee: correct 4.x free_code_space_offset value
2018-06-13 22:26:00 +01:00
DavidBuchanan314
58d2f8f0a5
fusee: Add 3.0.0-3.0.1 kernel hash (and free_code_space_offset)
2018-06-13 22:08:18 +01:00
Tomasz Moń
206c10f333
Rework sdmmc clocking configuration
...
Use 204 MHz as host clock in SDR104 mode instead of 136 MHz.
Due to this, also change the frequency init divider so the
initialization frequency is below 400 kHz.
This makes the clocks for SDMMC1 in all modes to match the TRM table.
Make it clear in the code that HS200/HS400 modes in fact use PLLP_OUT0
and not PLLC4_OUT2_LJ like the comment suggest. In fact selecting the
PLLC4_OUT2_LJ as clock source results in freeze after switching to
HS200/HS400 mode. This is most likely related to the PLLC4 not being
enabled, but it should be checked later.
Set the HS200/HS400 divider to 3, as this is what the code really did
set prior to this change - so this commit does not change that.
Configure Legacy 12 MHz clock to run at 12 MHz using the SW default
configuration (as per TRM) for the SDMMC legacy timer.
Introduce initial version of sdmmc_host_clock_delay() in order to use it
in places where the wait is host clock dependent. The way it is
implemented now does not change the sleep that was used instead.
2018-06-12 17:20:15 +02:00
Max K
d8c9399cff
fusee: Run periodic autocal only on the uSD controller ( #137 )
2018-06-10 21:09:48 -07:00
hexkyz
ceb93867b4
Merge pull request #132 from tslater2006/master
...
Add sdmmc_dump_regs function
2018-06-10 16:21:18 +01:00
Tomasz Moń
804a40830e
Fix race conditions and misconfiguration in sdmmc
...
Properly configure pull up and pull down offsets for autocal.
Run autocal prior to every transfer.
Prevent race conditions in sdmmc_wait_for_event() - make sure the fault
handler has highest priority, then the target irq, state conditions and
finally the error mask.
Do not clear all bits (|=) when acknowledging fault conditions,
only acknowledge the fault conditions itself.
Enable interrupts before preparing command registers - if sdmmc is fast
enough it can actually finish transfer before we enabled the interrupts.
Enabling interrupts clears the COMMAND COMPLETE status bit.
Temporarily print all the sdmmc messages in stage2 - for yet unknown
reason respecting the log level results in some failures.
This results in working microsd card in stage2 on my switch with Samsung
EVO+ 256GB microsd card.
2018-06-09 17:37:53 +02:00
Timothy Slater
a79d3454d8
Switched to mmc_debug, and use inttypes
2018-06-08 07:50:36 -05:00
Timothy Slater
7df8ca7c4b
use printf instead of printk for secondary
2018-06-07 13:05:41 -05:00
Timothy Slater
ca907077af
Add sdmmc_dump_regs function
2018-06-07 12:55:29 -05:00
Tomasz Moń
7b9dcd2f1a
Make sdmmc autocalibration follow TRM procedure
...
Sleep for 1 us, not 1 ms.
Timeout after 10 ms, set driver strength code values according to TRM.
Fix typo (mS) - time is in milliseconds, not milliSiemens.
2018-06-05 19:07:14 +02:00
TuxSH
0491a21a99
Fix logic bug in stage2's main function
2018-06-05 16:18:02 +02:00
Max K
6b7da2887f
package2 verification and ini1 merging fixes ( #125 )
...
* fusee: Incremet offset while reading kip1s
* fusee: Pass package2 section data along with the decrypted metadata
2018-06-04 14:04:44 -07:00
TuxSH
b2139ed182
Pass screen status and mmc struct from stage1 to 2
2018-06-04 19:17:23 +02:00