Various firmware-related changes from https://github.com/torvalds/linux/commit/e3d98847ded1d183111ff7c4d1ef56b161c7f13e