I have a HAT with a device tree in the eeprom that is a combination of pi3-disable-bt to remap the hardware uart to gpio 14 & 15 and w1 mapping to gpio 4. This has worked fine for the last year or so under Jessie, but since upgrading to Stretch this week, the remapping no longer appears to take place.
dts and eeprom_settings file can be found on bitbucket
I have made one extra change to eeprom_settings.txt to explicitly set pin 14 and 15 to ALT0 which is commented out in the above repo version (although the problem remains the same).
On booting the PI3 with the hat connected, gpio readall shows pin 14 & 15 as ALT5 rather than ALT0. If I edit config.txt and set dtoverlay=pi3-disable-bt then reboot, doing gpio readall shows the two pins are switched to ALT0 and everything works once more.
For some reason the overlay in the HATs eeprom does not appear to be disabling bluetooth and doing the pin remapping since upgrading to stretch.
more /proc/device-tree/hat/* shows the hat is detected and identified correctly.
Also, if I blank the hat eeprom and reboot, then the w1 temp sensors are no longer available, which suggests the HAT device tree is at least correctly doing part of the configuration. Flashing my dtb back to the eeprom makes the w1 temp sensors available again, but pins 14&15 remain as ALT5 rather than ALT0.
Has anything changed between raspbian Jessie and Stretch that would cause HAT auto configuration for pin 14&15 remapping to fail?
I'm at a bit of a loss, any suggestions for troubleshooting this further?