BTW: RK’s BSP kernel provides some more info about what FUSB302 is doing:
root@rock-5b:/home/tk# cat /sys/kernel/debug/usb/fusb302-4-0022 /sys/kernel/debug/usb/tcpm-4-0022 | sort
[ 1.755413] sw reset
[ 1.759173] fusb302 device ID: 0x91
[ 1.759177] Setting usb_comm capable false
[ 1.763830] pd := off
[ 1.763832] vbus is already Off
[ 1.763834] charge is already Off
[ 1.763837] vconn is already Off
[ 1.763839] Setting voltage/current limit 0 mV 0 mA
[ 1.763844] polarity 0
[ 1.763863] Requesting mux state 0, usb-role 0, orientation 0
[ 1.764672] pd header := Sink, Device
[ 1.764692] state change INVALID_STATE -> SNK_UNATTACHED [rev1 NONE_AMS]
[ 1.764707] cc1=Open, cc2=Open
[ 1.764709] CC1: 0 -> 0, CC2: 0 -> 0 [state SNK_UNATTACHED, polarity 0, disconnected]
[ 1.764714] 4-0022: registered
[ 1.764716] Setting usb_comm capable false
[ 1.769380] pd := off
[ 1.769382] vbus is already Off
[ 1.769384] charge is already Off
[ 1.769385] vconn is already Off
[ 1.769387] Setting voltage/current limit 0 mV 0 mA
[ 1.769393] polarity 0
[ 1.769396] Requesting mux state 0, usb-role 0, orientation 0
[ 1.770189] pd header := Sink, Device
[ 1.770193] cc:=2
[ 1.770195] cc := Rd
[ 1.775633] pending state change PORT_RESET -> PORT_RESET_WAIT_OFF @ 100 ms [rev1 NONE_AMS]
[ 1.775639] state change PORT_RESET -> PORT_RESET_WAIT_OFF [delayed 100 ms]
[ 1.775641] pending state change PORT_RESET_WAIT_OFF -> SNK_UNATTACHED @ 920 ms [rev1 NONE_AMS]
[ 2.695799] state change PORT_RESET_WAIT_OFF -> SNK_UNATTACHED [delayed 920 ms]
[ 2.695815] Start toggling
[ 2.700884] start drp toggling
[ 2.703321] IRQ: 0x80, a: 0x00, b: 0x00, status0: 0x83
[ 2.703326] IRQ: VBUS_OK, vbus=On
[ 2.710079] IRQ: 0x00, a: 0x40, b: 0x00, status0: 0x83
[ 2.710083] IRQ: TOGDONE
[ 2.715941] detected cc1=Open, cc2=Rp-3.0
[ 2.715957] cc1=Open, cc2=Rp-3.0
[ 2.715965] CC1: 0 -> 0, CC2: 0 -> 5 [state TOGGLING, polarity 0, connected]
[ 2.715976] state change TOGGLING -> SNK_ATTACH_WAIT [rev1 NONE_AMS]
[ 2.715984] pending state change SNK_ATTACH_WAIT -> SNK_DEBOUNCED @ 200 ms [rev1 NONE_AMS]
[ 2.916158] state change SNK_ATTACH_WAIT -> SNK_DEBOUNCED [delayed 200 ms]
[ 2.916173] state change SNK_DEBOUNCED -> SNK_ATTACHED [rev1 NONE_AMS]
[ 2.916180] polarity 1
[ 2.916186] Requesting mux state 1, usb-role 2, orientation 2
[ 2.917179] pd header := Sink, Device
[ 2.917187] state change SNK_ATTACHED -> SNK_STARTUP [rev1 NONE_AMS]
[ 2.917214] state change SNK_STARTUP -> SNK_DISCOVERY [rev3 NONE_AMS]
[ 2.917220] Setting voltage/current limit 5000 mV 3000 mA
[ 2.917229] vbus=0 charge:=1
[ 2.917233] vbus is already Off
[ 2.917239] state change SNK_DISCOVERY -> SNK_WAIT_CAPABILITIES [rev3 NONE_AMS]
[ 2.922261] pd := on
[ 2.922267] pending state change SNK_WAIT_CAPABILITIES -> SNK_SOFT_RESET @ 310 ms [rev3 NONE_AMS]
[ 3.232482] state change SNK_WAIT_CAPABILITIES -> SNK_SOFT_RESET [delayed 310 ms]
[ 3.232500] AMS SOFT_RESET_AMS start
[ 3.232506] state change SNK_SOFT_RESET -> AMS_START [rev3 SOFT_RESET_AMS]
[ 3.232514] state change AMS_START -> SOFT_RESET_SEND [rev3 SOFT_RESET_AMS]
[ 3.232524] PD TX, header: 0x8d
[ 3.234669] sending PD message header: 8d
[ 3.234676] sending PD message len: 0
[ 3.237683] IRQ: 0x41, a: 0x04, b: 0x00, status0: 0x93
[ 3.237710] IRQ: BC_LVL, handler pending
[ 3.237729] IRQ: PD tx success
[ 3.239940] PD message header: 161
[ 3.239955] PD message len: 0
[ 3.239968] PD TX complete, status: 0
[ 3.239989] pending state change SOFT_RESET_SEND -> HARD_RESET_SEND @ 60 ms [rev3 SOFT_RESET_AMS]
[ 3.242005] IRQ: 0x51, a: 0x00, b: 0x01, status0: 0x93
[ 3.242010] IRQ: BC_LVL, handler pending
[ 3.242013] IRQ: PD sent good CRC
[ 3.244030] PD message header: 163
[ 3.244034] PD message len: 0
[ 3.244041] PD RX, header: 0x163 [1]
[ 3.244043] AMS SOFT_RESET_AMS finished
[ 3.244044] state change SOFT_RESET_SEND -> SNK_WAIT_CAPABILITIES [rev3 NONE_AMS]
[ 3.248786] pd := on
[ 3.248791] pending state change SNK_WAIT_CAPABILITIES -> HARD_RESET_SEND @ 310 ms [rev3 NONE_AMS]
[ 3.267788] IRQ: 0x41, a: 0x00, b: 0x01, status0: 0x93
[ 3.267814] IRQ: BC_LVL, handler pending
[ 3.267843] IRQ: PD sent good CRC
[ 3.272130] PD message header: 4361
[ 3.272146] PD message len: 16
[ 3.272343] PD RX, header: 0x4361 [1]
[ 3.272362] PDO 0: type 0, 5000 mV, 3000 mA [DE]
[ 3.272371] PDO 1: type 0, 9000 mV, 2660 mA []
[ 3.272379] PDO 2: type 0, 12000 mV, 2000 mA []
[ 3.272386] PDO 3: type 0, 15000 mV, 1600 mA []
[ 3.272391] state change SNK_WAIT_CAPABILITIES -> SNK_NEGOTIATE_CAPABILITIES [rev2 POWER_NEGOTIATION]
[ 3.272404] Setting usb_comm capable false
[ 3.272426] cc=2 cc1=0 cc2=5 vbus=0 vconn=sink polarity=1
[ 3.272434] Requesting PDO 2: 12000 mV, 1500 mA
[ 3.272440] PD TX, header: 0x1242
[ 3.277338] IRQ: 0x51, a: 0x00, b: 0x00, status0: 0x93
[ 3.277365] IRQ: BC_LVL, handler pending
[ 3.279872] sending PD message header: 1242
[ 3.279873] sending PD message len: 4
[ 3.281907] IRQ: 0x41, a: 0x00, b: 0x00, status0: 0x93
[ 3.281912] IRQ: BC_LVL, handler pending
[ 3.283879] IRQ: 0x51, a: 0x04, b: 0x00, status0: 0x93
[ 3.283884] IRQ: BC_LVL, handler pending
[ 3.283887] IRQ: PD tx success
[ 3.285769] PD message header: 361
[ 3.285772] PD message len: 0
[ 3.285774] PD TX complete, status: 0
[ 3.285781] pending state change SNK_NEGOTIATE_CAPABILITIES -> HARD_RESET_SEND @ 60 ms [rev2 POWER_NEGOTIATION]
[ 3.287744] IRQ: 0x51, a: 0x00, b: 0x01, status0: 0x93
[ 3.287749] IRQ: BC_LVL, handler pending
[ 3.287752] IRQ: PD sent good CRC
[ 3.289885] PD message header: 563
[ 3.289889] PD message len: 0
[ 3.289906] PD RX, header: 0x563 [1]
[ 3.289913] state change SNK_NEGOTIATE_CAPABILITIES -> SNK_TRANSITION_SINK [rev2 POWER_NEGOTIATION]
[ 3.289922] Setting standby current 5000 mV @ 500 mA
[ 3.289926] Setting voltage/current limit 5000 mV 500 mA
[ 3.289938] pending state change SNK_TRANSITION_SINK -> HARD_RESET_SEND @ 500 ms [rev2 POWER_NEGOTIATION]
[ 3.291819] IRQ: 0x41, a: 0x00, b: 0x00, status0: 0x93
[ 3.291823] IRQ: BC_LVL, handler pending
[ 3.325054] BC_LVL handler, status0=0x93
[ 3.524945] IRQ: 0x41, a: 0x00, b: 0x01, status0: 0x93
[ 3.524953] IRQ: BC_LVL, handler pending
[ 3.524957] IRQ: PD sent good CRC
[ 3.526676] PD message header: 766
[ 3.526679] PD message len: 0
[ 3.526704] PD RX, header: 0x766 [1]
[ 3.526717] Setting voltage/current limit 12000 mV 1500 mA
[ 3.526733] state change SNK_TRANSITION_SINK -> SNK_READY [rev2 POWER_NEGOTIATION]
[ 3.526896] AMS POWER_NEGOTIATION finished
[ 3.528498] IRQ: 0x51, a: 0x00, b: 0x00, status0: 0x93
[ 3.528503] IRQ: BC_LVL, handler pending
[ 3.561447] BC_LVL handler, status0=0x93
Also the only kernel I know when Booting Linux
doesn’t happen at 0.000000
:
root@rock-5b:/sys/kernel/debug/usb# dmesg | head -n1
[ 6.428628] Booting Linux on physical CPU 0x0000000000 [0x412fd050]