The problem is your 2nd GPS plugging in GPS2 port.
In CAN configuration, CAN GPS is recognized as first GPS. If you plug your I2C GPS1, everything will be find.
In your case, ardupilot skips checking GPS2 data as there are nothing on GPS1 port. To solve this, set SERIAL3_PROTOCOL to anything other than 5 (GPS). Then GPS1 will no longer be checked for GPS data.
You will be able to use CAN+GPS2
but GPS status never show rtk float or rtk fixed, already start rtk gps inject with wi-fi connection from base to GCS laptop,
I set gps inject : to 2nd GPS
trying with 30 minutes for warming up