Convert zimage to boot.img for galaxy s5 - Galaxy S 5 Developer Discussion [Developers Only]

Hi everyone
I'm trying to compile my own kernel for sm-g900h from source , after i've encountered tons of errors during compilation and trying several toolchains and configs i got the zimage and the modules ready but !!
when i convert zimage to boot.img using umkbootimg and mkbootimgtool the boot.img doesn't boot at all and the device stick at samsung's logo so i thought that it's a problem with my zimage so i tried even more configs but to no avail.
the strange thing that i found is that if i unpacked the stock boot.img and then pack it without any modifications the resulted boot.img is different than the stock boot.img !!!! and it's smaller in about 500 kb than the stock boot.img !!! and of course the resulted boot.img won't boot .
Using the tools in this thread I could unpack the stock boot.img and then repack it without corruption but when i replace the stock zimage with my own one and then pack it again, the boot.img doesn't boot
if i used the standard tools or any other tools in the internet to unpack boot.img and get information i get no cmdline from the stock image although when i open /proc/last_kmsg i get content in ATAG_CMDLINE . . . . so there is definitely a difference between the standard boot.img and the s5's
this is the content of my last_kmsg file i hope someone can use the information to help my modify the tools
Code:
MUIC rev = MAX77804K(157)
MON: 0x0(0)
MON[0] = (0)[0x00, 0x00]
MON[1] = (1)[0x00, 0x00]
MON[2] = (2)[0x00, 0x00]
MON[3] = (3)[0x00, 0x00]
init_microusb_ic: MUIC: CDETCTRL:0x2d
init_microusb_ic: MUIC: CONTROL1:0x00
init_microusb_ic: MUIC: CONTROL2:0x33
init_microusb_ic: MUIC: CONTROL4:0xb2
cardtype: 0x00000007
SB_MMC_HS_52MHZ_1_8V_3V_IO
mmc->card_caps: 0x00000f11
mmc->host_caps: 0x00000f11
!!!Enter 8 Bit DDR mode.!!!
[mmc] capacity = 30777344
Current SBOOT version : VERSION_-+A1
Samsung S-Boot 4.0 for SM-G900H (Jul 9 2014 - 15:38:24)
EXYNOS5422 EVT 0.1 (Base on ARM CortexA7)
2026MB / 15028MB / Rev 10 / G900HXXU1ANG3 /(PKG_ID 0x310c8328)
BOOTLOADER VERSION : G900HXXU1ANG3
- read_bl1
pit_check_signature (PIT) valid.
initialize_ddi_data: usable! (50:0x3)
[RPMB] emmc_rpmb_open:
Get DATA success.
[RPMB] emmc_rpmb_close:
initialize_rpmb_data: usable! (SM-G900H:VERSION_-+A1)
PARAM ENV VERSION: v1.0..
DDR SIZE: 2G (0x0004)
[RPMB] emmc_rpmb_open:
Get DATA success.
[RPMB] emmc_rpmb_close:
init react lock flag
muic_api_print_init_regs: INTMASK[1:0x00, 2:0x00]
muic_api_print_init_regs: MUIC: CDETCTRL:0x2d
muic_api_print_init_regs: MUIC: CONTROL1:0x00
muic_api_print_init_regs: MUIC: CONTROL2:0x3a
muic_api_print_init_regs: MUIC: CONTROL3:0x00
muic_api_print_init_regs: MUIC: CONTROL4:0xb2
set_charger_state: buck(1), chg(1), reg(0x05)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x00
muic_get_chg_typ: CHGTYP:0x00
set_auto_current: get_charger_status(0)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x00
muic_get_chg_typ: CHGTYP:0x00
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x00
muic_get_chg_typ: CHGTYP:0x00
get_wireless_charger_detect: wireless check 0
get_wireless_charger_detect : CHG_DTLS(0x00)
set_auto_current: unknown_state, curr(475)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x00
muic_get_chg_typ: CHGTYP:0x00
get_wireless_charger_detect: wireless check 0
get_wireless_charger_detect : CHG_DTLS(0x00)
set_charger_current: chg curr(12), in curr(0)
fuelgauge_read_i2c_word : 0x0, 0x0
fuelguage : mode=0x0
fuelgauge_read_i2c_word : 0x0, 0x0
fuelguage : hibrt(0000) == 0x0
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x00
muic_get_chg_typ: CHGTYP:0x00
get_wireless_charger_detect: wireless check 0
get_wireless_charger_detect : CHG_DTLS(0x00)
fuelguage : wpc_status(0)
muic_api_interrupt_reg_clear: INTR[1:0x00, 2:0x03]
AP_PMIC_SDA = 1
PMIC_ID = 0x83
PMIC_STATUS1 = 0x07
PMIC_STATUS2 = 0x11
PMIC_OFFSRC = 0x00
PMIC_PWRON = 0x01
PMIC_IRQ1 = 0x02
PMIC_IRQ2 = 0x11
PMIC_IRQ3 = 0x00
PMIC_RTC_INT1 = 0x22
PMIC_RTC_INT2 = 0x10
PMIC_RTC_INT3 = 0x00
PMIC_RTC_OFFSRC = 0x80
PMIC_RTC_SMPL = 0x03
s5p_check_keypad: 0x1110000
s5p_check_keypad: download mode
s5p_reset_reboot_mode
set_usb_vbus_out: MUIC: CONTROL1: 0x09
set_usb_vbus_out: SAFEOUTLDO: [0x75] + [0x75] -> [0x75]
: Entering usb mode for SM-G900H (1)..
scr_draw_image: draw 'warning.jpg'...
read 'warning.jpg'(185976) completed.
fimd_set_div: sclk=532000000, vclk=128404800, cmu_div=4, div=1
mic_init
60, 28, 13, 0x602813
ODIN MODE
ODIN MODE
PRODUCT NAME: SM-G900H
PRODUCT NAME: SM-G900H
CURRENT BINARY: Custom
CURRENT BINARY: Custom
SYSTEM STATUS: Custom
SYSTEM STATUS: Custom
REACTIVATION LOCK(KK): OFF
REACTIVATION LOCK(KK): OFF
KNOX WARRANTY VOID: 1
KNOX WARRANTY VOID: 1
RP SWREV: A1
RP SWREV: A1
board_set_dev_pm: hello! I'm USB.(1)
usb: read original PHYPARAM0 : 0x24d466e4
usb: modified PHYPARAM0 : 0x26d4e6e4
process_packet: id=100, data=0
checksum_enable write complete value : 0
NeedChecksum clear
get_storage_capacity 30777344 15028 14
process_packet: id=100, data=5
packet data size is changed to 1048576.
process_packet: id=100, data=2
process_packet: id=101, data=1
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=2
process_packet: id=101, data=3
process_packet: id=102, data=0
process_packet: id=102, data=2
process_packet: id=102, data=3
pit_check_signature (BOOT) valid.
if_ddi_data: succeeded. (50:0x0)
START: 114688 BLOCK: 26624
wait for erase done.
it can take serveral second.
.
pit_flash_binary: 'BOOT' is flashed fully.
process_packet: id=103, data=0
process_packet: id=103, data=1
s5p_restart_handler ('N':null)
MUIC rev = MAX77804K(157)
MON: 0x13(1)
MON[0] = (1)[0x0b, 0x17]
MON[1] = (2)[0xe0, 0x50]
MON[2] = (3)[0x55, 0xd4]
MON[3] = (0)[0x58, 0xec]
init_microusb_ic: MUIC: CDETCTRL:0x2d
init_microusb_ic: MUIC: CONTROL1:0x09
init_microusb_ic: MUIC: CONTROL2:0x3a
init_microusb_ic: MUIC: CONTROL4:0xb2
set_muic_uart_early: MUIC: CONTROL1: 0x00
cardtype: 0x00000007
SB_MMC_HS_52MHZ_1_8V_3V_IO
mmc->card_caps: 0x00000f11
mmc->host_caps: 0x00000f11
!!!Enter 8 Bit DDR mode.!!!
[mmc] capacity = 30777344
Current SBOOT version : VERSION_-+A1
Samsung S-Boot 4.0 for SM-G900H (Jul 9 2014 - 15:38:24)
EXYNOS5422 EVT 0.1 (Base on ARM CortexA7)
2026MB / 15028MB / Rev 10 / G900HXXU1ANG3 /(PKG_ID 0x310c8328)
BOOTLOADER VERSION : G900HXXU1ANG3
- read_bl1
pit_check_signature (PIT) valid.
initialize_ddi_data: usable! (50:0x0)
[RPMB] emmc_rpmb_open:
Get DATA success.
[RPMB] emmc_rpmb_close:
initialize_rpmb_data: usable! (SM-G900H:VERSION_-+A1)
PARAM ENV VERSION: v1.0..
DDR SIZE: 2G (0x0004)
[RPMB] emmc_rpmb_open:
Get DATA success.
[RPMB] emmc_rpmb_close:
init react lock flag
muic_api_print_init_regs: INTMASK[1:0x00, 2:0x00]
muic_api_print_init_regs: MUIC: CDETCTRL:0x2d
muic_api_print_init_regs: MUIC: CONTROL1:0x00
muic_api_print_init_regs: MUIC: CONTROL2:0x3a
muic_api_print_init_regs: MUIC: CONTROL3:0x00
muic_api_print_init_regs: MUIC: CONTROL4:0xb2
set_charger_state: buck(1), chg(1), reg(0x05)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_auto_current: get_charger_status(1)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_auto_current: usb_state(1), curr(475)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_charger_current: chg curr(12), in curr(19)
fuelgauge_read_i2c_word : 0x0, 0x0
fuelguage : mode=0x0
fuelgauge_read_i2c_word : 0x0, 0x0
fuelguage : hibrt(0000) == 0x0
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
fuelguage : wpc_status(0)
muic_api_interrupt_reg_clear: INTR[1:0x00, 2:0x13]
AP_PMIC_SDA = 1
PMIC_ID = 0x83
PMIC_STATUS1 = 0x3a
PMIC_STATUS2 = 0x10
PMIC_OFFSRC = 0x00
PMIC_PWRON = 0x01
PMIC_IRQ1 = 0x51
PMIC_IRQ2 = 0x10
PMIC_IRQ3 = 0x00
PMIC_RTC_INT1 = 0x51
PMIC_RTC_INT2 = 0x10
PMIC_RTC_INT3 = 0x00
PMIC_RTC_OFFSRC = 0x80
PMIC_RTC_SMPL = 0x03
s5p_check_keypad: 0x0
s5p_check_reboot_mode: INFORM3 = 0 ... skip
board_get_clock_info :
CLK_SRC_TOP3 (0x1002020c) = 0x11111111
CLK_SRC_TOP2 (0x10020208) = 0x11102010
CLK_SRC_TOP1 (0x10020204) = 0x00200000
CLK_SRC_TOP0 (0x10020200) = 0x10021100
CLK_SRC_FSYS (0x10020244) = 0x00044400
CLK_DIV_CPU0 (0x10010500) = 0x03550020
CLK_DIV_TOP0 (0x10020500) = 0x22504200
CLK_DIV_KFC (0x10038500) = 0x03500720
CLK_DIV_FSYS1 (0x1002054c) = 0x00102801
CLK_DIV_FSYS2 (0x10020550) = 0x04000000
MPLL_CON0 (0x10020180) = 0xa10a0302(532 MHz)
BPLL_CON0 (0x10030110) = 0xa1130401(825 MHz)
CPLL_CON0 (0x10020120) = 0xa06f0201(666 MHz)
KPLL_CON0 (0x10038100) = 0xa0c80301(800 MHz)
SPLL_CON0 (0x10020160) = 0xa0c80301(800 MHz)
DPLL_CON0 (0x10020128) = 0xa0c80202
DIV_FSYS1 (0x1002054c) = 0x00102801
mmc0 sclk_mmc : 400000KHz
mmc2 sclk_mmc : 400000KHz
board_get_clock_info : time = 0
s5p_check_upload: MAGIC(0x0), RST_STAT(0x800)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
s5p_check_upload: debug level is LO! (mask: 0x0)
s5p_check_download: 0
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
check_pm_status: normal reset, do not enter LPM mode.
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
fuelguage : wpc_status(0)
set_charger_state: buck(1), chg(0), reg(0x04)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_auto_current: get_charger_status(1)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_auto_current: usb_state(1), curr(475)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_charger_current: chg curr(12), in curr(19)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
[fuelgauge] start set model data for max17048
[fuelguage] : OriginRCOMP = 0x97, OriginAlert = 0x1c
fuelguage : OCV_DATA1 = 0xbd, OCV_DATA2 = 0x30
[BATT]fuelguage : re-write RCOMPseg data
fuelguage : SOC_DATA1 = 0xf3, SOC_DATA2 = 0x4d
fuelguage : model was loaded successful
fuelguage : RCOMP(0x5d)
fuelguage : OCV_DATA1 = 0xbd, OCV_DATA2 = 0x30
[max17048] hibrt, vart, vreset setting
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
fuelgauge_read_i2c_word : 0x0, 0x0
fuelgauge_read_i2c_word : 0x0, 0xff
fuelgauge_read_i2c_word : 0x7d, 0x0
fuelgauge_read_i2c_word : 0x3f, 0xc5
fuelgauge_read_i2c_word : 0xbd, 0x0
fuelgauge_read_i2c_word : 0xbd, 0x0
fuelgauge_read_i2c_word : 0xbd, 0x0
fuelgauge_read_i2c_word : 0xbd, 0x0
fuelgauge_read_i2c_word : 0xbd, 0x0
fuelgauge_read_i2c_word : 0xbd, 0x2f
init_fuel_gauge: is reset case, skip soc-cal.
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
[BATT] Charging table soc
[BATT]3165 = ( 378000 - 370815 ) *100 / 227
[fuelgauge]soc(31), table_soc(31), vcell(378000)
fuelgauge : fg_reset_soc (0)
set_charger_state: buck(1), chg(1), reg(0x05)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_auto_current: get_charger_status(1)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_auto_current: usb_state(1), curr(475)
muic_get_adc_value: STATUS1:0x3f
muic_get_adc_value: ADC:0x1f
muic_get_chg_typ: STATUS2:0x41
muic_get_chg_typ: CHGTYP:0x01
set_charger_current: chg curr(12), in curr(19)
fuelgauge_read_i2c_word : 0x1, 0xff
fuelguage : REG_VCELL = 0xbd, 0xa0
fuelguage : REG_SOC = 0x3f, 0xc5
fuelguage : REG_MODE = 0x0, 0x0
fuelguage : REG_VERSION = 0x0, 0x12
fuelguage : REG_HIBRT = 0x0, 0x0
fuelguage : REG_RCOMP = 0x5d, 0x1e
fuelguage : REG_VART = 0x0, 0xff
fuelguage : REG_CRATE = 0xe, 0xc0
fuelguage : REG_VRESET = 0x7d, 0x0
fuelguage : REG_STATUS = 0x0, 0xff
fuelguage : REG_RCOMP = 0x5d, 0x1e
scr_draw_image: draw 'logo.jpg'...
read 'logo.jpg'(104016) completed.
[TMU] 49, 51, 54, 47, 45
fimd_set_div: sclk=532000000, vclk=128404800, cmu_div=4, div=1
mic_init
60, 28, 13, 0x602813
<start_checksum:481>CHECKSUM_HEADER_SECTOR :4096
<start_checksum:483>offset:50, size:6296
<start_checksum:485>CHECKSUM_HEADER_INFO : NeedChecksum:0 PartNo:0
Not Need Movinand Checksum
Movinand Checksum Confirmation Pass
[mobi_drv] add: 0x43e53d10, size: 13229
MobiCore INIT response = 0
MobiCore RTM has initialized!
MobiCore IDLE flag = 0
MobiCore driver address 43e53d10, size = 13229
MobiCore RTM Notified back!
MobiCore Driver loaded and RTM IDLE!
MobiCore RTM has been uninitialized!
load_kernel: loading boot image from 114688..
dt_size:561152, dt_actual:561152
pit_check_signature (BOOT) valid.
No need to update kernel type.
SMC Num = 0x83000001
mobismc success!!! [ret = 0]
Pass. DTBH size is smaller than a page.
<dtbh_header Info>
magic:0x48425444, version:0x00000002, num_entries:0x00000005
<device info>
chip_id: 0x0000152e
platform_id: 0x00001e92
subtype_id: 0x7d64f612
hw_rev: 0x0000000a
dt_entry[00]
chip_id: 0x0000152e
platform_id: 0x00001e92
subtype_id: 0x7d64f612
hw_rev: 0x00000002
hw_rev_end: 0x00000002
offset: 0x00000800
dtb size: 0x0001b000
dt_entry[01]
chip_id: 0x0000152e
platform_id: 0x00001e92
subtype_id: 0x7d64f612
hw_rev: 0x00000003
hw_rev_end: 0x00000003
offset: 0x0001b800
dtb size: 0x0001b800
dt_entry[02]
chip_id: 0x0000152e
platform_id: 0x00001e92
subtype_id: 0x7d64f612
hw_rev: 0x00000004
hw_rev_end: 0x00000004
offset: 0x00037000
dtb size: 0x0001b000
dt_entry[03]
chip_id: 0x0000152e
platform_id: 0x00001e92
subtype_id: 0x7d64f612
hw_rev: 0x00000005
hw_rev_end: 0x00000009
offset: 0x00052000
dtb size: 0x0001b800
dt_entry[04]
chip_id: 0x0000152e
platform_id: 0x00001e92
subtype_id: 0x7d64f612
hw_rev: 0x0000000a
hw_rev_end: 0x000000ff
offset: 0x0006d800
dtb size: 0x0001b800
Selected entry hw_ver : 10
dt_entry of hw_rev 10 is loaded at 0x41f00000.(112640 Bytes)
[s5p_check_sboot_version_rpmb]cur_version:VERSION_-+A1, rpmb_version:VERSION_-+A1
rpmb_version:49, cur_version:49
DDI value :0x00000000
ATAG_CORE: 5 54410001 0 0 0
ATAG_MEM: 4 54410002 20000000 40000000
ATAG_MEM: 4 54410002 20000000 60000000
ATAG_MEM: 4 54410002 20000000 80000000
ATAG_MEM: 4 54410002 1EA00000 A0000000
ATAG_SERIAL: 4 54410006 3208df64 106e5127
ATAG_INITRD2: 4 54420005 42000000 1576a8
ATAG_REVISION: 3 54410007 a
ATAG_CMDLINE: b3 54410009 'console=ram loglevel=4 sec_debug.level=0 sec_watchdog.sec_pet=5 printk.core_num=1 androidboot.debug_level=0x4f4c [email protected] [email protected] [email protected] s3cfb.bootloaderfb=0x87000000 lcdtype=6301715 consoleblank=0 lpj=3977216 vmalloc=256m sec_debug.reset_reason=7 noexec=off oops=panic pmic_info=2515 cordon=9ae968e9bf369aa72d0c1c9b54ff83c3 connie=SM-G900H_OPEN_EUR_ed2a5acfd0ccaca2ddabdb9a73333535 androidboot.emmc_checksum=3 androidboot.odin_download=1 androidboot.bootloader=G900HXXU1ANG3 androidboot.selinux=enforcing androidboot.warranty_bit=1 androidboot.sec_atd.tty=/dev/ttySAC2 androidboot.serialno=3208df64106e5127 snd_soc_core.pmdown_time=1000'
ATAG_NONE: 0 0
Updating device tree @0x41f00000: done
Starting kernel at 0x40008000...
SWITCH_SEL(3)

i hope there will be some solution and finally we will have custom rom for our g900H

Airboner said:
i hope there will be some solution and finally we will have custom rom for our g900H
Click to expand...
Click to collapse
i hope so

Correct me if I'm wrong since I'm no dev, but my understanding is that simply modifying the kernel won't all of the sudden let us use custom roms. We need an unlocked bootloader to even have the possibility of loading the modified kernel, unless another genius comes along and finds a new lokidoki-esq exploit

@moham_96 have u seen the release of samsung about source kernel?
http://opensource.samsung.com/reception/receptionSub.do?method=sub&sub=F&searchValue=g900h
maybe will help you about developing any custom rom

Airboner said:
@moham_96 have u seen the release of samsung about source kernel?
http://opensource.samsung.com/reception/receptionSub.do?method=sub&sub=F&searchValue=g900h
maybe will help you about developing any custom rom
Click to expand...
Click to collapse
I've already seen that because that where i get the source code from but they didn't write any documentation on the subject of boot partition

mcmb03 said:
Correct me if I'm wrong since I'm no dev, but my understanding is that simply modifying the kernel won't all of the sudden let us use custom roms. We need an unlocked bootloader to even have the possibility of loading the modified kernel, unless another genius comes along and finds a new lokidoki-esq exploit
Click to expand...
Click to collapse
AS far as i know the international variant of galaxy s5 (sm-g900h) doesn't have a locked bootloader

moham_96 said:
AS far as i know the international variant of galaxy s5 (sm-g900h) doesn't have a locked bootloader
Click to expand...
Click to collapse
Derp, thanks. I didn't see the "H" part of the variant

any help would be appreciated

moham_96 said:
any help would be appreciated
Click to expand...
Click to collapse
I used to compile kernels for old smartphones a few years ago. Here are 2 things you might want to look at:
The last_kmsg that you see is probably from the last full boot......meaning that it is from the successful stock kernel boot and not from your custom kernel that failed to boot.
The locked bootloader is checking the kernel signature and is failing to boot your kernel.
The reason last_kmsg does not show the log of the failed custom kernel boot is that the bootloader never actually loaded that kernel because of the failed signature check.

moham_96 said:
AS far as i know the international variant of galaxy s5 (sm-g900h) doesn't have a locked bootloader
Click to expand...
Click to collapse
Doesn't matter.....the bootloader is still checking the kernel's crypro signature and refusing to boot your kernel.

bads3ctor said:
I used to compile kernels for old smartphones a few years ago. Here are 2 things you might want to look at:
The last_kmsg that you see is probably from the last full boot......meaning that it is from the successful stock kernel boot and not from your custom kernel that failed to boot.
The locked bootloader is checking the kernel signature and is failing to boot your kernel.
The reason last_kmsg does not show the log of the failed custom kernel boot is that the bootloader never actually loaded that kernel because of the failed signature check.
Click to expand...
Click to collapse
Thanks for your reply
firstly, i know that the last_kmsg is from the stock boot image and that's why i posted here so that someone can help me to use the information it provides about the proper boot to edit the bootimg tools to be used with the g900h
what i found interesting is that the tools that i use to detect the addresses of the boot image and then split the ramdisk from the zimage doesn't work properly because they can't recognize the cmdline of the kernel (i got an empty line) but when you look at the last_kmsg image you can see tht the cmdline has arguments to pass to the kernel so there is definitely something different between what the unpacking tools use to detect the tags and what samsung use to build the kernel image

bads3ctor said:
Doesn't matter.....the bootloader is still checking the kernel's crypro signature and refusing to boot your kernel.
Click to expand...
Click to collapse
How can i make sure of that and is there any way to bypass it ?

moham_96 said:
How can i make sure of that and is there any way to bypass it ?
Click to expand...
Click to collapse
Flash a different bootloader or create something like Loki that would work for Samsung phones: http://forum.xda-developers.com/showthread.php?t=2358871

bads3ctor said:
Flash a different bootloader or create something like Loki that would work for Samsung phones: http://forum.xda-developers.com/showthread.php?t=2358871
Click to expand...
Click to collapse
unfortunately, flashing a new bootloader is a risk i can't take

Can you post a step by step of the things you did after the make command until generating the boot.img? There's a high chance you missed something since I encountered this too after moving from my HTC One M7 to Xperia Z1 Compact. What I missed was the DTS part which is kinda new. So if you could post even just the raw commands you executed I could analyze it for you.
If you're stuck with the Galaxy S5 powered by android logo then that means your kernel isn't even being read.

Because there CM12 or 13 cm stable for the galaxy s5 900h Exynos?

Related

[FFU][UPE-DEV]Structure Full Flash Update Image for Dell VenuePro[WP7][7.0.0.7004]

Structure Full Flash Update Image (.FFU) for Dell VenuePro Windows Phone 7 7.0.0.7004
Full Flash Update - This is a System Flash Image for update WP7 Device. We upgrade this OS, example in tool UpdateWP.exe(from Zune catalog in PC).
In Part SDLR, from general ROM structure, we have too more files and modules, which reads the image system and its syntax.
ImageFlash Structure:
Code:
[FullFlash]
Version = 1.0
MigrateUserSettings = False
UpdateType = Normal
DevicePlatformID = {5B8F8B62-8E55-4531-8D70-15269B68C43E}
FormatUserStore = True
[BinaryRegion]
Size = 24924572
Name = Modem
[Store]
SectorSize = 2048
Name = OS
SectorCount = 479296
ID = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 2590
Name = SLDR
PartitionType = 32
BootDataSize = 12
TotalSectors = 3136
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 2540
Name = NK
PartitionType = 35
BootDataSize = 12
TotalSectors = 2944
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 66059
Name = IMGFS
PartitionType = 37
TotalSectors = 70719
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
Nokser

[Dev] Gen10 AES/MPK keys + aos-tools

Hi hackers,
aos-tools got another update.
With the help of cajl, our helpful fellow here at xda, i was able to extract the keys for Gen10 devices.
So here it is:
Code:
static unsigned char G10A_AES[] = {
0x7A, 0xDD, 0xFA, 0xB4, 0xAF, 0x05, 0x18, 0xF4,
0x02, 0x6E, 0xFE, 0x2E, 0x28, 0xFA, 0x0C, 0x71
};
static unsigned char G10A_BOOTLOADER[] = {
0xFB, 0x28, 0x97, 0x50, 0x10, 0x90, 0x9B, 0x90, 0xDD, 0xD0,
0x27, 0xC5, 0x15, 0xC5, 0xDD, 0xCE, 0xDB, 0x6E, 0xE1, 0x5C,
0xB9, 0xAA, 0x15, 0x2F, 0xE2, 0x3E, 0xB0, 0x8A, 0xB5, 0x99,
0xE1, 0x01, 0x06, 0x58, 0x0D, 0x00, 0xD3, 0xC6, 0x38, 0x67,
0x34, 0x2D, 0x31, 0x22, 0x28, 0xD3, 0x09, 0x44, 0x3D, 0xBE,
0xE8, 0x19, 0xC9, 0x23, 0x7A, 0x0A, 0x06, 0x1F, 0x5D, 0xCF,
0xAA, 0xB3, 0xC2, 0x99, 0xDA, 0xA8, 0x20, 0x50, 0x6B, 0x7A,
0x6D, 0x05, 0xFD, 0x80, 0x25, 0x52, 0x07, 0x54, 0xF5, 0xA6,
0xA1, 0x6F, 0xF9, 0xC2, 0xB4, 0x7E, 0x03, 0x17, 0xB3, 0x66,
0xA4, 0xA9, 0xBA, 0x11, 0x68, 0xC4, 0x56, 0xC3, 0x01, 0x7A,
0x4B, 0x5A, 0x30, 0x3A, 0x5F, 0xB3, 0x7A, 0x5F, 0x91, 0x34,
0xBD, 0xB1, 0x78, 0x10, 0x25, 0xE8, 0xDC, 0x59, 0x79, 0x61,
0xE9, 0x58, 0xF8, 0x8F, 0x25, 0x58, 0x3F, 0xB3, 0x01, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE1, 0x38,
0x6C, 0xCB
};
static unsigned char G10A_RELMPK[] = {
0x21, 0x54, 0x3D, 0x5F, 0x13, 0x85, 0xFC, 0xE2, 0x02, 0x75,
0xFE, 0x46, 0xC1, 0xAF, 0xBF, 0xC3, 0x91, 0x94, 0xF0, 0x2D,
0xAE, 0xF9, 0x6D, 0xEA, 0x2F, 0x2E, 0x24, 0xC7, 0x24, 0x8E,
0x6E, 0x1A, 0xB8, 0x15, 0x26, 0x40, 0xD7, 0xB1, 0xFA, 0x79,
0x60, 0xFB, 0x70, 0xEB, 0xE2, 0x77, 0x20, 0xCE, 0xAE, 0x99,
0x33, 0x25, 0x8E, 0x74, 0xA6, 0x7A, 0xD2, 0x9C, 0x15, 0x35,
0x03, 0xAF, 0xB6, 0xF9, 0x5A, 0xE2, 0xF8, 0x87, 0xF9, 0x22,
0xC1, 0x86, 0x90, 0xAD, 0x81, 0x9B, 0x44, 0x74, 0x8B, 0xD6,
0x82, 0x2E, 0x0B, 0x9F, 0x53, 0xC9, 0xD6, 0xC4, 0x03, 0xFE,
0x4F, 0xF6, 0x70, 0x35, 0x8B, 0x11, 0xCD, 0x95, 0x14, 0xA0,
0x81, 0x2A, 0x3C, 0x95, 0xC9, 0x48, 0xA0, 0x01, 0x2B, 0x99,
0x1C, 0xE0, 0x91, 0x88, 0x3A, 0x07, 0x85, 0xEA, 0x04, 0xFA,
0x3C, 0xB5, 0x76, 0x7C, 0xFF, 0xE0, 0xF0, 0xD5, 0x01, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x55,
0xB1, 0x69
};
static unsigned char G10A_DEVMPK[] = {
0x33, 0x70, 0xFC, 0x74, 0x90, 0xCE, 0x2E, 0x88, 0x34, 0x8C,
0xA0, 0xE7, 0x2A, 0x3C, 0xC0, 0x96, 0x93, 0x64, 0x21, 0x2E,
0xA7, 0xB5, 0xD8, 0xB9, 0x78, 0xE7, 0xD5, 0x97, 0x9F, 0x2C,
0x98, 0xCD, 0xA6, 0x4A, 0x1C, 0xE0, 0x0A, 0x07, 0xB4, 0xFB,
0x04, 0x00, 0x93, 0xF2, 0xF4, 0xCE, 0xC2, 0x9C, 0xF5, 0xD3,
0x95, 0x37, 0x01, 0x58, 0x2D, 0xEA, 0x4C, 0x96, 0xDD, 0xD9,
0xAD, 0xA2, 0xA7, 0x7C, 0xDD, 0x69, 0x6F, 0xBA, 0xE4, 0xD5,
0x04, 0x5C, 0xD9, 0xE2, 0x14, 0xC8, 0xFF, 0xE7, 0x4C, 0x49,
0x9C, 0x0C, 0xA1, 0x92, 0x03, 0x50, 0xEE, 0x3D, 0x73, 0xED,
0x02, 0x07, 0xEF, 0xBE, 0x43, 0xE4, 0x33, 0x32, 0xBF, 0x30,
0x9E, 0xE8, 0xCD, 0xD1, 0x7C, 0x96, 0x31, 0x7C, 0xE4, 0xD0,
0x74, 0xCF, 0xD8, 0x67, 0x5D, 0x5A, 0x67, 0x63, 0x13, 0xDF,
0x71, 0x69, 0x54, 0x93, 0x2B, 0x0B, 0xA0, 0xB5, 0x01, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x26,
0xF4, 0xDC
};
static unsigned char G10A_PLUGMPK[] = {
0x5F, 0x2E, 0x22, 0x66, 0x2A, 0x4F, 0x11, 0x6A, 0x9A, 0x64,
0x5D, 0xB6, 0x26, 0x1D, 0x97, 0xA8, 0x81, 0x0F, 0x18, 0x4F,
0x35, 0xC6, 0x7A, 0x6D, 0xBB, 0x80, 0x45, 0xC5, 0x61, 0x42,
0x58, 0x43, 0xBE, 0xB5, 0x1D, 0x3E, 0x6B, 0x05, 0x7F, 0x72,
0x74, 0xE4, 0x0A, 0xAF, 0x2F, 0xE0, 0xFA, 0x50, 0x84, 0xB7,
0xC0, 0x13, 0x19, 0x61, 0x42, 0xC0, 0xE6, 0x09, 0xC7, 0x08,
0xAE, 0xDB, 0x2E, 0x60, 0x72, 0xBE, 0x4C, 0x36, 0xCA, 0xA3,
0xA0, 0x81, 0x14, 0x67, 0xF6, 0xBC, 0x14, 0xD3, 0xC9, 0x4B,
0xB7, 0x03, 0x9F, 0x73, 0x20, 0xF5, 0x2F, 0x97, 0x0B, 0x41,
0x84, 0x57, 0x59, 0xBD, 0xA7, 0x68, 0x7A, 0x57, 0x38, 0xC6,
0x9C, 0x9D, 0xEC, 0x21, 0x24, 0x55, 0xAE, 0x6F, 0xF2, 0x92,
0x48, 0x00, 0x41, 0x3B, 0x55, 0xFA, 0x9D, 0xA6, 0xA3, 0xB2,
0x35, 0x0B, 0xC2, 0xF2, 0xC4, 0x11, 0x31, 0xC6, 0x01, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6F, 0x96,
0xB4, 0x17
};
static unsigned char G10A_HDDMPK[] = {
0x43, 0x0A, 0x87, 0x99, 0x36, 0x79, 0xE8, 0x77, 0x4F, 0xD7,
0x15, 0xFC, 0x65, 0x14, 0xA3, 0x2F, 0x17, 0x13, 0x05, 0xB6,
0x82, 0x64, 0x40, 0x84, 0xF3, 0x16, 0xB3, 0xD1, 0x85, 0xCE,
0x4D, 0xDF, 0x6A, 0x9E, 0x3A, 0x78, 0xD0, 0xD7, 0xED, 0x7C,
0x59, 0xDC, 0x60, 0xE8, 0x99, 0x0D, 0x65, 0xE1, 0xA8, 0xFD,
0x69, 0x5F, 0x71, 0xF7, 0xD8, 0xD1, 0xD7, 0x1B, 0x67, 0xD8,
0x9C, 0xC1, 0x4B, 0x2D, 0x37, 0xFE, 0x5A, 0xDD, 0x65, 0x01,
0x52, 0x38, 0xE6, 0xC0, 0x62, 0x54, 0x11, 0x09, 0x86, 0xFD,
0x8D, 0x93, 0x1B, 0x81, 0x21, 0xB5, 0xCC, 0xE7, 0xAD, 0xBA,
0x74, 0x2C, 0x81, 0x45, 0x23, 0xD2, 0x3D, 0x59, 0xED, 0x43,
0xA8, 0x3E, 0x0C, 0x20, 0x92, 0x60, 0xF0, 0x43, 0x4B, 0x55,
0x7F, 0xD9, 0x89, 0x98, 0x66, 0x43, 0x73, 0x9C, 0xD1, 0x14,
0x7D, 0xA9, 0xE7, 0xC6, 0x94, 0x66, 0x43, 0xAA, 0x01, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0xA0,
0x91, 0x08
};
I could not wait and implemented the new key section to the famous aos-tools.
Just made a test run and it just worked out of the box.
Attached you'll find 32bit binaries and the sources to compile the tools yourself on a linux host.
These are the bare tools based on EiNSTeiN's work.
Not included yet, are the additonal tools from letama (e.g. aos-kernel-unpack).
The binaries are compiled with libc-2.3.6, so should work basically on every latest 32bit linux machine.
DIY for a 64bit host!
We now are able to extract Gen10 firmware files and may find a way to permanently root these tablets soon.
EDIT:
To the admins... as soon as we get a Gen10 section, this thread should be moved of course
Have fun!
scholbert
Hi !
Thanks ! ...great work ...but where can I find the source code for tools " unpack-kernel " ?
Hi surdu_petru,
thanks for appreciating!
surdu_petru said:
...but where can I find the source code for tools " unpack-kernel " ?
Click to expand...
Click to collapse
Letama just posted the sources... see this posting:
http://forum.xda-developers.com/showpost.php?p=34523637&postcount=19
Have fun!
scholbert
Hi !
Update ...
Tools for unpack Archos 101XS firmware_archos_it4x.aos !
- unpack firmware .aos -> aos-unpack-g10 ( 64bit !)
- unpack kernel -> unpack-aos-kernel-g10 (64bit !)
To enter commands from any directory , copy the both binary files in /usr/local/bin !
$ cp aos-unpack-g10 /usr/local/bin/
$ cp unpack-aos-kernel-g10 /usr/local/bin/
$ sudo chown 0.0 /usr/local/bin/aos-unpack-g10
$ sudo chown 0.0 /usr/local/bin/unpack-aos-kernel-g10
$ sudo chmod +x /usr/local/bin/aos-unpack-g10
$ sudo chmod +x /usr/local/bin/unpack-aos-kernel-g10
Download : tools-gen10.zip - 27.15 KB Mirror : tools-gen10.zip
***********
Root version for Archos 101XS Firmware 4.0.26 is out !
Will be posted soon, ... as soon as Mr. Cajl will test the new release !
Credit :
Many thanks to LeTama & Scholbert !
work in progress
scholbert said:
Hi hackers,
....
We now are able to extract Gen10 firmware files and may find a way to permanently root these tablets soon.
....
scholbert
Click to expand...
Click to collapse
Hi Scholbert and Everyone!
Thanks for the code Scholbert, saved me job! :good: I've updated my github repo [ trevd/aos-tools ] with the latest sources as no one seems to have access to update the original google code sources, If anyone wants commit permissions let me know your github user name and I'll add you to the list.
Thanks
trevd said:
Hi Scholbert and Everyone!
Thanks for the code Scholbert, saved me job! :good: I've updated my github repo [ trevd/aos-tools ] with the latest sources as no one seems to have access to update the original google code sources, If anyone wants commit permissions let me know your github user name and I'll add you to the list.
Thanks
Click to expand...
Click to collapse
Hi trevd, thanks for keeping the code uptodate for aos-tools. I added your source and a short description to the wiki on openaos http://dev.openaos.org/wiki/aos-tools
All the others involved thanks for extracting the keys.
divx118

[R&D] Serial dump

Here is a serial dump from the processor may come to some use this was during boot between bootloader to normal boot. I'm unable to get it to dump again.
Code:
Samsung S-Boot 4.0 for SM-G920P (Mar 29 2015 - 21:52:54)
EXYNOS7420 EVT 1.3 (Base on ARM CortexA53)
3048MB / 0MB / Rev 10 / G920PVPU1AOCF / (PKG_ID 0x0) / LOT_ID N2
XH4
BOOTLOADER VERSION : G920PVPU1AOCF
__if_pmic_rev_init - MUIC API is not ready!
MON: 0x3(0)
MON[0] = (0)[0x1e, 0x60]
MON[1] = (1)[0x20, 0x40]
MON[2] = (2)[0x3b, 0xdc]
MON[3] = (3)[0x22, 0x4d]
MON[4] = (4)[0x3b, 0xd5]
MON[5] = (5)[0x24, 0x3d]
MON[6] = (6)[0x15, 0x44]
MON[7] = (7)[0x0c, 0x07]
pmic_asv_init
(ASV_TBL_BASE+0x00)[11:0] bigcpu_asv_group = 2730
(ASV_TBL_BASE+0x00)[15:12] bigcpu_ssa0 = 0
(ASV_TBL_BASE+0x00)[27:16] littlecpu_asv_group = 2730
(ASV_TBL_BASE+0x00)[31:28] littlecpu_ssa0 = 0
(ASV_TBL_BASE+0x04)[11:0] g3d_asv_group = 2184
(ASV_TBL_BASE+0x04)[15:12] g3d_ssa0 = 0
(ASV_TBL_BASE+0x04)[27:16] mif_asv_group = 2730
(ASV_TBL_BASE+0x04)[31:28] mif_ssa0 = 0
(ASV_TBL_BASE+0x08)[11:0] int_asv_group = 2730
(ASV_TBL_BASE+0x08)[15:12] int_ssa0 = 0
(ASV_TBL_BASE+0x08)[27:16] cam_disp_asv_group = 2730
(ASV_TBL_BASE+0x08)[31:28] cam_disp_ssa0 = 0
(ASV_TBL_BASE+0x0C)[3:0] dvfs_asv_table_version = 11
(ASV_TBL_BASE+0x0C)[4] asv_group_type = 0
(ASV_TBL_BASE+0x0C)[7:5] reserved01 = 0
(ASV_TBL_BASE+0x0C)[8] shift_type = 0
(ASV_TBL_BASE+0x0C)[9] ssa1_enable = 0
(ASV_TBL_BASE+0x0C)[10] ssa0_enable = 0
(ASV_TBL_BASE+0x0C)[15:11] reserved02 = 0
(ASV_TBL_BASE+0x0C)[16] asv_method = 1
(ASV_TBL_BASE+0x0C)[31:17] reserved03 = 0
(ASV_TBL_BASE+0x10)[3:0] main_asv_group = 0
(ASV_TBL_BASE+0x10)[7:4] main_asv_ssa = 0
(ASV_TBL_BASE+0x10)[11:8] bigcpu_ssa1 = 0
(ASV_TBL_BASE+0x10)[15:12] littlecpu_ssa1 = 0
(ASV_TBL_BASE+0x10)[19:16] g3d_ssa1 = 0
(ASV_TBL_BASE+0x10)[23:20] mif_ssa1 = 0
(ASV_TBL_BASE+0x10)[27:24] int_ssa1 = 0
(ASV_TBL_BASE+0x10)[31:28] cam_disp_ssa1 = 0
(ASV_TBL_BASE+0x14)[8:0] bigcpu_ssa_ema = 0
(ASV_TBL_BASE+0x14)[17:9] littlecpu_ssa_ema = 0
(ASV_TBL_BASE+0x14)[26:18] g3d_ssa_ema = 0
(ASV_TBL_BASE+0x14)[31:27] reserved04 = 0
chip_status = b, bin2_efuse = 0
muic_register_max77843_apis
muic_is_max77843 chip_id:0x43 muic_id:0xb5 -> matched.
MUIC rev = MAX77843(181)
init_multi_microusb_ic Active MUIC 0xb5
max77843_init_microusb_ic: MUIC: CDETCTRL:0x2d
max77843_init_microusb_ic: MUIC: CONTROL1:0x1b
max77843_init_microusb_ic: MUIC: CONTROL2:0x3b
max77843_muic_get_adc_value: STATUS1:0x1c
max77843_muic_get_adc_value: ADC:0x1c
max77843_muic_get_adc_value: STATUS1:0x1c
max77843_muic_get_adc_value: ADC:0x1c
max77843_muic_get_chg_typ: STATUS2:0x00
max77843_muic_get_chg_typ: CHGTYP:0x00
load Secure Payload done.
Chip ID : 06b5af03f508 / 0x00003200
EL3 monitor information => Built : 15:35:51, Feb 24 2015
bConfigDescrLock: 1

Wifi P2P ("WiFi Direct") support - does anyone know of patches for this on Pie?

Wifi P2P ("WiFi Direct") support - does anyone know of patches for this on Pie?
Pretty much exactly as the subject line states.
When doing anything which brings up a P2P interface (right now, that's "cast" or "wifi direct" under settings / wifi / advanced):
Code:
02-05 22:44:33.565 10656 10744 I WifiP2pNative: P2P interface teardown completed
02-05 22:44:33.565 10656 10744 E WifiP2pService: Failed to setup interface for P2P
02-05 22:44:33.565 10656 10744 D WifiP2pNative: P2P InterfaceAvailableListener false
02-05 22:44:33.565 10656 10744 D WifiP2pService: Wifi enabled=true, P2P Interface availability=false
02-05 22:44:33.565 10656 10744 D WifiP2pNative: P2P InterfaceDestroyedListener p2p0
02-05 22:44:33.565 10656 10744 D WifiP2pNative: Ignoring stale interface destroyed listener
02-05 22:44:33.565 10656 10744 D WifiP2pNative: P2P InterfaceAvailableListener true
02-05 22:44:33.565 10656 10744 D WifiP2pService: Wifi enabled=true, P2P Interface availability=true, Number of clients=1
02-05 22:44:33.565 10656 10744 D WifiP2pService: Wifi enabled=true, P2P Interface availability=true
02-05 22:44:33.566 10656 10744 D WifiP2pNative: Setup P2P interface
02-05 22:44:33.566 10656 10744 D HalDevMgr: createIface: ifaceType=2, lowPriority=false
02-05 22:44:33.566 10656 10744 D HalDevMgr: getAllChipInfo
02-05 22:44:33.566 10656 10744 D HalDevMgr: getChipIds=[0]
02-05 22:44:33.567 23753 23753 D WifiSettings: onAccessPointsChanged (WifiTracker) callback initiated
02-05 22:44:33.567 10656 10744 D HalDevMgr: validateInterfaceCache
02-05 22:44:33.567 10656 10744 D HalDevMgr: createIfaceIfPossible: chipInfos=[{chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=0, ifaces[3].length=0)], ifaceType=2, lowPriority=false
02-05 22:44:33.567 10656 10744 D HalDevMgr: {.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]} expands to [[1, 0, 1, 0]]
02-05 22:44:33.568 10656 10744 D HalDevMgr: canIfaceComboSupportRequest: chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=0, ifaces[3].length=0), chipMode={.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, chipIfaceCombo=[[email protected], ifaceType=2, lowPriority=false
02-05 22:44:33.568 10656 10744 D HalDevMgr: compareIfaceCreationData: val1={chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=0, ifaces[3].length=0), chipModeId=0, interfacesToBeRemovedFirst=[]), val2=null
02-05 22:44:33.568 10656 10744 D HalDevMgr: new proposal accepted
02-05 22:44:33.568 10656 10744 D HalDevMgr: {.limits = [{.types = [1], .maxIfaces = 1}]} expands to [[0, 1, 0, 0]]
02-05 22:44:33.568 10656 10744 D HalDevMgr: canIfaceComboSupportRequest: chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=0, ifaces[3].length=0), chipMode={.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}, chipIfaceCombo=[[email protected], ifaceType=2, lowPriority=false
02-05 22:44:33.568 10656 10744 D HalDevMgr: Requested type not supported by combo
02-05 22:44:33.568 10656 10744 D HalDevMgr: compareIfaceCreationData: val1=null, val2={chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=0, ifaces[3].length=0), chipModeId=0, interfacesToBeRemovedFirst=[])
02-05 22:44:33.568 10656 10744 D HalDevMgr: executeChipReconfiguration: ifaceCreationData={chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=0, ifaces[3].length=0), chipModeId=0, interfacesToBeRemovedFirst=[]), ifaceType=2
02-05 22:44:33.568 10656 10744 D HalDevMgr: isModeConfigNeeded=false
02-05 22:44:33.568 10656 10793 D HalDevMgr: onIfaceAdded: type=2, name=p2p0
02-05 22:44:33.568 10656 10744 D HalDevMgr: createIfaceIfPossible: added cacheEntry={name=p2p0, type=2, destroyedListeners.size()=1, creationTime=89382364, isLowPriority=false}
02-05 22:44:33.569 10656 10744 D HalDevMgr: dispatchAvailableForRequestListeners
02-05 22:44:33.569 10656 10744 D HalDevMgr: getAllChipInfo
02-05 22:44:33.569 10656 10744 D HalDevMgr: getChipIds=[0]
02-05 22:44:33.569 23753 23761 W System : A resource failed to call close.
02-05 22:44:33.571 10656 10744 D HalDevMgr: dispatchAvailableForRequestListeners: chipInfos=[{chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=1, ifaces[3].length=0)]
02-05 22:44:33.571 10656 10744 D HalDevMgr: dispatchAvailableForRequestListenersForType: ifaceType=1
02-05 22:44:33.571 10656 10744 D HalDevMgr: dispatchAvailableForRequestListenersForType: ifaceType=0
02-05 22:44:33.571 10656 10744 D HalDevMgr: dispatchAvailableForRequestListenersForType: ifaceType=2
02-05 22:44:33.571 23753 23753 D WifiSettings: onAccessPointsChanged (WifiTracker) callback initiated
02-05 22:44:33.571 10656 10744 D HalDevMgr: isItPossibleToCreateIface: chipInfos=[{chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=1, ifaces[3].length=0)], ifaceType=2
02-05 22:44:33.571 10656 10744 D HalDevMgr: {.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]} expands to [[1, 0, 1, 0]]
02-05 22:44:33.571 10656 10744 D HalDevMgr: canIfaceComboSupportRequest: chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=1, ifaces[3].length=0), chipMode={.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, chipIfaceCombo=[[email protected], ifaceType=2, lowPriority=false
02-05 22:44:33.571 10656 10744 D HalDevMgr: Would need to delete some higher priority interfaces
02-05 22:44:33.571 10656 10744 D HalDevMgr: {.limits = [{.types = [1], .maxIfaces = 1}]} expands to [[0, 1, 0, 0]]
02-05 22:44:33.571 10656 10744 D HalDevMgr: canIfaceComboSupportRequest: chipInfo={chipId=0, availableModes=[{.id = 0, .availableCombinations = [{.limits = [{.types = [0], .maxIfaces = 1}, {.types = [2], .maxIfaces = 1}]}]}, {.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}], currentModeIdValid=true, currentModeId=0, ifaces[1].length=0, ifaces[0].length=1, ifaces[2].length=1, ifaces[3].length=0), chipMode={.id = 1, .availableCombinations = [{.limits = [{.types = [1], .maxIfaces = 1}]}]}, chipIfaceCombo=[[email protected], ifaceType=2, lowPriority=false
02-05 22:44:33.571 10656 10744 D HalDevMgr: Requested type not supported by combo
02-05 22:44:33.571 10656 10744 D HalDevMgr: Interface available for: ifaceType=2 = false
02-05 22:44:33.572 10656 10744 D HalDevMgr: Interface available listener dispatched: ifaceType=2, listener=com.android.server.[email protected]2c40602
02-05 22:44:33.572 10656 10744 D HalDevMgr: dispatchAvailableForRequestListenersForType: ifaceType=3
02-05 22:44:33.573 10656 10744 I android_os_HwBinder: HwBinder: Starting thread pool for default::[email protected]::ISupplicant
02-05 22:44:33.574 23753 23753 D WifiSettings: onAccessPointsChanged (WifiTracker) callback initiated
02-05 22:44:33.574 10656 10744 D SupplicantP2pIfaceHal: entering getInterface()
02-05 22:44:33.574 10656 10744 E SupplicantP2pIfaceHal: initSupplicantP2pIface got null iface
02-05 22:44:33.574 10656 10744 E WifiP2pNative: Failed to setup P2p iface in supplicant
02-05 22:44:33.574 10656 10744 D WifiP2pNative: Teardown P2P interface
02-05 22:44:33.574 10656 10744 D HalDevMgr: removeIfaceInternal: iface(name)=p2p0, type=2
02-05 22:44:33.574 10656 10744 D HalDevMgr: getChip: iface(name)=p2p0
02-05 22:44:33.575 10656 10744 D HalDevMgr: dispatchDestroyedListeners: iface(name)=p2p0
02-05 22:44:33.575 10656 10744 D HalDevMgr: dispatchAvailableForRequestListeners
02-05 22:44:33.575 10656 10744 D HalDevMgr: getAllChipInfo
Basically, system_server goes into a tight loop trying and failing repeatedly to bring up p2p0.
This is on Huawei, for what it's worth (Mate 8 - NXT-DL00C17 8.0.0.820; Mate 9 - MHA-AL00C00 8.0.0.374), though given that there are other changes which seem pretty general regarding the wifi HAL between 8.0 and 9.0, it seems likely that there are other things happening that are causing problems and I haven't quite figured it out yet.
For what it's worth: the reason for wanting this is because I've ported Miracast support from Oreo into Pie, and it works on devices I have here with P vendor (Mate 9 AL00C00 9.0.1.150; also apparently working on HMA), but since bringing up the WiFi P2P interface is broken, I can't get any farther with it than that.
Not sure if you resolved the issue yet but on C636 running 9.0.1.159 Miracast seems to work. I can share my phone screen to my Android TV box without problem.
itenos said:
Not sure if you resolved the issue yet but on C636 running 9.0.1.159 Miracast seems to work. I can share my phone screen to my Android TV box without problem.
Click to expand...
Click to collapse
Nah, on EMUI it's fine - in this case, its for AOSP Pie built for an EMUI 8 vendor, and there was a good amount of stuff that changed with the WiFi HAL on Pie that caused things to break besides for the bare minimum of functionality needed for wifi to work in the first place. (Hotspot was broken without a HAL being written to provide backwards compatibility behavior, WiFi Direct is broken in the same fashion, I think, but I'm not sure.)
It's also fine if you're already on a Pie vendor - Miracast works fine here on AOSP (with patches to pull Miracast forward from Oreo, of course) on both the Mate 9 (AL00, 9.0.1.150), and the P10 (AL00, 9.0.1.160; C432, 9.0.1.165).

Question SetEdit Tweaks

Does this actually work?
All In One Tweaks Except Kernel (Global Table)
up_threshold = 90
up_threshold_any_cpu_load = 85
up_threshold_multi_core = 85
sampling_rate = 75000
sampling_down_factor = 2
down_differential = 10
freq_step = 35
sched_boost = 0
perf_cpu_time_max_percent = 5
sched_autogroup_enabled = 1
sched_child_runs_first = 1
sched_tunable_scaling = 0
sched_latency_ns = 1000000
sched_min_granularity_ns = 130000
scaling_governor = performance
sched_wakeup_granularity_ns = 750000
sched_migration_cost_ns = 3000000
sched_min_task_util_for_colocation = 0
sched_nr_migrate = 8
sched_schedstats = 0
touchboost = 1
boost_ms = 100
sched_boost_on_input = 100
stune_background_prefer_idle = 1
stune_foreground_prefer_idle = 1
stune_topapp_prefer_idle = 1
stune_topapp_schedtune_boost = 1
stune_global_prefer_idle = 1
stune_rt_prefer_idle = 1
use_deepest_state = 1
boost = true
power_efficient = false
persist.sys.ui.hw = 1
debug.egl.buffcount = 4
debug.egl.hw = 1
debug.hwui.renderer = skiagl
gpufreq_limited_thermal_ignore = 1
dvfs_enable = 1
simple_gpu_activate = 1
adreno_idler_idleworkload = 6000
adreno_idler_downdifferential = 15
adreno_idler_idlewait = 15
adrenoboost = 2
throttling = 0
max_pwrlevel = 0
force_no_nap = 1
bus_split = 0
force_bus_on = 1
force_clk_on = 1
force_rail_on = 1
add_random =0
nomerges = 2
rq_affinity = 2
ro.sf.compbypass.enable = 0
ro.config.enable.hw_accel = true
debug.gralloc.enable_fb_ubwc = 1
dev.pm.dyn_samplingrate = 1
ro.vold.umsdirtyratio = 20
fs.lease-break-time = 20
fs.file-max = 524288
fs.nr_open = 1048576
fs.inotify.max_queued_events = 32000
fs.inotify.max_user_instances = 256
fs.inotify.max_user_watches = 10240
vold.post_fs_data_done = 1
ro.vendor.qti.sys.fw.bservice_enable = true
ro.config.low_ram = true
sys.use_fifo_ui = 1
GPUTUNER_SWITCH = true
All In One Kernel Tweaks (Global Table)
kernel.timer_migration = 1
kernel.panic = 30
kernel.panic_on_oops = 1
kernel.msgmni = 2048
kernel.msgmax = 65536
kernel.random.read_wakeup_threshold = 128
kernel.random.write_wakeup_threshold = 256
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmax = 268435456
kernel.sem = 500 512000 64 2048
kernel.sched_features = 24189
kernel.hung_task_timeout_secs = 30
kernel.sched_latency_ns = 1000000
kernel.sched_min_granularity_ns = 100000
kernel.sched_wakeup_granularity_ns = 2000000
kernel.sched_compat_yield = 1
kernel.sched_shares_ratelimit = 256000
kernel.sched_child_runs_first = 0
kernel.sched_child_runs_first = 1
kernel.sched_enable_thread_grouping = 1
kernel.sched_autogroup_enabled = 1
kernel.perf_cpu_time_max_percent = 5
kernel.sched_schedstats = 0
kernel.sched_nr_migrate = 64
kernel.sched_min_task_util_for_colocation = 50
kernel.sched_min_task_util_for_boost = 25
kernel.sched_migration_cost_ns = 1000000
kernel.sched_min_granularity_ns = 1000000
kernel.sched_tunable_scaling = 0
kernel.sched_upmigrate = 80 80
kernel.sched_group_upmigrate = 80
kernel.sched_group_downmigrate = 20
kernel.threads-max = 524288
kernel.sched_downmigrate = 20 20
vm.min_free_order_shift = 4
vm.laptop_mode = 0
vm.block_dump = 0
vm.compact_unevictable_allowed = 0
vm.dirty_background_ratio = 10
vm.dirty_ratio = 30
vm.dirty_expire_centisecs = 1000
vm.dirty_writeback_centisecs = 0
vm.extfrag_threshold = 750
vm.oom_dump_tasks = 0
vm.page-cluster = 0
vm.reap_mem_on_sigkill = 1
vm.stat_interval = 10
vm.swappiness = 80
vm.vfs_cache_pressure = 200
hispeed_load = 80
input_boost_freq = 1.4 GHz
input_boost_ms = 250 ms
iostats = 0
readahead = 0
nr_requests = 512
Oblivon23 said:
Does this actually work?
All In One Tweaks Except Kernel (Global Table)
up_threshold = 90
up_threshold_any_cpu_load = 85
up_threshold_multi_core = 85
sampling_rate = 75000
sampling_down_factor = 2
down_differential = 10
freq_step = 35
sched_boost = 0
perf_cpu_time_max_percent = 5
sched_autogroup_enabled = 1
sched_child_runs_first = 1
sched_tunable_scaling = 0
sched_latency_ns = 1000000
sched_min_granularity_ns = 130000
scaling_governor = performance
sched_wakeup_granularity_ns = 750000
sched_migration_cost_ns = 3000000
sched_min_task_util_for_colocation = 0
sched_nr_migrate = 8
sched_schedstats = 0
touchboost = 1
boost_ms = 100
sched_boost_on_input = 100
stune_background_prefer_idle = 1
stune_foreground_prefer_idle = 1
stune_topapp_prefer_idle = 1
stune_topapp_schedtune_boost = 1
stune_global_prefer_idle = 1
stune_rt_prefer_idle = 1
use_deepest_state = 1
boost = true
power_efficient = false
persist.sys.ui.hw = 1
debug.egl.buffcount = 4
debug.egl.hw = 1
debug.hwui.renderer = skiagl
gpufreq_limited_thermal_ignore = 1
dvfs_enable = 1
simple_gpu_activate = 1
adreno_idler_idleworkload = 6000
adreno_idler_downdifferential = 15
adreno_idler_idlewait = 15
adrenoboost = 2
throttling = 0
max_pwrlevel = 0
force_no_nap = 1
bus_split = 0
force_bus_on = 1
force_clk_on = 1
force_rail_on = 1
add_random =0
nomerges = 2
rq_affinity = 2
ro.sf.compbypass.enable = 0
ro.config.enable.hw_accel = true
debug.gralloc.enable_fb_ubwc = 1
dev.pm.dyn_samplingrate = 1
ro.vold.umsdirtyratio = 20
fs.lease-break-time = 20
fs.file-max = 524288
fs.nr_open = 1048576
fs.inotify.max_queued_events = 32000
fs.inotify.max_user_instances = 256
fs.inotify.max_user_watches = 10240
vold.post_fs_data_done = 1
ro.vendor.qti.sys.fw.bservice_enable = true
ro.config.low_ram = tru
sys.use_fifo_ui = 1
GPUTUNER_SWITCH = true
All In One Kernel Tweaks (Global Table)
kernel.timer_migration = 1
kernel.panic = 30
kernel.panic_on_oops = 1
kernel.msgmni = 2048
kernel.msgmax = 65536
kernel.random.read_wakeup_threshold = 128
kernel.random.write_wakeup_threshold = 256
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmax = 268435456
kernel.sem = 500 512000 64 2048
kernel.sched_features = 24189
kernel.hung_task_timeout_secs = 30
kernel.sched_latency_ns = 1000000
kernel.sched_min_granularity_ns = 100000
kernel.sched_wakeup_granularity_ns = 2000000
kernel.sched_compat_yield = 1
kernel.sched_shares_ratelimit = 256000
kernel.sched_child_runs_first = 0
kernel.sched_child_runs_first = 1
kernel.sched_enable_thread_grouping = 1
kernel.sched_autogroup_enabled = 1
kernel.perf_cpu_time_max_percent = 5
kernel.sched_schedstats = 0
kernel.sched_nr_migrate = 64
kernel.sched_min_task_util_for_colocation = 50
kernel.sched_min_task_util_for_boost = 25
kernel.sched_migration_cost_ns = 1000000
kernel.sched_min_granularity_ns = 1000000
kernel.sched_tunable_scaling = 0
kernel.sched_upmigrate = 80 80
kernel.sched_group_upmigrate = 80
kernel.sched_group_downmigrate = 20
kernel.threads-max = 524288
kernel.sched_downmigrate = 20 20
vm.min_free_order_shift = 4
vm.laptop_mode = 0
vm.block_dump = 0
vm.compact_unevictable_allowed = 0
vm.dirty_background_ratio = 10
vm.dirty_ratio = 30
vm.dirty_expire_centisecs = 1000
vm.dirty_writeback_centisecs = 0
vm.extfrag_threshold = 750
vm.oom_dump_tasks = 0
vm.page-cluster = 0
vm.reap_mem_on_sigkill = 1
vm.stat_interval = 10
vm.swappiness = 80
vm.vfs_cache_pressure = 200
hispeed_load = 80
input_boost_freq = 1.4 GHz
input_boost_ms = 250 ms
iostats = 0
readahead = 0
nr_requests = 512
Click to expand...
Click to collapse
Nah fake, except GPUTUNER...
A lot of these are goofy af so I believe it's fake

Categories

Resources