Regarding playing the speaker and headphone simultaneously, is not something I took into account. Is this even a valid usecase? The intel driver for es8336 doesn't seem to support it.
Yes, for example consider a critical notification - the system may wish to ensure it is audible even if the user has taken off their headphones for some reason.
In practice the speaker and the headphone are conflicting devices, see https://github.com/alsa-project/alsa-ucm-conf/blob/master/ucm2/Intel/sof-ess...
There is no such situation, and the system doesn't produce sound from speaker when headphones are plugged in. The user may manually open speaker using amixer sset 'Speaker' on or pavucontrol.
The GPIO thing on Huawei Intel platform is too complicated, they use two GPIOs for headphone and speaker, and the headphone GPIO is inverted, which means low means on and high means off. Luckily there should be only one hardware config for the AMD acp3x platform GPIO and you may just choose the correct one.