This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi team,
My customer tried to change MODE by MODE_SELECT register in attached state.
However, the register value is automatically over-write after writing MODE_SELECT register.
Is this the expected operation on HD3SS3220? The reason why the MODE is automatically over-write by IC is that MODE change in attached state is not allowed in USB-C specification, right?
The below procedure is used for changing MODE in attached state. If you find any wrong step, please let me know.
[Procedure] [0x08] [0x09] [0x0a]
1. Power on 0x00 0x20 0x00
2. DISABLE _UFP_ ACCESSORY =1 0x00 0x21 0x00
3. MODE_SELECT=DFP 0x00 0x20 0x20
4. Connect UFP device 0x00 0x71 0x20
5. Clear Interruption 0x00 0x61 0x20
6. MODE_SELECT becomes UFP 0x00 0x31 0x10
Regards,
Saito
Saito-san
The MODE_SELECT can only be changed when in the UNATTACHED state,not in the ATTACHED state.
Thanks
David
Hi David,
The register value is automatically over-write after writing MODE_SELECT register when MODE is changed in attached state.
Is that expected operation on HD3SS3220?
Thanks
Saito
Saito-san
The MODE_SELECT can only be changed when in the UNATTACHED state, the behavior of writing MODE_SELECT when in ATTACHED state is not guaranteed.
Thanks
David
Hi David,
The reason why HD3SS3220 doesn't allow to change the mode in attached state is that changing Mode in attached state violates type-c specifiction, is that correct?
Regards,
Saito
Saito-san
Please refer to chapter 4 of the Type-C spec. The MODE_SELECT defines the HD3SS3220 role in the UNATTACHED state. If mode needs to be changed in the ATTACHED state, you have to use the PD command, DR_SWAP for data role swap, or PR_SWAP for power role swap.
Thanks
David
Hi David,
One more question.
When they changed MODE_SELECT register, the value was automatically over-write after writing MODE_SELECT register.
Does HD3SS3220 have such a mechanism intentionally?
Regards,
Saito
Saito-san
No, if you write to the MODE_SELECT bits, it should stay, and not automatically gets over-written.
But again, why do they want to write to MODE_SELECT in the ATTACHED state, write to MODE_SELECT in ATTACHED state has no effect.
Thanks
David
Hi David-san,
Thanks. Customer just mistakenly changed MODE_SELECT register and saw the behavior. They just wonder the reason of the behavior.
They don't use such a control on the actual their products.
Regards,
Saito