This is broken on 23.05 because the code for ag71xx was not updated for later versions of kernel 5.15.
22.03 (5.10): https://elixir.bootlin.com/linux/v5.10/source/drivers/net/ethernet/atheros/ag71xx.c#L1844
23.05.04 (5.15.162): https://elixir.bootlin.com/linux/v5.15.162/source/drivers/net/ethernet/atheros/ag71xx.c#L1855
Comment hinting at the change:
* int (*ndo_do_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd);
* Old-style ioctl entry point. This is used internally by the
* appletalk and ieee802154 subsystems but is no longer called by
* the device ioctl handler.
OpenWrt 23.05 still using ndo_do_ioctl for the ag71xx driver: https://github.com/openwrt/openwrt/blob/openwrt-23.05/target/linux/ath79/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c#L1505
Because ndo_eth_ioctl is NULL, the driver's ioctl handler isn't called anymore; ioctl calls fail and set errno to EOPNOTSUPP.
Any chance to get a contributor to patch this out?