bmp.h 804 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef __NVBIOS_BMP_H__
  3. #define __NVBIOS_BMP_H__
  4. static inline u16
  5. bmp_version(struct nvkm_bios *bios)
  6. {
  7. if (bios->bmp_offset) {
  8. return nvbios_rd08(bios, bios->bmp_offset + 5) << 8 |
  9. nvbios_rd08(bios, bios->bmp_offset + 6);
  10. }
  11. return 0x0000;
  12. }
  13. static inline u16
  14. bmp_mem_init_table(struct nvkm_bios *bios)
  15. {
  16. if (bmp_version(bios) >= 0x0300)
  17. return nvbios_rd16(bios, bios->bmp_offset + 24);
  18. return 0x0000;
  19. }
  20. static inline u16
  21. bmp_sdr_seq_table(struct nvkm_bios *bios)
  22. {
  23. if (bmp_version(bios) >= 0x0300)
  24. return nvbios_rd16(bios, bios->bmp_offset + 26);
  25. return 0x0000;
  26. }
  27. static inline u16
  28. bmp_ddr_seq_table(struct nvkm_bios *bios)
  29. {
  30. if (bmp_version(bios) >= 0x0300)
  31. return nvbios_rd16(bios, bios->bmp_offset + 28);
  32. return 0x0000;
  33. }
  34. #endif