I am using MADC module of TPS65950 for light sensor needs. I am using channel 2 of MADC module. The read has timed out, as did reads for all other channels, I’ve tried. I did some preliminary debug of the MADC and found the reason of the failure. It’s once the ADC conversion doesn’t start, the EOC_SW1 bit in the CTRL_SW1 register (completion indication of conversion) never goes to 1. Further debug shows that, as soon as the MADC is powered on by setting CTRL1 [0] MADCON bit to 1, the BUSY bit of CTRL_SW1 turns on and never turns off. The permanent busy state of MADC means that the conversion never completes. I went through the TPS65950 datasheet and see that it doesn’t need the clock setup if the default configuration of the MADC is used (HFCLKIN signal is 26 MHz).
I have reached to a reason why conversation doesn't start and has permanent busy status.
The register GPBR1 determines MADC clocks configuration. Its default state (on power on) must be 0x90 (HFCLK enable and default MADC_CLK enable). Unfortunetelly it is set to o.
So a question, what is a reason of defalt state changing on power-on?