CTCaer
55e01ca735
bdk: sd: improve init error handling
...
- Management of sd init done is now on sd init retry function
Also manages inserted, since it can set the sd init done to false if failed
- Init will now always check if SD is also initialized, since it doesn't manage it anymore. Because of that, mounting is no longer forced, but checked first.
- Unmount/End will now always set the sd as unmounted, since no data residue is expected after the fact
The above will improve handling of faulty SD cards or faulty SD readers.
2023-02-22 13:19:12 +02:00
CTCaer
9a98c1afb9
bdk: stylistic corrections
...
And update copyrights
2023-02-11 23:46:38 +02:00
CTCaer
22bdd0e0ff
bdk: sdmmc: remove unused power limits
...
Also name some magic numbers
2023-02-11 23:15:28 +02:00
CTCaer
5bb9a244ea
bdk: utilize new gpio functions
2023-02-11 23:08:32 +02:00
CTCaer
4d823d5909
bdk: slight refactor
2022-12-19 05:22:55 +02:00
CTCaer
6257d20db9
bdk: emmc: add emmc_set_partition
...
Additionally, add SDMMC index info to errors.
2022-12-19 04:53:50 +02:00
CTCaer
07695196cb
bdk: emmc: utilize emmc_end
2022-10-11 04:12:04 +03:00
CTCaer
197ce4c76f
bdk: sdmmc: timing changes
...
- Correct HS102 naming to DDR100
- Fix clock for DDR50 (even if it's unused)
2022-10-11 04:05:12 +03:00
CTCaer
70523e404f
bdk: whitespace refactor
2022-07-11 22:10:11 +03:00
CTCaer
b0c0a86108
bdk: migrate timers/sleeps to timer driver
2022-06-27 10:22:19 +03:00
CTCaer
e5ddac5211
bdk: sdmmc: rename current limit to power limit
2022-06-25 05:53:04 +03:00
CTCaer
489e222aac
bdk: sdmmc: expose csd/scr functions
2022-06-25 05:48:54 +03:00
CTCaer
c77c741c07
bdk: sdmmc: correct lower speed mode checks
...
Both bus widths of 8 and 4 should be checked for HS200 support and host type support, instead of giving 8-bit bus width a free pass.
2022-05-26 03:04:27 +03:00
CTCaer
889317da58
bdk: sdmmc: add missing sd block size define
2022-05-16 13:34:36 +03:00
CTCaer
76d1b4e221
bdk: sdmmc: refactor defines
...
And fix a bug with tuning trim values
2022-05-08 05:21:29 +03:00
CTCaer
0fef90dc4c
bdk: sd: return proper error for sd file save
2022-02-15 00:36:23 +02:00
CTCaer
ee465b98af
bdk: sdmmc correct exit on eMMC < 4.0 modules
2022-02-15 00:24:53 +02:00
CTCaer
ce8d1eca91
bdk: remove sd mounts from ianos and check if sd is mounted in sd ops
2022-02-15 00:17:53 +02:00
CTCaer
7c74391754
bdk: bpmp: do not use full maintenance
...
Instead use proper clean/invalidation of dcache.
2022-02-15 00:14:14 +02:00
CTCaer
52bb6a96e5
bdk: nx emmc bis: fix out of cluster bounds accesses
2022-01-29 01:40:38 +02:00
CTCaer
ef5790cc2c
bdk: mc: always on ahb arbitration
...
- Removed disables
- SDMMC code now just checks if it has access
2022-01-29 01:29:02 +02:00
CTCaer
192a936a31
bdk: add NX eMMC BIS driver
2022-01-20 13:21:04 +02:00
CTCaer
8327de8e2e
bdk: replace NYX flag with proper flags
...
- BDK_MINERVA_CFG_FROM_RAM: enables support for getting minerva configuration from nyx storage
- BDK_HW_EXTRA_DEINIT: enables extra deinit in hw_reinit_workaround
- BDK_SDMMC_OC_AND_EXTRA_PRINT: enables eMMC OC support (533 MB/s) and extra error printing
2022-01-20 13:19:48 +02:00
CTCaer
b08e36a7b0
bdk: add emmc ops
...
- Add support for lower eMMC bus speed init in case of failures
- Add error count reporting
- Function names and defines changed from nx_emmc to emmc (except autorcm helper function)
- Enabling emuMMC support needs BDK_EMUMMC_ENABLE flag passed over
2022-01-20 13:14:38 +02:00
CTCaer
00110a8863
bdk: move sd ops into bdk
2022-01-20 12:48:41 +02:00
CTCaer
10e1f67dc5
bdk: utils: add strcpy with head/tail whitespace removal
2022-01-20 12:36:25 +02:00
CTCaer
a5cd962f99
bdk: add global header
2022-01-15 23:58:27 +02:00
CTCaer
d368b93fdd
sdmmc: move error prints checks inside ifdefs
2021-09-17 23:12:54 +03:00
CTCaer
dcdf687a07
sdmmc: add support for sandisk emmc device report
2021-07-06 10:15:59 +03:00
CTCaer
6a4ab55930
storage: add sd_get_card_mounted declaration
2021-05-11 09:22:39 +03:00
CTCaer
a4a056128a
sdmmc: Add support for SDSC cards
2021-02-06 04:18:30 +02:00
CTCaer
a31bedda97
ramdisk: Sypport variable size
2021-02-06 04:15:19 +02:00
CTCaer
a8a45b215a
nyx: Add emmc info about write cache and enhanced area
2021-02-06 03:44:27 +02:00
CTCaer
38f456a2ee
sdmmc: Refactor again
...
- Refactor various variables and defines
- Removed Card/BGA and OEM ID info as they are static and useless
- Commented out bkops functions completely as not used
- Remove extra buf usage when there's already storage for storing that data
- Optimize various functions to save space
- Clean up useless or duplicate code
2021-02-06 03:41:35 +02:00
CTCaer
15a7e49dde
fatfs: Add simple GPT support
...
This allows for a simple GPT parsing and checking first partition to see if it's FAT based.
This allows hekate booting GPT with tiny size cost.
2021-02-05 23:27:52 +02:00
CTCaer
f6a3b2c9ac
sdmmc: Ensure writes gone through after disabling io power
2021-01-14 17:53:22 +02:00
CTCaer
745ac609d2
max7762x: Update everything to use the improved pmic management
2021-01-04 02:41:15 +02:00
CTCaer
ad560b650e
nyx: di: Set display id we got from bootloader
2020-12-11 17:49:06 +02:00
CTCaer
ba984d02eb
sdmmc: Mitigate some Phison SDs which think they are SDSC
2020-12-11 17:43:01 +02:00
CTCaer
fce59fba43
nyx: Add SD card AU info
2020-12-11 17:41:09 +02:00
CTCaer
5b8fb9fb6b
Various refactoring and addition of comments
2020-12-11 17:25:59 +02:00
CTCaer
c13eabcde8
sdmmc: Add T210B01 support
...
The driver was working before this, but adding the changes provides a proper and better sdmmc controller inner state.
2020-12-02 02:07:15 +02:00
CTCaer
cabaa6cfb8
Utilize BIT macro everywhere
2020-11-26 01:41:45 +02:00
CTCaer
89a4eadab0
sdmmc: Refactor some names
2020-11-26 01:08:42 +02:00
CTCaer
55395ea4fd
sdmmc: Correct bus speed for SDR25
...
Fix bus speed on SDR25 even if all UHS cards support SDR50 and SDR104.
2020-11-15 15:11:19 +02:00
CTCaer
4166a3c128
sdmmc: Add more debugging
2020-11-15 15:08:53 +02:00
CTCaer
68d57861cd
Add missing guard from some macros
...
Guard them for future usage, as none of these macros had a non-preset variable used with them yet.
2020-11-15 13:39:27 +02:00
CTCaer
1f5b371608
Refactor some names
...
Additionally:
- Do not retry to init sd if all modes failed in Nyx.
- Do not try to read/write if sdmmc controller and card are not initialized.
2020-10-23 06:32:24 +03:00
CTCaer
d71f6d0b99
sdmmc: Restart xfer on Read/Write error
2020-08-28 09:39:06 +03:00
CTCaer
7b03a24196
sdmmc: Add extra error printing
2020-08-15 13:16:37 +03:00