class BandwidthBuddyPageMask

Defined at line 466 of file ../../src/graphics/display/drivers/intel-display/registers-arbiter.h

BW_BUDDY_PAGE_MASK (Bandwidth Buddy Page Mask)

This register has bits that are reserved but not MBZ (must be zero). So, it

can only be safely updated via read-modify-write operations.

This register is not documented on Kaby Lake or Skylake.

Rocket Lake: IHD-OS-RKL-Vol 2-7.22 page 32

Tiger Lake: IHD-OS-TGL-Vol 2c-1.22-Rev2.0 Part 1 page 173

DG1: IHD-OS-DG1-Vol 2c-2.21 Part 2 page 138

Public Members

 field_RsvdZ_468
 field_address_page_mask_483

Public Methods

template <, >
typename SelfType::ValueType address_page_mask ()

The address bits masked for buddy address comparison.

The buddy system determines if two memory requests can be paired by

comparing bits 36-9 of the requests' physical addresses. However, the

comparison ignores the bits whose corresponding mask bits in this field are

set to 1. Conceptually, bits 36-9 in the physical address are ANDed with

the inverse (NOT) of bits 27-0 in this field before going into the

comparator.

This field accounts for the system's DRAM configuration. The intent is that

the buddy system improves DRAM bandwidth efficiency by pairing up memory

requests in a way that cuts down on DRAM management operations, such as

opening rows.

Defined at line 483 of file ../../src/graphics/display/drivers/intel-display/registers-arbiter.h

template <, >
SelfType & set_address_page_mask (typename SelfType::ValueType val)

The address bits masked for buddy address comparison.

The buddy system determines if two memory requests can be paired by

comparing bits 36-9 of the requests' physical addresses. However, the

comparison ignores the bits whose corresponding mask bits in this field are

set to 1. Conceptually, bits 36-9 in the physical address are ANDed with

the inverse (NOT) of bits 27-0 in this field before going into the

comparator.

This field accounts for the system's DRAM configuration. The intent is that

the buddy system improves DRAM bandwidth efficiency by pairing up memory

requests in a way that cuts down on DRAM management operations, such as

opening rows.

Defined at line 483 of file ../../src/graphics/display/drivers/intel-display/registers-arbiter.h

hwreg::RegisterAddr<BandwidthBuddyPageMask> GetForArbiter (int arbiter_index)

Tiger Lake has two bandwidth buddy instances, at indexes 1 and 2.

Rocket Lake, has a single bandwidth buddy instance, at index 0.

Defined at line 487 of file ../../src/graphics/display/drivers/intel-display/registers-arbiter.h

Records