Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ++++++++++++++++++++++++ LOGIN ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- <<Check Chip Success >>
- .----------------------------------------USBC: Command (out) or USBS Result (in)
- | .----------------------------CID: Command ID, USBS retuns with same ID
- | | .------------FLAG: Normally it just should toggle...
- | | | .-CMD: Command for bootloader action
- | | | | .--ADDRESS SIZE--.
- | | | | | |
- .--. .---------. .. .---------. .---------. .---------.
- 0 3|4 8| |12|13 16|17 20| |23 26|
- OUT USBC CF 31 90 00 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS CF 31 90 00 00 00 00 06 00
- ^^------Watch this!
- <<Get FlashInfo>>
- Get BL Revision? Chip Revision? Who knows?
- OUT USBC E5 59 7A 95 00 00 00 00 80 00 06 1B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN [42 30 31 33 32 31 30 32 30 33 31 31 30 30 31 56] B01321020311001V
- IN USBS E5 59 7A 95 00 00 00 00 00
- B013 21020311001V
- Get Partition Table or Defects Table?
- OUT USBC DB 2C BF D2 00 00 00 00 80 00 05 1A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN [BULK 512 bytes]
- IN USBS DB 2C BF D2 00 00 00 00 00
- <<Prepare IDB>>
- OUT USBC 03 4D 83 B5 00 00 00 00 80 00 0A 03 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00
- IN [BULK 64 bytes data all 0x00]
- IN USBS 03 4D 83 B5 00 00 00 00 00
- OUT USBC 2A 25 5D 17 00 00 00 00 80 00 0A 04 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00
- IN [BULK 2112 bytes data]
- IN USBS 2A 25 5D 17 00 00 00 00 00
- OUT USBC 01 1E 72 FD 00 00 00 00 80 00 0A 04 00 00 00 10 00 00 00 04 00 00 00 00 00 00 00
- IN [BULK 2112 bytes data ]
- IN USBS 01 1E 72 FD 00 00 00 00 00
- .----------------------------------------USBC: Command (out) or USBS Result (in)
- | .----------------------------CID: Command ID, USBS retuns with same ID
- | | .------------FLAG: Normally it just should toggle...
- | | | .-CMD: Command for bootloader action
- | | | | .--ADDRESS SIZE--.
- | | | | | |
- .--. .---------. .. .---------. .---------. .---------.
- 0 3|4 8| |12|13 16|17 20| |23 26|
- OUT USBC 92 88 60 02 00 00 00 00 80 00 0A 04 00 00 00 20 00 00 00 04 00 00 00 00 00 00 00
- IN [BULK 2112 bytes data ]
- IN USBS 92 88 60 02 00 00 00 00 00
- OUT USBC A9 2A 9B 9A 00 00 00 00 80 00 0A 04 00 00 00 30 00 00 00 04 00 00 00 00 00 00 00
- IN [BULK 2112 bytes data ]
- IN USBS A9 2A 9B 9A 00 00 00 00 00
- OUT USBC 9B 0E 5A 73 00 00 00 00 80 00 0A 04 00 00 00 40 00 00 00 04 00 00 00 00 00 00 00
- IN [BULK 2112 bytes data ]
- IN USBS 9B 0E 5A 73 00 00 00 00 00
- OUT USBC 4D 85 CD C8 00 00 00 00 80 00 0A 04 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00
- ...
- <<Download IDB>>
- Erase
- OUT USBC 64 9C FF FF 00 00 00 00 00 00 0A 06 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00
- IN USBS 64 9C FF FF 00 00 00 00 00
- Write
- OUT USBC 06 D7 4C 44 00 00 00 00 00 00 0A 05 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
- OUT [BULK 8448 bytes data] incl. content of above bytes.
- IN USBS 06 D7 4C 44 00 00 00 00 00
- Verify
- OUT USBC 0E AD 17 60 00 00 00 00 80 00 0A 04 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
- IN [BULK 8448 bytes data]
- IN USBS 0E AD 17 60 00 00 00 00 00
- Write
- OUT USBC 45 46 EB 02 00 00 00 00 00 00 0A 05 00 00 00 00 10 00 00 10 00 00 00 00 00 00 00
- IN [BULK 8448 bytes data]
- IN USBS 45 46 EB 02 00 00 00 00 00
- Verify
- OUT USBC B9 D6 B0 96 00 00 00 00 00 00 0A 04 00 00 00 00 10 00 00 10 00 00 00 00 00 00 00
- IN [BULK 8448 bytes data]
- IN USBS B9 D6 B0 96 00 00 00 00 00
- ....
- ....
- Erase?
- OUT USBC 1D 35 DA CE 00 00 00 00 00 00 0A 06 00 00 00 00 01 00 00 01 00 00 00 00 00 00 00
- IN USBS 1D 35 DA CE 00 00 00 00 00
- Last Transfer before reboot
- Buffer OUT
- OUT USBC C3 79 92 4E 00 00 00 00 00 00 0A 05 00 00 00 40 F0 00 00 10 00 00 00 00 00 00 00
- OUT [BULK 8448 bytes data]
- IN USBS C3 79 92 4E 00 00 00 00 00
- Buffer In
- OUT USBC 03 FE BA 31 00 00 00 00 80 00 0A 04 00 00 00 40 F0 00 00 10 00 00 00 00 00 00 00
- IN [BULK 8448 bytes data]
- IN USBS 03 FE BA 31 00 00 00 00 00
- Reboot
- OUT USBC 12 2C B1 A5 00 00 00 00 00 00 06 FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS 12 2C B1 A5 00 00 00 00 00
- ++++++++++++++++++++++++ DOWNLOAD ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- <<Check Chip Success >>
- OUT UDBC 8E D6 AD 46 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN UDBS 8E D6 AD 46 00 00 00 06 00
- ^^------Watch this!
- OUT USBC A3 3B C7 5F 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN UDBS 8E D6 AD 46 00 00 00 06 00
- ^^------Watch this!
- <<Download Firmware>> PARAMETERS
- >>
- >> PARAM Section is written 8 times in a row
- >>
- OUT USBC 48 F8 34 3B 00 00 00 00 00 00 0A 15 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00
- OUT [BULK 1024 bytes data] << PARM
- IN USBS 48 F8 34 3B 00 00 00 00 00
- OUT USBC 0C 26 C4 05 00 00 00 00 00 00 0A 15 00 00 00 04 00 00 00 02 00 00 00 00 00 00 00
- OUT [BULK 1024 bytes data] << PARM
- IN USBS 0C 26 C4 05 00 00 00 00 00
- OUT USBC 57 A4 59 02 00 00 00 00 00 00 0A 15 00 00 00 08 00 00 00 02 00 00 00 00 00 00 00
- OUT [BULK 1024 bytes data] << PARM
- IN USBS 57 A4 59 02 00 00 00 00 00
- .----------------------------------------USBC: Command (out) or USBS Result (in)
- | .----------------------------CID: Command ID, USBS retuns with same ID
- | | .------------FLAG: Normally it just should toggle...
- | | | .-CMD: Command for bootloader action
- | | | | .--ADDRESS SIZE--.
- | | | | | |
- .--. .---------. .. .---------. .---------. .---------.
- 0 3|4 8| |12|13 16|17 20| |23 26|
- OUT USBC 8B 17 6A 6A 00 00 00 00 00 00 0A 15 00 00 00 0C 00 00 00 02 00 00 00 00 00 00 00
- OUT [BULK 1024 bytes data] << PARM
- IN USBS 8B 17 6A 6A 00 00 00 00 00
- [...]
- OUT USBC C7 B5 90 16 00 00 00 00 00 00 0A 15 00 00 00 1C 00 00 00 02 00 00 00 00 00 00 00
- OUT [BULK 1024 bytes data] << PARM
- IN USBS C7 B5 90 16 00 00 00 00 00
- <<Download Firmware>>
- misc??
- OUT USBC DD 4B D0 DD 00 00 00 00 00 00 0A 15 00 00 00 20 00 00 00 60 00 00 00 00 00 00 00
- OUT [BULK 49152 (0xc000) bytes of data]
- IN USBS DD 4B D9 DD 00 00 00 00 00
- OUT USBC C3 D4 BF A5 00 00 00 00 00 00 0A 15 00 00 00 A0 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data] <-- ANDROID! Token
- IN USBS...
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 A8 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 B0 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 B8 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 C0 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 C8 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 D0 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 D8 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 E0 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC 85 E9 E8 DF 00 00 00 00 00 00 0A 15 00 00 00 E8 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data]
- IN USBS
- OUT USBC FB 8C A2 23 00 00 00 00 00 00 0A 15 00 00 00 F0 00 00 01 80 00 00 00 00 00 00 00
- OUT [BULK 196608 (0x30000) bytes of data] ^^-^^--- End of file?
- IN USBS
- <<Download Firmware>>
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 20 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 (0x100000) bytes of data] <-- ANDROID! Token
- IN USBS
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 28 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 30 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 38 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 40 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 48 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 50 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 58 00 00 08 00 00 00 00 00 00 00 00
- OUT USBC C8 4C 36 76 00 00 00 00 00 00 0A 15 00 00 01 60 00 00 08 00 00 00 00 00 00 00 00
- <<Download Firmware>>
- OUT USBC 1B CE F1 BD 00 00 00 00 00 00 0A 15 01 00 55 38 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 bytes (0x100000) data]
- IN USBS 1B CE F1 BD 00 00 00 00 00
- OUT USBC 70 F1 06 1E 00 00 00 00 00 00 0A 15 01 00 55 40 00 00 08 00 00 00 00 00 00 00 00
- OUT [BULK 1048576 bytes (0x100000) data]
- IN USBS 70 F1 06 1E 00 00 00 00 00
- #define RKFT_CID 4
- #define RKFT_FLAG 12
- #define RKFT_COMMAND 13
- #define RKFT_OFFSET 17
- #define RKFT_SIZE 23
- RK2918 Login Bootloader
- .----------------------------------------USBC: Command (out) or USBS Result (in)
- | .----------------------------CID: Command ID, USBS retuns with same ID
- | | .------------FLAG: Normally it just should toggle...
- | | | .-CMD: Command for bootloader action
- | | | | .--ADDRESS SIZE--.
- | | | | | |
- .--. .---------. .. .---------. .---------. .---------.
- 0 3|4 8| |12|13 16|17 20| |23 26|
- OUT USBC CF 31 90 00 00 00 00 00 80 00 06 00 FD 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS CF 31 90 00 08 00 00 00 01
- OUT USBC E5 59 7A 95 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS E5 59 7A 95 08 00 01 2C 01
- OUT USBC DB 2C BF D2 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS DB 2C BF D2 08 00 02 4D 01
- OUT USBC 03 4D 83 B5 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS 03 4D 83 B5 08 00 03 6E 01
- OUT USBC 2A 25 5D 17 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS 2A 25 5D 17 08 00 04 92 01
- OUT USBC 01 1E 72 FD 00 00 00 00 80 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- IN USBS 01 1E 72 FD 08 00 05 B1 01
- 08 00 06 C6 01
- 08 00 07 DB 01
- 00 00 00 06 00 <-- End Of Info Marker. RK3188 sends this directly.
- Loox / RK2918 Verify Command before Reboot.
- OUT USBC BC 24 55 F4 00 00 00 00 80 00 0A 14 01 00 55 BF C0 00 00 20 00 00 00 00 00 00 00
- CF 31 90 00 = 009031CF = 0000 0000 1001 0000 0011 0001 1100 1111
- E5 59 7A 95 = 957A59E5 = 1001 0101 0111 1010 0101 1001 1110 0101
- DB 2C BF D2 = D2BF2CDB = 1101 0010 1011 1111 0010 1100 1101 1011
- 03 4D 83 B5 = B5834D03 =
- 2A 25 5D 17 = 175D252A
- 01 1E 72 FD = FD721E01
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement