I am looking into the control registers for the TVP5147M1. I have tried setting
tvp5147m1_write_reg(REG_SYNC_CONTROL, 0x10);
to change the polarity of the FID (Field ID?)
and
tvp5147m1_write_reg(REG_FID_CONTROL, 0x01 );
where I’ve defined
#define REG_FID_CONTROL (0x57)
http://pdf1.alldatasheet.com/datasheet-pdf/view/227323/TI/TVP5147M1.html
I have tried each of the above together and alone (with the other defaulted) and nothing has changed the field order problem with NTSC. I note that it looks OK when the image is slowly rolling before synchronisation, but not when it has ceased rolling.
2.11.26 Sync Control Register
Subaddress 32h
Default 00h
7 6 5 4 3 2 1 0
Reserved Polarity FID Polarity VS Polarity HS VS/VBLK HS/CS
Polarity FID: determines polarity of FID terminal
0 = First field high, second field low (default)
1 = First field low, second field high
2.11.48 Field ID Control Register
Subaddress 57h
Default 00h
7 6 5 4 3 2 1 0
656 version FID control
656 Version
0 = ITU-R BT.656-4 (default)
1 = ITU-R BT.656-3
FID control
0 = 0→1 adapts to field 1, 1→0 adapts to field 1+ field 2 (default)
1 = 0→1 adapts to field 2, 1→0 adapts to field 1+ field 2 (for TVP5147M1 EVM)