In cases where android device is locked up due to forgotten password or userlock pin, factory reset cannot be executed from phone menu. To overcome this problem, kernel command line method is implemented.
Upon boot, kernel will check MISC or PARA partition for presence of commands and if found they will be executed. Also /cache/recovery/command is parsed and commands executed if found in command file.
Example of such command structure from Samsung combination firmware:
In order to perform factory reset, obviously such command must be written to any of supported locations so kernel can read it and execute on startup. To do this, we implemented universal method which search for MISC or PARA partition and uploads required commands to these partitions.
RIFF Box eMMC/UFS Partition manager plugin supports all android devices/versions and it's very simple to perform this operation.
- Establish connection with device (via USB or ISP/JTAG)
- Click "Parse Connected Memory"
- Click "Factory Reset"
- Disconnect device, assemble and power on
- Wait for reset to finish. On some devices it can take up to 15 minutes for factory reset.
If factory reset is done over ISP connection, great care must be taken during shield removal and soldering. Aprox 20% users can't do this properly and damage their (or their customers devices) usually by breaking resistors on CLK signal. In case that device doesn't turn on after assembling, make sure there is no physical damage to any parts in soldering area and that shield removal didn't damaged prints on board.
In most cases CLK resistor value is 24 ohms, but can be shorted with jumper if resistor is broken and cannot be replaced.
Important note !
DO NOT try powering up device with wires still on board. It can damage device and certainly will cause panic as new phones wont boot properly with wires still on.