[PCIe] - Power Budgeting Extended Capability

Case 1 : BAR register display that it's disabled.

image

Resolution: 

$ sudo setpci -s xx:xx.0 COMMAND=0x02, but why? memory map not default enabled by default!!!

Fixing process:None - Linux kernel memory map not default enabled by default!!!

 

Case 2 : When running, driver report ' can't change power state from D3cold to D0(config space inaccessible)'

 image

Resolution: After using $ sudo setpci -s xx:xx.0 COMMAND=0x02, but why?
 

Fixing process:

 

 

7.8.1 Power Budgeting Extended Capability

The Power Budgeting Extended Capability allows the system to allocate power to devices that are added to the system at runtime. Through this Capability, a device can report the power it consumes on a variety of power rails, in a variety of device power-management states, in a variety of operating conditions. The system can use this information to ensure that the system is capable of providing the proper power and cooling levels to the device. Failure to indicate proper device power consumption may risk device or system failure.

Implementation of the Power Budgeting Extended Capability is optional for PCI Express devices that are implemented either in a form-factor which does not require Hot-Plug support, or that are integrated on the system board. PCI Express form-factor specifications may require support for power budgeting. Power Budgeting reports device power consumption assuming the device is given appropriate permission (e.g., from Set_Slot_Power_Limit message) and that the external power connections for the device are operating.

The Power Budgeting Extended Capability is permitted to be present in PFs, but VFs must not implement it. If a PF contains the capability, it must report values that cover all associated VFs or SDIs. 

§ Figure 7-136 details allocation of register fields in the Power Budgeting Extended Capability.

image

 

7.8.1.2 Power Budgeting Data Select Register (Offset 04h)

The Power Budgeting Data Select Register is an 8-bit read-write register that indexes the Power Budgeting Data reported through the Power Budgeting Data Register and selects the DWORD of Power Budgeting Data that is to appear in the Power Budgeting Data Register. Values for this register start at zero to select the first DWORD of Power Budgeting Data; subsequent DWORDs of Power Budgeting Data are selected by increasing index values. The default value of this register is undefined.

 7.8.1.3 Power Budgeting Control Register (Offset 06h)

The Power Budgeting Control Register permits system software to enable extended power budgeting and to grant additional power to a Device above that defined by default for the associated form-factor. § Figure 7-138 details allocation of register fields in the Aux Power Control register; § Table 7-122 provides the respective bit definitions.

image

image

 

image

 

 

7.8.1.4 Power Budgeting Data Register (Offset 08h)

This read-only register returns the DWORD of Power Budgeting Data selected by the Power Budgeting Data Select Register. Each DWORD of the Power Budgeting Data describes the power usage of the device in a particular operating condition. Power Budgeting Data for different operating conditions is not required to be returned in any particular order, as long as incrementing the Power Budgeting Data Select Register causes information for a different operating condition to be returned. If the Power Budgeting Data Select Register contains a value greater than or equal to the number of operating conditions for which the device provides power information, this register must return all zeros. The default value of this register is undefined. § Figure 7-139 details allocation of register fields in the Power Budgeting Data Register; § Table 7-123 provides the respective bit definitions.
In earlier versions of this specification, bits 31:21 of this register were RsvdP. In order to ensure that the new uses of these bits do not confuse existing software:
• Extended Power Budgeting entries are hidden when Extended Power Budgeting Enable is Clear (the default). When Extended Power Budgeting Enable is Clear and Power Budgeting Data Select selects an Extended Power Budgeting entry, the Data register must return 0000 0000h.
• Extended Power Budgeting Data entries must be located after non-extended Power Budgeting Data entries (i.e., all entries where bits 31:21 are zero must use a smaller Power Budgeting Data Select value than any entry where bits 31:21 are non-zero).
The Base Power and Data Scale fields describe the power usage of the device; the Power Rail, Type, PM State, and PM Sub State fields describe the conditions under which the device has this power usage.

image

Figure 7-139 Power Budgeting Data Register

 

posted on 2026-01-30 14:18  ENGINEER-F  阅读(2)  评论(0)    收藏  举报