arch/mips/alchemy/devboards/db1000.c
445
unsigned long pfc;
arch/mips/alchemy/devboards/db1000.c
470
pfc = alchemy_rdsys(AU1000_SYS_PINFUNC);
arch/mips/alchemy/devboards/db1000.c
471
pfc |= (1 << 0); /* SSI0 pins as GPIOs */
arch/mips/alchemy/devboards/db1000.c
472
alchemy_wrsys(pfc, AU1000_SYS_PINFUNC);
arch/mips/alchemy/devboards/db1200.c
802
unsigned long pfc;
arch/mips/alchemy/devboards/db1200.c
819
pfc = alchemy_rdsys(AU1000_SYS_PINFUNC);
arch/mips/alchemy/devboards/db1200.c
820
pfc &= ~(SYS_PINFUNC_P0A | SYS_PINFUNC_P0B);
arch/mips/alchemy/devboards/db1200.c
821
pfc &= ~(SYS_PINFUNC_P1A | SYS_PINFUNC_P1B | SYS_PINFUNC_FS3);
arch/mips/alchemy/devboards/db1200.c
822
pfc |= SYS_PINFUNC_P1C; /* SPI is configured later */
arch/mips/alchemy/devboards/db1200.c
823
alchemy_wrsys(pfc, AU1000_SYS_PINFUNC);
arch/mips/alchemy/devboards/db1200.c
828
pfc = clk_round_rate(c, 50000000);
arch/mips/alchemy/devboards/db1200.c
829
if ((pfc < 1) || (abs(50000000 - pfc) > 2500000))
arch/mips/alchemy/devboards/db1200.c
832
clk_set_rate(c, pfc);
arch/mips/alchemy/devboards/db1200.c
864
pfc = alchemy_rdsys(AU1000_SYS_PINFUNC) & ~SYS_PINFUNC_P0A;
arch/mips/alchemy/devboards/db1200.c
877
pfc |= (2 << 17); /* GPIO2 block owns GPIO215 */
arch/mips/alchemy/devboards/db1200.c
885
pfc |= (1 << 17); /* PSC0 owns GPIO215 */
arch/mips/alchemy/devboards/db1200.c
890
alchemy_wrsys(pfc, AU1000_SYS_PINFUNC);
arch/s390/include/uapi/asm/kvm.h
590
__u64 pfc; /* pfault compare [PFAULT] */
arch/s390/kvm/kvm-s390.c
4880
vcpu->arch.pfault_compare = kvm_run->s.regs.pfc;
arch/s390/kvm/kvm-s390.c
5011
kvm_run->s.regs.pfc = vcpu->arch.pfault_compare;
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
2104
struct xe_gt_sriov_pf_control *pfc = >->sriov.pf.control;
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
2110
spin_lock(&pfc->lock);
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
2111
cs = list_first_entry_or_null(&pfc->list, struct xe_gt_sriov_control_state, link);
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
2114
empty = list_empty(&pfc->list);
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
2115
spin_unlock(&pfc->lock);
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
368
struct xe_gt_sriov_pf_control *pfc = >->sriov.pf.control;
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
372
spin_lock(&pfc->lock);
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
373
list_move_tail(>->sriov.pf.vfs[vfid].control.link, &pfc->list);
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
374
spin_unlock(&pfc->lock);
drivers/infiniband/hw/ocrdma/ocrdma.h
576
static inline u8 ocrdma_get_pfc_prio(u8 *pfc, u8 prio)
drivers/infiniband/hw/ocrdma/ocrdma.h
578
return *(pfc + prio);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1491
static void vdec_av1_slice_setup_ref(struct vdec_av1_slice_pfc *pfc,
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1494
struct vdec_av1_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1510
pfc->ref_idx[i] = ctrl_fh->reference_frame_ts[ref_idx];
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1556
struct vdec_av1_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1560
struct vdec_av1_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1583
vdec_av1_slice_setup_ref(pfc, ctrl_fh);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1586
pfc->seq = instance->seq;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1721
struct vdec_av1_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1723
struct vdec_av1_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1730
ret = vdec_av1_slice_setup_pfc(instance, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1751
struct vdec_av1_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1755
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1757
pfc->seq, vsi->state.crc[0], vsi->state.out_size);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1789
struct vdec_av1_slice_pfc *pfc,
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1823
vb = vb2_find_buffer(vq, pfc->ref_idx[i]);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1844
struct vdec_av1_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1846
struct vdec_av1_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1853
ret = vdec_av1_slice_setup_core_buffer(instance, pfc, vsi, fb, lat_buf);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1862
struct vdec_av1_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1867
pfc->seq, vsi->state.crc[0], vsi->state.crc[1],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
1870
pfc->seq, vsi->state.crc[8], vsi->state.crc[9],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2038
struct vdec_av1_slice_pfc *pfc;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2049
vdec_av1_slice_core_decode, sizeof(*pfc))) {
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2063
pfc = (struct vdec_av1_slice_pfc *)lat_buf->private_data;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2064
if (!pfc) {
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2068
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2070
ret = vdec_av1_slice_setup_lat(instance, bs, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2091
mtk_vdec_err(ctx, "AV1 Frame %d decode timeout %d\n", pfc->seq, ret);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2098
ret = vdec_av1_slice_update_lat(instance, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2102
mtk_vdec_err(ctx, "AV1 Frame %d trans full\n", pfc->seq);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2110
mtk_vdec_err(ctx, "AV1 Frame %d insufficient buffer or timeout\n", pfc->seq);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2117
&pfc->vsi.trans.dma_addr, &pfc->vsi.trans.dma_addr_end);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2130
if (pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2131
mtk_vdec_err(ctx, "slice dec number: %d err: %d", pfc->seq, ret);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2139
struct vdec_av1_slice_pfc *pfc;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2147
pfc = lat_buf->private_data;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2149
if (!pfc || !ctx)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2162
ret = vdec_av1_slice_setup_core(instance, fb, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2167
vdec_av1_slice_vsi_to_remote(&pfc->vsi, instance->core_vsi);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2180
mtk_vdec_err(ctx, "AV1 frame %d core timeout\n", pfc->seq);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2186
ret = vdec_av1_slice_update_core(instance, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c
2202
vdec_msg_queue_update_ube_rptr(&ctx->msg_queue, pfc->vsi.trans.dma_addr_end);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1152
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1154
struct vdec_vp9_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1161
ret = vdec_vp9_slice_setup_pfc(instance, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1589
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1593
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1594
memcpy(&pfc->state[0], &vsi->state, sizeof(vsi->state));
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1597
pfc->seq, vsi->state.crc[0], vsi->state.crc[1],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1600
pfc->seq, vsi->state.crc[4], vsi->state.crc[5],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1615
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1619
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1620
memcpy(&pfc->state[0], &vsi->state, sizeof(vsi->state));
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1623
pfc->seq, vsi->state.crc[0],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1660
struct vdec_vp9_slice_pfc *pfc,
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1705
vb = vb2_find_buffer(vq, pfc->ref_idx[i]);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1730
struct vdec_vp9_slice_pfc *pfc,
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1760
vdec_vp9_slice_setup_core_buffer(instance, pfc, vsi, fb, NULL);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1766
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1768
struct vdec_vp9_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1777
ret = vdec_vp9_slice_setup_core_buffer(instance, pfc, vsi, fb, lat_buf);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1792
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1794
struct vdec_vp9_slice_vsi *vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1801
ret = vdec_vp9_slice_setup_pfc(instance, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1809
vdec_vp9_slice_setup_single_buffer(instance, pfc, vsi, bs, fb);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1828
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1832
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1833
memcpy(&pfc->state[1], &vsi->state, sizeof(vsi->state));
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1836
pfc->seq, vsi->state.crc[0], vsi->state.crc[1],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1839
pfc->seq, vsi->state.crc[4], vsi->state.crc[5],
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1977
struct vdec_vp9_slice_pfc *pfc = &instance->sc_pfc;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1994
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
1996
ret = vdec_vp9_slice_setup_single(instance, bs, fb, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2020
ret = vdec_vp9_slice_update_single(instance, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2035
struct vdec_vp9_slice_pfc *pfc;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2047
sizeof(*pfc)))
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2059
pfc = (struct vdec_vp9_slice_pfc *)lat_buf->private_data;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2060
if (!pfc) {
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2064
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2066
ret = vdec_vp9_slice_setup_lat(instance, bs, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2084
mtk_vdec_err(ctx, "VP9 decode timeout %d pic %d\n", ret, pfc->seq);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2091
ret = vdec_vp9_slice_update_lat(instance, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2100
(unsigned long)pfc->vsi.trans.dma_addr,
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2101
(unsigned long)pfc->vsi.trans.dma_addr_end);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2131
struct vdec_vp9_slice_pfc *pfc;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2139
pfc = lat_buf->private_data;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2141
if (!pfc || !ctx)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2154
ret = vdec_vp9_slice_setup_core(instance, fb, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2159
vdec_vp9_slice_vsi_to_remote(&pfc->vsi, instance->core_vsi);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2172
mtk_vdec_err(ctx, "VP9 core timeout pic %d\n", pfc->seq);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2178
vdec_vp9_slice_vsi_from_remote(&pfc->vsi, instance->core_vsi, 1);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2179
ret = vdec_vp9_slice_update_core(instance, lat_buf, pfc);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2185
pfc->vsi.trans.dma_addr_end += ctx->msg_queue.wdma_addr.dma_addr;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2187
(unsigned long)pfc->vsi.trans.dma_addr_end);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2188
vdec_msg_queue_update_ube_rptr(&ctx->msg_queue, pfc->vsi.trans.dma_addr_end);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2194
if (ctx && pfc) {
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
2196
vdec_msg_queue_update_ube_rptr(&ctx->msg_queue, pfc->vsi.trans.dma_addr_end);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
931
static void vdec_vp9_slice_setup_ref_idx(struct vdec_vp9_slice_pfc *pfc,
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
934
pfc->ref_idx[0] = hdr->last_frame_ts;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
935
pfc->ref_idx[1] = hdr->golden_frame_ts;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
936
pfc->ref_idx[2] = hdr->alt_frame_ts;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
940
struct vdec_vp9_slice_pfc *pfc)
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
954
vsi = &pfc->vsi;
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
969
vdec_vp9_slice_setup_ref_idx(pfc, hdr);
drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c
971
pfc->seq = instance->seq;
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
102
struct ieee_pfc *pfc)
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
107
pfc->pfc_cap = pdata->hw_feat.tc_cnt;
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
109
if (pdata->pfc) {
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
110
pfc->pfc_en = pdata->pfc->pfc_en;
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
111
pfc->mbc = pdata->pfc->mbc;
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
112
pfc->delay = pdata->pfc->delay;
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
119
struct ieee_pfc *pfc)
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
125
pfc->pfc_cap, pfc->pfc_en, pfc->mbc, pfc->delay);
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
128
if (pfc->pfc_en & ~((1 << pdata->hw_feat.tc_cnt) - 1)) {
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
134
if (!pdata->pfc) {
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
135
pdata->pfc = devm_kzalloc(pdata->dev, sizeof(*pdata->pfc),
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
137
if (!pdata->pfc)
drivers/net/ethernet/amd/xgbe/xgbe-dcb.c
141
memcpy(pdata->pfc, pfc, sizeof(*pdata->pfc));
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
2377
if (pdata->pfc->delay)
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
2378
return pdata->pfc->delay / 8;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
2401
if (!pdata->pfc->pfc_en)
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
2523
if (pdata->pfc && pdata->ets)
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
2534
if (pdata->pfc && pdata->ets && pdata->pfc->pfc_en) {
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
383
if (pdata->pfc->pfc_en & (1 << tc))
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
470
struct ieee_pfc *pfc = pdata->pfc;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
481
if (pfc && ets) {
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
531
struct ieee_pfc *pfc = pdata->pfc;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
533
if (pdata->tx_pause || (pfc && pfc->pfc_en))
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
543
struct ieee_pfc *pfc = pdata->pfc;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
545
if (pdata->rx_pause || (pfc && pfc->pfc_en))
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
555
struct ieee_pfc *pfc = pdata->pfc;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
561
(pfc && pfc->pfc_en) ? 1 : 0);
drivers/net/ethernet/amd/xgbe/xgbe.h
1176
struct ieee_pfc *pfc;
drivers/net/ethernet/aquantia/atlantic/hw_atl2/hw_atl2_utils.h
332
u8 pfc:1;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
1084
bp->dcbx_port_params.pfc.priority_non_pauseable_mask);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
147
features->pfc.pri_en_bitmap);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
149
features->pfc.pfc_caps);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
151
features->pfc.enabled);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2121
*setting = (bp->dcbx_local_feat.pfc.pri_en_bitmap >> prio) & 0x1;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2234
DP(BNX2X_MSG_DCB, "state = %d\n", bp->dcbx_local_feat.pfc.enabled);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2239
return bp->dcbx_local_feat.pfc.enabled;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2419
if (bp->dcbx_local_feat.pfc.enabled)
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2545
struct cee_pfc *pfc)
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2548
pfc->tcs_supported = bp->dcbx_remote_feat.pfc.pfc_caps;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
2549
pfc->pfc_en = bp->dcbx_remote_feat.pfc.pri_en_bitmap;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
327
struct dcbx_pfc_feature *pfc, u32 error)
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
334
if (bp->dcbx_port_params.app.enabled && pfc->enabled &&
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
337
bp->dcbx_port_params.pfc.enabled = true;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
338
bp->dcbx_port_params.pfc.priority_non_pauseable_mask =
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
339
~(pfc->pri_en_bitmap);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
342
bp->dcbx_port_params.pfc.enabled = false;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
343
bp->dcbx_port_params.pfc.priority_non_pauseable_mask = 0;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
379
bnx2x_dcbx_get_pfc_feature(bp, &features->pfc, error);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
446
if (bp->dcbx_port_params.pfc.enabled &&
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
858
af->pfc.enabled = (u8)dp->admin_pfc_enable;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
915
af->pfc.pri_en_bitmap = (u8)dp->admin_pfc_bitmap;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.h
156
((bp)->dcbx_port_params.pfc.priority_non_pauseable_mask)
drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.h
64
struct bnx2x_dcbx_pfc_params pfc;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_hsi.h
1875
struct dcbx_pfc_feature pfc;
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
249
static int bnxt_hwrm_queue_pfc_cfg(struct bnxt *bp, struct ieee_pfc *pfc)
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
263
if ((pfc->pfc_en & (1 << pri)) &&
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
297
static int bnxt_hwrm_queue_pfc_qcfg(struct bnxt *bp, struct ieee_pfc *pfc)
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
316
pfc->pfc_en = pri_mask;
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
593
static int bnxt_dcbnl_ieee_getpfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
601
pfc->pfc_cap = bp->max_lltc;
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
616
pfc->pfc_en = my_pfc->pfc_en;
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
617
pfc->mbc = my_pfc->mbc;
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
618
pfc->delay = my_pfc->delay;
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
626
pfc->requests[i] = le64_to_cpu(*(stats + tx_off));
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
627
pfc->indications[i] = le64_to_cpu(*(stats + rx_off));
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
633
static int bnxt_dcbnl_ieee_setpfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
650
rc = bnxt_hwrm_queue_pfc_cfg(bp, pfc);
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
652
memcpy(my_pfc, pfc, sizeof(*my_pfc));
drivers/net/ethernet/cavium/thunder/nic.h
321
struct nicvf_pfc pfc;
drivers/net/ethernet/cavium/thunder/nic.h
601
struct pfc pfc;
drivers/net/ethernet/cavium/thunder/nic_main.c
1085
nic_pause_frame(nic, vf, &mbx.pfc);
drivers/net/ethernet/cavium/thunder/nic_main.c
861
static void nic_pause_frame(struct nicpf *nic, int vf, struct pfc *cfg)
drivers/net/ethernet/cavium/thunder/nic_main.c
864
struct pfc pfc;
drivers/net/ethernet/cavium/thunder/nic_main.c
873
bgx_lmac_get_pfc(nic->node, bgx, lmac, &pfc);
drivers/net/ethernet/cavium/thunder/nic_main.c
874
mbx.pfc.msg = NIC_MBOX_MSG_PFC;
drivers/net/ethernet/cavium/thunder/nic_main.c
875
mbx.pfc.autoneg = pfc.autoneg;
drivers/net/ethernet/cavium/thunder/nic_main.c
876
mbx.pfc.fc_rx = pfc.fc_rx;
drivers/net/ethernet/cavium/thunder/nic_main.c
877
mbx.pfc.fc_tx = pfc.fc_tx;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
781
mbx.pfc.msg = NIC_MBOX_MSG_PFC;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
782
mbx.pfc.get = 1;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
784
pause->autoneg = nic->pfc.autoneg;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
785
pause->rx_pause = nic->pfc.fc_rx;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
786
pause->tx_pause = nic->pfc.fc_tx;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
805
mbx.pfc.msg = NIC_MBOX_MSG_PFC;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
806
mbx.pfc.get = 0;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
807
mbx.pfc.fc_rx = pause->rx_pause;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
808
mbx.pfc.fc_tx = pause->tx_pause;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
812
nic->pfc.fc_rx = pause->rx_pause;
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
813
nic->pfc.fc_tx = pause->tx_pause;
drivers/net/ethernet/cavium/thunder/nicvf_main.c
288
nic->pfc.autoneg = mbx.pfc.autoneg;
drivers/net/ethernet/cavium/thunder/nicvf_main.c
289
nic->pfc.fc_rx = mbx.pfc.fc_rx;
drivers/net/ethernet/cavium/thunder/nicvf_main.c
290
nic->pfc.fc_tx = mbx.pfc.fc_tx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
464
struct pfc *pfc = (struct pfc *)pause;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
476
pfc->fc_rx = cfg & RX_EN;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
477
pfc->fc_tx = cfg & TX_EN;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
478
pfc->autoneg = 0;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
484
struct pfc *pfc = (struct pfc *)pause;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
497
cfg |= (pfc->fc_rx ? RX_EN : 0x00);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
498
cfg |= (pfc->fc_tx ? TX_EN : 0x00);
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1001
static int cxgb4_ieee_get_pfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1006
memset(pfc, 0, sizeof(struct ieee_pfc));
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1011
pfc->pfc_cap = dcb->pfc_num_tcs_supported;
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1012
pfc->pfc_en = bitswap_1(dcb->pfcen);
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1225
static int cxgb4_cee_peer_getpfc(struct net_device *dev, struct cee_pfc *pfc)
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1229
cxgb4_getnumtcs(dev, DCB_NUMTCS_ATTR_PFC, &(pfc->tcs_supported));
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1235
pfc->pfc_en = bitswap_1(pi->dcb.pfcen);
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
1237
pfc->tcs_supported = pi->dcb.pfc_num_tcs_supported;
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
355
dcb->pfcen = fwdcb->pfc.pfcen;
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
356
dcb->pfc_num_tcs_supported = fwdcb->pfc.max_pfc_tcs;
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
662
pcmd.u.dcb.pfc.type = FW_PORT_DCB_TYPE_PFC;
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
663
pcmd.u.dcb.pfc.pfcen = pi->dcb.pfcen;
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
666
pcmd.u.dcb.pfc.pfcen |= (1 << (7 - priority));
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
668
pcmd.u.dcb.pfc.pfcen &= (~(1 << (7 - priority)));
drivers/net/ethernet/chelsio/cxgb4/cxgb4_dcb.c
676
pi->dcb.pfcen = pcmd.u.dcb.pfc.pfcen;
drivers/net/ethernet/chelsio/cxgb4/t4fw_api.h
2869
} pfc;
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
100
memcpy(&priv->pfc, pfc, sizeof(priv->pfc));
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
101
priv->pfc_enabled = !!pfc->pfc_en;
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
14
memcpy(pfc, &priv->pfc, sizeof(priv->pfc));
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
15
pfc->pfc_cap = dpaa2_eth_tc_count(priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
62
struct ieee_pfc *pfc)
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
69
if (pfc->mbc || pfc->delay)
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
7
struct ieee_pfc *pfc)
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
73
if (priv->pfc.pfc_en == pfc->pfc_en)
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
85
if (pfc->pfc_en)
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-dcb.c
96
err = dpaa2_eth_set_pfc_cn(priv, pfc->pfc_en);
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
2070
bool tx_pause, bool pfc)
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
2112
td.enable = !tx_pause || pfc;
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.h
611
struct ieee_pfc pfc;
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.h
793
bool tx_pause, bool pfc);
drivers/net/ethernet/hisilicon/hns3/hns3_dcbnl.c
33
static int hns3_dcbnl_ieee_getpfc(struct net_device *ndev, struct ieee_pfc *pfc)
drivers/net/ethernet/hisilicon/hns3/hns3_dcbnl.c
41
return h->kinfo.dcb_ops->ieee_getpfc(h, pfc);
drivers/net/ethernet/hisilicon/hns3/hns3_dcbnl.c
46
static int hns3_dcbnl_ieee_setpfc(struct net_device *ndev, struct ieee_pfc *pfc)
drivers/net/ethernet/hisilicon/hns3/hns3_dcbnl.c
54
return h->kinfo.dcb_ops->ieee_setpfc(h, pfc);
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
303
static int hclge_ieee_getpfc(struct hnae3_handle *h, struct ieee_pfc *pfc)
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
309
memset(pfc, 0, sizeof(*pfc));
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
310
pfc->pfc_cap = hdev->pfc_max;
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
311
pfc->pfc_en = hdev->tm_info.pfc_en;
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
320
hclge_pfc_tx_stats_get(hdev, pfc->requests);
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
321
hclge_pfc_rx_stats_get(hdev, pfc->indications);
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
326
static int hclge_ieee_setpfc(struct hnae3_handle *h, struct ieee_pfc *pfc)
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
338
if (pfc->pfc_en == hdev->tm_info.pfc_en)
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
346
if ((prio_tc[j] == i) && (pfc->pfc_en & BIT(j))) {
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
354
hdev->tm_info.pfc_en = pfc->pfc_en;
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c
358
pfc->pfc_en, pfc_map, hdev->tm_info.num_tc);
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c
178
struct hclge_pfc_en_cmd *pfc = (struct hclge_pfc_en_cmd *)desc.data;
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c
182
pfc->tx_rx_en_bitmap = tx_rx_bitmap;
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c
183
pfc->pri_en_bitmap = pfc_bitmap;
drivers/net/ethernet/huawei/hinic/hinic_port.c
1228
struct hinic_set_pfc pfc = {0};
drivers/net/ethernet/huawei/hinic/hinic_port.c
1229
u16 out_size = sizeof(pfc);
drivers/net/ethernet/huawei/hinic/hinic_port.c
1237
pfc.func_id = HINIC_HWIF_FUNC_IDX(hwdev->hwif);
drivers/net/ethernet/huawei/hinic/hinic_port.c
1238
pfc.pfc_bitmap = pfc_bitmap;
drivers/net/ethernet/huawei/hinic/hinic_port.c
1239
pfc.pfc_en = pfc_en;
drivers/net/ethernet/huawei/hinic/hinic_port.c
1242
&pfc, sizeof(pfc), &pfc, &out_size);
drivers/net/ethernet/huawei/hinic/hinic_port.c
1243
if (err || pfc.status || !out_size) {
drivers/net/ethernet/huawei/hinic/hinic_port.c
1245
pfc_en ? "enable" : "disable", err, pfc.status,
drivers/net/ethernet/intel/fm10k/fm10k_dcbnl.c
77
static int fm10k_dcbnl_ieee_getpfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/intel/fm10k/fm10k_dcbnl.c
82
pfc->pfc_cap = IEEE_8021QAZ_MAX_TCS;
drivers/net/ethernet/intel/fm10k/fm10k_dcbnl.c
83
pfc->pfc_en = interface->pfc_en;
drivers/net/ethernet/intel/fm10k/fm10k_dcbnl.c
93
static int fm10k_dcbnl_ieee_setpfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/intel/fm10k/fm10k_dcbnl.c
98
interface->pfc_en = pfc->pfc_en;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
1108
if (dcbcfg->pfc.willing)
drivers/net/ethernet/intel/i40e/i40e_dcb.c
1111
if (dcbcfg->pfc.mbc)
drivers/net/ethernet/intel/i40e/i40e_dcb.c
1114
buf[0] |= dcbcfg->pfc.pfccap & 0xF;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
1115
buf[1] = dcbcfg->pfc.pfcenable;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
167
dcbcfg->pfc.willing = FIELD_GET(I40E_IEEE_PFC_WILLING_MASK, buf[0]);
drivers/net/ethernet/intel/i40e/i40e_dcb.c
168
dcbcfg->pfc.mbc = FIELD_GET(I40E_IEEE_PFC_MBC_MASK, buf[0]);
drivers/net/ethernet/intel/i40e/i40e_dcb.c
169
dcbcfg->pfc.pfccap = FIELD_GET(I40E_IEEE_PFC_CAP_MASK, buf[0]);
drivers/net/ethernet/intel/i40e/i40e_dcb.c
170
dcbcfg->pfc.pfcenable = buf[1];
drivers/net/ethernet/intel/i40e/i40e_dcb.c
322
dcbcfg->pfc.willing = 1;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
329
dcbcfg->pfc.pfcenable = buf[0];
drivers/net/ethernet/intel/i40e/i40e_dcb.c
330
dcbcfg->pfc.pfccap = buf[1];
drivers/net/ethernet/intel/i40e/i40e_dcb.c
605
dcbcfg->pfc.pfcenable = cee_cfg->oper_pfc_en;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
606
dcbcfg->pfc.pfccap = I40E_MAX_TRAFFIC_CLASS;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
682
dcbcfg->pfc.pfcenable = cee_cfg->oper_pfc_en;
drivers/net/ethernet/intel/i40e/i40e_dcb.c
683
dcbcfg->pfc.pfccap = I40E_MAX_TRAFFIC_CLASS;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
154
struct ieee_pfc *pfc)
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
167
if (pfc->pfc_cap)
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
168
pf->tmp_cfg.pfc.pfccap = pfc->pfc_cap;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
170
pf->tmp_cfg.pfc.pfccap = I40E_MAX_TRAFFIC_CLASS;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
171
pf->tmp_cfg.pfc.pfcenable = pfc->pfc_en;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
586
pf->tmp_cfg.pfc.pfccap = I40E_MAX_TRAFFIC_CLASS;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
588
pf->tmp_cfg.pfc.pfcenable |= BIT(prio);
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
590
pf->tmp_cfg.pfc.pfcenable &= ~BIT(prio);
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
593
prio, setting, pf->tmp_cfg.pfc.pfcenable);
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
616
*setting = (pf->hw.local_dcbx_config.pfc.pfcenable >> prio) & 0x1;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
619
prio, *setting, pf->hw.local_dcbx_config.pfc.pfcenable);
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
726
if (pf->hw.local_dcbx_config.pfc.pfcenable)
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
73
struct ieee_pfc *pfc)
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
84
pfc->pfc_cap = dcbxcfg->pfc.pfccap;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
85
pfc->pfc_en = dcbxcfg->pfc.pfcenable;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
86
pfc->mbc = dcbxcfg->pfc.mbc;
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
87
i40e_get_pfc_delay(hw, &pfc->delay);
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
91
pfc->requests[i] = pf->stats.priority_xoff_tx[i];
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
92
pfc->indications[i] = pf->stats.priority_xoff_rx[i];
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
1043
cfg->pfc.willing, cfg->pfc.mbc,
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
1044
cfg->pfc.pfccap, cfg->pfc.pfcenable);
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
1072
r_cfg->pfc.willing,
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
1073
r_cfg->pfc.mbc,
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
1074
r_cfg->pfc.pfccap,
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
1075
r_cfg->pfc.pfcenable);
drivers/net/ethernet/intel/i40e/i40e_ethtool.c
1672
if (dcbx_cfg->pfc.pfcenable) {
drivers/net/ethernet/intel/i40e/i40e_ethtool.c
1731
if (dcbx_cfg->pfc.pfcenable) {
drivers/net/ethernet/intel/i40e/i40e_ethtool.c
2366
struct i40e_pfc_stats pfc = {
drivers/net/ethernet/intel/i40e/i40e_ethtool.c
2373
return pfc;
drivers/net/ethernet/intel/i40e/i40e_ethtool.c
2446
struct i40e_pfc_stats pfc = i40e_get_pfc_stats(pf, i);
drivers/net/ethernet/intel/i40e/i40e_ethtool.c
2448
i40e_add_ethtool_stats(&data, &pfc, i40e_gstrings_pfc_stats);
drivers/net/ethernet/intel/i40e/i40e_main.c
7055
i40e_dcb_hw_pfc_config(hw, new_cfg->pfc.pfcenable,
drivers/net/ethernet/intel/i40e/i40e_main.c
7068
false, new_cfg->pfc.pfcenable,
drivers/net/ethernet/intel/i40e/i40e_main.c
7140
pf->tmp_cfg.pfc.willing = I40E_IEEE_DEFAULT_PFC_WILLING;
drivers/net/ethernet/intel/i40e/i40e_main.c
7141
pf->tmp_cfg.pfc.pfccap = I40E_MAX_TRAFFIC_CLASS;
drivers/net/ethernet/intel/i40e/i40e_main.c
9406
if (memcmp(&new_cfg->pfc,
drivers/net/ethernet/intel/i40e/i40e_main.c
9407
&old_cfg->pfc,
drivers/net/ethernet/intel/i40e/i40e_main.c
9408
sizeof(new_cfg->pfc))) {
drivers/net/ethernet/intel/i40e/i40e_type.h
477
struct i40e_dcb_pfc_config pfc;
drivers/net/ethernet/intel/ice/ice_dcb.c
1208
if (dcbcfg->pfc.willing)
drivers/net/ethernet/intel/ice/ice_dcb.c
1211
if (dcbcfg->pfc.mbc)
drivers/net/ethernet/intel/ice/ice_dcb.c
1214
buf[0] |= dcbcfg->pfc.pfccap & 0xF;
drivers/net/ethernet/intel/ice/ice_dcb.c
1215
buf[1] = dcbcfg->pfc.pfcena;
drivers/net/ethernet/intel/ice/ice_dcb.c
1398
buf[0] = dcbcfg->pfc.pfccap & 0xF;
drivers/net/ethernet/intel/ice/ice_dcb.c
1399
buf[1] = dcbcfg->pfc.pfcena;
drivers/net/ethernet/intel/ice/ice_dcb.c
265
dcbcfg->pfc.willing = FIELD_GET(ICE_IEEE_PFC_WILLING_M, buf[0]);
drivers/net/ethernet/intel/ice/ice_dcb.c
266
dcbcfg->pfc.mbc = FIELD_GET(ICE_IEEE_PFC_MBC_M, buf[0]);
drivers/net/ethernet/intel/ice/ice_dcb.c
267
dcbcfg->pfc.pfccap = FIELD_GET(ICE_IEEE_PFC_CAP_M, buf[0]);
drivers/net/ethernet/intel/ice/ice_dcb.c
268
dcbcfg->pfc.pfcena = buf[1];
drivers/net/ethernet/intel/ice/ice_dcb.c
430
dcbcfg->pfc.willing = 1;
drivers/net/ethernet/intel/ice/ice_dcb.c
437
dcbcfg->pfc.pfcena = buf[0];
drivers/net/ethernet/intel/ice/ice_dcb.c
438
dcbcfg->pfc.pfccap = buf[1];
drivers/net/ethernet/intel/ice/ice_dcb.c
814
dcbcfg->pfc.pfcena = cee_cfg->oper_pfc_en;
drivers/net/ethernet/intel/ice/ice_dcb.c
815
dcbcfg->pfc.pfccap = ICE_MAX_TRAFFIC_CLASS;
drivers/net/ethernet/intel/ice/ice_dcb_lib.c
162
pfc_ena_map = cfg->pfc.pfcena;
drivers/net/ethernet/intel/ice/ice_dcb_lib.c
514
if (memcmp(&new_cfg->pfc, &old_cfg->pfc, sizeof(new_cfg->pfc))) {
drivers/net/ethernet/intel/ice/ice_dcb_lib.c
659
dcbcfg->pfc.willing = 1;
drivers/net/ethernet/intel/ice/ice_dcb_lib.c
660
dcbcfg->pfc.pfccap = hw->func_caps.common_cap.maxtc;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
238
static int ice_dcbnl_getpfc(struct net_device *netdev, struct ieee_pfc *pfc)
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
246
pfc->pfc_cap = dcbxcfg->pfc.pfccap;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
247
pfc->pfc_en = dcbxcfg->pfc.pfcena;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
248
pfc->mbc = dcbxcfg->pfc.mbc;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
249
ice_get_pfc_delay(&pf->hw, &pfc->delay);
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
252
pfc->requests[i] = pf->stats.priority_xoff_tx[i];
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
253
pfc->indications[i] = pf->stats.priority_xoff_rx[i];
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
264
static int ice_dcbnl_setpfc(struct net_device *netdev, struct ieee_pfc *pfc)
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
283
if (pfc->pfc_cap)
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
284
new_cfg->pfc.pfccap = pfc->pfc_cap;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
286
new_cfg->pfc.pfccap = pf->hw.func_caps.common_cap.maxtc;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
288
new_cfg->pfc.pfcena = pfc->pfc_en;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
318
*setting = (pi->qos_cfg.local_dcbx_cfg.pfc.pfcena >> prio) & 0x1;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
320
prio, *setting, pi->qos_cfg.local_dcbx_cfg.pfc.pfcena);
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
348
new_cfg->pfc.pfccap = pf->hw.func_caps.common_cap.maxtc;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
350
new_cfg->pfc.pfcena |= BIT(prio);
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
352
new_cfg->pfc.pfcena &= ~BIT(prio);
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
355
prio, set, new_cfg->pfc.pfcena);
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
368
if (pi->qos_cfg.local_dcbx_cfg.pfc.pfcena)
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
817
new_cfg->pfc.pfccap = max_tc;
drivers/net/ethernet/intel/ice/ice_dcb_nl.c
818
new_cfg->pfc.willing = 0;
drivers/net/ethernet/intel/ice/ice_ethtool.c
3482
if (dcbx_cfg->pfc.pfcena)
drivers/net/ethernet/intel/ice/ice_ethtool.c
3564
if (dcbx_cfg->pfc.pfcena) {
drivers/net/ethernet/intel/ice/ice_type.h
723
struct ice_dcb_pfc_cfg pfc;
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
559
struct ieee_pfc *pfc)
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
565
pfc->pfc_cap = adapter->dcb_cfg.num_tcs.pfc_tcs;
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
571
pfc->pfc_en = my_pfc->pfc_en;
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
572
pfc->mbc = my_pfc->mbc;
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
573
pfc->delay = my_pfc->delay;
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
576
pfc->requests[i] = adapter->stats.pxoffrxc[i];
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
577
pfc->indications[i] = adapter->stats.pxofftxc[i];
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
584
struct ieee_pfc *pfc)
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
601
memcpy(adapter->ixgbe_ieee_pfc, pfc, sizeof(*adapter->ixgbe_ieee_pfc));
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
604
if (pfc->pfc_en)
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
605
err = ixgbe_dcb_hw_pfc_config(hw, pfc->pfc_en, prio_tc);
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
714
struct ieee_pfc pfc = {0};
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
730
pfc.pfc_cap = 8;
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
734
ixgbe_dcbnl_ieee_setpfc(dev, &pfc);
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
745
ixgbe_dcbnl_ieee_setpfc(dev, &pfc);
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
400
static int otx2_dcbnl_ieee_getpfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
404
pfc->pfc_cap = IEEE_8021QAZ_MAX_TCS;
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
405
pfc->pfc_en = pfvf->pfc_en;
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
410
static int otx2_dcbnl_ieee_setpfc(struct net_device *dev, struct ieee_pfc *pfc)
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
417
pfvf->pfc_en = pfc->pfc_en;
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
442
if (pfc->pfc_en)
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c
447
if (pfc->pfc_en)
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
398
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
402
pfc->pfc_cap = IEEE_8021QAZ_MAX_TCS;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
403
pfc->pfc_en = priv->prof->tx_ppp;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
409
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
418
pfc->pfc_cap,
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
419
pfc->pfc_en,
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
420
pfc->mbc,
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
421
pfc->delay);
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
423
rx_pause = prof->rx_pause && !pfc->pfc_en;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
424
tx_pause = prof->tx_pause && !pfc->pfc_en;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
425
rx_ppp = pfc->pfc_en;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
426
tx_ppp = pfc->pfc_en;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
458
struct ieee_pfc pfc = {0};
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
472
pfc.pfc_cap = IEEE_8021QAZ_MAX_TCS;
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
477
if (mlx4_en_dcbnl_ieee_setpfc(dev, &pfc))
drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c
485
if (mlx4_en_dcbnl_ieee_setpfc(dev, &pfc))
drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c
484
struct ieee_pfc *pfc,
drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c
517
__func__, pfc->pfc_en);
drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c
522
err = update_buffer_lossy(priv->mdev, max_mtu, pfc->pfc_en, buffer, xoff,
drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.h
71
struct ieee_pfc *pfc,
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
373
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
380
pfc->pfc_cap = mlx5_max_tc(mdev) + 1;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
382
pfc->requests[i] = PPORT_PER_PRIO_GET(pstats, i, tx_pause);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
383
pfc->indications[i] = PPORT_PER_PRIO_GET(pstats, i, rx_pause);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
387
pfc->delay = priv->dcbx.cable_len;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
389
return mlx5_query_port_pfc(mdev, &pfc->pfc_en, NULL);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
393
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
406
if (pfc->pfc_en != curr_pfc_en) {
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
407
ret = mlx5_set_port_pfc(mdev, pfc->pfc_en, pfc->pfc_en);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
414
if (pfc->delay &&
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
415
pfc->delay < MLX5E_MAX_CABLE_LENGTH &&
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
416
pfc->delay != priv->dcbx.cable_len) {
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
417
priv->dcbx.cable_len = pfc->delay;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
422
pfc_new.pfc_en = (changed & MLX5E_PORT_BUFFER_PFC) ? pfc->pfc_en : curr_pfc_en;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
442
__func__, pfc->pfc_en);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
672
struct ieee_pfc pfc;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
680
memset(&pfc, 0, sizeof(pfc));
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
706
pfc.pfc_cap = mlx5_max_tc(mdev) + 1;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
708
pfc.pfc_en = 0;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
711
pfc.pfc_en |= cee_cfg->pfc_setting[i] << i;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
713
err = mlx5e_dcbnl_ieee_setpfc(netdev, &pfc);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
841
struct ieee_pfc pfc;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
844
err = mlx5e_dcbnl_ieee_getpfc(netdev, &pfc);
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
849
*setting = (pfc.pfc_en >> priority) & 0x01;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
932
struct ieee_pfc pfc;
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
934
if (mlx5e_dcbnl_ieee_getpfc(netdev, &pfc))
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c
937
return pfc.pfc_en ? MLX5E_CEE_STATE_UP : MLX5E_CEE_STATE_DOWN;
drivers/net/ethernet/mellanox/mlxsw/spectrum.h
333
struct ieee_pfc *pfc;
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
481
struct ieee_pfc *my_pfc = mlxsw_sp_port->dcb.pfc;
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
498
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
512
memcpy(pfc, mlxsw_sp_port->dcb.pfc, sizeof(*pfc));
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
518
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
525
mlxsw_reg_pfcc_prio_pack(pfcc_pl, pfc->pfc_en);
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
532
struct ieee_pfc *pfc)
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
541
if (pause_en && pfc->pfc_en) {
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
549
if (pfc->pfc_en)
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
550
hdroom.delay_bytes = DIV_ROUND_UP(pfc->delay, BITS_PER_BYTE);
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
555
hdroom.prios.prio[prio].lossy = !(pfc->pfc_en & BIT(prio));
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
566
err = mlxsw_sp_port_pfc_set(mlxsw_sp_port, pfc);
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
572
memcpy(mlxsw_sp_port->dcb.pfc, pfc, sizeof(*pfc));
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
573
mlxsw_sp_port->dcb.pfc->pfc_cap = IEEE_8021QAZ_MAX_TCS;
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
692
mlxsw_sp_port->dcb.pfc = kzalloc_obj(*mlxsw_sp_port->dcb.pfc);
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
693
if (!mlxsw_sp_port->dcb.pfc)
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
696
mlxsw_sp_port->dcb.pfc->pfc_cap = IEEE_8021QAZ_MAX_TCS;
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c
703
kfree(mlxsw_sp_port->dcb.pfc);
drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c
218
if (mlxsw_sp_port->dcb.pfc && mlxsw_sp_port->dcb.pfc->pfc_en) {
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1020
u32 *pfc, struct qed_dcbx_params *p_params)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1025
*pfc &= ~DCBX_PFC_ERROR_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1027
if (p_params->pfc.willing)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1028
*pfc |= DCBX_PFC_WILLING_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1030
*pfc &= ~DCBX_PFC_WILLING_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1032
if (p_params->pfc.enabled)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1033
*pfc |= DCBX_PFC_ENABLED_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1035
*pfc &= ~DCBX_PFC_ENABLED_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1037
*pfc &= ~DCBX_PFC_CAPS_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1038
*pfc |= (u32)p_params->pfc.max_tc << DCBX_PFC_CAPS_SHIFT;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1041
if (p_params->pfc.prio[i])
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1044
*pfc &= ~DCBX_PFC_PRI_EN_BITMAP_MASK;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1045
*pfc |= (pfc_map << DCBX_PFC_PRI_EN_BITMAP_SHIFT);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1047
DP_VERBOSE(p_hwfn, QED_MSG_DCB, "pfc = 0x%x\n", *pfc);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1189
qed_dcbx_set_pfc_data(p_hwfn, &local_admin->features.pfc,
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1421
*setting = dcbx_info->operational.params.pfc.prio[priority];
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1446
dcbx_set.config.params.pfc.prio[priority] = !!setting;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1510
*num = dcbx_info->operational.params.pfc.max_tc;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1532
enabled = dcbx_info->operational.params.pfc.enabled;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1681
dcbx_set.config.params.pfc.max_tc = num;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1714
dcbx_set.config.params.pfc.enabled = !!state;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1872
if (dcbx_info->operational.params.pfc.enabled)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1920
dcbx_set.config.params.pfc.enabled = enabled;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1921
dcbx_set.config.params.pfc.willing = willing;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1988
static int qed_dcbnl_cee_peer_getpfc(struct qed_dev *cdev, struct cee_pfc *pfc)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
1999
if (dcbx_info->remote.params.pfc.prio[i])
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2000
pfc->pfc_en |= BIT(i);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2002
pfc->tcs_supported = dcbx_info->remote.params.pfc.max_tc;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2004
pfc->pfc_en, pfc->tcs_supported);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2033
struct ieee_pfc *pfc, bool remote)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2064
pfc->pfc_cap = params->pfc.max_tc;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2065
pfc->pfc_en = 0;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2067
if (params->pfc.prio[i])
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2068
pfc->pfc_en |= BIT(i);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2075
static int qed_dcbnl_ieee_getpfc(struct qed_dev *cdev, struct ieee_pfc *pfc)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2077
return qed_dcbnl_get_ieee_pfc(cdev, pfc, false);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2080
static int qed_dcbnl_ieee_setpfc(struct qed_dev *cdev, struct ieee_pfc *pfc)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2107
dcbx_set.config.params.pfc.prio[i] = !!(pfc->pfc_en & BIT(i));
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2109
dcbx_set.config.params.pfc.max_tc = pfc->pfc_cap;
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2224
qed_dcbnl_ieee_peer_getpfc(struct qed_dev *cdev, struct ieee_pfc *pfc)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
2226
return qed_dcbnl_get_ieee_pfc(cdev, pfc, true);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
522
u32 pfc, struct qed_dcbx_params *p_params)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
526
p_params->pfc.willing = QED_MFW_GET_FIELD(pfc, DCBX_PFC_WILLING);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
527
p_params->pfc.max_tc = QED_MFW_GET_FIELD(pfc, DCBX_PFC_CAPS);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
528
p_params->pfc.enabled = QED_MFW_GET_FIELD(pfc, DCBX_PFC_ENABLED);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
529
pfc_map = QED_MFW_GET_FIELD(pfc, DCBX_PFC_PRI_EN_BITMAP);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
530
p_params->pfc.prio[0] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_0);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
531
p_params->pfc.prio[1] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_1);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
532
p_params->pfc.prio[2] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_2);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
533
p_params->pfc.prio[3] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_3);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
534
p_params->pfc.prio[4] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_4);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
535
p_params->pfc.prio[5] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_5);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
536
p_params->pfc.prio[6] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_6);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
537
p_params->pfc.prio[7] = !!(pfc_map & DCBX_PFC_PRI_EN_BITMAP_PRI_7);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
541
p_params->pfc.willing, pfc_map, p_params->pfc.max_tc,
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
542
p_params->pfc.enabled);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
597
u32 pfc, struct qed_dcbx_params *p_params, bool ieee)
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
601
qed_dcbx_get_pfc_data(p_hwfn, pfc, p_params);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
612
p_feat->pfc, ¶ms->local.params, false);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
624
p_feat->pfc, ¶ms->remote.params, false);
drivers/net/ethernet/qlogic/qed/qed_dcbx.c
675
p_feat->pfc, ¶ms->operational.params,
drivers/net/ethernet/qlogic/qed/qed_mfw_hsi.h
399
u32 pfc;
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
223
struct cee_pfc *pfc)
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
227
return edev->ops->dcb->cee_peer_getpfc(edev->cdev, pfc);
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
239
struct ieee_pfc *pfc)
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
243
return edev->ops->dcb->ieee_getpfc(edev->cdev, pfc);
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
247
struct ieee_pfc *pfc)
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
251
return edev->ops->dcb->ieee_setpfc(edev->cdev, pfc);
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
292
struct ieee_pfc *pfc)
drivers/net/ethernet/qlogic/qede/qede_dcbnl.c
296
return edev->ops->dcb->ieee_peer_getpfc(edev->cdev, pfc);
drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.c
1096
struct cee_pfc *pfc)
drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.c
1104
pfc->pfc_en = 0;
drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.c
1118
pfc->pfc_en |= QLC_DCB_GET_MAP(i);
drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.c
1121
pfc->tcs_supported = cfg->capability.max_pfc_tc;
drivers/pinctrl/renesas/core.c
110
int sh_pfc_get_pin_index(struct sh_pfc *pfc, unsigned int pin)
drivers/pinctrl/renesas/core.c
115
for (i = 0, offset = 0; i < pfc->nr_ranges; ++i) {
drivers/pinctrl/renesas/core.c
116
const struct sh_pfc_pin_range *range = &pfc->ranges[i];
drivers/pinctrl/renesas/core.c
1310
struct sh_pfc *pfc;
drivers/pinctrl/renesas/core.c
1318
pfc = devm_kzalloc(&pdev->dev, sizeof(*pfc), GFP_KERNEL);
drivers/pinctrl/renesas/core.c
1319
if (pfc == NULL)
drivers/pinctrl/renesas/core.c
1322
pfc->info = info;
drivers/pinctrl/renesas/core.c
1323
pfc->dev = &pdev->dev;
drivers/pinctrl/renesas/core.c
1325
ret = sh_pfc_map_resources(pfc, pdev);
drivers/pinctrl/renesas/core.c
1329
spin_lock_init(&pfc->lock);
drivers/pinctrl/renesas/core.c
1332
ret = info->ops->init(pfc);
drivers/pinctrl/renesas/core.c
1337
info = pfc->info;
drivers/pinctrl/renesas/core.c
1340
ret = sh_pfc_suspend_init(pfc);
drivers/pinctrl/renesas/core.c
1348
ret = sh_pfc_init_ranges(pfc);
drivers/pinctrl/renesas/core.c
1355
ret = sh_pfc_register_pinctrl(pfc);
drivers/pinctrl/renesas/core.c
1363
ret = sh_pfc_register_gpiochip(pfc);
drivers/pinctrl/renesas/core.c
1370
dev_notice(pfc->dev, "failed to init GPIO chip, ignoring...\n");
drivers/pinctrl/renesas/core.c
1374
platform_set_drvdata(pdev, pfc);
drivers/pinctrl/renesas/core.c
1376
dev_info(pfc->dev, "%s support registered\n", info->name);
drivers/pinctrl/renesas/core.c
172
u32 sh_pfc_read(struct sh_pfc *pfc, u32 reg)
drivers/pinctrl/renesas/core.c
174
return sh_pfc_read_raw_reg(sh_pfc_phys_to_virt(pfc, reg), 32);
drivers/pinctrl/renesas/core.c
177
static void sh_pfc_unlock_reg(struct sh_pfc *pfc, u32 reg, u32 data)
drivers/pinctrl/renesas/core.c
181
if (!pfc->info->unlock_reg)
drivers/pinctrl/renesas/core.c
184
if (pfc->info->unlock_reg >= 0x80000000UL)
drivers/pinctrl/renesas/core.c
185
unlock = pfc->info->unlock_reg;
drivers/pinctrl/renesas/core.c
188
unlock = reg & ~pfc->info->unlock_reg;
drivers/pinctrl/renesas/core.c
190
sh_pfc_write_raw_reg(sh_pfc_phys_to_virt(pfc, unlock), 32, ~data);
drivers/pinctrl/renesas/core.c
193
void sh_pfc_write(struct sh_pfc *pfc, u32 reg, u32 data)
drivers/pinctrl/renesas/core.c
195
sh_pfc_unlock_reg(pfc, reg, data);
drivers/pinctrl/renesas/core.c
196
sh_pfc_write_raw_reg(sh_pfc_phys_to_virt(pfc, reg), 32, data);
drivers/pinctrl/renesas/core.c
199
static void sh_pfc_config_reg_helper(struct sh_pfc *pfc,
drivers/pinctrl/renesas/core.c
207
*mapped_regp = sh_pfc_phys_to_virt(pfc, crp->reg);
drivers/pinctrl/renesas/core.c
220
static void sh_pfc_write_config_reg(struct sh_pfc *pfc,
drivers/pinctrl/renesas/core.c
228
sh_pfc_config_reg_helper(pfc, crp, field, &mapped_reg, &mask, &pos);
drivers/pinctrl/renesas/core.c
230
dev_dbg(pfc->dev, "write_reg addr = %x, value = 0x%x, field = %u, "
drivers/pinctrl/renesas/core.c
241
sh_pfc_unlock_reg(pfc, crp->reg, data);
drivers/pinctrl/renesas/core.c
245
static int sh_pfc_get_config_reg(struct sh_pfc *pfc, u16 enum_id,
drivers/pinctrl/renesas/core.c
253
pfc->info->cfg_regs + k;
drivers/pinctrl/renesas/core.c
293
static int sh_pfc_mark_to_enum(struct sh_pfc *pfc, u16 mark, int pos,
drivers/pinctrl/renesas/core.c
296
const u16 *data = pfc->info->pinmux_data;
drivers/pinctrl/renesas/core.c
30
static int sh_pfc_map_resources(struct sh_pfc *pfc,
drivers/pinctrl/renesas/core.c
304
for (k = 0; k < pfc->info->pinmux_data_size; k++) {
drivers/pinctrl/renesas/core.c
311
dev_err(pfc->dev, "cannot locate data/mark enum_id for mark %d\n",
drivers/pinctrl/renesas/core.c
316
int sh_pfc_config_mux(struct sh_pfc *pfc, unsigned mark, int pinmux_type)
drivers/pinctrl/renesas/core.c
329
range = &pfc->info->output;
drivers/pinctrl/renesas/core.c
333
range = &pfc->info->input;
drivers/pinctrl/renesas/core.c
350
pos = sh_pfc_mark_to_enum(pfc, mark, pos, &enum_id);
drivers/pinctrl/renesas/core.c
361
in_range = sh_pfc_enum_in_range(enum_id, &pfc->info->function);
drivers/pinctrl/renesas/core.c
388
ret = sh_pfc_get_config_reg(pfc, enum_id, &cr, &field, &value);
drivers/pinctrl/renesas/core.c
392
sh_pfc_write_config_reg(pfc, cr, field, value);
drivers/pinctrl/renesas/core.c
398
static int sh_pfc_init_ranges(struct sh_pfc *pfc)
drivers/pinctrl/renesas/core.c
404
if (pfc->info->pins[0].pin == (u16)-1) {
drivers/pinctrl/renesas/core.c
409
pfc->nr_ranges = 1;
drivers/pinctrl/renesas/core.c
410
pfc->ranges = devm_kzalloc(pfc->dev, sizeof(*pfc->ranges),
drivers/pinctrl/renesas/core.c
412
if (pfc->ranges == NULL)
drivers/pinctrl/renesas/core.c
415
pfc->ranges->start = 0;
drivers/pinctrl/renesas/core.c
416
pfc->ranges->end = pfc->info->nr_pins - 1;
drivers/pinctrl/renesas/core.c
417
pfc->nr_gpio_pins = pfc->info->nr_pins;
drivers/pinctrl/renesas/core.c
426
for (i = 1, nr_ranges = 1; i < pfc->info->nr_pins; ++i) {
drivers/pinctrl/renesas/core.c
427
if (pfc->info->pins[i-1].pin != pfc->info->pins[i].pin - 1)
drivers/pinctrl/renesas/core.c
431
pfc->nr_ranges = nr_ranges;
drivers/pinctrl/renesas/core.c
432
pfc->ranges = devm_kcalloc(pfc->dev, nr_ranges, sizeof(*pfc->ranges),
drivers/pinctrl/renesas/core.c
434
if (pfc->ranges == NULL)
drivers/pinctrl/renesas/core.c
437
range = pfc->ranges;
drivers/pinctrl/renesas/core.c
438
range->start = pfc->info->pins[0].pin;
drivers/pinctrl/renesas/core.c
440
for (i = 1; i < pfc->info->nr_pins; ++i) {
drivers/pinctrl/renesas/core.c
441
if (pfc->info->pins[i-1].pin == pfc->info->pins[i].pin - 1)
drivers/pinctrl/renesas/core.c
444
range->end = pfc->info->pins[i-1].pin;
drivers/pinctrl/renesas/core.c
445
if (!(pfc->info->pins[i-1].configs & SH_PFC_PIN_CFG_NO_GPIO))
drivers/pinctrl/renesas/core.c
446
pfc->nr_gpio_pins = range->end + 1;
drivers/pinctrl/renesas/core.c
449
range->start = pfc->info->pins[i].pin;
drivers/pinctrl/renesas/core.c
452
range->end = pfc->info->pins[i-1].pin;
drivers/pinctrl/renesas/core.c
453
if (!(pfc->info->pins[i-1].configs & SH_PFC_PIN_CFG_NO_GPIO))
drivers/pinctrl/renesas/core.c
454
pfc->nr_gpio_pins = range->end + 1;
drivers/pinctrl/renesas/core.c
54
windows = devm_kcalloc(pfc->dev, num_windows, sizeof(*windows),
drivers/pinctrl/renesas/core.c
59
pfc->num_windows = num_windows;
drivers/pinctrl/renesas/core.c
60
pfc->windows = windows;
drivers/pinctrl/renesas/core.c
63
irqs = devm_kcalloc(pfc->dev, num_irqs, sizeof(*irqs),
drivers/pinctrl/renesas/core.c
658
static void sh_pfc_nop_reg(struct sh_pfc *pfc, u32 reg, unsigned int idx)
drivers/pinctrl/renesas/core.c
662
static void sh_pfc_save_reg(struct sh_pfc *pfc, u32 reg, unsigned int idx)
drivers/pinctrl/renesas/core.c
664
pfc->saved_regs[idx] = sh_pfc_read(pfc, reg);
drivers/pinctrl/renesas/core.c
667
static void sh_pfc_restore_reg(struct sh_pfc *pfc, u32 reg, unsigned int idx)
drivers/pinctrl/renesas/core.c
669
sh_pfc_write(pfc, reg, pfc->saved_regs[idx]);
drivers/pinctrl/renesas/core.c
672
static unsigned int sh_pfc_walk_regs(struct sh_pfc *pfc,
drivers/pinctrl/renesas/core.c
673
void (*do_reg)(struct sh_pfc *pfc, u32 reg, unsigned int idx))
drivers/pinctrl/renesas/core.c
677
if (pfc->info->cfg_regs)
drivers/pinctrl/renesas/core.c
678
for (i = 0; pfc->info->cfg_regs[i].reg; i++)
drivers/pinctrl/renesas/core.c
679
do_reg(pfc, pfc->info->cfg_regs[i].reg, n++);
drivers/pinctrl/renesas/core.c
68
pfc->num_irqs = num_irqs;
drivers/pinctrl/renesas/core.c
681
if (pfc->info->drive_regs)
drivers/pinctrl/renesas/core.c
682
for (i = 0; pfc->info->drive_regs[i].reg; i++)
drivers/pinctrl/renesas/core.c
683
do_reg(pfc, pfc->info->drive_regs[i].reg, n++);
drivers/pinctrl/renesas/core.c
685
if (pfc->info->bias_regs)
drivers/pinctrl/renesas/core.c
686
for (i = 0; pfc->info->bias_regs[i].puen ||
drivers/pinctrl/renesas/core.c
687
pfc->info->bias_regs[i].pud; i++) {
drivers/pinctrl/renesas/core.c
688
if (pfc->info->bias_regs[i].puen)
drivers/pinctrl/renesas/core.c
689
do_reg(pfc, pfc->info->bias_regs[i].puen, n++);
drivers/pinctrl/renesas/core.c
69
pfc->irqs = irqs;
drivers/pinctrl/renesas/core.c
690
if (pfc->info->bias_regs[i].pud)
drivers/pinctrl/renesas/core.c
691
do_reg(pfc, pfc->info->bias_regs[i].pud, n++);
drivers/pinctrl/renesas/core.c
694
if (pfc->info->ioctrl_regs)
drivers/pinctrl/renesas/core.c
695
for (i = 0; pfc->info->ioctrl_regs[i].reg; i++)
drivers/pinctrl/renesas/core.c
696
do_reg(pfc, pfc->info->ioctrl_regs[i].reg, n++);
drivers/pinctrl/renesas/core.c
701
static int sh_pfc_suspend_init(struct sh_pfc *pfc)
drivers/pinctrl/renesas/core.c
709
n = sh_pfc_walk_regs(pfc, sh_pfc_nop_reg);
drivers/pinctrl/renesas/core.c
713
pfc->saved_regs = devm_kmalloc_array(pfc->dev, n,
drivers/pinctrl/renesas/core.c
714
sizeof(*pfc->saved_regs),
drivers/pinctrl/renesas/core.c
716
if (!pfc->saved_regs)
drivers/pinctrl/renesas/core.c
719
dev_dbg(pfc->dev, "Allocated space to save %u regs\n", n);
drivers/pinctrl/renesas/core.c
725
struct sh_pfc *pfc = dev_get_drvdata(dev);
drivers/pinctrl/renesas/core.c
727
if (pfc->saved_regs)
drivers/pinctrl/renesas/core.c
728
sh_pfc_walk_regs(pfc, sh_pfc_save_reg);
drivers/pinctrl/renesas/core.c
734
struct sh_pfc *pfc = dev_get_drvdata(dev);
drivers/pinctrl/renesas/core.c
736
if (pfc->saved_regs)
drivers/pinctrl/renesas/core.c
737
sh_pfc_walk_regs(pfc, sh_pfc_restore_reg);
drivers/pinctrl/renesas/core.c
742
static int sh_pfc_suspend_init(struct sh_pfc *pfc) { return 0; }
drivers/pinctrl/renesas/core.c
87
static void __iomem *sh_pfc_phys_to_virt(struct sh_pfc *pfc, u32 reg)
drivers/pinctrl/renesas/core.c
94
for (i = 0; i < pfc->num_windows; i++) {
drivers/pinctrl/renesas/core.c
95
window = pfc->windows + i;
drivers/pinctrl/renesas/core.h
19
int sh_pfc_register_gpiochip(struct sh_pfc *pfc);
drivers/pinctrl/renesas/core.h
21
int sh_pfc_register_pinctrl(struct sh_pfc *pfc);
drivers/pinctrl/renesas/core.h
26
u32 sh_pfc_read(struct sh_pfc *pfc, u32 reg);
drivers/pinctrl/renesas/core.h
27
void sh_pfc_write(struct sh_pfc *pfc, u32 reg, u32 data);
drivers/pinctrl/renesas/core.h
29
int sh_pfc_get_pin_index(struct sh_pfc *pfc, unsigned int pin);
drivers/pinctrl/renesas/core.h
30
int sh_pfc_config_mux(struct sh_pfc *pfc, unsigned mark, int pinmux_type);
drivers/pinctrl/renesas/gpio.c
103
for (i = 0; pfc->info->data_regs[i].reg_width; ++i)
drivers/pinctrl/renesas/gpio.c
106
chip->regs = devm_kcalloc(pfc->dev, i, sizeof(*chip->regs),
drivers/pinctrl/renesas/gpio.c
111
for (i = 0, dreg = pfc->info->data_regs; dreg->reg_width; ++i, ++dreg) {
drivers/pinctrl/renesas/gpio.c
116
for (i = 0; i < pfc->info->nr_pins; i++) {
drivers/pinctrl/renesas/gpio.c
117
if (pfc->info->pins[i].enum_id == 0)
drivers/pinctrl/renesas/gpio.c
132
struct sh_pfc *pfc = gpio_to_pfc(gc);
drivers/pinctrl/renesas/gpio.c
133
int idx = sh_pfc_get_pin_index(pfc, offset);
drivers/pinctrl/renesas/gpio.c
135
if (idx < 0 || pfc->info->pins[idx].enum_id == 0)
drivers/pinctrl/renesas/gpio.c
201
struct sh_pfc *pfc = gpio_to_pfc(gc);
drivers/pinctrl/renesas/gpio.c
204
for (i = 0; i < pfc->info->gpio_irq_size; i++) {
drivers/pinctrl/renesas/gpio.c
205
const short *gpios = pfc->info->gpio_irq[i].gpios;
drivers/pinctrl/renesas/gpio.c
209
return pfc->irqs[i];
drivers/pinctrl/renesas/gpio.c
218
struct sh_pfc *pfc = chip->pfc;
drivers/pinctrl/renesas/gpio.c
222
chip->pins = devm_kcalloc(pfc->dev,
drivers/pinctrl/renesas/gpio.c
223
pfc->info->nr_pins, sizeof(*chip->pins),
drivers/pinctrl/renesas/gpio.c
240
gc->label = pfc->info->name;
drivers/pinctrl/renesas/gpio.c
241
gc->parent = pfc->dev;
drivers/pinctrl/renesas/gpio.c
244
gc->ngpio = pfc->nr_gpio_pins;
drivers/pinctrl/renesas/gpio.c
256
struct sh_pfc *pfc = gpio_to_pfc(gc);
drivers/pinctrl/renesas/gpio.c
257
unsigned int mark = pfc->info->func_gpios[offset].enum_id;
drivers/pinctrl/renesas/gpio.c
261
dev_notice_once(pfc->dev,
drivers/pinctrl/renesas/gpio.c
267
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/gpio.c
268
ret = sh_pfc_config_mux(pfc, mark, PINMUX_TYPE_FUNCTION);
drivers/pinctrl/renesas/gpio.c
269
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/gpio.c
276
struct sh_pfc *pfc = chip->pfc;
drivers/pinctrl/renesas/gpio.c
281
gc->label = pfc->info->name;
drivers/pinctrl/renesas/gpio.c
283
gc->base = pfc->nr_gpio_pins;
drivers/pinctrl/renesas/gpio.c
284
gc->ngpio = pfc->info->nr_func_gpios;
drivers/pinctrl/renesas/gpio.c
29
struct sh_pfc *pfc;
drivers/pinctrl/renesas/gpio.c
295
sh_pfc_add_gpiochip(struct sh_pfc *pfc, int(*setup)(struct sh_pfc_chip *),
drivers/pinctrl/renesas/gpio.c
301
chip = devm_kzalloc(pfc->dev, sizeof(*chip), GFP_KERNEL);
drivers/pinctrl/renesas/gpio.c
306
chip->pfc = pfc;
drivers/pinctrl/renesas/gpio.c
312
ret = devm_gpiochip_add_data(pfc->dev, &chip->gpio_chip, chip);
drivers/pinctrl/renesas/gpio.c
316
dev_info(pfc->dev, "%s handling gpio %u -> %u\n",
drivers/pinctrl/renesas/gpio.c
323
int sh_pfc_register_gpiochip(struct sh_pfc *pfc)
drivers/pinctrl/renesas/gpio.c
329
if (pfc->info->data_regs == NULL)
drivers/pinctrl/renesas/gpio.c
337
address = pfc->info->data_regs[0].reg;
drivers/pinctrl/renesas/gpio.c
338
for (i = 0; i < pfc->num_windows; ++i) {
drivers/pinctrl/renesas/gpio.c
339
struct sh_pfc_window *window = &pfc->windows[i];
drivers/pinctrl/renesas/gpio.c
346
if (i == pfc->num_windows)
drivers/pinctrl/renesas/gpio.c
350
if (pfc->num_irqs != pfc->info->gpio_irq_size) {
drivers/pinctrl/renesas/gpio.c
351
dev_err(pfc->dev, "invalid number of IRQ resources\n");
drivers/pinctrl/renesas/gpio.c
356
chip = sh_pfc_add_gpiochip(pfc, gpio_pin_setup, &pfc->windows[i]);
drivers/pinctrl/renesas/gpio.c
360
pfc->gpio = chip;
drivers/pinctrl/renesas/gpio.c
362
if (IS_ENABLED(CONFIG_OF) && pfc->dev->of_node)
drivers/pinctrl/renesas/gpio.c
372
for (i = 0; i < pfc->nr_ranges; ++i) {
drivers/pinctrl/renesas/gpio.c
373
const struct sh_pfc_pin_range *range = &pfc->ranges[i];
drivers/pinctrl/renesas/gpio.c
376
if (range->start >= pfc->nr_gpio_pins)
drivers/pinctrl/renesas/gpio.c
380
dev_name(pfc->dev), range->start, range->start,
drivers/pinctrl/renesas/gpio.c
387
if (pfc->info->nr_func_gpios) {
drivers/pinctrl/renesas/gpio.c
388
chip = sh_pfc_add_gpiochip(pfc, gpio_function_setup, NULL);
drivers/pinctrl/renesas/gpio.c
40
return chip->pfc;
drivers/pinctrl/renesas/gpio.c
47
int idx = sh_pfc_get_pin_index(chip->pfc, offset);
drivers/pinctrl/renesas/gpio.c
74
struct sh_pfc *pfc = chip->pfc;
drivers/pinctrl/renesas/gpio.c
76
const struct sh_pfc_pin *pin = &pfc->info->pins[idx];
drivers/pinctrl/renesas/gpio.c
81
for (i = 0, dreg = pfc->info->data_regs; dreg->reg_width; ++i, ++dreg) {
drivers/pinctrl/renesas/gpio.c
96
struct sh_pfc *pfc = chip->pfc;
drivers/pinctrl/renesas/pfc-r8a7790.c
6123
static int r8a7790_pinmux_soc_init(struct sh_pfc *pfc)
drivers/pinctrl/renesas/pfc-r8a7790.c
6127
sh_pfc_write(pfc, 0xe6060088, 0x00155554);
drivers/pinctrl/renesas/pfc-r8a7794.c
5823
static int r8a7794_pinmux_soc_init(struct sh_pfc *pfc)
drivers/pinctrl/renesas/pfc-r8a7794.c
5827
sh_pfc_write(pfc, 0xe6060068, 0x55555500);
drivers/pinctrl/renesas/pfc-r8a77995.c
3096
r8a77995_pin_to_bias_reg(const struct sh_pfc *pfc, unsigned int pin,
drivers/pinctrl/renesas/pfc-r8a77995.c
3102
reg = rcar_pin_to_bias_reg(pfc->info, pin, &bit);
drivers/pinctrl/renesas/pfc-r8a77995.c
3126
static unsigned int r8a77995_pinmux_get_bias(struct sh_pfc *pfc,
drivers/pinctrl/renesas/pfc-r8a77995.c
3132
reg = r8a77995_pin_to_bias_reg(pfc, pin, &puen_bit, &pud_bit);
drivers/pinctrl/renesas/pfc-r8a77995.c
3136
if (!(sh_pfc_read(pfc, reg->puen) & BIT(puen_bit)))
drivers/pinctrl/renesas/pfc-r8a77995.c
3138
else if (sh_pfc_read(pfc, reg->pud) & BIT(pud_bit))
drivers/pinctrl/renesas/pfc-r8a77995.c
3144
static void r8a77995_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
drivers/pinctrl/renesas/pfc-r8a77995.c
3151
reg = r8a77995_pin_to_bias_reg(pfc, pin, &puen_bit, &pud_bit);
drivers/pinctrl/renesas/pfc-r8a77995.c
3155
enable = sh_pfc_read(pfc, reg->puen) & ~BIT(puen_bit);
drivers/pinctrl/renesas/pfc-r8a77995.c
3159
updown = sh_pfc_read(pfc, reg->pud) & ~BIT(pud_bit);
drivers/pinctrl/renesas/pfc-r8a77995.c
3163
sh_pfc_write(pfc, reg->pud, updown);
drivers/pinctrl/renesas/pfc-r8a77995.c
3165
sh_pfc_write(pfc, reg->puen, enable);
drivers/pinctrl/renesas/pfc-sh73a0.c
4027
struct sh_pfc *pfc = rdev_get_drvdata(reg);
drivers/pinctrl/renesas/pfc-sh73a0.c
4028
void __iomem *addr = pfc->windows[1].virt + 4;
drivers/pinctrl/renesas/pfc-sh73a0.c
4032
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pfc-sh73a0.c
4043
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pfc-sh73a0.c
4060
struct sh_pfc *pfc = rdev_get_drvdata(reg);
drivers/pinctrl/renesas/pfc-sh73a0.c
4061
void __iomem *addr = pfc->windows[1].virt + 4;
drivers/pinctrl/renesas/pfc-sh73a0.c
4065
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pfc-sh73a0.c
4067
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pfc-sh73a0.c
4122
static int sh73a0_pinmux_soc_init(struct sh_pfc *pfc)
drivers/pinctrl/renesas/pfc-sh73a0.c
4128
cfg.dev = pfc->dev;
drivers/pinctrl/renesas/pfc-sh73a0.c
4130
cfg.driver_data = pfc;
drivers/pinctrl/renesas/pfc-sh73a0.c
4132
vccq = devm_regulator_register(pfc->dev, &sh73a0_vccq_mc0_desc, &cfg);
drivers/pinctrl/renesas/pfc-sh73a0.c
4135
dev_err(pfc->dev, "Failed to register VCCQ MC0 regulator: %d\n",
drivers/pinctrl/renesas/pinctrl-rzg2l.c
162
#define RZG3L_CLONE_CHANNEL_DATA(port, pins, bit, val, pfc) \
drivers/pinctrl/renesas/pinctrl-rzg2l.c
167
FIELD_PREP_CONST(RZG3L_CLONE_CHANNEL_PFC_MASK, (pfc)))
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3101
cache->pfc = devm_kcalloc(pctrl->dev, nports, sizeof(*cache->pfc), GFP_KERNEL);
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3102
if (!cache->pfc)
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3438
RZG2L_PCTRL_REG_ACCESS32(suspend, pctrl->base + PFC(off), cache->pfc[port]);
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3610
u32 off, pfc = 0;
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3632
if ((cache->pfc[port] & pfc_mask) == (pfc_val & pfc_mask))
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3644
pfc &= ~pfc_mask;
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3645
pfc |= (cache->pfc[port] & pfc_mask);
drivers/pinctrl/renesas/pinctrl-rzg2l.c
3646
writel(pfc, pctrl->base + PFC(off));
drivers/pinctrl/renesas/pinctrl-rzg2l.c
380
u32 *pfc;
drivers/pinctrl/renesas/pinctrl-rzg2l.c
690
u32 reg, pfc;
drivers/pinctrl/renesas/pinctrl-rzg2l.c
695
pfc = readl(pctrl->base + PFC(off));
drivers/pinctrl/renesas/pinctrl-rzg2l.c
696
if ((reg & BIT(pin)) && (((pfc >> (pin * 4)) & PFC_MASK) == func)) {
drivers/pinctrl/renesas/pinctrl-rzg2l.c
713
pfc &= ~(PFC_MASK << (pin * 4));
drivers/pinctrl/renesas/pinctrl-rzg2l.c
714
writel(pfc | (func << (pin * 4)), pctrl->base + PFC(off));
drivers/pinctrl/renesas/pinctrl.c
104
struct device *dev = pmx->pfc->dev;
drivers/pinctrl/renesas/pinctrl.c
242
struct device *dev = pmx->pfc->dev;
drivers/pinctrl/renesas/pinctrl.c
294
return pmx->pfc->info->nr_functions;
drivers/pinctrl/renesas/pinctrl.c
302
return pmx->pfc->info->functions[selector].name;
drivers/pinctrl/renesas/pinctrl.c
312
*groups = pmx->pfc->info->functions[selector].groups;
drivers/pinctrl/renesas/pinctrl.c
313
*num_groups = pmx->pfc->info->functions[selector].nr_groups;
drivers/pinctrl/renesas/pinctrl.c
322
struct sh_pfc *pfc = pmx->pfc;
drivers/pinctrl/renesas/pinctrl.c
323
const struct sh_pfc_pin_group *grp = &pfc->info->groups[group];
drivers/pinctrl/renesas/pinctrl.c
330
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
333
int idx = sh_pfc_get_pin_index(pfc, grp->pins[i]);
drivers/pinctrl/renesas/pinctrl.c
345
ret = sh_pfc_config_mux(pfc, grp->mux[i], PINMUX_TYPE_FUNCTION);
drivers/pinctrl/renesas/pinctrl.c
352
int idx = sh_pfc_get_pin_index(pfc, grp->pins[i]);
drivers/pinctrl/renesas/pinctrl.c
359
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
368
struct sh_pfc *pfc = pmx->pfc;
drivers/pinctrl/renesas/pinctrl.c
369
int idx = sh_pfc_get_pin_index(pfc, offset);
drivers/pinctrl/renesas/pinctrl.c
374
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
376
if (!pfc->gpio && !cfg->mux_mark) {
drivers/pinctrl/renesas/pinctrl.c
380
const struct sh_pfc_pin *pin = &pfc->info->pins[idx];
drivers/pinctrl/renesas/pinctrl.c
382
ret = sh_pfc_config_mux(pfc, pin->enum_id, PINMUX_TYPE_GPIO);
drivers/pinctrl/renesas/pinctrl.c
39
struct sh_pfc *pfc;
drivers/pinctrl/renesas/pinctrl.c
392
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
402
struct sh_pfc *pfc = pmx->pfc;
drivers/pinctrl/renesas/pinctrl.c
403
int idx = sh_pfc_get_pin_index(pfc, offset);
drivers/pinctrl/renesas/pinctrl.c
407
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
411
sh_pfc_config_mux(pfc, cfg->mux_mark, PINMUX_TYPE_FUNCTION);
drivers/pinctrl/renesas/pinctrl.c
412
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
421
struct sh_pfc *pfc = pmx->pfc;
drivers/pinctrl/renesas/pinctrl.c
423
int idx = sh_pfc_get_pin_index(pfc, offset);
drivers/pinctrl/renesas/pinctrl.c
424
const struct sh_pfc_pin *pin = &pfc->info->pins[idx];
drivers/pinctrl/renesas/pinctrl.c
438
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
439
ret = sh_pfc_config_mux(pfc, pin->enum_id, new_type);
drivers/pinctrl/renesas/pinctrl.c
440
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
457
static u32 sh_pfc_pinconf_find_drive_strength_reg(struct sh_pfc *pfc,
drivers/pinctrl/renesas/pinctrl.c
464
for (reg = pfc->info->drive_regs; reg->reg; ++reg) {
drivers/pinctrl/renesas/pinctrl.c
480
static int sh_pfc_pinconf_get_drive_strength(struct sh_pfc *pfc,
drivers/pinctrl/renesas/pinctrl.c
488
reg = sh_pfc_pinconf_find_drive_strength_reg(pfc, pin, &offset, &size);
drivers/pinctrl/renesas/pinctrl.c
49
return pmx->pfc->info->nr_groups;
drivers/pinctrl/renesas/pinctrl.c
492
val = (sh_pfc_read(pfc, reg) >> offset) & GENMASK(size - 1, 0);
drivers/pinctrl/renesas/pinctrl.c
500
static int sh_pfc_pinconf_set_drive_strength(struct sh_pfc *pfc,
drivers/pinctrl/renesas/pinctrl.c
510
reg = sh_pfc_pinconf_find_drive_strength_reg(pfc, pin, &offset, &size);
drivers/pinctrl/renesas/pinctrl.c
524
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
526
val = sh_pfc_read(pfc, reg);
drivers/pinctrl/renesas/pinctrl.c
530
sh_pfc_write(pfc, reg, val);
drivers/pinctrl/renesas/pinctrl.c
532
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
538
static bool sh_pfc_pinconf_validate(struct sh_pfc *pfc, unsigned int _pin,
drivers/pinctrl/renesas/pinctrl.c
541
int idx = sh_pfc_get_pin_index(pfc, _pin);
drivers/pinctrl/renesas/pinctrl.c
542
const struct sh_pfc_pin *pin = &pfc->info->pins[idx];
drivers/pinctrl/renesas/pinctrl.c
569
struct sh_pfc *pfc = pmx->pfc;
drivers/pinctrl/renesas/pinctrl.c
57
return pmx->pfc->info->groups[selector].name;
drivers/pinctrl/renesas/pinctrl.c
574
if (!sh_pfc_pinconf_validate(pfc, _pin, param))
drivers/pinctrl/renesas/pinctrl.c
583
if (!pfc->info->ops || !pfc->info->ops->get_bias)
drivers/pinctrl/renesas/pinctrl.c
586
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
587
bias = pfc->info->ops->get_bias(pfc, _pin);
drivers/pinctrl/renesas/pinctrl.c
588
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
600
ret = sh_pfc_pinconf_get_drive_strength(pfc, _pin);
drivers/pinctrl/renesas/pinctrl.c
609
int idx = sh_pfc_get_pin_index(pfc, _pin);
drivers/pinctrl/renesas/pinctrl.c
610
const struct sh_pfc_pin *pin = &pfc->info->pins[idx];
drivers/pinctrl/renesas/pinctrl.c
615
if (!pfc->info->ops || !pfc->info->ops->pin_to_pocctrl)
drivers/pinctrl/renesas/pinctrl.c
618
bit = pfc->info->ops->pin_to_pocctrl(_pin, &pocctrl);
drivers/pinctrl/renesas/pinctrl.c
622
val = sh_pfc_read(pfc, pocctrl);
drivers/pinctrl/renesas/pinctrl.c
644
struct sh_pfc *pfc = pmx->pfc;
drivers/pinctrl/renesas/pinctrl.c
65
*pins = pmx->pfc->info->groups[selector].pins;
drivers/pinctrl/renesas/pinctrl.c
652
if (!sh_pfc_pinconf_validate(pfc, _pin, param))
drivers/pinctrl/renesas/pinctrl.c
659
if (!pfc->info->ops || !pfc->info->ops->set_bias)
drivers/pinctrl/renesas/pinctrl.c
66
*num_pins = pmx->pfc->info->groups[selector].nr_pins;
drivers/pinctrl/renesas/pinctrl.c
662
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
663
pfc->info->ops->set_bias(pfc, _pin, param);
drivers/pinctrl/renesas/pinctrl.c
664
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
673
ret = sh_pfc_pinconf_set_drive_strength(pfc, _pin, arg);
drivers/pinctrl/renesas/pinctrl.c
682
int idx = sh_pfc_get_pin_index(pfc, _pin);
drivers/pinctrl/renesas/pinctrl.c
683
const struct sh_pfc_pin *pin = &pfc->info->pins[idx];
drivers/pinctrl/renesas/pinctrl.c
688
if (!pfc->info->ops || !pfc->info->ops->pin_to_pocctrl)
drivers/pinctrl/renesas/pinctrl.c
691
bit = pfc->info->ops->pin_to_pocctrl(_pin, &pocctrl);
drivers/pinctrl/renesas/pinctrl.c
702
spin_lock_irqsave(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
703
val = sh_pfc_read(pfc, pocctrl);
drivers/pinctrl/renesas/pinctrl.c
708
sh_pfc_write(pfc, pocctrl, val);
drivers/pinctrl/renesas/pinctrl.c
709
spin_unlock_irqrestore(&pfc->lock, flags);
drivers/pinctrl/renesas/pinctrl.c
726
const unsigned int *pins = pmx->pfc->info->groups[group].pins;
drivers/pinctrl/renesas/pinctrl.c
727
unsigned int num_pins = pmx->pfc->info->groups[group].nr_pins;
drivers/pinctrl/renesas/pinctrl.c
756
pins = pmx->pfc->info->groups[group].pins;
drivers/pinctrl/renesas/pinctrl.c
757
num_pins = pmx->pfc->info->groups[group].nr_pins;
drivers/pinctrl/renesas/pinctrl.c
778
static int sh_pfc_map_pins(struct sh_pfc *pfc, struct sh_pfc_pinctrl *pmx)
drivers/pinctrl/renesas/pinctrl.c
783
pmx->pins = devm_kcalloc(pfc->dev,
drivers/pinctrl/renesas/pinctrl.c
784
pfc->info->nr_pins, sizeof(*pmx->pins),
drivers/pinctrl/renesas/pinctrl.c
789
pmx->configs = devm_kcalloc(pfc->dev,
drivers/pinctrl/renesas/pinctrl.c
790
pfc->info->nr_pins, sizeof(*pmx->configs),
drivers/pinctrl/renesas/pinctrl.c
795
for (i = 0; i < pfc->info->nr_pins; ++i) {
drivers/pinctrl/renesas/pinctrl.c
796
const struct sh_pfc_pin *info = &pfc->info->pins[i];
drivers/pinctrl/renesas/pinctrl.c
807
int sh_pfc_register_pinctrl(struct sh_pfc *pfc)
drivers/pinctrl/renesas/pinctrl.c
812
pmx = devm_kzalloc(pfc->dev, sizeof(*pmx), GFP_KERNEL);
drivers/pinctrl/renesas/pinctrl.c
816
pmx->pfc = pfc;
drivers/pinctrl/renesas/pinctrl.c
818
ret = sh_pfc_map_pins(pfc, pmx);
drivers/pinctrl/renesas/pinctrl.c
828
pmx->pctl_desc.npins = pfc->info->nr_pins;
drivers/pinctrl/renesas/pinctrl.c
830
ret = devm_pinctrl_register_and_init(pfc->dev, &pmx->pctl_desc, pmx,
drivers/pinctrl/renesas/pinctrl.c
833
dev_err(pfc->dev, "could not register: %i\n", ret);
drivers/pinctrl/renesas/pinctrl.c
861
unsigned int rcar_pinmux_get_bias(struct sh_pfc *pfc, unsigned int pin)
drivers/pinctrl/renesas/pinctrl.c
866
reg = rcar_pin_to_bias_reg(pfc->info, pin, &bit);
drivers/pinctrl/renesas/pinctrl.c
871
if (!(sh_pfc_read(pfc, reg->puen) & BIT(bit)))
drivers/pinctrl/renesas/pinctrl.c
873
else if (!reg->pud || (sh_pfc_read(pfc, reg->pud) & BIT(bit)))
drivers/pinctrl/renesas/pinctrl.c
878
if (sh_pfc_read(pfc, reg->pud) & BIT(bit))
drivers/pinctrl/renesas/pinctrl.c
885
void rcar_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
drivers/pinctrl/renesas/pinctrl.c
892
reg = rcar_pin_to_bias_reg(pfc->info, pin, &bit);
drivers/pinctrl/renesas/pinctrl.c
897
enable = sh_pfc_read(pfc, reg->puen) & ~BIT(bit);
drivers/pinctrl/renesas/pinctrl.c
902
updown = sh_pfc_read(pfc, reg->pud) & ~BIT(bit);
drivers/pinctrl/renesas/pinctrl.c
906
sh_pfc_write(pfc, reg->pud, updown);
drivers/pinctrl/renesas/pinctrl.c
909
sh_pfc_write(pfc, reg->puen, enable);
drivers/pinctrl/renesas/pinctrl.c
911
enable = sh_pfc_read(pfc, reg->pud) & ~BIT(bit);
drivers/pinctrl/renesas/pinctrl.c
915
sh_pfc_write(pfc, reg->pud, enable);
drivers/pinctrl/renesas/pinctrl.c
924
unsigned int rmobile_pinmux_get_bias(struct sh_pfc *pfc, unsigned int pin)
drivers/pinctrl/renesas/pinctrl.c
926
void __iomem *reg = pfc->windows->virt +
drivers/pinctrl/renesas/pinctrl.c
927
pfc->info->ops->pin_to_portcr(pin);
drivers/pinctrl/renesas/pinctrl.c
941
void rmobile_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
drivers/pinctrl/renesas/pinctrl.c
944
void __iomem *reg = pfc->windows->virt +
drivers/pinctrl/renesas/pinctrl.c
945
pfc->info->ops->pin_to_portcr(pin);
drivers/pinctrl/renesas/sh_pfc.h
250
int (*init)(struct sh_pfc *pfc);
drivers/pinctrl/renesas/sh_pfc.h
251
unsigned int (*get_bias)(struct sh_pfc *pfc, unsigned int pin);
drivers/pinctrl/renesas/sh_pfc.h
252
void (*set_bias)(struct sh_pfc *pfc, unsigned int pin,
drivers/pinctrl/renesas/sh_pfc.h
769
unsigned int rcar_pinmux_get_bias(struct sh_pfc *pfc, unsigned int pin);
drivers/pinctrl/renesas/sh_pfc.h
770
void rcar_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
drivers/pinctrl/renesas/sh_pfc.h
773
unsigned int rmobile_pinmux_get_bias(struct sh_pfc *pfc, unsigned int pin);
drivers/pinctrl/renesas/sh_pfc.h
774
void rmobile_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
fs/aio.c
316
struct pseudo_fs_context *pfc;
fs/aio.c
318
pfc = init_pseudo(fc, AIO_RING_MAGIC);
fs/aio.c
319
if (!pfc)
fs/aio.c
321
pfc->ops = &aio_super_operations;
include/linux/qed/qed_eth_if.h
194
int (*ieee_getpfc)(struct qed_dev *cdev, struct ieee_pfc *pfc);
include/linux/qed/qed_eth_if.h
195
int (*ieee_setpfc)(struct qed_dev *cdev, struct ieee_pfc *pfc);
include/linux/qed/qed_eth_if.h
199
int (*ieee_peer_getpfc)(struct qed_dev *cdev, struct ieee_pfc *pfc);
include/linux/qed/qed_eth_if.h
242
int (*cee_peer_getpfc)(struct qed_dev *cdev, struct cee_pfc *pfc);
include/linux/qed/qed_if.h
105
struct qed_dbcx_pfc_params pfc;
net/dcb/dcbnl.c
1201
struct ieee_pfc pfc;
net/dcb/dcbnl.c
1202
memset(&pfc, 0, sizeof(pfc));
net/dcb/dcbnl.c
1203
err = ops->ieee_getpfc(netdev, &pfc);
net/dcb/dcbnl.c
1205
nla_put(skb, DCB_ATTR_IEEE_PFC, sizeof(pfc), &pfc))
net/dcb/dcbnl.c
1282
struct ieee_pfc pfc;
net/dcb/dcbnl.c
1283
memset(&pfc, 0, sizeof(pfc));
net/dcb/dcbnl.c
1284
err = ops->ieee_peer_getpfc(netdev, &pfc);
net/dcb/dcbnl.c
1286
nla_put(skb, DCB_ATTR_IEEE_PEER_PFC, sizeof(pfc), &pfc))
net/dcb/dcbnl.c
1472
struct cee_pfc pfc;
net/dcb/dcbnl.c
1473
memset(&pfc, 0, sizeof(pfc));
net/dcb/dcbnl.c
1474
err = ops->cee_peer_getpfc(netdev, &pfc);
net/dcb/dcbnl.c
1476
nla_put(skb, DCB_ATTR_CEE_PEER_PFC, sizeof(pfc), &pfc))
net/dcb/dcbnl.c
1604
struct ieee_pfc *pfc = nla_data(ieee[DCB_ATTR_IEEE_PFC]);
net/dcb/dcbnl.c
1605
err = ops->ieee_setpfc(netdev, pfc);
tools/arch/s390/include/uapi/asm/kvm.h
590
__u64 pfc; /* pfault compare [PFAULT] */