[HTC One A9s Questions & Answers] bigrammy:
Standard AOSP boot.img builds will work just fine and it's likely that HTC stripped the MediaTek header which existed on builds up to MM 6.0 in the MediaTek source.

AIK (Android Image Kithchen by [MENTION=4544860]osm0sis[/MENTION] is a great stand alone tool for unpacking and repacking boot.img's of every variety and maybe useful for your exploratory work.

With regard to the partition scheme I was referring to the mmcblk0 It's likley HTC used the same layout on both devices. A simple (root required)

adb shell

su

sgdisk --print /dev/block/mmcblk0

from both the A9s and U should be enough to see if HTC did any significant changes between devices. If HTC used the same layout then you can tick that off your To Do list.

Here is a example of the output from my Sony.

# sgdisk --print /dev/block/mmcblk0
Disk /dev/block/mmcblk0: 30777344 sectors, 14.7 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 98101B32-BBE2-4BF2-A06E-2BB33D000C20
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 30777310
Partitions will be aligned on 512-sector boundaries
Total free space is 254909 sectors (124.5 MiB)
[COLOR="Blue"]Number=mmcblk0[B]p1 p2 p3 so on so on[/B] Code=EG: FFFF=[B]emmc[/B] 8300=[B]ext4[/B][/COLOR]
Number Start (sector) End (sector) Size Code Name
1 1024 5119 2.0 MiB FFFF ta
2 5120 25599 10.0 MiB FFFF protect1
3 25600 49151 11.5 MiB FFFF protect2
4 49152 81919 16.0 MiB 8300 ltalabel
5 81920 163839 40.0 MiB FFFF fotakernel
6 163840 164863 512.0 KiB FFFF para
7 164864 185343 10.0 MiB FFFF expdb
8 185344 187391 1024.0 KiB FFFF frp
9 187392 187903 256.0 KiB FFFF ppl
10 187904 253439 32.0 MiB FFFF nvdata
11 253440 318975 32.0 MiB FFFF metadata
12 318976 425983 52.3 MiB 8300 persist
13 425984 426495 256.0 KiB FFFF seccfg
14 426496 442879 8.0 MiB FFFF oemkeystore
15 442880 449023 3.0 MiB FFFF proinfo
16 449024 459263 5.0 MiB FFFF nvram
17 459264 461311 1024.0 KiB FFFF lk
18 461312 463359 1024.0 KiB FFFF lk2
19 463360 545279 40.0 MiB FFFF boot
20 545280 561663 8.0 MiB FFFF logo
21 561664 571903 5.0 MiB FFFF tee1
22 571904 582143 5.0 MiB FFFF tee2
23 582144 594431 6.0 MiB FFFF secro
24 594432 598527 2.0 MiB FFFF sec1
25 598528 600575 1024.0 KiB FFFF scp1
26 600576 602623 1024.0 KiB FFFF scp2
27 602624 688127 41.8 MiB FFFF rdimage
28 688128 704511 8.0 MiB 8300 nvcfg
29 704512 720895 8.0 MiB FFFF keystore
30 720896 753663 16.0 MiB 8300 apps_log
31 753664 786431 16.0 MiB 8300 diag
32 786432 1392639 296.0 MiB 8300 oem
33 1392640 1802239 200.0 MiB 8300 cache
34 1802240 1851391 24.0 MiB 8300 Qnovo
35 1851392 23724031 10.4 GiB 8300 userdata
36 23724032 30490623 3.2 GiB 8300 system
37 30501888 30534655 16.0 MiB FFFF flashinfo
G3311:/ #

I would recommend first trying a simple port of the U if the android version is is same.

EG: Unpack U boot.img and swap the kernel's repack flash the U system.img and modded boot and see how far you get. :fingers-crossed:

Then work from there on.

Basically get a working port of the U using the stock kernel and as much of the U's blobs as possible then try your own kernel builds till it boots.

Obviously all this is a massive undertaking and I don't own the A9's or U so cant really help there and I have some pretty huge gaps in my knowledge when it comes to compiling ROM's, hell I am struggling with my sony to get any kind of working ROM (Lineage AOSP) and I have the kernel source :eek: :eek: