| /kernel/linux/linux-5.10/drivers/net/phy/ |
| D | mdio_bus.c | 1 // SPDX-License-Identifier: GPL-2.0+ 2 /* MDIO Bus interface 41 #include "mdio-boardinfo.h" 46 mdiodev->reset_gpio = gpiod_get_optional(&mdiodev->dev, in mdiobus_register_gpiod() 48 if (IS_ERR(mdiodev->reset_gpio)) in mdiobus_register_gpiod() 49 return PTR_ERR(mdiodev->reset_gpio); in mdiobus_register_gpiod() 51 if (mdiodev->reset_gpio) in mdiobus_register_gpiod() 52 gpiod_set_consumer_name(mdiodev->reset_gpio, "PHY reset"); in mdiobus_register_gpiod() 61 reset = reset_control_get_optional_exclusive(&mdiodev->dev, "phy"); in mdiobus_register_reset() 65 mdiodev->reset_ctrl = reset; in mdiobus_register_reset() [all …]
|
| /kernel/linux/linux-5.10/sound/hda/ |
| D | hdac_bus.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * HD-audio core bus driver 23 * snd_hdac_bus_init - initialize a HD-audio bas bus 24 * @bus: the pointer to bus object 26 * @ops: bus verb operators 30 int snd_hdac_bus_init(struct hdac_bus *bus, struct device *dev, in snd_hdac_bus_init() argument 33 memset(bus, 0, sizeof(*bus)); in snd_hdac_bus_init() 34 bus->dev = dev; in snd_hdac_bus_init() 36 bus->ops = ops; in snd_hdac_bus_init() 38 bus->ops = &default_ops; in snd_hdac_bus_init() [all …]
|
| D | hdac_controller.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * HD-audio controller helpers 15 static void azx_clear_corbrp(struct hdac_bus *bus) in azx_clear_corbrp() argument 19 for (timeout = 1000; timeout > 0; timeout--) { in azx_clear_corbrp() 20 if (snd_hdac_chip_readw(bus, CORBRP) & AZX_CORBRP_RST) in azx_clear_corbrp() 25 dev_err(bus->dev, "CORB reset timeout#1, CORBRP = %d\n", in azx_clear_corbrp() 26 snd_hdac_chip_readw(bus, CORBRP)); in azx_clear_corbrp() 28 snd_hdac_chip_writew(bus, CORBRP, 0); in azx_clear_corbrp() 29 for (timeout = 1000; timeout > 0; timeout--) { in azx_clear_corbrp() 30 if (snd_hdac_chip_readw(bus, CORBRP) == 0) in azx_clear_corbrp() [all …]
|
| /kernel/linux/linux-4.19/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/ |
| D | anx9805.c | 28 #include "bus.h" 32 struct nvkm_i2c_bus *bus; member 33 u8 addr; member 39 u8 addr; member 45 struct anx9805_bus *bus = anx9805_bus(base); in anx9805_bus_xfer() local 46 struct anx9805_pad *pad = bus->pad; in anx9805_bus_xfer() 47 struct i2c_adapter *adap = &pad->bus->i2c; in anx9805_bus_xfer() 49 int ret = -ETIMEDOUT; in anx9805_bus_xfer() 53 tmp = nvkm_rdi2cr(adap, pad->addr, 0x07) & ~0x10; in anx9805_bus_xfer() 54 nvkm_wri2cr(adap, pad->addr, 0x07, tmp | 0x10); in anx9805_bus_xfer() [all …]
|
| D | busnv50.c | 25 #include "bus.h" 31 u32 addr; member 38 struct nv50_i2c_bus *bus = nv50_i2c_bus(base); in nv50_i2c_bus_drive_scl() local 39 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in nv50_i2c_bus_drive_scl() 40 if (state) bus->data |= 0x01; in nv50_i2c_bus_drive_scl() 41 else bus->data &= 0xfe; in nv50_i2c_bus_drive_scl() 42 nvkm_wr32(device, bus->addr, bus->data); in nv50_i2c_bus_drive_scl() 48 struct nv50_i2c_bus *bus = nv50_i2c_bus(base); in nv50_i2c_bus_drive_sda() local 49 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in nv50_i2c_bus_drive_sda() 50 if (state) bus->data |= 0x02; in nv50_i2c_bus_drive_sda() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/ |
| D | anx9805.c | 28 #include "bus.h" 32 struct nvkm_i2c_bus *bus; member 33 u8 addr; member 39 u8 addr; member 45 struct anx9805_bus *bus = anx9805_bus(base); in anx9805_bus_xfer() local 46 struct anx9805_pad *pad = bus->pad; in anx9805_bus_xfer() 47 struct i2c_adapter *adap = &pad->bus->i2c; in anx9805_bus_xfer() 49 int ret = -ETIMEDOUT; in anx9805_bus_xfer() 53 tmp = nvkm_rdi2cr(adap, pad->addr, 0x07) & ~0x10; in anx9805_bus_xfer() 54 nvkm_wri2cr(adap, pad->addr, 0x07, tmp | 0x10); in anx9805_bus_xfer() [all …]
|
| D | busnv50.c | 25 #include "bus.h" 31 u32 addr; member 38 struct nv50_i2c_bus *bus = nv50_i2c_bus(base); in nv50_i2c_bus_drive_scl() local 39 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in nv50_i2c_bus_drive_scl() 40 if (state) bus->data |= 0x01; in nv50_i2c_bus_drive_scl() 41 else bus->data &= 0xfe; in nv50_i2c_bus_drive_scl() 42 nvkm_wr32(device, bus->addr, bus->data); in nv50_i2c_bus_drive_scl() 48 struct nv50_i2c_bus *bus = nv50_i2c_bus(base); in nv50_i2c_bus_drive_sda() local 49 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in nv50_i2c_bus_drive_sda() 50 if (state) bus->data |= 0x02; in nv50_i2c_bus_drive_sda() [all …]
|
| /kernel/linux/linux-4.19/drivers/net/phy/ |
| D | mdio_bus.c | 1 /* MDIO Bus interface 48 #include "mdio-boardinfo.h" 55 if (mdiodev->dev.of_node) in mdiobus_register_gpiod() 56 gpiod = fwnode_get_named_gpiod(&mdiodev->dev.of_node->fwnode, in mdiobus_register_gpiod() 57 "reset-gpios", 0, GPIOD_OUT_LOW, in mdiobus_register_gpiod() 60 if (PTR_ERR(gpiod) == -ENOENT || PTR_ERR(gpiod) == -ENOSYS) in mdiobus_register_gpiod() 66 mdiodev->reset = gpiod; in mdiobus_register_gpiod() 78 if (mdiodev->bus->mdio_map[mdiodev->addr]) in mdiobus_register_device() 79 return -EBUSY; in mdiobus_register_device() 81 if (mdiodev->flags & MDIO_DEVICE_FLAG_PHY) { in mdiobus_register_device() [all …]
|
| /kernel/linux/linux-4.19/sound/hda/ |
| D | hdac_controller.c | 2 * HD-audio controller helpers 13 static void azx_clear_corbrp(struct hdac_bus *bus) in azx_clear_corbrp() argument 17 for (timeout = 1000; timeout > 0; timeout--) { in azx_clear_corbrp() 18 if (snd_hdac_chip_readw(bus, CORBRP) & AZX_CORBRP_RST) in azx_clear_corbrp() 23 dev_err(bus->dev, "CORB reset timeout#1, CORBRP = %d\n", in azx_clear_corbrp() 24 snd_hdac_chip_readw(bus, CORBRP)); in azx_clear_corbrp() 26 snd_hdac_chip_writew(bus, CORBRP, 0); in azx_clear_corbrp() 27 for (timeout = 1000; timeout > 0; timeout--) { in azx_clear_corbrp() 28 if (snd_hdac_chip_readw(bus, CORBRP) == 0) in azx_clear_corbrp() 33 dev_err(bus->dev, "CORB reset timeout#2, CORBRP = %d\n", in azx_clear_corbrp() [all …]
|
| D | hdac_bus.c | 2 * HD-audio core bus driver 20 * snd_hdac_bus_init - initialize a HD-audio bas bus 21 * @bus: the pointer to bus object 22 * @ops: bus verb operators 27 int snd_hdac_bus_init(struct hdac_bus *bus, struct device *dev, in snd_hdac_bus_init() argument 31 memset(bus, 0, sizeof(*bus)); in snd_hdac_bus_init() 32 bus->dev = dev; in snd_hdac_bus_init() 34 bus->ops = ops; in snd_hdac_bus_init() 36 bus->ops = &default_ops; in snd_hdac_bus_init() 37 bus->io_ops = io_ops; in snd_hdac_bus_init() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/pci/cx25821/ |
| D | cx25821-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 22 MODULE_PARM_DESC(i2c_scan, "scan i2c bus at insmod time"); 27 printk(KERN_DEBUG "%s/0: " fmt, dev->name, ##arg); \ 38 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_slave_did_ack() local 39 struct cx25821_dev *dev = bus->dev; in i2c_slave_did_ack() 40 return cx_read(bus->reg_stat) & 0x01; in i2c_slave_did_ack() 45 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_is_busy() local 46 struct cx25821_dev *dev = bus->dev; in i2c_is_busy() 47 return cx_read(bus->reg_stat) & 0x02 ? 1 : 0; in i2c_is_busy() 69 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_sendbytes() local [all …]
|
| /kernel/linux/linux-4.19/drivers/media/pci/cx25821/ |
| D | cx25821-i2c.c | 32 MODULE_PARM_DESC(i2c_scan, "scan i2c bus at insmod time"); 37 printk(KERN_DEBUG "%s/0: " fmt, dev->name, ##arg); \ 48 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_slave_did_ack() local 49 struct cx25821_dev *dev = bus->dev; in i2c_slave_did_ack() 50 return cx_read(bus->reg_stat) & 0x01; in i2c_slave_did_ack() 55 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_is_busy() local 56 struct cx25821_dev *dev = bus->dev; in i2c_is_busy() 57 return cx_read(bus->reg_stat) & 0x02 ? 1 : 0; in i2c_is_busy() 79 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_sendbytes() local 80 struct cx25821_dev *dev = bus->dev; in i2c_sendbytes() [all …]
|
| /kernel/linux/linux-4.19/drivers/soundwire/ |
| D | bus.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 2 // Copyright(c) 2015-17 Intel Corporation. 9 #include "bus.h" 12 * sdw_add_bus_master() - add a bus Master instance 13 * @bus: bus instance 15 * Initializes the bus instance, read properties and create child 18 int sdw_add_bus_master(struct sdw_bus *bus) in sdw_add_bus_master() argument 23 if (!bus->dev) { in sdw_add_bus_master() 24 pr_err("SoundWire bus has no device"); in sdw_add_bus_master() 25 return -ENODEV; in sdw_add_bus_master() [all …]
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/maple/ |
| D | pci.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 19 #include <asm/pci-bridge.h> 22 #include <asm/ppc-pci.h> 23 #include <asm/isa-bridge.h> 37 for (; node != 0;node = node->sibling) { in fixup_one_level_bus_range() 42 /* For PCI<->PCI bridges or CardBus bridges, we go down */ in fixup_one_level_bus_range() 43 class_code = of_get_property(node, "class-code", NULL); in fixup_one_level_bus_range() 47 bus_range = of_get_property(node, "bus-range", &len); in fixup_one_level_bus_range() 52 higher = fixup_one_level_bus_range(node->child, higher); in fixup_one_level_bus_range() 57 /* This routine fixes the "bus-range" property of all bridges in the [all …]
|
| /kernel/linux/linux-4.19/arch/powerpc/platforms/maple/ |
| D | pci.c | 23 #include <asm/pci-bridge.h> 26 #include <asm/ppc-pci.h> 27 #include <asm/isa-bridge.h> 41 for (; node != 0;node = node->sibling) { in fixup_one_level_bus_range() 46 /* For PCI<->PCI bridges or CardBus bridges, we go down */ in fixup_one_level_bus_range() 47 class_code = of_get_property(node, "class-code", NULL); in fixup_one_level_bus_range() 51 bus_range = of_get_property(node, "bus-range", &len); in fixup_one_level_bus_range() 56 higher = fixup_one_level_bus_range(node->child, higher); in fixup_one_level_bus_range() 61 /* This routine fixes the "bus-range" property of all bridges in the 64 * Note that the bus numbers manipulated here are OF bus numbers, they [all …]
|
| /kernel/linux/linux-4.19/drivers/pci/controller/ |
| D | pci-thunder-ecam.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/pci-ecam.h> 29 static int handle_ea_bar(u32 e0, int bar, struct pci_bus *bus, in handle_ea_bar() argument 32 void __iomem *addr; in handle_ea_bar() local 35 /* Entries are 16-byte aligned; bits[2,3] select word in entry */ in handle_ea_bar() 43 addr = bus->ops->map_bus(bus, devfn, bar); /* BAR 0 */ in handle_ea_bar() 44 if (!addr) { in handle_ea_bar() 48 v = readl(addr); in handle_ea_bar() 50 v |= 2; /* EA entry-1. Base-L */ in handle_ea_bar() 58 addr = bus->ops->map_bus(bus, devfn, bar); /* BAR 0 */ in handle_ea_bar() [all …]
|
| /kernel/linux/linux-5.10/drivers/pci/controller/ |
| D | pci-thunder-ecam.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/pci-ecam.h> 29 static int handle_ea_bar(u32 e0, int bar, struct pci_bus *bus, in handle_ea_bar() argument 32 void __iomem *addr; in handle_ea_bar() local 35 /* Entries are 16-byte aligned; bits[2,3] select word in entry */ in handle_ea_bar() 43 addr = bus->ops->map_bus(bus, devfn, bar); /* BAR 0 */ in handle_ea_bar() 44 if (!addr) { in handle_ea_bar() 48 v = readl(addr); in handle_ea_bar() 50 v |= 2; /* EA entry-1. Base-L */ in handle_ea_bar() 58 addr = bus->ops->map_bus(bus, devfn, bar); /* BAR 0 */ in handle_ea_bar() [all …]
|
| /kernel/linux/linux-5.10/drivers/soundwire/ |
| D | bus.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 2 // Copyright(c) 2015-17 Intel Corporation. 10 #include "bus.h" 15 static int sdw_get_id(struct sdw_bus *bus) in sdw_get_id() argument 22 bus->id = rc; in sdw_get_id() 27 * sdw_bus_master_add() - add a bus Master instance 28 * @bus: bus instance 32 * Initializes the bus instance, read properties and create child 35 int sdw_bus_master_add(struct sdw_bus *bus, struct device *parent, in sdw_bus_master_add() argument 43 return -ENODEV; in sdw_bus_master_add() [all …]
|
| /kernel/linux/linux-4.19/sound/hda/ext/ |
| D | hdac_ext_bus.c | 2 * hdac-ext-bus.c - HD-audio extended core bus functions. 4 * Copyright (C) 2014-2015 Intel Corp 28 static void hdac_ext_writel(u32 value, u32 __iomem *addr) in hdac_ext_writel() argument 30 writel(value, addr); in hdac_ext_writel() 33 static u32 hdac_ext_readl(u32 __iomem *addr) in hdac_ext_readl() argument 35 return readl(addr); in hdac_ext_readl() 38 static void hdac_ext_writew(u16 value, u16 __iomem *addr) in hdac_ext_writew() argument 40 writew(value, addr); in hdac_ext_writew() 43 static u16 hdac_ext_readw(u16 __iomem *addr) in hdac_ext_readw() argument 45 return readw(addr); in hdac_ext_readw() [all …]
|
| /kernel/linux/linux-5.10/drivers/of/ |
| D | fdt_address.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * FDT Address translation based on u-boot fdt_support.c which in turn was 9 * Copyright 2010-2011 Freescale Semiconductor, Inc. 27 static void __init of_dump_addr(const char *s, const __be32 *addr, int na) in of_dump_addr() argument 30 while(na--) in of_dump_addr() 31 pr_cont(" %08x", *(addr++)); in of_dump_addr() 35 static void __init of_dump_addr(const char *s, const __be32 *addr, int na) { } in of_dump_addr() argument 38 /* Callbacks for bus specific translators */ 42 u64 (*map)(__be32 *addr, const __be32 *range, 44 int (*translate)(__be32 *addr, u64 offset, int na); [all …]
|
| /kernel/linux/linux-4.19/drivers/of/ |
| D | fdt_address.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * FDT Address translation based on u-boot fdt_support.c which in turn was 9 * Copyright 2010-2011 Freescale Semiconductor, Inc. 27 static void __init of_dump_addr(const char *s, const __be32 *addr, int na) in of_dump_addr() argument 30 while(na--) in of_dump_addr() 31 pr_cont(" %08x", *(addr++)); in of_dump_addr() 35 static void __init of_dump_addr(const char *s, const __be32 *addr, int na) { } in of_dump_addr() argument 38 /* Callbacks for bus specific translators */ 42 u64 (*map)(__be32 *addr, const __be32 *range, 44 int (*translate)(__be32 *addr, u64 offset, int na); [all …]
|
| /kernel/linux/linux-5.10/drivers/net/pcs/ |
| D | pcs-lynx.c | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 8 #include <linux/pcs-lynx.h> 36 struct mii_bus *bus = pcs->bus; in lynx_pcs_get_state_usxgmii() local 37 int addr = pcs->addr; in lynx_pcs_get_state_usxgmii() local 40 status = mdiobus_c45_read(bus, addr, MDIO_MMD_VEND2, MII_BMSR); in lynx_pcs_get_state_usxgmii() 44 state->link = !!(status & MDIO_STAT1_LSTATUS); in lynx_pcs_get_state_usxgmii() 45 state->an_complete = !!(status & MDIO_AN_STAT1_COMPLETE); in lynx_pcs_get_state_usxgmii() 46 if (!state->link || !state->an_complete) in lynx_pcs_get_state_usxgmii() 49 lpa = mdiobus_c45_read(bus, addr, MDIO_MMD_VEND2, MII_LPA); in lynx_pcs_get_state_usxgmii() 59 struct mii_bus *bus = pcs->bus; in lynx_pcs_get_state_2500basex() local [all …]
|
| /kernel/linux/linux-5.10/sound/i2c/ |
| D | i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * (c) 1998 Gerd Knorr <kraxel@cs.tu-berlin.de> 25 static int snd_i2c_bit_probeaddr(struct snd_i2c_bus *bus, 26 unsigned short addr); 34 static int snd_i2c_bus_free(struct snd_i2c_bus *bus) in snd_i2c_bus_free() argument 39 if (snd_BUG_ON(!bus)) in snd_i2c_bus_free() 40 return -EINVAL; in snd_i2c_bus_free() 41 while (!list_empty(&bus->devices)) { in snd_i2c_bus_free() 42 device = snd_i2c_device(bus->devices.next); in snd_i2c_bus_free() 45 if (bus->master) in snd_i2c_bus_free() [all …]
|
| /kernel/linux/linux-4.19/arch/sparc/kernel/ |
| D | pci_common.c | 1 // SPDX-License-Identifier: GPL-2.0 20 unsigned long bus, in config_out_of_range() argument 24 if (bus < pbm->pci_first_busno || in config_out_of_range() 25 bus > pbm->pci_last_busno) in config_out_of_range() 31 unsigned long bus, in sun4u_config_mkaddr() argument 35 unsigned long rbits = pbm->config_space_reg_bits; in sun4u_config_mkaddr() 37 if (config_out_of_range(pbm, bus, devfn, reg)) in sun4u_config_mkaddr() 40 reg = (reg & ((1 << rbits) - 1)); in sun4u_config_mkaddr() 42 bus <<= rbits + 8; in sun4u_config_mkaddr() 44 return (void *) (pbm->config_space | bus | devfn | reg); in sun4u_config_mkaddr() [all …]
|
| /kernel/linux/linux-5.10/arch/sparc/kernel/ |
| D | pci_common.c | 1 // SPDX-License-Identifier: GPL-2.0 20 unsigned long bus, in config_out_of_range() argument 24 if (bus < pbm->pci_first_busno || in config_out_of_range() 25 bus > pbm->pci_last_busno) in config_out_of_range() 31 unsigned long bus, in sun4u_config_mkaddr() argument 35 unsigned long rbits = pbm->config_space_reg_bits; in sun4u_config_mkaddr() 37 if (config_out_of_range(pbm, bus, devfn, reg)) in sun4u_config_mkaddr() 40 reg = (reg & ((1 << rbits) - 1)); in sun4u_config_mkaddr() 42 bus <<= rbits + 8; in sun4u_config_mkaddr() 44 return (void *) (pbm->config_space | bus | devfn | reg); in sun4u_config_mkaddr() [all …]
|