| /linux/drivers/net/phy/ |
| H A D | mdio_bus.c | 1 // SPDX-License-Identifier: GPL-2.0+ 2 /* MDIO Bus interface 39 mdiodev->reset_gpio = gpiod_get_optional(&mdiodev->dev, in mdiobus_register_gpiod() 41 if (IS_ERR(mdiodev->reset_gpio)) in mdiobus_register_gpiod() 42 return PTR_ERR(mdiodev->reset_gpio); in mdiobus_register_gpiod() 44 if (mdiodev->reset_gpio) in mdiobus_register_gpiod() 45 gpiod_set_consumer_name(mdiodev->reset_gpio, "PHY reset"); in mdiobus_register_gpiod() 54 reset = reset_control_get_optional_exclusive(&mdiodev->dev, "phy"); in mdiobus_register_reset() 58 mdiodev->reset_ctrl = reset; in mdiobus_register_reset() 67 if (mdiodev->bus->mdio_map[mdiodev->addr]) in mdiobus_register_device() [all …]
|
| /linux/sound/hda/core/ |
| H A D | 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 in azx_clear_corbrp() 43 snd_hdac_bus_init_cmd_io(struct hdac_bus * bus) snd_hdac_bus_init_cmd_io() argument 94 hdac_wait_for_cmd_dmas(struct hdac_bus * bus) hdac_wait_for_cmd_dmas() argument 113 snd_hdac_bus_stop_cmd_io(struct hdac_bus * bus) snd_hdac_bus_stop_cmd_io() argument 132 unsigned int addr = cmd >> 28; azx_command_addr() local 140 snd_hdac_bus_wait_for_pio_response(struct hdac_bus * bus,unsigned int addr) snd_hdac_bus_wait_for_pio_response() argument 141 snd_hdac_bus_wait_for_pio_response(struct hdac_bus * bus,unsigned int addr) snd_hdac_bus_wait_for_pio_response() argument 170 snd_hdac_bus_send_cmd_pio(struct hdac_bus * bus,unsigned int val) snd_hdac_bus_send_cmd_pio() argument 172 unsigned int addr = azx_command_addr(val); snd_hdac_bus_send_cmd_pio() local 210 snd_hdac_bus_get_response_pio(struct hdac_bus * bus,unsigned int addr,unsigned int * res) snd_hdac_bus_get_response_pio() argument 211 snd_hdac_bus_get_response_pio(struct hdac_bus * bus,unsigned int addr,unsigned int * res) snd_hdac_bus_get_response_pio() argument 226 snd_hdac_bus_send_cmd_corb(struct hdac_bus * bus,unsigned int val) snd_hdac_bus_send_cmd_corb() argument 228 unsigned int addr = azx_command_addr(val); snd_hdac_bus_send_cmd_corb() local 270 snd_hdac_bus_update_rirb(struct hdac_bus * bus) snd_hdac_bus_update_rirb() argument 273 unsigned int addr; snd_hdac_bus_update_rirb() local 324 snd_hdac_bus_get_response_rirb(struct hdac_bus * bus,unsigned int addr,unsigned int * res) snd_hdac_bus_get_response_rirb() argument 325 snd_hdac_bus_get_response_rirb(struct hdac_bus * bus,unsigned int addr,unsigned int * res) snd_hdac_bus_get_response_rirb() argument 384 snd_hdac_bus_send_cmd(struct hdac_bus * bus,unsigned int val) snd_hdac_bus_send_cmd() argument 401 snd_hdac_bus_get_response(struct hdac_bus * bus,unsigned int addr,unsigned int * res) snd_hdac_bus_get_response() argument 418 snd_hdac_bus_parse_capabilities(struct hdac_bus * bus) snd_hdac_bus_parse_capabilities() argument 502 snd_hdac_bus_enter_link_reset(struct hdac_bus * bus) snd_hdac_bus_enter_link_reset() argument 522 snd_hdac_bus_exit_link_reset(struct hdac_bus * bus) snd_hdac_bus_exit_link_reset() argument 535 snd_hdac_bus_reset_link(struct hdac_bus * bus,bool full_reset) snd_hdac_bus_reset_link() argument 576 azx_int_enable(struct hdac_bus * bus) azx_int_enable() argument 585 azx_int_disable(struct hdac_bus * bus) azx_int_disable() argument 598 azx_int_clear(struct hdac_bus * bus) azx_int_clear() argument 621 snd_hdac_bus_init_chip(struct hdac_bus * bus,bool full_reset) snd_hdac_bus_init_chip() argument 654 snd_hdac_bus_stop_chip(struct hdac_bus * bus) snd_hdac_bus_stop_chip() argument 684 snd_hdac_bus_handle_stream_irq(struct hdac_bus * bus,unsigned int status,void (* ack)(struct hdac_bus *,struct hdac_stream *)) snd_hdac_bus_handle_stream_irq() argument 715 snd_hdac_bus_alloc_stream_pages(struct hdac_bus * bus) snd_hdac_bus_alloc_stream_pages() argument 750 snd_hdac_bus_free_stream_pages(struct hdac_bus * bus) snd_hdac_bus_free_stream_pages() argument [all...] |
| H A D | bus.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * HD-audio core bus driver 24 * snd_hdac_bus_init - initialize a HD-audio bas bus 25 * @bus 31 snd_hdac_bus_init(struct hdac_bus * bus,struct device * dev,const struct hdac_bus_ops * ops) snd_hdac_bus_init() argument 70 snd_hdac_bus_exit(struct hdac_bus * bus) snd_hdac_bus_exit() argument 87 snd_hdac_bus_exec_verb(struct hdac_bus * bus,unsigned int addr,unsigned int cmd,unsigned int * res) snd_hdac_bus_exec_verb() argument 107 snd_hdac_bus_exec_verb_unlocked(struct hdac_bus * bus,unsigned int addr,unsigned int cmd,unsigned int * res) snd_hdac_bus_exec_verb_unlocked() argument 148 snd_hdac_bus_queue_event(struct hdac_bus * bus,u32 res,u32 res_ex) snd_hdac_bus_queue_event() argument 171 struct hdac_bus *bus = container_of(work, struct hdac_bus, unsol_work); snd_hdac_bus_process_unsol_events() local 206 snd_hdac_bus_add_device(struct hdac_bus * bus,struct hdac_device * codec) snd_hdac_bus_add_device() argument 226 snd_hdac_bus_remove_device(struct hdac_bus * bus,struct hdac_device * codec) snd_hdac_bus_remove_device() argument 241 snd_hdac_aligned_read(void __iomem * addr,unsigned int mask) snd_hdac_aligned_read() argument 253 snd_hdac_aligned_write(unsigned int val,void __iomem * addr,unsigned int mask) snd_hdac_aligned_write() argument 271 struct hdac_bus *bus = codec->bus; snd_hdac_codec_link_up() local 282 struct hdac_bus *bus = codec->bus; snd_hdac_codec_link_down() local [all...] |
| /linux/drivers/net/dsa/sja1105/ |
| H A D | sja1105_mdio.c | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <linux/pcs/pcs-xpcs.h> 10 int sja1105_pcs_mdio_read_c45(struct mii_bus *bus, int phy, int mmd, int reg) in sja1105_pcs_mdio_read_c45() argument 12 struct sja1105_mdio_private *mdio_priv = bus->priv; in sja1105_pcs_mdio_read_c45() 13 struct sja1105_private *priv = mdio_priv->priv; in sja1105_pcs_mdio_read_c45() 14 u64 addr; in sja1105_pcs_mdio_read_c45() local 18 addr = (mmd << 16) | reg; in sja1105_pcs_mdio_read_c45() 28 rc = sja1105_xfer_u32(priv, SPI_READ, addr, &tmp, NULL); in sja1105_pcs_mdio_read_c45() 35 int sja1105_pcs_mdio_write_c45(struct mii_bus *bus, int phy, int mmd, in sja1105_pcs_mdio_write_c45() argument 38 struct sja1105_mdio_private *mdio_priv = bus->priv; in sja1105_pcs_mdio_write_c45() [all …]
|
| /linux/drivers/media/pci/cx25821/ |
| H A 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 …]
|
| /linux/drivers/pci/controller/ |
| H A D | pci-thunder-ecam.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/pci-ecam.h> 14 #include "pci-host-common.h" 31 static int handle_ea_bar(u32 e0, int bar, struct pci_bus *bus, in handle_ea_bar() argument 34 void __iomem *addr; in handle_ea_bar() local 37 /* Entries are 16-byte aligned; bits[2,3] select word in entry */ in handle_ea_bar() 45 addr = bus->ops->map_bus(bus, devfn, bar); /* BAR 0 */ in handle_ea_bar() 46 if (!addr) in handle_ea_bar() 49 v = readl(addr); in handle_ea_bar() 51 v |= 2; /* EA entry-1. Base-L */ in handle_ea_bar() [all …]
|
| /linux/include/trace/events/ |
| H A D | fsi_master_i2cr.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 15 __field(int, bus) 18 __field(unsigned short, addr) 21 __entry->bus = client->adapter->nr; 22 __entry->rc = rc; 23 memcpy(__entry->command, &command, sizeof(uint32_t)); 24 __entry->addr = client->addr; 26 TP_printk("%d-%02x command:{ %*ph } rc:%d", __entry->bus, __entry->addr, 27 (int)sizeof(uint32_t), __entry->command, __entry->rc) 34 __field(int, bus) [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/ |
| H A 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 …]
|
| H A D | busgf119.c | 25 #include "bus.h" 29 u32 addr; member 35 struct gf119_i2c_bus *bus = gf119_i2c_bus(base); in gf119_i2c_bus_drive_scl() local 36 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in gf119_i2c_bus_drive_scl() 37 nvkm_mask(device, bus->addr, 0x00000001, state ? 0x00000001 : 0); in gf119_i2c_bus_drive_scl() 43 struct gf119_i2c_bus *bus = gf119_i2c_bus(base); in gf119_i2c_bus_drive_sda() local 44 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in gf119_i2c_bus_drive_sda() 45 nvkm_mask(device, bus->addr, 0x00000002, state ? 0x00000002 : 0); in gf119_i2c_bus_drive_sda() 51 struct gf119_i2c_bus *bus = gf119_i2c_bus(base); in gf119_i2c_bus_sense_scl() local 52 struct nvkm_device *device = bus->base.pad->i2c->subdev.device; in gf119_i2c_bus_sense_scl() [all …]
|
| /linux/sound/i2c/ |
| H A 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 …]
|
| /linux/drivers/media/pci/cx23885/ |
| H A D | cx23885-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 15 #include <media/v4l2-common.h> 23 MODULE_PARM_DESC(i2c_scan, "scan i2c bus at insmod time"); 39 struct cx23885_i2c *bus = i2c_adap->algo_data; in i2c_slave_did_ack() local 40 struct cx23885_dev *dev = bus->dev; in i2c_slave_did_ack() 41 return cx_read(bus->reg_stat) & 0x01; in i2c_slave_did_ack() 46 struct cx23885_i2c *bus = i2c_adap->algo_data; in i2c_is_busy() local 47 struct cx23885_dev *dev = bus->dev; in i2c_is_busy() 48 return cx_read(bus->reg_stat) & 0x02 ? 1 : 0; in i2c_is_busy() 70 struct cx23885_i2c *bus = i2c_adap->algo_data; in i2c_sendbytes() local [all …]
|
| /linux/include/sound/ |
| H A D | hdaudio.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * HD-audio core stuff 12 #include <linux/io-64-nonatomic-lo-hi.h> 34 * exported bus type 50 * HD-audi 55 struct hdac_bus *bus; global() member 56 unsigned int addr; /* codec address */ global() member 271 dma_addr_t addr; /* physical address of CORB/RIRB buffer */ global() member 297 unsigned long addr; global() member 420 snd_hdac_aligned_mmio(bus) global() argument 422 snd_hdac_aligned_mmio(bus) global() argument 423 snd_hdac_aligned_read(addr,mask) global() argument 424 snd_hdac_aligned_write(val,addr,mask) global() argument 427 snd_hdac_reg_writeb(struct hdac_bus * bus,void __iomem * addr,u8 val) snd_hdac_reg_writeb() argument 436 snd_hdac_reg_writew(struct hdac_bus * bus,void __iomem * addr,u16 val) snd_hdac_reg_writew() argument 445 snd_hdac_reg_readb(struct hdac_bus * bus,void __iomem * addr) snd_hdac_reg_readb() argument 451 snd_hdac_reg_readw(struct hdac_bus * bus,void __iomem * addr) snd_hdac_reg_readw() argument 457 snd_hdac_reg_writel(bus,addr,val) global() argument 458 snd_hdac_reg_readl(bus,addr) global() argument 459 snd_hdac_reg_writeq(bus,addr,val) global() argument 460 snd_hdac_reg_readq(bus,addr) global() argument 504 snd_hdac_updatel(addr,reg,mask,val) global() argument 507 snd_hdac_updatew(addr,reg,mask,val) global() argument 514 struct hdac_bus *bus; global() member [all...] |
| /linux/drivers/net/dsa/mv88e6xxx/ |
| H A D | phy.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 16 int mv88e6165_phy_read(struct mv88e6xxx_chip *chip, struct mii_bus *bus, in mv88e6165_phy_read() argument 17 int addr, int reg, u16 *val) in mv88e6165_phy_read() argument 19 return mv88e6xxx_read(chip, addr, reg, val); in mv88e6165_phy_read() 22 int mv88e6165_phy_write(struct mv88e6xxx_chip *chip, struct mii_bus *bus, in mv88e6165_phy_write() argument 23 int addr, int reg, u16 val) in mv88e6165_phy_write() argument 25 return mv88e6xxx_write(chip, addr, reg, val); in mv88e6165_phy_write() 30 int addr = phy; /* PHY devices addresses start at 0x0 */ in mv88e6xxx_phy_read() local 31 struct mii_bus *bus; in mv88e6xxx_phy_read() local 33 bus = mv88e6xxx_default_mdio_bus(chip); in mv88e6xxx_phy_read() [all …]
|
| /linux/drivers/media/usb/em28xx/ |
| H A D | em28xx-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // em28xx-i2c.c - driver for Empia EM2800/EM2820/2840 USB video capture devices 20 #include <media/v4l2-common.h> 23 /* ----------------------------------------------------------- */ 27 MODULE_PARM_DESC(i2c_scan, "scan i2c bus at insmod time"); 35 dev_printk(KERN_DEBUG, &dev->intf->dev, \ 54 switch (dev->i2c_speed & 0x03) { in em28xx_i2c_timeout() 73 static int em2800_i2c_send_bytes(struct em28xx *dev, u8 addr, u8 *buf, u16 len) in em2800_i2c_send_bytes() argument 80 return -EOPNOTSUPP; in em2800_i2c_send_bytes() 82 b2[5] = 0x80 + len - 1; in em2800_i2c_send_bytes() [all …]
|
| /linux/arch/powerpc/platforms/pasemi/ |
| H A D | pci.c | 1 // SPDX-License-Identifier: GPL-2.0-only 18 #include <asm/pci-bridge.h> 19 #include <asm/isa-bridge.h> 22 #include <asm/ppc-pci.h> 26 #define PA_PXP_CFA(bus, devfn, off) (((bus) << 20) | ((devfn) << 12) | (off)) argument 28 static inline int pa_pxp_offset_valid(u8 bus, u8 devfn, int offset) in pa_pxp_offset_valid() argument 31 * well, so allow larger offset. It's really a two-function device but the in pa_pxp_offset_valid() 34 if (bus == 0 && devfn == 0) in pa_pxp_offset_valid() 41 u8 bus, u8 devfn, int offset) in pa_pxp_cfg_addr() argument 43 return hose->cfg_data + PA_PXP_CFA(bus, devfn, offset); in pa_pxp_cfg_addr() [all …]
|
| /linux/drivers/ssb/ |
| H A D | host_soc.c | 18 struct ssb_bus *bus = dev->bus; in ssb_host_soc_read8() local 20 offset += dev->core_index * SSB_CORE_SIZE; in ssb_host_soc_read8() 21 return readb(bus->mmio + offset); in ssb_host_soc_read8() 26 struct ssb_bus *bus = dev->bus; in ssb_host_soc_read16() local 28 offset += dev->core_index * SSB_CORE_SIZE; in ssb_host_soc_read16() 29 return readw(bus->mmio + offset); in ssb_host_soc_read16() 34 struct ssb_bus *bus = dev->bus; in ssb_host_soc_read32() local 36 offset += dev->core_index * SSB_CORE_SIZE; in ssb_host_soc_read32() 37 return readl(bus->mmio + offset); in ssb_host_soc_read32() 44 struct ssb_bus *bus = dev->bus; in ssb_host_soc_block_read() local [all …]
|
| /linux/include/linux/ |
| H A D | mdio.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 4 * Copyright 2006-2009 Solarflare Communications Inc. 31 struct mii_bus *bus; member 38 /* Bus address of the MDIO device (0-31) */ 39 int addr; member 66 * up device-specific structures, if any 83 dev_set_drvdata(&mdio->dev, data); in mdiodev_set_drvdata() 88 return dev_get_drvdata(&mdio->dev); in mdiodev_get_drvdata() 92 struct mdio_device *mdio_device_create(struct mii_bus *bus, int addr); 101 get_device(&mdiodev->dev); in mdio_device_get() [all …]
|
| /linux/arch/m68k/coldfire/ |
| H A D | pci.c | 2 * pci.c -- PCI bus support for ColdFire processors 26 * PCI bus memory (no reason not to really). IO space is mapped in its own 34 * We need to be careful probing on bus 0 (directly connected to host 53 static unsigned long mcf_mk_pcicar(int bus, unsigned int devfn, int where) in mcf_mk_pcicar() argument 55 return (bus << PCICAR_BUSN) | (devfn << PCICAR_DEVFNN) | (where & 0xfc); in mcf_mk_pcicar() 58 static int mcf_pci_readconfig(struct pci_bus *bus, unsigned int devfn, in mcf_pci_readconfig() argument 61 unsigned long addr; in mcf_pci_readconfig() local 65 if (bus->number == 0) { in mcf_pci_readconfig() 70 addr = mcf_mk_pcicar(bus->number, devfn, where); in mcf_pci_readconfig() 71 __raw_writel(PCICAR_E | addr, PCICAR); in mcf_pci_readconfig() [all …]
|
| /linux/arch/x86/pci/ |
| H A D | numachip.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Numascale NumaConnect-specific PCI code 19 static inline char __iomem *pci_dev_base(unsigned int seg, unsigned int bus, unsigned int devfn) in pci_dev_base() argument 21 struct pci_mmcfg_region *cfg = pci_mmconfig_lookup(seg, bus); in pci_dev_base() 23 if (cfg && cfg->virt) in pci_dev_base() 24 return cfg->virt + (PCI_MMCFG_BUS_OFFSET(bus) | (devfn << 12)); in pci_dev_base() 28 static int pci_mmcfg_read_numachip(unsigned int seg, unsigned int bus, in pci_mmcfg_read_numachip() argument 31 char __iomem *addr; in pci_mmcfg_read_numachip() local 33 /* Why do we have this when nobody checks it. How about a BUG()!? -AK */ in pci_mmcfg_read_numachip() 34 if (unlikely((bus > 255) || (devfn > 255) || (reg > 4095))) { in pci_mmcfg_read_numachip() [all …]
|
| H A D | mmconfig_64.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mmconfig.c - Low-level direct PCI config space access via MMCONFIG 19 static char __iomem *pci_dev_base(unsigned int seg, unsigned int bus, unsigned int devfn) in pci_dev_base() argument 21 struct pci_mmcfg_region *cfg = pci_mmconfig_lookup(seg, bus); in pci_dev_base() 23 if (cfg && cfg->virt) in pci_dev_base() 24 return cfg->virt + (PCI_MMCFG_BUS_OFFSET(bus) | (devfn << 12)); in pci_dev_base() 28 static int pci_mmcfg_read(unsigned int seg, unsigned int bus, in pci_mmcfg_read() argument 31 char __iomem *addr; in pci_mmcfg_read() local 33 /* Why do we have this when nobody checks it. How about a BUG()!? -AK */ in pci_mmcfg_read() 34 if (unlikely((bus > 255) || (devfn > 255) || (reg > 4095))) { in pci_mmcfg_read() [all …]
|
| /linux/drivers/bcma/ |
| H A D | driver_pci_host.c | 5 * Copyright 2005 - 2011, Broadcom Corporation 7 * Copyright 2011, 2012, Hauke Mehrtens <hauke@hauke-m.de> 19 /* Probe a 32bit value on the bus and catch bus exceptions. 20 * Returns nonzero on a bus exception. 22 #define mips_busprobe32(val, addr) get_dbe((val), ((u32 *)(addr))) argument 24 /* Assume one-hot slot wiring */ 30 struct bcma_bus *bus = pc->core->bus; in bcma_core_pci_is_in_hostmode() local 34 chipid_top = (bus->chipinfo.id & 0xFF00); in bcma_core_pci_is_in_hostmode() 39 bcma_core_enable(pc->core, 0); in bcma_core_pci_is_in_hostmode() 41 return !mips_busprobe32(tmp, pc->core->io_addr); in bcma_core_pci_is_in_hostmode() [all …]
|
| /linux/drivers/spmi/ |
| H A D | spmi-pmic-arb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2012-2015, 2017, 2021, The Linux Foundation. All rights reserved. 52 #define SPMI_MAPPING_TABLE_TREE_DEPTH 16 /* Maximum of 16-bits */ 135 * struct spmi_pmic_arb_bus - SPMI PMIC Arbiter Bus object 137 * @pmic_arb: the SPMI PMIC Arbiter the bus belongs to. 141 * @spmic: spmi controller registered for this bus 144 * bus instance 146 * particular SPMI bus instance 147 * @mapping_table: in-memory copy of PPID -> APID mapping table. 148 * @mapping_table_valid:bitmap containing valid-only periphs [all …]
|
| /linux/drivers/net/mdio/ |
| H A D | mdio-airoha.c | 1 // SPDX-License-Identifier: GPL-2.0 20 #define AN7583_MII_RDY BIT(30) /* RO signal BUS is ready */ 51 return regmap_read_poll_timeout(priv->regmap, priv->base_addr, busy, in airoha_mdio_wait_busy() 63 * Example: (only one PHY on the BUS at 0x1f) in airoha_mdio_reset() 64 * - read at 0x1f report at 0x2 0x7500 in airoha_mdio_reset() 65 * - read at 0x0 report 0x7500 on every address in airoha_mdio_reset() 67 * To workaround this, we reset the Mdio BUS at every read in airoha_mdio_reset() 70 reset_control_assert(priv->reset); in airoha_mdio_reset() 71 reset_control_deassert(priv->reset); in airoha_mdio_reset() 74 static int airoha_mdio_read(struct mii_bus *bus, int addr, int regnum) in airoha_mdio_read() argument [all …]
|
| /linux/drivers/media/pci/saa7164/ |
| H A D | saa7164-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2010-2015 Steven Toth <stoth@kernellabs.com> 18 struct saa7164_i2c *bus = i2c_adap->algo_data; in i2c_xfer() local 19 struct saa7164_dev *dev = bus->dev; in i2c_xfer() 25 dprintk(DBGLVL_I2C, "%s(num = %d) addr = 0x%02x len = 0x%x\n", in i2c_xfer() 26 __func__, num, msgs[i].addr, msgs[i].len); in i2c_xfer() 28 retval = saa7164_api_i2c_read(bus, in i2c_xfer() 29 msgs[i].addr, in i2c_xfer() 33 msgs[i].addr == msgs[i + 1].addr) { in i2c_xfer() 36 retval = saa7164_api_i2c_read(bus, msgs[i].addr, in i2c_xfer() [all …]
|
| /linux/arch/mips/pci/ |
| H A D | pci-xtalk-bridge.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright (C) 1999, 2000, 04 Ralf Baechle (ralf@linux-mips.org) 11 #include <linux/dma-direct.h> 13 #include <linux/platform_data/xtalk-bridge.h> 14 #include <linux/nvmem-consumer.h> 27 * Common phys<->dma mapping for platforms using pci xtalk bridge 32 struct bridge_controller *bc = BRIDGE_CONTROLLER(pdev->bus); in phys_to_dma() 34 return bc->baddr + paddr; in phys_to_dma() 46 static int ioc3_cfg_rd(void *addr, int where, int size, u32 *value, u32 sid) in ioc3_cfg_rd() argument 53 if (get_dbe(cf, (u32 *)addr)) in ioc3_cfg_rd() [all …]
|