v1: https://patchwork.freedesktop.org/series/99378/ v2: https://patchwork.freedesktop.org/series/99711/ Main from previous version: - Rename to iosys-map is already applied - Rewrite IOSYS_MAP_INIT_OFFSET() and eliminate most of its users, favoring a offset variable to keep the offset from the original iosys_map. - Add map offset to both iosys_map_rd_field() and iosys_map_wr_field() - Include documentation with example and expected memory layout for iosys_map_rd_field() - Replace Original cover letter: While porting i915 to arm64 we noticed some issues accessing lmem. Some writes were getting corrupted and the final state of the buffer didn't have exactly what we wrote. This became evident when enabling GuC submission: depending on the number of engines the ADS struct was being corrupted and GuC would reject it, refusin to initialize.