1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #include <console/console.h>
4 #include <intelblocks/p2sb.h>
6 void p2sb_soc_get_sb_mask(uint32_t *ep_mask
, size_t count
)
10 if (count
!= P2SB_EP_MASK_MAX_REG
) {
11 printk(BIOS_ERR
, "Unable to program EPMASK registers\n");
15 /* Remove the host accessing right to PSF register range.
16 * Set p2sb PCI offset EPMASK5 [29, 28, 27, 26] to disable sideband
17 * access for PCI Root Bridge.
19 mask
= (1 << 29) | (1 << 28) | (1 << 27) | (1 << 26);
21 ep_mask
[P2SB_EP_MASK_5_REG
] = mask
;
24 * Set p2sb PCI offset EPMASK7 [31, 30] to disable Sideband
25 * access for Broadcast and Multicast.
27 mask
= (1 << 31) | (1 << 30);
29 ep_mask
[P2SB_EP_MASK_7_REG
] = mask
;