Timothy Slater
a79d3454d8
Switched to mmc_debug, and use inttypes
2018-06-08 07:50:36 -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
b2139ed182
Pass screen status and mmc struct from stage1 to 2
2018-06-04 19:17:23 +02:00
Tomasz Moń
0534e36cf8
Set SDMMC controller to SDR104 as a workaround
...
According to Tegra X1 Series Processors Silicon Errata there is possible
misalignment of received data which results in a CRC error. The issue is
present only in SDR50 mode.
2018-05-27 17:43:25 +02:00
TuxSH
c9723d7b68
Refactor fusee's makefile
2018-05-27 00:59:02 +02:00
TuxSH
d57f4c54a9
Fix mmc->allow_voltage_switching assignment in sdmmc_init
2018-05-24 17:39:36 +02:00
TuxSH
4d43a86b60
Copy latest sdmmc driver to stage2
2018-05-24 01:17:13 +02:00
Kate J. Temkin
eaf8e559d6
fusee: work around some dual-init SDMMC issues
2018-05-23 07:47:02 -06:00
TuxSH
a4b1cf8b50
Stage1: fix SE issue too
2018-05-21 21:18:30 +02:00
TuxSH
561fa90669
Use uintX_t for the SE & copy bugfixed SE struct definition
2018-05-21 19:05:00 +02:00
TuxSH
ecb83903c0
Stage1: fix potential alignment issue
2018-05-21 14:18:03 +02:00
Kate J. Temkin
ac7ee45493
fusee: improve SDR104 frequency and support AUTOCMD23
2018-05-21 04:24:50 -06:00
TuxSH
bf2c6dff25
Stage2: Add exception handlers
2018-05-21 03:50:53 +02:00
TuxSH
c1687905a3
Fix stack overflow when chainloading stage2
2018-05-21 03:42:05 +02:00
TuxSH
ea2693dd2d
Fix exception handlers (thanks @fincs)
2018-05-21 03:39:18 +02:00
TuxSH
43d1816ac2
[stage1] Add exception handlers... which somehow don't work?
2018-05-21 02:24:41 +02:00
TuxSH
83d9d874e6
Fusee use CAR reboot for fatal errors
2018-05-20 23:52:09 +02:00
TuxSH
4ec7d0fc82
Remove packed when not needed
2018-05-20 22:57:25 +02:00
TuxSH
3dd6ec5f6c
wtf pmc reboot doesn't fully work -- display doesn't reinitialize
2018-05-20 16:56:15 +02:00
TuxSH
f45bc83bc4
Introduce fatal_error
2018-05-20 16:18:48 +02:00
Kate J. Temkin
add03d5774
fusee: correct computation of tuning block size
2018-05-20 07:21:49 -06:00
Kate J. Temkin
d5411b5b1f
fusee: begin adding support for MMC HS modes
2018-05-20 07:05:35 -06:00
Kate J. Temkin
5f3fc8156c
fusee: SD: implement tuning, allowing for all SD UHS-I speed
2018-05-20 07:05:35 -06:00
Kate J. Temkin
38350e769c
fusee: SD driver: implement everything necessary for UHS except tuning
2018-05-20 07:05:35 -06:00
Kate J. Temkin
633c5e95ed
fusee: correct constants in CAR
2018-05-20 07:05:35 -06:00
Kate J. Temkin
817c42efc2
fusee: handle SDMMC speeds sanely
2018-05-20 07:05:35 -06:00
TuxSH
ec7e0d923d
Add custom panic driver
2018-05-20 14:11:46 +02:00
TuxSH
c820375a86
Make struct tegra_pmc not packed
2018-05-20 01:40:23 +02:00
TuxSH
64cdd2e63f
Actually don't use memcpy in sdmmc
2018-05-19 03:10:06 +02:00
TuxSH
2a98e2e3b8
Sync sdmmc changes between stage1 and 2
2018-05-19 02:50:50 +02: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
Kate J. Temkin
7bfdf63a71
fusee sdmmc: don't time out on long reads
2018-05-18 07:43:09 -06:00
TuxSH
6c50723209
Fix tsec.c (thanks @rajkosto @tslater2006), fixes #106
2018-05-15 23:59:20 +02:00
TuxSH
172a2b679c
Fix strncpy bugs in fusée, etc.
2018-05-15 01:18:05 +02:00
TuxSH
8df624a10d
Rename sd_utils to fs_utils, etc
2018-05-13 23:49:50 +02:00
TuxSH
4f50d412f5
Redesign fs_dev, raw_dev, introducing device_partition and switch_fs.
...
In theory, one could mount an encrypted FAT partition itself coming from a disk image, etc.
2018-05-13 19:53:55 +02:00
TuxSH
9dce3b05ba
[stage1] refactor diskio.c
2018-05-12 12:37:41 +02:00
TuxSH
75169790ff
stage1 -> stage2 again
2018-05-12 11:00:36 +02:00
TuxSH
50047dffaa
[stage1] unstub multiple sector-r/w code
2018-05-12 10:52:04 +02:00
Kate J. Temkin
9f86c75ea4
fusee: undo a silly mistake in longer-than-8K operations
2018-05-11 21:36:46 -07:00
TuxSH
4ada3b6195
Merge pull request #93 from encounter/fix/stage2-args
...
Fix stage2_args_t mismatch
2018-05-11 23:38:25 +02:00
TuxSH
eb8573093d
Move sd init into diskio.c, write code for latest commit
2018-05-11 22:24:40 +02:00
Kate J. Temkin
2b871397c2
fusee: allow sdmmc_read / sdmmc_write of more data than fits in the bounce buffer
2018-05-11 11:28:13 -07:00
Kate J. Temkin
402b69c549
fusee: actually obey the SD spec when switching voltage
2018-05-10 07:10:37 -07:00
Kate J. Temkin
437344fd25
fusee: support low-voltage SDMMC mode
2018-05-10 06:05:28 -07:00
Kate J. Temkin
b20a04ede5
fusee: use full bus width and faster initial clock speed
2018-05-10 06:05:28 -07:00
TuxSH
ff2472385f
[sdmmc] sdmmc_handle_cpu_transfer: handle unaligned buffers
2018-05-09 20:46:16 +02:00
TuxSH
b9b13e215f
Fix struct tegra_sdmmc definition
...
Definition errors were cancelling each other (for the most part)
2018-05-09 19:33:54 +02:00
TuxSH
3206583db3
[sdmmc] Fix const-correctness issue
2018-05-09 19:11:16 +02:00
Luke Street
290fb356a1
stage2: fix init malloc size for stage2_args_t
2018-05-08 23:24:27 -04:00
Luke Street
6dbd8d0aae
Fix stage2_args_t mismatch
2018-05-08 23:08:54 -04:00
TuxSH
70bb496388
Refactor stage1's and stage2's main.c files
2018-05-08 16:51:43 +02:00
TuxSH
d43255d484
Fix bug in crt0
2018-05-08 14:56:17 +02:00
TuxSH
461e886244
Make di.c accept arbitrary FB addresses, fix flickering issues
2018-05-08 13:45:37 +02:00
TuxSH
d390ead56f
Fix faulty IRAM check in check_32bit_address_range_in_program
2018-05-08 13:45:37 +02:00
TuxSH
880f49cfa5
Fix inverted condition issue in check_32bit_address_range_loadable
2018-05-08 13:45:37 +02:00
TuxSH
1fd098e074
[stage1] Fix DEFAULT_BCT0_FOR_DEBUG
2018-05-08 13:45:37 +02:00
TuxSH
e8306361f0
Rewrote crt0, init, and chainloading code
...
start.s, init.c, linker.ld and linker.specs are meant
to be re-used by user applications, should they remove the defines
from init.c and the .chainloader* sections from the linker script
2018-05-08 13:45:37 +02:00
Kate J. Temkin
8d071ca7c9
fusee: fix boot partition selection
2018-05-06 22:47:36 -06:00
Kate J. Temkin
f5ed029cdb
fusee: fix regression in card detection
2018-05-06 22:32:52 -06:00
TuxSH
8b418732ad
Upgrade FatFs to R0.13b
2018-05-06 18:00:22 +02:00
TuxSH
4265dc7b65
Don't pass the mmc struct around
2018-05-06 17:22:12 +02:00
TuxSH
68eec056a9
Fix const-correctness issue in sdmmc.h
2018-05-06 15:22:35 +02:00
TuxSH
1aa6b92bc4
Normalize drivers between stage1 and 2
2018-05-06 15:02:13 +02:00
TuxSH
ddea5484b6
[stage1] support utf8 in fatfs
2018-05-05 22:05:11 +02:00
TuxSH
67b76cc8f1
Instead of passing FatFS structs around, unmount; other changes
2018-05-05 17:33:49 +02:00
Kate J. Temkin
8eb8de0e94
fusee: fix an obvious sdmmc error (oops)
2018-05-05 03:29:01 -06:00
Kate J. Temkin
bceb00ad8d
fusee: sdmmc: clean up and prepare for better SD/MMC/version separations
2018-05-04 18:48:20 -06:00
Kate J. Temkin
2e362d93da
fusee: add support for SDMMC write operations
2018-05-04 17:16:19 -06:00
Michael Scire
553cd236f2
Fusee: fix typo
2018-05-04 16:38:10 -06:00
Michael Scire
9487924973
Fusee: Add #define requirement for pragmatic reasons.
2018-05-04 16:35:33 -06:00
Kate J. Temkin
711f85305b
fusee: enable sdmmc loglevel control
2018-05-04 16:15:51 -06:00
Kate J. Temkin
932a5bd645
fusee: fix multiple-block SDMMC transfers
2018-05-04 16:15:18 -06:00
TuxSH
e5fff14689
Move fatfs around
2018-05-05 00:11:22 +02:00
TuxSH
dc3099781d
Change defaut BCT0 for debug
2018-05-04 21:52:38 +02:00
Michael Scire
4199be2460
Merge SD stuff into fusee-secondary. Switch diskio to single-sector reads temporarily
2018-05-04 11:47:05 -06:00
Michael Scire
299b020ecc
Push minimally working FATFS.
2018-05-04 11:21:15 -06:00
Kate J. Temkin
010ba9248c
fusee: make SDMMC debug printing more manageable
2018-05-04 03:38:41 -06:00
Kate J. Temkin
0120b9ce52
fusee: get uSD working, fix bad no_iopower, and abstract card differences
2018-05-04 03:24:27 -06:00
Kate J. Temkin
99f749ef82
fusee: fix SD pinmuxing / signal integrity issues
2018-05-04 03:24:27 -06:00
Kate J. Temkin
5b3be77f0e
fusee: fix drive strength and avoid a pad wear-condition
2018-05-04 03:24:27 -06:00
Kate J. Temkin
fc97c3f773
fusee: merge in most of the microSD card (not fully working)
2018-05-04 03:24:27 -06:00
Kate J. Temkin
608d59c229
fusee: implement partition support; needs some tweeks
2018-05-04 03:24:27 -06:00
Kate J. Temkin
01e3761d4c
fusee: sdmmc: use v3 compatibility mode for it's simpler DMA
...
we may want to change this at some point to get 64-bit addressing?
2018-05-04 03:24:27 -06:00
Kate J. Temkin
ef1923ebab
fusee: sdmmc: support CPU reads in addition to (broken?) DMA
2018-05-04 03:24:27 -06:00
Kate J. Temkin
21c177804e
fusee: sdmmc: handle DMA page boundaries
2018-05-04 03:24:27 -06:00
Kate J. Temkin
534c50fba5
sdmmc: mostly working for eMMC, now
2018-05-04 03:24:27 -06:00
Kate J. Temkin
eb48e06331
fusee: get non-data SDMMC commands fully working on eMMC
2018-05-04 03:24:27 -06:00
Kate J. Temkin
dbb65428e8
fusee: further flesh out sdmmc implementation
2018-05-04 03:24:27 -06:00
Kate J. Temkin
2e3af0c474
fusee: fix issue with SDMMC psuedo-interrupts
2018-05-04 03:24:27 -06:00
Kate J. Temkin
fbe159e4d3
fusee: add missing file
2018-05-04 03:24:27 -06:00
Kate J. Temkin
06bf132022
skeleton SDMMC
2018-05-04 03:24:27 -06:00
Michael Scire
ea609e68d3
Change read_sd_file semantics to return size read.
2018-04-26 04:47:22 -06:00
Kate J. Temkin
b5d3ce04e8
fusee: fix missing volatiles in memory utils
2018-04-20 19:12:20 -06:00
Kate J. Temkin
60c0df032d
fusee: update header names for starting cpu0
2018-04-20 04:10:44 -06:00
Michael Scire
953c02dfba
Update argument passing, add video resume
2018-04-08 13:51:44 -06:00
Michael Scire
82552b5a89
Implement much of the core Stage2 loader logic for Fusee
2018-04-08 05:51:57 -06:00
Michael Scire
353019a269
Add debugging prints, enable backlight for stage1
2018-04-07 23:04:30 -06:00
Michael Scire
33f76545df
Implement all core Stage 1 logic for Fusee
2018-04-07 22:51:24 -06:00