[platform] expand platform_halt() to include suggested action and reason

-Remove old halt() call
-Add default implementation that just wedges the cpu if platform doesn't override
-Add default implementation for zynq
[platform][zynq] make sure SLCR structure is volatile