As the ESP8266, ESP32 has some RTC non volatile Memory, so I think the right solution is to save , e.g. a boolean variable into the RTC non volatile memory ( e.g. RTC_DATA_ATT boolean InitDisplay) to tell the ESP32 that the display has already been initialized at the end of setup().
After waking up from deep sleep, there is a Reset and code runs from Setup(), not loop(). In setup(), test InitDisplay to initialize or not the display.
See this video, at 3:51 :