Discussion:
unknown
1970-01-01 00:00:00 UTC
Permalink
13) cat > disable-gta02_bat_get_voltage.stp <<EOF

#!/usr/bin/stap -g

function _begin () %{
/* Address of branch inside gta02_bat_get_voltage to
pcf50633_adc_sync_read */
__u32 *branch = (void*)0xc002eda4;
_stp_printf("*branch = %x\n", *branch);
if (*branch == 0xeb062230) {
*branch = 0xe1a00000; /* nop */
}
%}

function _end () %{
/* Address of branch inside gta02_bat_get_voltage to
pcf50633_adc_sync_read */
__u32 *branch = (void*)0xc002eda4;
_stp_printf("*branch = %x\n", *branch);
if (*branch == 0xe1a00000) {
*branch = 0xeb062230; /* bl */
}
%}


probe begin {
_begin();
}

probe end {
_end();
}
EOF

14) chmod a+x disable-gta02_bat_get_voltage.stp
15) ./disable-gta02_bat_get_voltage.stp

Unfortunately there are still other suspend bugs that are less common
but still sometimes occur.


-Timo

Loading...