We are experiencing a small number of CM3 modules that seem to 'go haywire' somehow when being programmed and will exhibit progressively worsening symptoms:
1. HDMI output starts to fail
2. HDMI output ceases to function (composite seems to work)
3. HDMI can't fetch EDID information anymore (tvservice -d foo.edid reports "no data written!" or similar)
2. CM3 stops booting
3. Powering the CM3 (even in a dev kit) causes the bcm2837 to get *really* hot *really* fast
We are flashing the CM3 using dcfldd similar to this:
`dcfldd sizeprobe=if bs=4M if=sd/20171215.1.img of=/dev/sdb `
Some basics about our setup -
a. We split emmc into 4 partitions, /boot / /data1 /data2
b. Linux 4.9.something'ish
c. /boot vfat, root is ext 4
d. all file systems are normally mounted read-only, there are a few configuration steps during production where /boot and/or / may be rw for a couple file operations.
We use our own carrier board. The CM3 is dead in both that and the CM3IO boards.
I suspect that during some of the configuration steps (d - above) the /boot partition is getting messed up. My suspicion originates in observing , in some instances, that if a file change happens on /boot and then the system is rebooted without 'sync' and `mount /boot -o remount,ro` then the system will be stuck shutting down for a long time, like several minutes (Normal reboot cycle time is about 15-20 seconds).
Once one of these 'long reboot' events occurs, the CM3 is usually toast.
To that end, I have compared all files in /boot on a 'bad' CM3 with a good one and see no differences (diff -q shows nothing).
I am working on imaging the entire MMC and am trying to compare against the flashed image.
Looking for any ideas about how to analyze this further... thoughts? suggestions?