Command + R + S
(SIP locks System folder so cannot move kexts to another folder). SIP (csrutil) only enabled or disabled on Recovery Mode.
csrutil disablereboot
boot up holding down the CMD and S keys
fsck -fy
Mount a root filesystem with read/write permissions (might need to use /sbin/mount if you get mount command not found)
mount -uw /
sudo mkdir /AMD_Kexts/
sudo mv /System/Library/Extensions/AMD*.* /AMD_Kexts/
sudo rm -rf /System/Library/Caches/com.apple.kext.caches/
sudo mkdir /System/Library/Caches/com.apple.kext.caches/
to update the timestamps so that new driver caches - without AMD drivers - will be definitely rebuilt
sudo touch /System/Library/Extensions/
Unmount a partition to guarantee that your changes are flushed to it (might need to use /sbin/umount if you get umount command not found and might say resource busy, ignore it and go proceed to next step)
sudo umount /
sudo reboot
Before enabling SIP again, try the normal boot without pressing any key. The Mac OS will rebuild the kernel cache and restart. See if the system starts normally.
You might encounter that you are still using discrete GPU but computer works (if you are using gfx it might say can't change to discrete while external display is connected), keep going until last step and this will be resolved
Command + R + S
csrutil enable
reboot
sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00
sudo shutdown -r now