1/* $NetBSD: bmp.h,v 1.3 2021/12/18 23:45:33 riastradh Exp $ */ 2 3/* SPDX-License-Identifier: MIT */ 4#ifndef __NVBIOS_BMP_H__ 5#define __NVBIOS_BMP_H__ 6static inline u16 7bmp_version(struct nvkm_bios *bios) 8{ 9 if (bios->bmp_offset) { 10 return nvbios_rd08(bios, bios->bmp_offset + 5) << 8 | 11 nvbios_rd08(bios, bios->bmp_offset + 6); 12 } 13 14 return 0x0000; 15} 16 17static inline u16 18bmp_mem_init_table(struct nvkm_bios *bios) 19{ 20 if (bmp_version(bios) >= 0x0300) 21 return nvbios_rd16(bios, bios->bmp_offset + 24); 22 return 0x0000; 23} 24 25static inline u16 26bmp_sdr_seq_table(struct nvkm_bios *bios) 27{ 28 if (bmp_version(bios) >= 0x0300) 29 return nvbios_rd16(bios, bios->bmp_offset + 26); 30 return 0x0000; 31} 32 33static inline u16 34bmp_ddr_seq_table(struct nvkm_bios *bios) 35{ 36 if (bmp_version(bios) >= 0x0300) 37 return nvbios_rd16(bios, bios->bmp_offset + 28); 38 return 0x0000; 39} 40#endif 41