| /Linux-v5.4/Documentation/networking/device_drivers/3com/ | 
| D | 3c509.txt | 25   3c509B (later revision of the ISA card; supports full-duplex) 27   3c589B (later revision of the 3c589; supports full-duplex) 42 needed except to enable full-duplex mode (see below). An example of the syntax 57 (2) Full-duplex mode 59 The v1.18c driver added support for the 3c509B's full-duplex capabilities. 60 In order to enable and successfully use full-duplex mode, three conditions 64 duplex operations. Currently, the only members of the 3c509 family that are 65 positively known to support full-duplex are the 3c509B (ISA bus) and 3c589B 67 full-duplex mode; these include the original 3c509 (no "B"), the original 72 AUI and 10base2 network cabling is physically incapable of full-duplex [all …] 
 | 
| D | vortex.txt | 118   0x0200  Force full duplex mode. 125   will force full-duplex 100base-TX, rather than allowing the usual 137   full-duplex mode.  Please use this in preference to the `options' 145   Sets full duplex mode for all 3c59x NICs in the machine.  Entries 155   full duplex mode. 265 the same network being in full-duplex mode, while this host is in 266 half-duplex mode.  You need to find that other host and make it run in 267 half-duplex mode or fix this host to run in full-duplex mode. 269 As a last resort, you can force the 3c59x driver into full-duplex mode 336     100" and "duplex full" as well (or "speed 10" and "duplex half"). [all …] 
 | 
| /Linux-v5.4/sound/core/seq/ | 
| D | seq_dummy.c | 39   The model option "duplex=1" enables duplex operation to the port. 40   In duplex mode, a pair of ports are created instead of single port, 43   In duplex mode, each port has DUPLEX capability. 54 static bool duplex;  variable 58 module_param(duplex, bool, 0444); 59 MODULE_PARM_DESC(duplex, "create DUPLEX ports"); 64 	int duplex;  member 85 	if (p->duplex)  in dummy_input() 116 	rec->duplex = duplex;  in create_port() 120 	if (duplex)  in create_port() [all …] 
 | 
| /Linux-v5.4/include/uapi/linux/ | 
| D | mii.h | 44 #define BMCR_FULLDPLX		0x0100	/* Full duplex                 */ 65 #define BMSR_10HALF		0x0800	/* Can do 10mbps, half-duplex  */ 66 #define BMSR_10FULL		0x1000	/* Can do 10mbps, full-duplex  */ 67 #define BMSR_100HALF		0x2000	/* Can do 100mbps, half-duplex */ 68 #define BMSR_100FULL		0x4000	/* Can do 100mbps, full-duplex */ 74 #define ADVERTISE_10HALF	0x0020	/* Try for 10mbps half-duplex  */ 75 #define ADVERTISE_1000XFULL	0x0020	/* Try for 1000BASE-X full-duplex */ 76 #define ADVERTISE_10FULL	0x0040	/* Try for 10mbps full-duplex  */ 77 #define ADVERTISE_1000XHALF	0x0040	/* Try for 1000BASE-X half-duplex */ 78 #define ADVERTISE_100HALF	0x0080	/* Try for 100mbps half-duplex */ [all …] 
 | 
| /Linux-v5.4/Documentation/networking/device_drivers/ti/ | 
| D | tlan.txt | 63 	3. You can set duplex=1 to force half duplex, and duplex=2 to 64 	   force full duplex. 71 	5. You have to use speed=X duplex=Y together now. If you just 73 	   To force a 10Mbps Half-Duplex link do "insmod tlan.o speed=10  74 	   duplex=1". 88 		0x02 = use half duplex 89 		0x04 = use full duplex 93 	   You also need to set both speed and duplex settings when forcing 95 	   ether=0,0,0x12,0,eth0 will force link to 100Mbps Half-Duplex. 101 	   insmod tlan speed=0,100 duplex=0,1 [all …] 
 | 
| /Linux-v5.4/drivers/net/ethernet/oki-semi/pch_gbe/ | 
| D | pch_gbe_param.c | 48  * Duplex - User Specified Duplex Override 50  *   - 0:  auto-negotiate for duplex 51  *   - 1:  only link at half duplex 52  *   - 2:  only link at full duplex 55 static int Duplex = OPTION_UNSET;  variable 56 module_param(Duplex, int, 0); 57 MODULE_PARM_DESC(Duplex, "Duplex setting"); 66  *       The AutoNeg value is a bit mask describing which speed and duplex 68  *       The supported speed and duplex modes are listed below 72  *       Duplex                    Full          Full  Half  Full   Half [all …] 
 | 
| /Linux-v5.4/drivers/net/ | 
| D | mii.c | 109 			ecmd->duplex = !!(nego & ADVERTISED_1000baseT_Full);  in mii_ethtool_gset() 113 			ecmd->duplex = !!(nego & ADVERTISED_100baseT_Full);  in mii_ethtool_gset() 116 			ecmd->duplex = !!(nego & ADVERTISED_10baseT_Full);  in mii_ethtool_gset() 127 		ecmd->duplex = (bmcr & BMCR_FULLDPLX) ? DUPLEX_FULL : DUPLEX_HALF;  in mii_ethtool_gset() 130 	mii->full_duplex = ecmd->duplex;  in mii_ethtool_gset() 195 			cmd->base.duplex = !!(nego & ADVERTISED_1000baseT_Full);  in mii_ethtool_get_link_ksettings() 199 			cmd->base.duplex = !!(nego & ADVERTISED_100baseT_Full);  in mii_ethtool_get_link_ksettings() 202 			cmd->base.duplex = !!(nego & ADVERTISED_10baseT_Full);  in mii_ethtool_get_link_ksettings() 212 		cmd->base.duplex = (bmcr & BMCR_FULLDPLX) ?  in mii_ethtool_get_link_ksettings() 218 	mii->full_duplex = cmd->base.duplex;  in mii_ethtool_get_link_ksettings() [all …] 
 | 
| D | sungem_phy.c | 42 	{ 0, 0, 0 },	/* 10BT Half Duplex */ 43 	{ 1, 0, 0 },	/* 10BT Full Duplex */ 44 	{ 0, 1, 0 },	/* 100BT Half Duplex */ 45 	{ 0, 1, 0 },	/* 100BT Half Duplex */ 46 	{ 1, 1, 0 },	/* 100BT Full Duplex*/ 196 	/* Configure for gigabit full duplex */  in bcm5400_init() 260 	/* Configure for gigabit full duplex */  in bcm5401_init() 320 	phy->duplex = DUPLEX_HALF;  in genmii_setup_aneg() 351 	phy->duplex = fd;  in genmii_setup_forced() 360 	/* Select speed & duplex */  in genmii_setup_forced() [all …] 
 | 
| /Linux-v5.4/drivers/net/ethernet/stmicro/stmmac/ | 
| D | altr_tse_pcs.c | 133 	u16 duplex = 0;  in auto_nego_timer_callback()  local 144 		duplex = val & TSE_PCS_PARTNER_DUPLEX_MASK;  in auto_nego_timer_callback() 147 		    duplex == TSE_PCS_PARTNER_DUPLEX_FULL)  in auto_nego_timer_callback() 151 			 duplex == TSE_PCS_PARTNER_DUPLEX_FULL)  in auto_nego_timer_callback() 155 			 duplex == TSE_PCS_PARTNER_DUPLEX_FULL)  in auto_nego_timer_callback() 159 			 duplex == TSE_PCS_PARTNER_DUPLEX_HALF)  in auto_nego_timer_callback() 161 				"Adapter does not support Half Duplex\n");  in auto_nego_timer_callback() 163 			 duplex == TSE_PCS_PARTNER_DUPLEX_HALF)  in auto_nego_timer_callback() 165 				"Adapter does not support Half Duplex\n");  in auto_nego_timer_callback() 167 			 duplex == TSE_PCS_PARTNER_DUPLEX_HALF)  in auto_nego_timer_callback() [all …] 
 | 
| /Linux-v5.4/Documentation/networking/device_drivers/intel/ | 
| D | e1000.rst | 15 - Speed and Duplex Configuration 40 	For more information about the AutoNeg, Duplex, and Speed 41         parameters, see the "Speed and Duplex Configuration" section in 57 This parameter is a bit-mask that specifies the speed and duplex settings 59 Duplex parameters must not be specified. 62        Refer to the Speed and Duplex section of this readme for more 65 Duplex  section in Command Line Parameters 74 either one or two-directional.  If both Duplex and the link partner are 75 set to auto-negotiate, the board auto-detects the correct duplex.  If the 76 link partner is forced (either full or half), Duplex defaults to half- [all …] 
 | 
| /Linux-v5.4/drivers/net/ethernet/intel/e1000/ | 
| D | e1000_param.c | 58 /* User Specified Duplex Override 61  *  - 0 - auto-negotiate for duplex 62  *  - 1 - only link at half duplex 63  *  - 2 - only link at full duplex 67 E1000_PARAM(Duplex, "Duplex setting"); 73  * The AutoNeg value is a bit mask describing which speed and duplex 75  * The supported speed and duplex modes are listed below 79  * Duplex                    Full          Full  Half  Full   Half 510  * Handles speed and duplex options on fiber adapters 521 		e_dev_info("Duplex not valid for fiber adapters, parameter "  in e1000_check_fiber_options() [all …] 
 | 
| /Linux-v5.4/drivers/net/ethernet/atheros/atlx/ | 
| D | atlx.h | 228 /* MAC Half-Duplex Control Register */ 303 #define MII_CR_FULL_DUPLEX		0x0100	/* FDX =1, half duplex =0 */ 327 #define MII_SR_100T2_HD_CAPS		0x0200	/* 100T2 Half Duplex Capable */ 328 #define MII_SR_100T2_FD_CAPS		0x0400	/* 100T2 Full Duplex Capable */ 329 #define MII_SR_10T_HD_CAPS		0x0800	/* 10T   Half Duplex Capable */ 330 #define MII_SR_10T_FD_CAPS		0x1000	/* 10T   Full Duplex Capable */ 331 #define MII_SR_100X_HD_CAPS		0x2000	/* 100X  Half Duplex Capable */ 332 #define MII_SR_100X_FD_CAPS		0x4000	/* 100X  Full Duplex Capable */ 337 #define MII_LPA_10HALF			0x0020	/* Can do 10mbps half-duplex */ 338 #define MII_LPA_10FULL			0x0040	/* Can do 10mbps full-duplex */ [all …] 
 | 
| /Linux-v5.4/drivers/net/phy/ | 
| D | swphy.c | 38  * This means the speed table must contain both duplex settings, and the 39  * duplex table must contain all speed settings. 56 static const struct swmii_regs duplex[] = {  variable 130 	duplex_index = state->duplex ? SWMII_DUPLEX_FULL : SWMII_DUPLEX_HALF;  in swphy_read_reg() 132 	bmsr |= speed[speed_index].bmsr & duplex[duplex_index].bmsr;  in swphy_read_reg() 133 	estat |= speed[speed_index].estat & duplex[duplex_index].estat;  in swphy_read_reg() 138 		lpa   |= speed[speed_index].lpa   & duplex[duplex_index].lpa;  in swphy_read_reg() 139 		lpagb |= speed[speed_index].lpagb & duplex[duplex_index].lpagb;  in swphy_read_reg()
  | 
| D | phy.c | 100 			phy_duplex_to_str(phydev->duplex),  in phy_print_status() 183  * @duplex: desired duplex 187  * - an exact match for the specified speed and duplex mode 194 phy_find_valid(int speed, int duplex, unsigned long *supported)  in phy_find_valid()  argument 196 	return phy_lookup_setting(speed, duplex, supported, false);  in phy_find_valid() 218  *		     speed, duplex, and feature mask 220  * @duplex: duplex to match 225 static inline bool phy_check_valid(int speed, int duplex,  in phy_check_valid()  argument 228 	return !!phy_lookup_setting(speed, duplex, features, true);  in phy_check_valid() 232  * phy_sanitize_settings - make sure the PHY is set to supported speed and duplex [all …] 
 | 
| D | phy-core.c | 53 const char *phy_duplex_to_str(unsigned int duplex)  in phy_duplex_to_str()  argument 55 	if (duplex == DUPLEX_HALF)  in phy_duplex_to_str() 57 	if (duplex == DUPLEX_FULL)  in phy_duplex_to_str() 59 	if (duplex == DUPLEX_UNKNOWN)  in phy_duplex_to_str() 65 /* A mapping of all SUPPORTED settings to speed/duplex.  This table 69 #define PHY_SETTING(s, d, b) { .speed = SPEED_ ## s, .duplex = DUPLEX_ ## d, \ 149  * @duplex: duplex to match 154  * duplex, and which is supported. 164 phy_lookup_setting(int speed, int duplex, const unsigned long *mask, bool exact)  in phy_lookup_setting()  argument 173 			if (p->speed == speed && p->duplex == duplex) {  in phy_lookup_setting() [all …] 
 | 
| /Linux-v5.4/Documentation/networking/device_drivers/dlink/ | 
| D | dl2k.txt | 188 				  10mbps_hd	10Mbps half duplex. 189 				  10mbps_fd	10Mbps full duplex. 190 				  100mbps_hd	100Mbps half duplex. 191 				  100mbps_fd	100Mbps full duplex. 192 				  1000mbps_fd	1000Mbps full duplex. 193 				  1000mbps_hd	1000Mbps half duplex. 195 				  1		10Mbps half duplex. 196 				  2		10Mbps full duplex. 197 				  3		100Mbps half duplex. 198 				  4		100Mbps full duplex. [all …] 
 | 
| /Linux-v5.4/Documentation/spi/ | 
| D | spidev.rst | 5 SPI devices have a limited userspace API, supporting basic half-duplex 7 full duplex transfers and device I/O configuration are also available. 84 Standard read() and write() operations are obviously only half-duplex, and 85 the chipselect is deactivated between those operations.  Full-duplex access, 146 FULL DUPLEX CHARACTER DEVICE API 150 full duplex programming interface.  (Although it doesn't perform a full duplex 155 The example shows one half-duplex RPC-style request and response message. 162 To make a full duplex request, provide both rx_buf and tx_buf for the
  | 
| /Linux-v5.4/include/linux/ | 
| D | phylink.h | 39  * @duplex: link duplex mode, one of DUPLEX_* constants. 50 	int duplex;  member 112  * clearing unsupported speeds and duplex settings. The port modes 135  * speed in @state->speed, duplex mode in @state->duplex, pause mode 157  *   Configure the specified @state->speed, @state->duplex and 162  *   Valid state members: interface, speed, duplex, pause, advertising. 173  *   @state->interface. Duplex is negotiated, and pause is advertised 176  *   duplex at gigabit and higher speeds. 178  *   If in Cisco SGMII mode, the link speed and duplex mode are passed
  | 
| /Linux-v5.4/drivers/net/ethernet/intel/igc/ | 
| D | igc_mac.c | 365  * to get the current speed/duplex if link exists. 384 	 * link.  If so, then we want to get the current speed/duplex  in igc_check_for_copper_link() 401 	/* If we are forcing speed/duplex, then we simply return since  in igc_check_for_copper_link() 410 	 * of MAC speed/duplex configuration.  So we only need to  in igc_check_for_copper_link() 454  * speed and duplex were not forced.  If the link needed to be forced, then 463 	u16 speed, duplex;  in igc_config_fc_after_link_up()  local 627 		 * negotiated to HALF DUPLEX, flow control should not be  in igc_config_fc_after_link_up() 630 		ret_val = hw->mac.ops.get_speed_and_duplex(hw, &speed, &duplex);  in igc_config_fc_after_link_up() 632 			hw_dbg("Error getting link speed and duplex\n");  in igc_config_fc_after_link_up() 636 		if (duplex == HALF_DUPLEX)  in igc_config_fc_after_link_up() [all …] 
 | 
| D | igc_phy.c | 269 	/* Do we want to advertise 10 Mb Half Duplex? */  in igc_phy_setup_autoneg() 271 		hw_dbg("Advertise 10mb Half duplex\n");  in igc_phy_setup_autoneg() 275 	/* Do we want to advertise 10 Mb Full Duplex? */  in igc_phy_setup_autoneg() 277 		hw_dbg("Advertise 10mb Full duplex\n");  in igc_phy_setup_autoneg() 281 	/* Do we want to advertise 100 Mb Half Duplex? */  in igc_phy_setup_autoneg() 283 		hw_dbg("Advertise 100mb Half duplex\n");  in igc_phy_setup_autoneg() 287 	/* Do we want to advertise 100 Mb Full Duplex? */  in igc_phy_setup_autoneg() 289 		hw_dbg("Advertise 100mb Full duplex\n");  in igc_phy_setup_autoneg() 293 	/* We do not allow the Phy to advertise 1000 Mb Half Duplex */  in igc_phy_setup_autoneg() 295 		hw_dbg("Advertise 1000mb Half duplex request denied!\n");  in igc_phy_setup_autoneg() [all …] 
 | 
| /Linux-v5.4/drivers/net/ethernet/ibm/ehea/ | 
| D | ehea_ethtool.c | 51 		cmd->base.duplex = port->full_duplex == 1 ?  in ehea_get_link_ksettings() 55 		cmd->base.duplex = DUPLEX_UNKNOWN;  in ehea_get_link_ksettings() 98 		if (cmd->base.duplex == DUPLEX_FULL)  in ehea_set_link_ksettings() 105 		if (cmd->base.duplex == DUPLEX_FULL)  in ehea_set_link_ksettings() 112 		if (cmd->base.duplex == DUPLEX_FULL)  in ehea_set_link_ksettings() 119 		if (cmd->base.duplex == DUPLEX_FULL)  in ehea_set_link_ksettings() 137 			    "Port speed successfully set: %dMbps %s Duplex\n",  in ehea_set_link_ksettings() 153 			    "Port speed successfully set: %dMbps %s Duplex\n",  in ehea_nway_reset()
  | 
| /Linux-v5.4/Documentation/devicetree/bindings/net/dsa/ | 
| D | dsa.txt | 112 					full-duplex; 121 					full-duplex; 165 					full-duplex; 175 					full-duplex; 228 					full-duplex; 239 					full-duplex; 252 					full-duplex;
  | 
| /Linux-v5.4/Documentation/devicetree/bindings/phy/ | 
| D | phy-ocelot-serdes.txt | 13 half/full-duplex and 1000Mbps in full-duplex mode while SERDES6G supports 14 10/100Mbps in half/full-duplex and 1000/2500Mbps in full-duplex mode.
  | 
| /Linux-v5.4/Documentation/devicetree/bindings/net/ | 
| D | ethernet-controller.yaml | 159                   Duplex configuration. 0 for half duplex or 1 for 160                   full duplex 187             full-duplex: 190                 Indicates that full-duplex is used. When absent, half 191                 duplex is assumed.
  | 
| /Linux-v5.4/drivers/net/ethernet/dec/tulip/ | 
| D | de4x5.h | 30 #define DE4X5_FDR    iobase+(0x058 << lp->bus)  /* Full Duplex Register */ 288 #define STS_FD     0x00000800       /* Full-Duplex Short Frame Received */ 348 #define OMR_FDX    0x00000200       /* Full Duplex Mode */ 380 #define IMR_FDM    0x00000800       /* Full-Duplex (Short Frame) Mask */ 476 #define MII_CR_FDM  0x0100         /* Full Duplex Mode */ 483 #define MII_SR_TXFD 0x4000         /* 100BASE-TX Full Duplex capable */ 484 #define MII_SR_TXHD 0x2000         /* 100BASE-TX Half Duplex capable */ 485 #define MII_SR_TFD  0x1000         /* 10BASE-T Full Duplex capable */ 486 #define MII_SR_THD  0x0800         /* 10BASE-T Half Duplex capable */ 500 #define MII_ANA_FDAM 0x0140        /* Full Duplex Technology Ability Mask */ [all …] 
 |