/kernel/linux/linux-5.10/drivers/net/ethernet/freescale/ |
H A D | fec_mpc52xx.c | 47 #include <linux/fsl/bestcomm/fec.h> 51 #define DRIVER_NAME "mpc52xx-fec" 60 struct mpc52xx_fec __iomem *fec; member 105 struct mpc52xx_fec __iomem *fec = priv->fec; in mpc52xx_fec_set_paddr() local 107 out_be32(&fec->paddr1, *(u32 *)(&mac[0])); in mpc52xx_fec_set_paddr() 108 out_be32(&fec->paddr2, (*(u16 *)(&mac[4]) << 16) | FEC_PADDR2_TYPE); in mpc52xx_fec_set_paddr() 172 struct mpc52xx_fec __iomem *fec = priv->fec; in mpc52xx_fec_adjust_link() local 179 rcntrl = in_be32(&fec in mpc52xx_fec_adjust_link() 445 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_interrupt() local 485 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_get_stats() local 534 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_reset_stats() local 551 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_set_multicast_list() local 594 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_hw_init() local 645 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_start() local 699 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_stop() local 739 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_reset() local 898 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_probe() local [all...] |
H A D | fec_mpc52xx_phy.c | 31 struct mpc52xx_fec __iomem *fec = priv->regs; in mpc52xx_fec_mdio_transfer() local 37 out_be32(&fec->ievent, FEC_IEVENT_MII); in mpc52xx_fec_mdio_transfer() 38 out_be32(&fec->mii_data, value); in mpc52xx_fec_mdio_transfer() 41 while (!(in_be32(&fec->ievent) & FEC_IEVENT_MII) && --tries) in mpc52xx_fec_mdio_transfer() 48 in_be32(&fec->mii_data) & FEC_MII_DATA_DATAMSK : 0; in mpc52xx_fec_mdio_transfer() 136 { .compatible = "mpc5200b-fec-phy", }, 143 .name = "mpc5200b-fec-phy", 151 /* let fec driver call it, since this has to be registered before it */
|
H A D | Makefile | 6 obj-$(CONFIG_FEC) += fec.o 7 fec-objs :=fec_main.o fec_ptp.o
|
/kernel/linux/linux-6.6/drivers/net/ethernet/freescale/ |
H A D | fec_mpc52xx.c | 49 #include <linux/fsl/bestcomm/fec.h> 53 #define DRIVER_NAME "mpc52xx-fec" 62 struct mpc52xx_fec __iomem *fec; member 107 struct mpc52xx_fec __iomem *fec = priv->fec; in mpc52xx_fec_set_paddr() local 109 out_be32(&fec->paddr1, *(const u32 *)(&mac[0])); in mpc52xx_fec_set_paddr() 110 out_be32(&fec->paddr2, (*(const u16 *)(&mac[4]) << 16) | FEC_PADDR2_TYPE); in mpc52xx_fec_set_paddr() 174 struct mpc52xx_fec __iomem *fec = priv->fec; in mpc52xx_fec_adjust_link() local 181 rcntrl = in_be32(&fec in mpc52xx_fec_adjust_link() 447 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_interrupt() local 487 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_get_stats() local 536 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_reset_stats() local 553 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_set_multicast_list() local 596 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_hw_init() local 647 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_start() local 701 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_stop() local 741 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_reset() local 897 struct mpc52xx_fec __iomem *fec = priv->fec; mpc52xx_fec_probe() local [all...] |
H A D | fec_mpc52xx_phy.c | 33 struct mpc52xx_fec __iomem *fec = priv->regs; in mpc52xx_fec_mdio_transfer() local 39 out_be32(&fec->ievent, FEC_IEVENT_MII); in mpc52xx_fec_mdio_transfer() 40 out_be32(&fec->mii_data, value); in mpc52xx_fec_mdio_transfer() 43 while (!(in_be32(&fec->ievent) & FEC_IEVENT_MII) && --tries) in mpc52xx_fec_mdio_transfer() 50 in_be32(&fec->mii_data) & FEC_MII_DATA_DATAMSK : 0; in mpc52xx_fec_mdio_transfer() 135 { .compatible = "mpc5200b-fec-phy", }, 142 .name = "mpc5200b-fec-phy", 150 /* let fec driver call it, since this has to be registered before it */
|
H A D | Makefile | 6 obj-$(CONFIG_FEC) += fec.o 7 fec-objs :=fec_main.o fec_ptp.o
|
/kernel/linux/linux-6.6/net/ethtool/ |
H A D | fec.c | 32 ethtool_fec_to_link_modes(u32 fec, unsigned long *link_modes, u8 *fec_auto) in ethtool_fec_to_link_modes() argument 35 *fec_auto = !!(fec & ETHTOOL_FEC_AUTO); in ethtool_fec_to_link_modes() 37 if (fec & ETHTOOL_FEC_OFF) in ethtool_fec_to_link_modes() 39 if (fec & ETHTOOL_FEC_RS) in ethtool_fec_to_link_modes() 41 if (fec & ETHTOOL_FEC_BASER) in ethtool_fec_to_link_modes() 43 if (fec & ETHTOOL_FEC_LLRS) in ethtool_fec_to_link_modes() 48 ethtool_link_modes_to_fecparam(struct ethtool_fecparam *fec, in ethtool_link_modes_to_fecparam() argument 51 memset(fec, 0, sizeof(*fec)); in ethtool_link_modes_to_fecparam() 54 fec in ethtool_link_modes_to_fecparam() 100 struct ethtool_fecparam fec = {}; fec_prepare_data() local 242 struct ethtool_fecparam fec = {}; ethnl_set_fec() local [all...] |
/kernel/linux/linux-5.10/drivers/net/ethernet/freescale/fs_enet/ |
H A D | mac-fec.c | 43 #include "fec.h" 78 static int whack_reset(struct fec __iomem *fecp) in whack_reset() 100 fep->fec.fecp = of_iomap(ofdev->dev.of_node, 0); in do_pd_setup() 101 if (!fep->fec.fecp) in do_pd_setup() 119 fep->fec.hthi = 0; in setup_data() 120 fep->fec.htlo = 0; in setup_data() 164 struct fec __iomem *fecp = fep->fec.fecp; in set_promiscuous_mode() 173 fep->fec.hthi = 0; in set_multicast_start() 174 fep->fec in set_multicast_start() [all...] |
H A D | mii-fec.c | 42 #include "fec.h" 54 struct fec_info* fec = bus->priv; in fs_enet_fec_mii_read() local 55 struct fec __iomem *fecp = fec->fecp; in fs_enet_fec_mii_read() 77 struct fec_info* fec = bus->priv; in fs_enet_fec_mii_write() local 78 struct fec __iomem *fecp = fec->fecp; in fs_enet_fec_mii_write() 104 struct fec_info *fec; in fs_enet_mdio_probe() local 117 fec = kzalloc(sizeof(struct fec_info), GFP_KERNEL); in fs_enet_mdio_probe() 118 if (!fec) in fs_enet_mdio_probe() 193 struct fec_info *fec = bus->priv; fs_enet_mdio_remove() local [all...] |
H A D | Makefile | 9 fs_enet-$(CONFIG_FS_ENET_HAS_FEC) += mac-fec.o 12 obj-$(CONFIG_FS_ENET_MDIO_FEC) += mii-fec.o
|
/kernel/linux/linux-6.6/drivers/net/ethernet/freescale/fs_enet/ |
H A D | mac-fec.c | 42 #include "fec.h" 77 static int whack_reset(struct fec __iomem *fecp) in whack_reset() 99 fep->fec.fecp = of_iomap(ofdev->dev.of_node, 0); in do_pd_setup() 100 if (!fep->fec.fecp) in do_pd_setup() 118 fep->fec.hthi = 0; in setup_data() 119 fep->fec.htlo = 0; in setup_data() 163 struct fec __iomem *fecp = fep->fec.fecp; in set_promiscuous_mode() 172 fep->fec.hthi = 0; in set_multicast_start() 173 fep->fec in set_multicast_start() [all...] |
H A D | mii-fec.c | 43 #include "fec.h" 55 struct fec_info* fec = bus->priv; in fs_enet_fec_mii_read() local 56 struct fec __iomem *fecp = fec->fecp; in fs_enet_fec_mii_read() 78 struct fec_info* fec = bus->priv; in fs_enet_fec_mii_write() local 79 struct fec __iomem *fecp = fec->fecp; in fs_enet_fec_mii_write() 105 struct fec_info *fec; in fs_enet_mdio_probe() local 118 fec = kzalloc(sizeof(struct fec_info), GFP_KERNEL); in fs_enet_mdio_probe() 119 if (!fec) in fs_enet_mdio_probe() 194 struct fec_info *fec = bus->priv; fs_enet_mdio_remove() local [all...] |
H A D | Makefile | 9 fs_enet-$(CONFIG_FS_ENET_HAS_FEC) += mac-fec.o 12 obj-$(CONFIG_FS_ENET_MDIO_FEC) += mii-fec.o
|
/kernel/linux/linux-5.10/drivers/md/ |
H A D | dm-verity-fec.c | 8 #include "dm-verity-fec.h" 11 #define DM_MSG_PREFIX "verity-fec" 18 return v->fec && v->fec->dev; in verity_fec_is_enabled() 38 mod = do_div(offset, v->fec->rsn); in fec_interleave() 39 return offset + mod * (v->fec->rounds << v->data_dev_block_bits); in fec_interleave() 46 u8 *data, u8 *fec, int neras) in fec_decode_rs8() 51 for (i = 0; i < v->fec->roots; i++) in fec_decode_rs8() 52 par[i] = fec[i]; in fec_decode_rs8() 54 return decode_rs8(fio->rs, data, par, v->fec in fec_decode_rs8() 45 fec_decode_rs8(struct dm_verity *v, struct dm_verity_fec_io *fio, u8 *data, u8 *fec, int neras) fec_decode_rs8() argument [all...] |
/kernel/linux/linux-6.6/drivers/md/ |
H A D | dm-verity-fec.c | 8 #include "dm-verity-fec.h" 11 #define DM_MSG_PREFIX "verity-fec" 18 return v->fec && v->fec->dev; in verity_fec_is_enabled() 38 mod = do_div(offset, v->fec->rsn); in fec_interleave() 39 return offset + mod * (v->fec->rounds << v->data_dev_block_bits); in fec_interleave() 46 u8 *data, u8 *fec, int neras) in fec_decode_rs8() 51 for (i = 0; i < v->fec->roots; i++) in fec_decode_rs8() 52 par[i] = fec[i]; in fec_decode_rs8() 54 return decode_rs8(fio->rs, data, par, v->fec in fec_decode_rs8() 45 fec_decode_rs8(struct dm_verity *v, struct dm_verity_fec_io *fio, u8 *data, u8 *fec, int neras) fec_decode_rs8() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/netdevsim/ |
H A D | ethtool.c | 122 memcpy(fecparam, &ns->ethtool.fec, sizeof(ns->ethtool.fec)); in nsim_get_fecparam() 130 u32 fec; in nsim_set_fecparam() local 134 memcpy(&ns->ethtool.fec, fecparam, sizeof(ns->ethtool.fec)); in nsim_set_fecparam() 135 fec = fecparam->fec; in nsim_set_fecparam() 136 if (fec == ETHTOOL_FEC_AUTO) in nsim_set_fecparam() 137 fec |= ETHTOOL_FEC_OFF; in nsim_set_fecparam() 138 fec | in nsim_set_fecparam() [all...] |
/kernel/linux/linux-5.10/drivers/dma/bestcomm/ |
H A D | Makefile | 8 bestcomm-fec-objs := fec.o bcom_fec_rx_task.o bcom_fec_tx_task.o 13 obj-$(CONFIG_PPC_BESTCOMM_FEC) += bestcomm-fec.o
|
/kernel/linux/linux-6.6/drivers/dma/bestcomm/ |
H A D | Makefile | 8 bestcomm-fec-objs := fec.o bcom_fec_rx_task.o bcom_fec_tx_task.o 13 obj-$(CONFIG_PPC_BESTCOMM_FEC) += bestcomm-fec.o
|
/kernel/linux/linux-5.10/drivers/net/ethernet/marvell/prestera/ |
H A D | prestera_ethtool.c | 366 u8 fec, u8 type) in prestera_modes_to_eth() 382 if ((port_fec_caps[mode].pr_fec & fec) == 0) in prestera_modes_to_eth() 390 u64 *link_modes, u8 *fec, u8 type) in prestera_modes_from_eth() 414 *fec = fec_modes; in prestera_modes_from_eth() 675 fecparam->fec = 0; in prestera_ethtool_get_fecparam() 681 fecparam->fec |= port_fec_caps[mode].eth_fec; in prestera_ethtool_get_fecparam() 696 u8 fec, active; in prestera_ethtool_set_fecparam() local 709 fec = PRESTERA_PORT_FEC_MAX; in prestera_ethtool_set_fecparam() 711 if ((port_fec_caps[mode].eth_fec & fecparam->fec) && in prestera_ethtool_set_fecparam() 713 fec in prestera_ethtool_set_fecparam() 365 prestera_modes_to_eth(unsigned long *eth_modes, u64 link_modes, u8 fec, u8 type) prestera_modes_to_eth() argument 389 prestera_modes_from_eth(const unsigned long *eth_modes, u64 *link_modes, u8 *fec, u8 type) prestera_modes_from_eth() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/marvell/octeontx2/nic/ |
H A D | otx2_ethtool.c | 240 if (pfvf->linfo.fec == OTX2_FEC_BASER) { in otx2_get_ethtool_stats() 1021 const int fec[] = { in otx2_get_fecparam() local 1027 if (pfvf->linfo.fec < FEC_MAX_INDEX) in otx2_get_fecparam() 1028 fecparam->active_fec = fec[pfvf->linfo.fec]; in otx2_get_fecparam() 1036 fecparam->fec = ETHTOOL_FEC_NONE; in otx2_get_fecparam() 1038 fecparam->fec = fec[rsp->fwdata.supported_fec]; in otx2_get_fecparam() 1049 int err = 0, fec = 0; in otx2_set_fecparam() local 1051 switch (fecparam->fec) { in otx2_set_fecparam() [all...] |
/kernel/linux/linux-5.10/drivers/media/dvb-frontends/ |
H A D | cx24123.c | 325 static int cx24123_set_fec(struct cx24123_state *state, enum fe_code_rate fec) in cx24123_set_fec() argument 329 if (((int)fec < FEC_NONE) || (fec > FEC_AUTO)) in cx24123_set_fec() 330 fec = FEC_AUTO; in cx24123_set_fec() 333 if (fec == FEC_1_2) in cx24123_set_fec() 340 switch (fec) { in cx24123_set_fec() 387 static int cx24123_get_fec(struct cx24123_state *state, enum fe_code_rate *fec) in cx24123_get_fec() argument 398 *fec = FEC_1_2; in cx24123_get_fec() 401 *fec = FEC_2_3; in cx24123_get_fec() 404 *fec in cx24123_get_fec() [all...] |
H A D | cx24110.c | 168 static int cx24110_set_fec(struct cx24110_state *state, enum fe_code_rate fec) in cx24110_set_fec() argument 178 if (fec > FEC_AUTO) in cx24110_set_fec() 179 fec = FEC_AUTO; in cx24110_set_fec() 181 if (fec == FEC_AUTO) { /* (re-)establish AutoAcq behaviour */ in cx24110_set_fec() 197 if (rate[fec] < 0) in cx24110_set_fec() 200 cx24110_writereg(state, 0x05, (cx24110_readreg(state, 0x05) & 0xf0) | rate[fec]); in cx24110_set_fec() 202 cx24110_writereg(state, 0x22, (cx24110_readreg(state, 0x22) & 0xf0) | rate[fec]); in cx24110_set_fec() 204 cx24110_writereg(state, 0x1a, g1[fec]); in cx24110_set_fec() 205 cx24110_writereg(state, 0x1b, g2[fec]); in cx24110_set_fec()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/marvell/prestera/ |
H A D | prestera_ethtool.c | 360 u8 fec, u8 type) in prestera_modes_to_eth() 376 if ((port_fec_caps[mode].pr_fec & fec) == 0) in prestera_modes_to_eth() 384 u64 *link_modes, u8 *fec, u8 type) in prestera_modes_from_eth() 408 *fec = fec_modes; in prestera_modes_from_eth() 690 fecparam->fec = 0; in prestera_ethtool_get_fecparam() 696 fecparam->fec |= port_fec_caps[mode].eth_fec; in prestera_ethtool_get_fecparam() 713 u8 fec; in prestera_ethtool_set_fecparam() local 725 fec = PRESTERA_PORT_FEC_MAX; in prestera_ethtool_set_fecparam() 727 if ((port_fec_caps[mode].eth_fec & fecparam->fec) && in prestera_ethtool_set_fecparam() 729 fec in prestera_ethtool_set_fecparam() 359 prestera_modes_to_eth(unsigned long *eth_modes, u64 link_modes, u8 fec, u8 type) prestera_modes_to_eth() argument 383 prestera_modes_from_eth(const unsigned long *eth_modes, u64 *link_modes, u8 *fec, u8 type) prestera_modes_from_eth() argument [all...] |
/kernel/linux/linux-6.6/drivers/media/dvb-frontends/ |
H A D | cx24123.c | 325 static int cx24123_set_fec(struct cx24123_state *state, enum fe_code_rate fec) in cx24123_set_fec() argument 329 if (((int)fec < FEC_NONE) || (fec > FEC_AUTO)) in cx24123_set_fec() 330 fec = FEC_AUTO; in cx24123_set_fec() 333 if (fec == FEC_1_2) in cx24123_set_fec() 340 switch (fec) { in cx24123_set_fec() 387 static int cx24123_get_fec(struct cx24123_state *state, enum fe_code_rate *fec) in cx24123_get_fec() argument 398 *fec = FEC_1_2; in cx24123_get_fec() 401 *fec = FEC_2_3; in cx24123_get_fec() 404 *fec in cx24123_get_fec() [all...] |
H A D | cx24110.c | 168 static int cx24110_set_fec(struct cx24110_state *state, enum fe_code_rate fec) in cx24110_set_fec() argument 178 if (fec > FEC_AUTO) in cx24110_set_fec() 179 fec = FEC_AUTO; in cx24110_set_fec() 181 if (fec == FEC_AUTO) { /* (re-)establish AutoAcq behaviour */ in cx24110_set_fec() 197 if (rate[fec] < 0) in cx24110_set_fec() 200 cx24110_writereg(state, 0x05, (cx24110_readreg(state, 0x05) & 0xf0) | rate[fec]); in cx24110_set_fec() 202 cx24110_writereg(state, 0x22, (cx24110_readreg(state, 0x22) & 0xf0) | rate[fec]); in cx24110_set_fec() 204 cx24110_writereg(state, 0x1a, g1[fec]); in cx24110_set_fec() 205 cx24110_writereg(state, 0x1b, g2[fec]); in cx24110_set_fec()
|