Home
last modified time | relevance | path

Searched full:fec (Results 1 – 25 of 762) sorted by relevance

12345678910>>...31

/openbmc/linux/drivers/net/ethernet/freescale/
H A Dfec_mpc52xx.h34 u32 fec_id; /* FEC + 0x000 */
35 u32 ievent; /* FEC + 0x004 */
36 u32 imask; /* FEC + 0x008 */
38 u32 reserved0[1]; /* FEC + 0x00C */
39 u32 r_des_active; /* FEC + 0x010 */
40 u32 x_des_active; /* FEC + 0x014 */
41 u32 r_des_active_cl; /* FEC + 0x018 */
42 u32 x_des_active_cl; /* FEC + 0x01C */
43 u32 ivent_set; /* FEC + 0x020 */
44 u32 ecntrl; /* FEC + 0x024 */
[all …]
H A Dfec_mpc52xx.c49 #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->r_cntrl); in mpc52xx_fec_adjust_link()
182 tcntrl = in_be32(&fec->x_cntrl); in mpc52xx_fec_adjust_link()
191 out_be32(&fec->r_cntrl, rcntrl); in mpc52xx_fec_adjust_link()
[all …]
H A DKconfig23 config FEC config
24 tristate "FEC ethernet controller (of ColdFire and some i.MX CPUs)"
39 tristate "FEC MPC52xx driver"
50 bool "FEC MPC52xx MDIO bus driver"
54 The MPC5200's FEC can connect to the Ethernet either with
57 If your board uses an external PHY connected to FEC, enable this.
103 and MPC86xx family of chips, the eTSEC on LS1021A and the FEC
H A Dfec_mpc52xx_phy.c33 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 */
/openbmc/linux/tools/testing/selftests/drivers/net/netdevsim/
H A Dethtool-fec.sh12 s=$($ETHTOOL --show-fec $NSIM_NETDEV | tail -2)
13 check $? "$s" "Configured FEC encodings: None
14 Active FEC encoding: None"
17 $ETHTOOL --set-fec $NSIM_NETDEV encoding auto
19 s=$($ETHTOOL --show-fec $NSIM_NETDEV | tail -2)
20 check $? "$s" "Configured FEC encodings: Auto
21 Active FEC encoding: Off"
25 $ETHTOOL --set-fec $NSIM_NETDEV encoding $o
27 s=$($ETHTOOL --show-fec $NSIM_NETDEV | tail -2)
28 check $? "$s" "Configured FEC encodings: Off
[all …]
/openbmc/u-boot/drivers/net/
H A Dfec_mxc.c41 * 64-byte alignment in the DMA RX FEC buffer.
98 * programming the FEC's MII data register. in fec_mdio_read()
129 struct fec_priv *fec; in fec_get_clk_rate() local
137 debug("Can't get FEC udev: %d\n", ret); in fec_get_clk_rate()
142 fec = dev_get_priv(dev); in fec_get_clk_rate()
143 if (fec) in fec_get_clk_rate()
144 return fec->clk_rate; in fec_get_clk_rate()
163 * HOLDTIME + 1 is the number of clk cycles the fec is holding the in fec_mii_setspeed()
237 struct fec_priv *fec = (struct fec_priv *)dev->priv; in miiphy_restart_aneg() local
238 struct ethernet_regs *eth = fec->bus->priv; in miiphy_restart_aneg()
[all …]
H A Darmada100_fec.c76 printf("ARMD100 FEC: (%s) Invalid phy address: 0x%X\n", in smi_reg_read()
81 printf("ARMD100 FEC: (%s) Invalid register offset: 0x%X\n", in smi_reg_read()
88 printf("ARMD100 FEC: (%s) PHY busy timeout\n", __func__); in smi_reg_read()
97 printf("ARMD100 FEC: (%s) PHY Read timeout, val=0x%x\n", in smi_reg_read()
121 printf("ARMD100 FEC: (%s) Invalid phy address\n", __func__); in smi_reg_write()
125 printf("ARMD100 FEC: (%s) Invalid register offset\n", __func__); in smi_reg_write()
131 printf("ARMD100 FEC: (%s) PHY busy timeout\n", __func__); in smi_reg_write()
169 printf("ARMD100 FEC: (%s) DMA Stuck\n", __func__); in abortdma()
304 printf("ARMD100 FEC: (%s) table section is full\n", in add_del_hash_entry()
495 printf("ARMD100 FEC: PHY not detected at address range 0-31\n"); in armdfec_init()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/net/
H A Dfsl,fec.yaml4 $id: http://devicetree.org/schemas/net/fsl,fec.yaml#
7 title: Freescale Fast Ethernet Controller (FEC)
21 - fsl,imx25-fec
22 - fsl,imx27-fec
23 - fsl,imx28-fec
24 - fsl,imx6q-fec
25 - fsl,mvf600-fec
26 - fsl,s32v234-fec
29 - fsl,imx53-fec
30 - fsl,imx6sl-fec
[all …]
/openbmc/linux/net/ethtool/
H A Dfec.c32 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->fec |= ETHTOOL_FEC_AUTO; in ethtool_link_modes_to_fecparam()
57 fec->fec |= ETHTOOL_FEC_OFF; in ethtool_link_modes_to_fecparam()
[all …]
/openbmc/linux/drivers/net/ethernet/freescale/fs_enet/
H A Dmac-fec.c42 #include "fec.h"
73 * Delay to wait for FEC reset command to complete (in us)
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.htlo = 0; in set_multicast_start()
[all …]
H A Dmii-fec.c43 #include "fec.h"
45 /* Make MII read/write commands for the FEC.
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()
122 new_bus->priv = fec; in fs_enet_mdio_probe()
[all …]
/openbmc/linux/Documentation/misc-devices/
H A Dxilinx_sdfec.rst4 Xilinx SD-FEC Driver
10 This driver supports SD-FEC Integrated Block for Zynq |Ultrascale+ (TM)| RFSoCs.
15 For a full description of SD-FEC core features, see the `SD-FEC Product Guide (PG256) <https://www.…
24 Missing features, known issues, and limitations of the SD-FEC driver are as
28 - Reset of the SD-FEC Integrated Block is not controlled by this driver
32 …indings/misc/xlnx,sd-fec.txt <https://github.com/Xilinx/linux-xlnx/blob/master/Documentation/devic…
38 The driver works with the SD-FEC core in two modes of operation:
50 - Activate the SD-FEC core
51 - Monitor the SD-FEC core for errors
52 - Retrieve the status and configuration of the SD-FEC core
[all …]
/openbmc/linux/drivers/md/
H A Ddm-verity-fec.c8 #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() argument
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->rsn, NULL, neras, in fec_decode_rs8()
68 position = (index + rsb) * v->fec->roots; in fec_read_parity()
[all …]
/openbmc/linux/include/uapi/misc/
H A Dxilinx_sdfec.h3 * Xilinx SD-FEC
193 * struct xsdfec_status - Status of SD-FEC core.
194 * @state: State of the SD-FEC core
195 * @activity: Describes if the SD-FEC instance is Active
213 * struct xsdfec_config - Configuration of SD-FEC core.
214 * @code: The codes being used by the SD-FEC instance
252 * struct xsdfec_ldpc_param_table_sizes - Used to store sizes of SD-FEC table
274 * ioctl to start SD-FEC core
284 * ioctl to stop the SD-FEC core
292 * ioctl that returns status of SD-FEC core
[all …]
/openbmc/linux/drivers/net/netdevsim/
H A Dethtool.c122 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 |= ETHTOOL_FEC_NONE; in nsim_set_fecparam()
139 ns->ethtool.fec.active_fec = 1 << (fls(fec) - 1); in nsim_set_fecparam()
185 ns->ethtool.fec.fec = ETHTOOL_FEC_NONE; in nsim_ethtool_init()
186 ns->ethtool.fec.active_fec = ETHTOOL_FEC_NONE; in nsim_ethtool_init()
/openbmc/u-boot/board/bluegiga/apx4devkit/
H A Dapx4devkit.c72 miiphy_write("FEC", 0, MII_PHY_CTRL2, 0x8180); in fecmxc_mii_postcall()
84 printf("FEC MXS: Unable to init FEC clocks\n"); in board_eth_init()
90 printf("FEC MXS: Unable to init FEC\n"); in board_eth_init()
94 dev = eth_get_dev_by_name("FEC"); in board_eth_init()
96 printf("FEC MXS: Unable to get FEC device entry\n"); in board_eth_init()
102 printf("FEC MXS: Unable to register FEC MII postcall\n"); in board_eth_init()
/openbmc/u-boot/board/freescale/mx6qarm2/
H A Dmx6qarm2.c179 miiphy_write("FEC", phy, MII_MMD_ACCESS_CTRL_REG, 0x7); in fecmxc_mii_postcall()
180 miiphy_write("FEC", phy, MII_MMD_ACCESS_ADDR_DATA_REG, 0x8016); in fecmxc_mii_postcall()
181 miiphy_write("FEC", phy, MII_MMD_ACCESS_CTRL_REG, 0x4007); in fecmxc_mii_postcall()
182 miiphy_read("FEC", phy, MII_MMD_ACCESS_ADDR_DATA_REG, &val); in fecmxc_mii_postcall()
185 miiphy_write("FEC", phy, MII_MMD_ACCESS_ADDR_DATA_REG, val); in fecmxc_mii_postcall()
188 miiphy_write("FEC", phy, MII_DBG_PORT_REG, 0x5); in fecmxc_mii_postcall()
189 miiphy_read("FEC", phy, MII_DBG_PORT2_REG, &val); in fecmxc_mii_postcall()
191 miiphy_write("FEC", phy, MII_DBG_PORT2_REG, val); in fecmxc_mii_postcall()
193 miiphy_write("FEC", phy, MII_BMCR, 0xa100); in fecmxc_mii_postcall()
206 dev = eth_get_dev_by_name("FEC"); in board_eth_init()
[all …]
/openbmc/linux/arch/arm64/boot/dts/freescale/
H A Dimx8qxp-ss-conn.dtsi20 compatible = "fsl,imx8qxp-fec", "fsl,imx8qm-fec", "fsl,imx6sx-fec";
24 compatible = "fsl,imx8qxp-fec", "fsl,imx8qm-fec", "fsl,imx6sx-fec";
H A Dimx8qm-ss-conn.dtsi8 compatible = "fsl,imx8qm-fec", "fsl,imx6sx-fec";
12 compatible = "fsl,imx8qm-fec", "fsl,imx6sx-fec";
/openbmc/linux/Documentation/ABI/testing/
H A Dsysfs-bus-dfl-devices-n3000-nios5 Description: Read-only. Returns the FEC mode of the 25G links of the
7 Solomon FEC, "kr" for Fire Code FEC, "no" for NO FEC.
8 "not supported" if the FEC mode setting is not supported, this
/openbmc/u-boot/board/freescale/mx28evk/
H A Dmx28evk.c108 /* MX28EVK uses ENET_CLK PAD to drive FEC clock */ in board_eth_init()
115 /* Reset FEC PHYs */ in board_eth_init()
122 puts("FEC MXS: Unable to init FEC0\n"); in board_eth_init()
128 puts("FEC MXS: Unable to init FEC1\n"); in board_eth_init()
134 puts("FEC MXS: Unable to get FEC0 device entry\n"); in board_eth_init()
140 puts("FEC MXS: Unable to get FEC1 device entry\n"); in board_eth_init()
/openbmc/linux/drivers/net/ethernet/marvell/prestera/
H A Dprestera_ethtool.c360 u8 fec, u8 type) in prestera_modes_to_eth() argument
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() argument
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
716 netdev_err(dev, "FEC set is not allowed while autoneg is on\n"); in prestera_ethtool_set_fecparam()
721 netdev_err(dev, "FEC set is not allowed on non-SFP ports\n"); in prestera_ethtool_set_fecparam()
725 fec = PRESTERA_PORT_FEC_MAX; in prestera_ethtool_set_fecparam()
[all …]
/openbmc/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_ethtool.c144 sprintf(data, "Fec Corrected Errors: "); in otx2_get_strings()
146 sprintf(data, "Fec Uncorrected Errors: "); in otx2_get_strings()
234 * latest PHY FEC stats. in otx2_get_ethtool_stats()
240 if (pfvf->linfo.fec == OTX2_FEC_BASER) { in otx2_get_ethtool_stats()
1026 const int fec[] = { in otx2_get_fecparam() local
1032 if (pfvf->linfo.fec < FEC_MAX_INDEX) in otx2_get_fecparam()
1033 fecparam->active_fec = fec[pfvf->linfo.fec]; in otx2_get_fecparam()
1041 fecparam->fec = ETHTOOL_FEC_NONE; in otx2_get_fecparam()
1043 fecparam->fec = fec[rsp->fwdata.supported_fec]; in otx2_get_fecparam()
1054 int err = 0, fec = 0; in otx2_set_fecparam() local
[all …]
/openbmc/linux/drivers/media/dvb-frontends/
H A Dcx24123.c198 {0x0e, 0x03}, /* Default non-inverted, FEC 3/4 (default) */
199 {0x0f, 0xfe}, /* FEC search mask (all supported codes) */
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()
342 dprintk("set FEC to 1/2\n"); in cx24123_set_fec()
347 dprintk("set FEC to 2/3\n"); in cx24123_set_fec()
352 dprintk("set FEC to 3/4\n"); in cx24123_set_fec()
[all …]
/openbmc/linux/arch/arm/boot/dts/nxp/imx/
H A Dimx25-karo-tx25.dts19 regulator-name = "fec-phy";
44 MX25_PAD_D11__GPIO_4_9 0x00000021 /* FEC PHY power on pin */
45 MX25_PAD_D13__GPIO_4_7 0x000000a1 /* FEC reset */
85 &fec {

12345678910>>...31