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.

TCA6424A: How to set GPIO state with register?

Part Number: TCA6424A
Other Parts Discussed in Thread: TDA4VM

Dear Experts,

     Our customer wants to enable SGMII in u-boot after they run the command " run boot_rprocs_mmc". Since our EVM board do not have SGMII PHY, I am trying to enable QSGMII port as they demand.

     I have enable it successfully in kernel with set variables in u-boot:

     # setenv init_main_cpsw0_qsgmii_phy "gpio set gpio@22_17; gpio clear gpio@22_16"
     # setenv bootcmd "run findfdt; run envboot; run init_${boot}; run init_main_cpsw0_qsgmii_phy; run boot_rprocs; run get_kern_${boot}; run get_fdt_${boot}; run get_overlay_${boot}; run run_kern"
     # saveenv

     However these settings will be executed in kernel, so if I hope to enbale our 4-port board in u-boot, this way does not work.

     My request is to set GPIO@22_17 and GPIO@22_16 in u-boot by "i2c mw 22 xx xx" commands. However when I trying to find related address and defination of register of TCA6424A, I cannot find any valuable information. 

     Could you help tell me how could I set these 2 gpios in u-boot stage?

     In my opinion is to set P20 to low and P21 to high. I am not quite sure whether this is right.

Best regards,

Sikai Lu