| /linux/drivers/char/tpm/ |
| H A D | tpm_tis_spi_cr50.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * This device driver implements a TCG PTP FIFO interface over SPI for chips 23 * - can go to sleep not earlier than after CR50_SLEEP_DELAY_MSEC. 24 * - needs up to CR50_WAKE_START_DELAY_USEC to wake after sleep. 25 * - requires waiting for "ready" IRQ, if supported; or waiting for at least 27 * - waits for up to CR50_FLOW_CONTROL for flow control 'ready' indication. 39 /* Default quality for hwrng. */ 55 static inline struct cr50_spi_phy *to_cr50_spi_phy(struct tpm_tis_spi_phy *phy) in to_cr50_spi_phy() argument 57 return container_of(phy, struct cr50_spi_phy, spi_phy); in to_cr50_spi_phy() 69 cr50_phy->irq_confirmed = true; in cr50_spi_irq_handler() [all …]
|
| /linux/Documentation/devicetree/bindings/usb/ |
| H A D | dwc2.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rob Herring <robh@kernel.org> 13 - $ref: usb-drd.yaml# 14 - $ref: usb-hcd.yaml# 19 - const: brcm,bcm2835-usb 20 - const: hisilicon,hi6220-usb 21 - const: ingenic,jz4775-otg 22 - const: ingenic,jz4780-otg [all …]
|
| /linux/drivers/usb/dwc2/ |
| H A D | platform.c | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 3 * platform.c - DesignWare HS OTG Controller platform driver 13 #include <linux/dma-mapping.h> 17 #include <linux/phy/phy.h> 18 #include <linux/platform_data/s3c-hsotg.h> 39 * ------------------------------ 41 * HST DEV any : --- 44 * DEV HST any : --- 56 hsotg->dr_mode = usb_get_dr_mode(hsotg->dev); in dwc2_get_dr_mode() 57 if (hsotg->dr_mode == USB_DR_MODE_UNKNOWN) in dwc2_get_dr_mode() [all …]
|
| /linux/net/mac802154/ |
| H A D | util.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include "driver-ops.h" 13 /* privid for wpan_phys to determine whether they belong to us or not */ 17 * ieee802154_wake_queue - wake ieee802154 queue 21 * for both transmitting and receiving. Hence, the core currently only handles 22 * one frame at a time for each phy, which means we had to stop the queue to 32 clear_bit(WPAN_PHY_FLAG_STATE_QUEUE_STOPPED, &local->phy->flags); in ieee802154_wake_queue() 33 list_for_each_entry_rcu(sdata, &local->interfaces, list) { in ieee802154_wake_queue() 34 if (!sdata->dev) in ieee802154_wake_queue() 37 netif_wake_queue(sdata->dev); in ieee802154_wake_queue() [all …]
|
| /linux/drivers/net/phy/ |
| H A D | broadcom.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * drivers/net/phy/broadcom.c 8 * Broadcom BCM54810, BCM54811 BroadR-Reach transceivers. 15 #include "bcm-phy-lib.h" 18 #include <linux/phy.h> 27 ((phydev)->drv->phy_id & ~((phydev)->drv->phy_id_mask)) 29 MODULE_DESCRIPTION("Broadcom PHY driver"); 41 /* Link modes for BCM58411 PHY */ 54 /* Long-Distance Signaling (BroadR-Reach mode aneg) relevant linkmode bits */ 65 struct bcm54xx_phy_priv *priv = phydev->priv; in bcm54xx_phy_can_wakeup() [all …]
|
| H A D | phylink.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * phylink models the MAC to optional PHY connection, supporting 4 * technologies such as SFP cages where the PHY is hot-pluggable. 15 #include <linux/phy.h> 23 #include "phy-caps.h" 38 * struct phylink - interna 574 phylink_validate_one(struct phylink * pl,struct phy_device * phy,const unsigned long * supported,const struct phylink_link_state * state,phy_interface_t interface,unsigned long * accum_supported,unsigned long * accum_advertising) phylink_validate_one() argument 604 phylink_validate_mask(struct phylink * pl,struct phy_device * phy,unsigned long * supported,struct phylink_link_state * state,const unsigned long * interfaces) phylink_validate_mask() argument 1443 struct phy_device *phy = pl->phydev; phylink_mac_initial_config() local 1607 struct phy_device *phy; phylink_resolve() local 2000 phylink_validate_phy(struct phylink * pl,struct phy_device * phy,unsigned long * supported,struct phylink_link_state * state) phylink_validate_phy() argument 2073 phylink_bringup_phy(struct phylink * pl,struct phy_device * phy,phy_interface_t interface) phylink_bringup_phy() argument 2190 phylink_attach_phy(struct phylink * pl,struct phy_device * phy,phy_interface_t interface) phylink_attach_phy() argument 2224 phylink_connect_phy(struct phylink * pl,struct phy_device * phy) phylink_connect_phy() argument 2335 struct phy_device *phy; phylink_disconnect_phy() local 3610 phylink_sfp_config_phy(struct phylink * pl,struct phy_device * phy) phylink_sfp_config_phy() argument 3827 phylink_sfp_connect_phy(void * upstream,struct phy_device * phy) phylink_sfp_connect_phy() argument [all...] |
| H A D | dp83tg720.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Driver for the Texas Instruments DP83TG720 PHY 10 #include <linux/phy.h> 16 * DP83TG720 PHY Limitations and Workarounds 18 * The DP83TG720 1000BASE-T1 PHY has several limitations that require 19 * software-side mitigations. These workarounds are implemented throughout 24 * ------------------------------------------------------------ 25 * After a link loss or during link establishment, the DP83TG720 PHY may fail 27 * errata sheet for the DP83TG720 PHY documents this behavior. 30 * recommends performing a soft restart if polling for a link fails to establish [all …]
|
| H A D | smsc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * drivers/net/phy/smsc.c 5 * Driver for SMSC PHYs 11 * Support added for SMSC LAN8187 and LAN8700 by steve.glendinning@shawell.net 21 #include <linux/phy.h> 27 /* Vendor-specific PHY Definitions */ 70 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) { in smsc_phy_config_intr() 91 struct smsc_phy_priv *priv = phydev->priv; in smsc_phy_config_edpd() 93 if (priv->edpd_enable) in smsc_phy_config_edpd() 107 if (irq_status != -ENODEV) in smsc_phy_handle_interrupt() [all …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | mediatek-dwmac.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/net/mediatek-dwmac.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Biao Huang <biao.huang@mediatek.com> 13 This file documents platform glue layer for stmmac. 15 # We need a select here so we don't match all nodes with 'snps,dwmac' 21 - mediatek,mt2712-gmac 22 - mediatek,mt8188-gmac 23 - mediatek,mt8195-gmac [all …]
|
| /linux/arch/arm/boot/dts/rockchip/ |
| H A D | rk3288-veyron.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 8 #include <dt-bindings/clock/rockchip,rk808.h> 9 #include <dt-bindings/input/input.h> 18 stdout-path = "serial2:115200n8"; 31 power_button: power-button { 32 compatible = "gpio-keys"; 33 pinctrl-names = "default"; 34 pinctrl-0 = <&pwr_key_l>; 36 key-power { 40 debounce-interval = <100>; [all …]
|
| /linux/drivers/usb/phy/ |
| H A D | phy-tegra-usb.c | 1 // SPDX-License-Identifier: GPL-2.0 159 /* For Tegra30 and above only, the address is different in Tegra20 */ 221 static void set_pts(struct tegra_usb_phy *phy, u8 pts_val) in set_pts() argument 223 void __iomem *base = phy->regs; in set_pts() 226 if (phy->soc_config->has_hostpc) { in set_pts() 240 static void set_phcd(struct tegra_usb_phy *phy, bool enable) in set_phcd() argument 242 void __iomem *base = phy->regs; in set_phcd() 245 if (phy->soc_config->has_hostpc) { in set_phcd() 262 static int utmip_pad_open(struct tegra_usb_phy *phy) in utmip_pad_open() argument 266 ret = clk_prepare_enable(phy->pad_clk); in utmip_pad_open() [all …]
|
| /linux/drivers/usb/musb/ |
| H A D | tusb6010.c | 1 // SPDX-License-Identifier: GPL-2.0 9 * - Driver assumes that interface to external host (main CPU) is 10 * configured for NOR FLASH interface instead of VLYNQ serial 27 #include <linux/dma-mapping.h> 35 struct platform_device *phy; member 46 * Checks the revision. We need to use the DMA register as 3.0 does not 47 * have correct versions for TUSB_PRCM_REV or TUSB_INT_CTRL_REV. 51 void __iomem *tbase = musb->ctrl_base; in tusb_get_revision() 68 void __iomem *tbase = musb->ctrl_base; in tusb_print_revision() 71 rev = musb->tusb_revision; in tusb_print_revision() [all …]
|
| /linux/drivers/net/ethernet/sis/ |
| H A D | sis900.c | 1 /* sis900.c: A SiS 900/7016 PCI Fast Ethernet driver for Linux. 17 SiS 7014 Single Chip 100BASE-TX/10BASE-T Physical Layer Solution, 21 Rev 1.08.09 Sep. 19 2005 Daniele Venzano add Wake on LAN support 22 Rev 1.08.08 Jan. 22 2005 Daniele Venzano use netif_msg for debugging messages 24 Rev 1.08.06 Sep. 24 2002 Mufasa Yang bug fix for Tx timeout & add SiS963 support 25 Rev 1.08.05 Jun. 6 2002 Mufasa Yang bug fix for read_eeprom & Tx descriptor over-boundary 28 Rev 1.08.02 Nov. 30 2001 Hui-Fen Hsu workaround for EDB & bug fix for dhcp problem 29 Rev 1.08.01 Aug. 25 2001 Hui-Fen Hsu update for 630ET & workaround for ICS1893 PHY 30 Rev 1.08.00 Jun. 11 2001 Hui-Fen Hsu workaround for RTL8201 PHY and some bug fix 31 …Rev 1.07.11 Apr. 2 2001 Hui-Fen Hsu updates PCI drivers to use the new pci_set_dma_mask for kerne… [all …]
|
| /linux/drivers/net/dsa/microchip/ |
| H A D | ksz_common.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2017-2025 Microchip Technology Inc. 14 #include <linux/platform_data/microchip-ksz.h> 15 #include <linux/phy.h> 206 * struct ksz_drive_strength - drive strength mapping 215 /* ksz9477_drive_strengths - Drive strength mapping for KSZ9477 variants 223 * - for high speed signals 224 * 1. 4 mA or 8 mA is often used for MII, RMII, and SPI interface with using 226 * 2. 12 mA or 16 mA is often used for MII, RMII, and SPI interface with 228 * 3. 20 mA or 24 mA is often used for GMII/RGMII interface with using 2.5V [all …]
|
| /linux/drivers/net/wireless/ath/ath5k/ |
| H A D | reset.c | 2 * Copyright (c) 2004-2008 Reyk Floeter <reyk@openbsd.org> 3 * Copyright (c) 2006-2008 Nick Kossifidis <mickflemm@gmail.com> 4 * Copyright (c) 2007-2008 Luis Rodriguez <mcgrof@winlab.rutgers.edu> 5 * Copyright (c) 2007-2008 Pavel Roskin <proski@gnu.org> 6 * Copyright (c) 2007-2008 Jiri Slaby <jirislaby@gmail.com> 8 * Permission to use, copy, modify, and distribute this software for any 14 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 30 #include <linux/pci.h> /* To determine if a card is pci-e */ 52 * ath5k_hw_register_timeout() - Poll a register for a flag/field change 64 * Returns -EAGAIN if we exceeded AR5K_TUNE_REGISTER_TIMEOUT * 15us or 0 [all …]
|
| /linux/drivers/net/ethernet/micrel/ |
| H A D | ksz884x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * drivers/net/ethernet/micrel/ksx884x.c - Micrel KSZ8841/2 PCI Ethernet driver 5 * Copyright (c) 2009-2010 Micrel, Inc. 271 #define PHY_CTRL_INTERVAL (KS884X_P2MBCR_P - KS884X_P1MBCR_P) 293 #define PHY_SPECIAL_INTERVAL (KS884X_P2VCT_P - KS884X_P1VCT_P) 482 (KS8842_PORT_2_CTRL_1 - KS8842_PORT_1_CTRL_1)) 587 #define STATIC_MAC_TABLE_ADDR 00-0000FFFF-FFFFFFFF 588 #define STATIC_MAC_TABLE_FWD_PORTS 00-00070000-00000000 589 #define STATIC_MAC_TABLE_VALID 00-00080000-00000000 590 #define STATIC_MAC_TABLE_OVERRIDE 00-00100000-00000000 [all …]
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7921/ |
| H A D | mac.c | 1 // SPDX-License-Identifier: BSD-3-Clause-Clear 49 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll() 50 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7921_mac_sta_poll() 51 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll() 59 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll() 61 spin_unlock_bh(&dev->mt7 in mt7921_mac_sta_poll() 177 struct mt792x_phy *phy = &dev->phy; mt7921_mac_fill_rx() local 495 bool wake = false; mt7921_mac_tx_free() local [all...] |
| /linux/drivers/net/ethernet/davicom/ |
| H A D | dm9000.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Davicom DM9000 Fast Ethernet driver for Linux. 6 * (C) Copyright 1997-1998 DAVICOM Semiconductor,Inc. All Rights Reserved. 39 /* Board/System/Debug information/definition ---------------- */ 41 #define DM9000_PHY 0x40 /* PHY address 0x01 */ 57 MODULE_PARM_DESC(debug, "dm9000 debug level (0-6)"); 70 * For general accesses a lock is provided so that calls which are 72 * not need to be saved. This lock also serves to serialise access 73 * to the EEPROM and PHY access registers which are shared between 87 /* Structure/enum declaration ------------------------------- */ [all …]
|
| /linux/drivers/net/wireless/mediatek/mt76/ |
| H A D | tx.c | 1 // SPDX-License-Identifier: BSD-3-Clause-Clear 11 if (!txq->sta) in mt76_txq_get_qid() 14 return txq->ac; in mt76_txq_get_qid() 20 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; in mt76_tx_check_agg_ssn() 25 if (!sta || !ieee80211_is_data_qos(hdr->frame_control) || in mt76_tx_check_agg_ssn() 26 !ieee80211_is_data_present(hdr->frame_contro in mt76_tx_check_agg_ssn() 259 struct mt76_phy *phy = hw->priv; __mt76_tx_complete_skb() local 298 __mt76_tx_queue_skb(struct mt76_phy * phy,int qid,struct sk_buff * skb,struct mt76_wcid * wcid,struct ieee80211_sta * sta,bool * stop) __mt76_tx_queue_skb() argument 331 mt76_tx(struct mt76_phy * phy,struct ieee80211_sta * sta,struct mt76_wcid * wcid,struct sk_buff * skb) mt76_tx() argument 373 mt76_txq_dequeue(struct mt76_phy * phy,struct mt76_txq * mtxq) mt76_txq_dequeue() argument 390 mt76_queue_ps_skb(struct mt76_phy * phy,struct ieee80211_sta * sta,struct sk_buff * skb,bool last) mt76_queue_ps_skb() argument 411 struct mt76_phy *phy = hw->priv; mt76_release_buffered_frames() local 458 mt76_txq_send_burst(struct mt76_phy * phy,struct mt76_queue * q,struct mt76_txq * mtxq,struct mt76_wcid * wcid) mt76_txq_send_burst() argument 524 mt76_txq_schedule_list(struct mt76_phy * phy,enum mt76_txq_id qid) mt76_txq_schedule_list() argument 580 mt76_txq_schedule(struct mt76_phy * phy,enum mt76_txq_id qid) mt76_txq_schedule() argument 602 mt76_txq_schedule_pending_wcid(struct mt76_phy * phy,struct mt76_wcid * wcid,struct sk_buff_head * head) mt76_txq_schedule_pending_wcid() argument 647 mt76_txq_schedule_pending(struct mt76_phy * phy) mt76_txq_schedule_pending() argument 684 mt76_txq_schedule_all(struct mt76_phy * phy) mt76_txq_schedule_all() argument 701 struct mt76_phy *phy; mt76_tx_worker_run() local 732 mt76_stop_tx_queues(struct mt76_phy * phy,struct ieee80211_sta * sta,bool send_bar) mt76_stop_tx_queues() argument 757 struct mt76_phy *phy = hw->priv; mt76_wake_tx_queue() local 820 struct mt76_phy *phy = &dev->phy; __mt76_set_tx_blocked() local 888 mt76_token_release(struct mt76_dev * dev,int token,bool * wake) mt76_token_release() argument [all...] |
| /linux/drivers/net/wireless/mediatek/mt76/mt7915/ |
| H A D | mac.c | 1 // SPDX-License-Identifier: BSD-3-Clause-Clear 12 #define to_rssi(field, rcpi) ((FIELD_GET(field, rcpi) - 220) / 2) 15 .pulse_th = { 110, -10, -80, 40, 5200, 128, 5200 }, 29 .pulse_th = { 110, -10, -8 281 struct mt7915_phy *phy = &dev->phy; mt7915_mac_fill_rx() local 563 struct mt7915_phy *phy = &dev->phy; mt7915_mac_fill_rx_vector() local 609 mt7915_mac_write_txwi_tm(struct mt7915_phy * phy,__le32 * txwi,struct sk_buff * skb) mt7915_mac_write_txwi_tm() argument 862 mt7915_mac_tx_free_done(struct mt7915_dev * dev,struct list_head * free_list,bool wake) mt7915_mac_tx_free_done() argument 890 bool v3, wake = false; mt7915_mac_tx_free() local 976 bool wake = false; mt7915_mac_tx_free_v0() local 1109 mt7915_mac_cca_stats_reset(struct mt7915_phy * phy) mt7915_mac_cca_stats_reset() argument 1118 mt7915_mac_reset_counters(struct mt7915_phy * phy) mt7915_mac_reset_counters() argument 1138 mt7915_mac_set_timing(struct mt7915_phy * phy) mt7915_mac_set_timing() argument 1213 mt7915_phy_get_nf(struct mt7915_phy * phy,int idx) mt7915_phy_get_nf() argument 1240 struct mt7915_phy *phy = mphy->priv; mt7915_update_channel() local 1705 mt7915_mac_update_stats(struct mt7915_phy * phy) mt7915_mac_update_stats() argument 1936 mt7915_mac_severe_check(struct mt7915_phy * phy) mt7915_mac_severe_check() argument 1999 struct mt7915_phy *phy; mt7915_mac_work() local 2027 mt7915_dfs_stop_radar_detector(struct mt7915_phy * phy) mt7915_dfs_stop_radar_detector() argument 2069 mt7915_dfs_start_radar_detector(struct mt7915_phy * phy) mt7915_dfs_start_radar_detector() argument 2091 mt7915_dfs_init_radar_specs(struct mt7915_phy * phy) mt7915_dfs_init_radar_specs() argument 2124 mt7915_dfs_init_radar_detector(struct mt7915_phy * phy) mt7915_dfs_init_radar_detector() argument [all...] |
| /linux/include/linux/ |
| H A D | ethtool.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * ethtool.h: Defines for Linux ethtool. 50 * enum ethtool_phys_id_state - indicator state for physical identification 66 ETH_RSS_HASH_TOP_BIT, /* Configurable RSS hash function - Toeplitz */ 67 ETH_RSS_HASH_XOR_BIT, /* Configurable RSS hash function - Xor */ 68 ETH_RSS_HASH_CRC32_BIT, /* Configurable RSS hash function - Crc32 */ 78 * struct kernel_ethtool_ringparam - RX/TX ring configuration 86 * @hds_thresh: Packet size threshold for header data split (HDS) 87 * @hds_thresh_max: Maximum supported setting for @hds_threshold 103 * enum ethtool_supported_ring_param - indicator caps for setting ring params [all …]
|
| /linux/Documentation/driver-api/nfc/ |
| H A D | nfc-hci.rst | 2 HCI backend for NFC Core 5 - Author: Eric Lapuyade, Samuel Ortiz 6 - Contact: eric.lapuyade@intel.com, samuel.ortiz@intel.com 9 ------- 12 enables easy writing of HCI-based NFC drivers. The HCI layer runs as an NFC Core 17 --- 23 context blocks waiting for response) or asynchronously (the response is returned 30 - one for executing commands : nfc_hci_msg_tx_work(). Only one command 32 - one for dispatching received events and commands : nfc_hci_msg_rx_work(). 35 -------------------------- [all …]
|
| /linux/Documentation/networking/device_drivers/ethernet/intel/ |
| H A D | e1000e.rst | 1 .. SPDX-License-Identifier: GPL-2.0+ 4 Linux Driver for Intel(R) Ethernet Network Connection 8 Copyright(c) 2008-2018 Intel Corporation. 13 - Identifying Your Adapter 14 - Command Line Parameters 15 - Additional Configurations 16 - Support 21 For information on how to identify your adapter, and for the latest Intel 34 There needs to be a <VAL#> for each network port in the system supported by 36 For example:: [all …]
|
| /linux/drivers/net/ethernet/natsemi/ |
| H A D | natsemi.c | 1 /* natsemi.c: A Linux PCI Ethernet driver for the NatSemi DP8381x series. */ 3 Written/copyright 1999-2001 by Donald Becker. 13 system is licensed under the GPL. License for under other terms may be 14 available. Contact the original author for details. 23 [link no longer provides useful info -jgarzik] 51 #include <asm/processor.h> /* Processor type for cache alignment. */ 62 /* Updated to recommendations in pci-skeleton v2.03. */ 64 /* The user-configurable values. 72 static int debug = -1; 76 /* Maximum number of multicast addresses to filter (vs. rx-all-multicast). [all …]
|
| /linux/drivers/net/ethernet/intel/igc/ |
| H A D | igc_phy.c | 1 // SPDX-License-Identifier: GPL-2.0 8 * igc_check_reset_block - Check if PHY reset is blocked 11 * Read the PHY management control register and check whether a PHY reset 26 * igc_get_phy_id - Retrieve the PHY ID and revision 29 * Reads the PHY registers and stores the PHY ID and possibly the PHY 34 struct igc_phy_info *phy = &hw->phy; in igc_get_phy_id() local 38 ret_val = phy->ops.read_reg(hw, PHY_ID1, &phy_id); in igc_get_phy_id() 42 phy->id = (u32)(phy_id << 16); in igc_get_phy_id() 44 ret_val = phy->ops.read_reg(hw, PHY_ID2, &phy_id); in igc_get_phy_id() 48 phy->id |= (u32)(phy_id & PHY_REVISION_MASK); in igc_get_phy_id() [all …]
|