class MemoryAddressDecoderInterChannelConfigSkylake
Defined at line 431 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
MAD_INTER_CHANNEL_0_0_0_MCHBAR (Address decoder inter channel configuration).
Comet Lake: 615212-003 Section 8.33 pages 191-192
Coffee Lake: 337345-003 Section 7.37 page 193
Whiskey Lake: 338024-001 Section 7.10 page 153
Amber Lake: 334662-005 Section 6.31 page 154
Kaby Lake S: 335196-002 Section 7.31 page 186
Kaby Lake H: 335191-003 Section 7.37 page 195
Skylake U: 332991-003 Section 7.31 page 187
Skylake S: 332688-003 Section 7.31 page 169
Skylake H: 332987-003 Section 7.31 page 187
Public Members
field_RsvdZ_442
field_uses_ddr4e_memory_451
field_RsvdZ_453
field_channel_s_size_1gb_464
field_RsvdZ_466
field_channel_l_is_physical_channel1_469
field_enhanced_channel_mode_479
field_ddr_type_select_490
Public Methods
template <, >
SelfType & set_uses_ddr4e_memory (typename SelfType::ValueType val)
True if the attached memory is DDR4-E.
This bit should be zero if `ddr_type_select` does not indicate DDR4.
This bit is only defined on Comet Lake, and is reserved MBZ (must be zero)
on all other platforms. This gives us the right read semantics, as the
feature appears disabled on these platforms.
Defined at line 451 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
typename SelfType::ValueType uses_ddr4e_memory ()
True if the attached memory is DDR4-E.
This bit should be zero if `ddr_type_select` does not indicate DDR4.
This bit is only defined on Comet Lake, and is reserved MBZ (must be zero)
on all other platforms. This gives us the right read semantics, as the
feature appears disabled on these platforms.
Defined at line 451 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
typename SelfType::ValueType channel_s_size_1gb ()
The size of Channel S in 1GB units.
Valid values are 0-64.
This field value is does not match the Comet Lake datasheet. Comet Lake
memory controllers use the field layout in the
`MemoryAddressDecoderInterChannelConfigIceLake` class. `channel_s_size`
uses bits 19:12 and expresses the channel size in multiples of 512 MB. See
`ddr_type_select` for why we use this class for Comet Lake.
Defined at line 464 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
SelfType & set_channel_s_size_1gb (typename SelfType::ValueType val)
The size of Channel S in 1GB units.
Valid values are 0-64.
This field value is does not match the Comet Lake datasheet. Comet Lake
memory controllers use the field layout in the
`MemoryAddressDecoderInterChannelConfigIceLake` class. `channel_s_size`
uses bits 19:12 and expresses the channel size in multiples of 512 MB. See
`ddr_type_select` for why we use this class for Comet Lake.
Defined at line 464 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
typename SelfType::ValueType channel_l_is_physical_channel1 ()
If false, Channel L is the physical channel 0.
Defined at line 469 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
SelfType & set_channel_l_is_physical_channel1 (typename SelfType::ValueType val)
If false, Channel L is the physical channel 0.
Defined at line 469 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
typename SelfType::ValueType enhanced_channel_mode ()
If true, the channel operates as two 32-bit channels.
This bit must be true in LPDDR4 configurations, and can be set to
true for LPDDR3. In all other configurations, this bit must be false.
This bit is only defined on Comet Lake, and is reserved MBZ (must be zero)
on all other platforms. This gives us the right read semantics, as the
feature appears disabled on these platforms.
Defined at line 479 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
SelfType & set_enhanced_channel_mode (typename SelfType::ValueType val)
If true, the channel operates as two 32-bit channels.
This bit must be true in LPDDR4 configurations, and can be set to
true for LPDDR3. In all other configurations, this bit must be false.
This bit is only defined on Comet Lake, and is reserved MBZ (must be zero)
on all other platforms. This gives us the right read semantics, as the
feature appears disabled on these platforms.
Defined at line 479 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
DdrTypeValue ddr_type_select ()
The type of DDR memory installed in the system.
Bit 2 only belongs to this field on Comet Lake. On other platforms, bit 2
is reserved MBZ (must be zero). This gives us the right read semantics,
because all documented DDR type values have bit 2 set to zero.
Comet Lake memory controllers use the DDR type values documented here, in
`DdrTypeValue`. This is the main reason we use this class for Comet Lake,
instead of `MemoryAddressDecoderInterChannelConfigIceLake`.
Defined at line 490 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
template <, >
SelfType & set_ddr_type_select (DdrTypeValue val)
The type of DDR memory installed in the system.
Bit 2 only belongs to this field on Comet Lake. On other platforms, bit 2
is reserved MBZ (must be zero). This gives us the right read semantics,
because all documented DDR type values have bit 2 set to zero.
Comet Lake memory controllers use the DDR type values documented here, in
`DdrTypeValue`. This is the main reason we use this class for Comet Lake,
instead of `MemoryAddressDecoderInterChannelConfigIceLake`.
Defined at line 490 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
hwreg::RegisterAddr<MemoryAddressDecoderInterChannelConfigSkylake> Get ()
Defined at line 492 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h
Enumerations
enum DdrTypeValue
| Name | Value |
|---|---|
| kDoubleDataRam4 | 0b000 |
| kDoubleDataRam3 | 0b011 |
| kLowPowerDoubleDataRam3 | 0b010 |
| kLowPowerDoubleDataRam4 | 0b011 |
Documented values for `ddr_type_select`.
Defined at line 435 of file ../../src/graphics/display/drivers/intel-display/registers-memory-controller.h