Seems like we should be calling CPLD function here and in Fans, DialInFlow, and DGInterface too.
Also recommend calling the isACPowerLost() function in just one place - maybe alarm mgmt exec to give you your 10 sec alarm block. Maybe rename the function to checkACPowerLost() with no return value and make it static (private).
These M sensors were treated differently above depending on beta h/w test config. Now that you have moved them down here, that differentiation is missing and appears to be doing the alpha thing only. Check w/ Vinay on desired handling. Do we even need this test config on beta build?