Hardware 256gb EMMC Experiment

  • Thread starter Deleted-172301
  • Start date
  • Views 9,028
  • Replies 26
  • Likes 2
D

Deleted-172301

Guest
OP
So I’ve hit a major roadblock. I can’t create more than 11 partitions on the emmc. I think this is related to nintendo’s partition scheme.

Going to do some digging, but I thought GPT could have at least 128 partitions?

I can make extended partitions...

Edit:

Just remade the partition map with gdisk. I can now create more than 11 partitions. Copied all the unique GUIDs that each partition had, and ensured that each had the correct GUID type code that nintendo sets. Looks as though we will have to manually remake the gpt table after restoring from a NAND Backup in order to get past the partition limitation. Going to post the before and after below. I've removed my GUIDs from this post just incase that is relied upon by nintendo's encryption. Horizon boots just fine with these changes. If you attempt to read the emmc info in hekate it will cause a bug which can only be fixed by relaunching hekate. So once you add the new gpt table. Don’t read emmc info in Hekate.

Nintendo GPT Map after I extended the user partition
Code:
Disk /dev/disk3: 488554496 sectors, 233.0 GiB
Sector size (logical): 512 bytes
Disk identifier (GUID): XXXX-XXXX-XXXX-XXXX-XXXX
Partition table holds up to 11 entries
Main partition table begins at sector 2 and ends at sector 4
First usable sector is 34, last usable sector is 488554462
Partitions will be aligned on 2-sector boundaries
Total free space is 63635423 sectors (30.3 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34            8191   4.0 MiB     FFFF  PRODINFO
   2            8192           16383   4.0 MiB     FFFF  PRODINFOF
   3           16384           32767   8.0 MiB     FFFF  BCPKG2-1-Normal-Main
   4           32768           49151   8.0 MiB     FFFF  BCPKG2-2-Normal-Sub
   5           49152           65535   8.0 MiB     FFFF  BCPKG2-3-SafeMode-Main
   6           65536           81919   8.0 MiB     FFFF  BCPKG2-4-SafeMode-Sub
   7           81920           98303   8.0 MiB     FFFF  BCPKG2-5-Repair-Main
   8           98304          114687   8.0 MiB     FFFF  BCPKG2-6-Repair-Sub
   9          114688          245759   64.0 MiB    FFFF  SAFE
  10          245760         5488639   2.5 GiB     FFFF  SYSTEM
  11         5488640       424919039   200.0 GiB   FFFF  USER

New GPT Table that correctly allows for 128 entries. This will cause a bug in hekate when reading EMMC partition information.
Code:
Disk /dev/disk3: 488554496 sectors, 233.0 GiB
Sector size (logical): 512 bytes
Disk identifier (GUID): XXXX-XXXX-XXXX-XXXX-XXXX
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 488554462
Partitions will be aligned on 2-sector boundaries
Total free space is 63635423 sectors (30.3 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34            8191   4.0 MiB     FFFF  PRODINFO
   2            8192           16383   4.0 MiB     FFFF  PRODINFOF
   3           16384           32767   8.0 MiB     FFFF  BCPKG2-1-Normal-Main
   4           32768           49151   8.0 MiB     FFFF  BCPKG2-2-Normal-Sub
   5           49152           65535   8.0 MiB     FFFF  BCPKG2-3-SafeMode-Main
   6           65536           81919   8.0 MiB     FFFF  BCPKG2-4-SafeMode-Sub
   7           81920           98303   8.0 MiB     FFFF  BCPKG2-5-Repair-Main
   8           98304          114687   8.0 MiB     FFFF  BCPKG2-6-Repair-Sub
   9          114688          245759   64.0 MiB    FFFF  SAFE
  10          245760         5488639   2.5 GiB     FFFF  SYSTEM
  11         5488640       424919039   200.0 GiB   FFFF  USER

Just created my final partition map. Going to run L4T Last. Less partitions to deal with. Ignore the last two filesystem names. That will be changed once I restore each image. Last steps are to get the boot.scr files to point to the correct partitions on the EMMC instead of the SD. Pretty Excited at this point!
Code:
Disk /dev/disk3: 488554496 sectors, 233.0 GiB
Sector size (logical): 512 bytes
Disk identifier (GUID): XXXX-XXXX-XXXX-XXXX-XXXX
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 488554462
Partitions will be aligned on 2-sector boundaries
Total free space is 0 sectors (0 bytes)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34            8191   4.0 MiB     FFFF  PRODINFO
   2            8192           16383   4.0 MiB     FFFF  PRODINFOF
   3           16384           32767   8.0 MiB     FFFF  BCPKG2-1-Normal-Main
   4           32768           49151   8.0 MiB     FFFF  BCPKG2-2-Normal-Sub
   5           49152           65535   8.0 MiB     FFFF  BCPKG2-3-SafeMode-Main
   6           65536           81919   8.0 MiB     FFFF  BCPKG2-4-SafeMode-Sub
   7           81920           98303   8.0 MiB     FFFF  BCPKG2-5-Repair-Main
   8           98304          114687   8.0 MiB     FFFF  BCPKG2-6-Repair-Sub
   9          114688          245759   64.0 MiB    FFFF  SAFE
  10          245760         5488639   2.5 GiB     FFFF  SYSTEM
  11         5488640       424919039   200.0 GiB   FFFF  USER
  12       424919040       427141119   1.1 GiB     8300  vendor
  13       427141120       431681535   2.2 GiB     8300  system
  14       431681536       431824895   70.0 MiB    8300  boot
  15       431824896       431968255   70.0 MiB    8300  recovery
  16       431968256       432029695   30.0 MiB    8300  dtb
  17       432029696       463486975   15.0 GiB    8300  userdata
  18       463486976       484458495   10.0 GiB    AF00  Apple HFS/HFS+
  19       484458496       488554462   2.0 GiB     AF00  Apple HFS/HFS+
 
Last edited by ,
  • Like
Reactions: Rahkeesh and ganons
D

Deleted-172301

Guest
OP
Another update. Looks as though booting android/linux off EMMC is a bit more complicated than I thought. I'll have to compile a custom boot.scr binary, and add EMMC entries to the dts portion of the boot process? Once I have built that I'll add them to the thread for others to use.

A ton of this is super new to me and I'll have to do more digging. I also did find that this has been tested before by the switchroot team. Which is good news. Right now the android images have been written to their respective partitions and are primed for booting.
 
Last edited by ,

Rahkeesh

Well-Known Member
Member
Joined
Apr 3, 2018
Messages
2,178
Trophies
1
Age
42
XP
3,261
Country
United States
Another update. Looks as though booting android/linux off EMMC is a bit more complicated than I thought. I'll have to compile a custom boot.scr binary, and add EMMC entries to the dts portion of the boot process? Once I have built that I'll add them to the thread for others to use.

A ton of this is super new to me and I'll have to do more digging. I also did find that this has been tested before by the switchroot team. Which is good news. Right now the android images have been written to their respective partitions and are primed for booting.

Dammit why can't they offer that. XD

Told ya they were too afraid of people doing stupid things.

Looking forward to what you come up with!
 

Blavla

Well-Known Member
Member
Joined
Sep 20, 2020
Messages
247
Trophies
0
Age
33
XP
1,227
Country
Germany
You can do it for 60$
I did it a couple of times.
Emmc from Aliexpress, donor board and a rework station (hot air)
Stil using one of them online
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: https://m.youtube.com/watch?v=FzVN9kIUNxw +1