I know that firmware (and software in general) has bugs. But I wonder why modern firmware for UEFI has to be so complex, that it needs updates on a regular basis. It would be nice to have a dead-simple hardware-initialisation system that doesn't need regular updates and that only has very limited attack surface.
That is the dream isn't it? But there's no such thing since even a simple one that requires no updates would have some sort of vulnerability that needs an update, and the cycle continues.
SeaBIOS on a Coreboot laptop is pretty minimal. Paltry CPU speeds on anything that supports it nowadays, but fun for a beater system.
Regular updates are not always because of bugs but to support new hardware. Or security fixes.
The bootloader part of UEFI FW is quite straightforward. It requires updates due to vulnerabilities found in it and also to update certificates.
However modern FW of PC clones don't only contain a bootloader and a "simple" hardware initializer. Modern laptops have tens of sensors, power measuring parts, power controllers, completely remote management (Intel ME / AMD PSP), embedded controller code for fingerprint, embedded controller code for keyboard etc.
Companies ship a new product line every single year. This churn causes nothing but shitty FW to be developed. Moreover the component manufacturers also slightly change things every single year. That's why sleep sucks with PCs. That's why Fn shortcuts don't always work correctly. That's why batteries drain.
Everything is fixed in the 6 months to a year following the launch in PC industry. Then they start to work on the new model and only supply security updates.