/linux/drivers/i2c/busses/ |
H A D | i2c-npcm7xx.c | 30 * of the bus. 126 #define NPCM_I2CT_OUT 0x14 /* Bus T.O. */ 155 #define NPCM_I2CST_BER BIT(5) /* Bus error */ 161 #define NPCM_I2CCST_BB BIT(1) /* Bus busy */ 339 static inline void npcm_i2c_select_bank(struct npcm_i2c *bus, in npcm_i2c_select_bank() argument 342 u8 i2cctl3 = ioread8(bus->reg + NPCM_I2CCTL3); in npcm_i2c_select_bank() 348 iowrite8(i2cctl3, bus->reg + NPCM_I2CCTL3); in npcm_i2c_select_bank() 351 static void npcm_i2c_init_params(struct npcm_i2c *bus) in npcm_i2c_init_params() argument 353 bus->stop_ind = I2C_NO_STATUS_IND; in npcm_i2c_init_params() 354 bus->rd_size = 0; in npcm_i2c_init_params() [all …]
|
H A D | i2c-aspeed.c | 171 static int aspeed_i2c_reset(struct aspeed_i2c_bus *bus); 173 /* precondition: bus.lock has been acquired. */ 174 static void aspeed_i2c_do_stop(struct aspeed_i2c_bus *bus) in aspeed_i2c_do_stop() argument 176 bus->master_state = ASPEED_I2C_MASTER_STOP; in aspeed_i2c_do_stop() 177 writel(ASPEED_I2CD_M_STOP_CMD, bus->base + ASPEED_I2C_CMD_REG); in aspeed_i2c_do_stop() 180 static int aspeed_i2c_recover_bus(struct aspeed_i2c_bus *bus) in aspeed_i2c_recover_bus() argument 186 spin_lock_irqsave(&bus->lock, flags); in aspeed_i2c_recover_bus() 187 command = readl(bus->base + ASPEED_I2C_CMD_REG); in aspeed_i2c_recover_bus() 190 /* Bus is idle: no recovery needed. */ in aspeed_i2c_recover_bus() 193 dev_dbg(bus->dev, "SCL hung (state %x), attempting recovery\n", in aspeed_i2c_recover_bus() [all …]
|
/linux/sound/hda/ |
H A D | hdac_controller.c | 15 static void azx_clear_corbrp(struct hdac_bus *bus) in azx_clear_corbrp() argument 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() 30 if (snd_hdac_chip_readw(bus, CORBRP) == 0) in azx_clear_corbrp() 35 dev_err(bus->dev, "CORB reset timeout#2, CORBRP = %d\n", in azx_clear_corbrp() 36 snd_hdac_chip_readw(bus, CORBRP)); in azx_clear_corbrp() 41 * @bus: HD-audio core bus 43 void snd_hdac_bus_init_cmd_io(struct hdac_bus *bus) in snd_hdac_bus_init_cmd_io() argument [all …]
|
H A D | hdac_bus.c | 3 * HD-audio core bus driver 24 * snd_hdac_bus_init - initialize a HD-audio bas bus 25 * @bus: the pointer to bus object 27 * @ops: bus verb operators 31 int snd_hdac_bus_init(struct hdac_bus *bus, struct device *dev, in snd_hdac_bus_init() argument 34 memset(bus, 0, sizeof(*bus)); in snd_hdac_bus_init() 35 bus->dev = dev; in snd_hdac_bus_init() 37 bus->ops = ops; in snd_hdac_bus_init() 39 bus->ops = &default_ops; in snd_hdac_bus_init() 40 bus->dma_type = SNDRV_DMA_TYPE_DEV; in snd_hdac_bus_init() [all …]
|
/linux/sound/i2c/ |
H A D | i2c.c | 25 static int snd_i2c_bit_probeaddr(struct snd_i2c_bus *bus, 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() 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() 46 list_del(&bus->buses); in snd_i2c_bus_free() 48 while (!list_empty(&bus->buses)) { in snd_i2c_bus_free() 49 slave = snd_i2c_slave_bus(bus->buses.next); in snd_i2c_bus_free() 50 snd_device_free(bus->card, slave); in snd_i2c_bus_free() [all …]
|
/linux/include/sound/ |
H A D | hda-mlink.h | 14 int hda_bus_ml_init(struct hdac_bus *bus); 15 void hda_bus_ml_free(struct hdac_bus *bus); 17 int hdac_bus_eml_get_count(struct hdac_bus *bus, bool alt, int elid); 18 void hdac_bus_eml_enable_interrupt(struct hdac_bus *bus, bool alt, int elid, bool enable); 19 bool hdac_bus_eml_check_interrupt(struct hdac_bus *bus, bool alt, int elid); 21 int hdac_bus_eml_set_syncprd_unlocked(struct hdac_bus *bus, bool alt, int elid, u32 syncprd); 22 int hdac_bus_eml_sdw_set_syncprd_unlocked(struct hdac_bus *bus, u32 syncprd); 24 int hdac_bus_eml_wait_syncpu_unlocked(struct hdac_bus *bus, bool alt, int elid); 25 int hdac_bus_eml_sdw_wait_syncpu_unlocked(struct hdac_bus *bus); 27 void hdac_bus_eml_sync_arm_unlocked(struct hdac_bus *bus, bool alt, int elid, int sublink); [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/ |
H A D | bit.c | 24 #include "bus.h" 32 nvkm_i2c_drive_scl(struct nvkm_i2c_bus *bus, int state) in nvkm_i2c_drive_scl() argument 34 bus->func->drive_scl(bus, state); in nvkm_i2c_drive_scl() 38 nvkm_i2c_drive_sda(struct nvkm_i2c_bus *bus, int state) in nvkm_i2c_drive_sda() argument 40 bus->func->drive_sda(bus, state); in nvkm_i2c_drive_sda() 44 nvkm_i2c_sense_scl(struct nvkm_i2c_bus *bus) in nvkm_i2c_sense_scl() argument 46 return bus->func->sense_scl(bus); in nvkm_i2c_sense_scl() 50 nvkm_i2c_sense_sda(struct nvkm_i2c_bus *bus) in nvkm_i2c_sense_sda() argument 52 return bus->func->sense_sda(bus); in nvkm_i2c_sense_sda() 56 nvkm_i2c_delay(struct nvkm_i2c_bus *bus, u32 nsec) in nvkm_i2c_delay() argument [all …]
|
H A D | bus.c | 24 #include "bus.h" 35 struct nvkm_i2c_bus *bus = container_of(adap, typeof(*bus), i2c); in nvkm_i2c_bus_pre_xfer() local 36 return nvkm_i2c_bus_acquire(bus); in nvkm_i2c_bus_pre_xfer() 42 struct nvkm_i2c_bus *bus = container_of(adap, typeof(*bus), i2c); in nvkm_i2c_bus_post_xfer() local 43 return nvkm_i2c_bus_release(bus); in nvkm_i2c_bus_post_xfer() 49 struct nvkm_i2c_bus *bus = data; in nvkm_i2c_bus_setscl() local 50 bus->func->drive_scl(bus, state); in nvkm_i2c_bus_setscl() 56 struct nvkm_i2c_bus *bus = data; in nvkm_i2c_bus_setsda() local 57 bus->func->drive_sda(bus, state); in nvkm_i2c_bus_setsda() 63 struct nvkm_i2c_bus *bus = data; in nvkm_i2c_bus_getscl() local [all …]
|
/linux/drivers/net/phy/ |
H A D | mdio_bus.c | 2 /* MDIO Bus interface 73 if (mdiodev->bus->mdio_map[mdiodev->addr]) in mdiobus_register_device() 89 mdiodev->bus->mdio_map[mdiodev->addr] = mdiodev; in mdiobus_register_device() 97 if (mdiodev->bus->mdio_map[mdiodev->addr] != mdiodev) in mdiobus_unregister_device() 102 mdiodev->bus->mdio_map[mdiodev->addr] = NULL; in mdiobus_unregister_device() 108 static struct mdio_device *mdiobus_find_device(struct mii_bus *bus, int addr) in mdiobus_find_device() argument 110 bool addr_valid = addr >= 0 && addr < ARRAY_SIZE(bus->mdio_map); in mdiobus_find_device() 115 return bus->mdio_map[addr]; in mdiobus_find_device() 118 struct phy_device *mdiobus_get_phy(struct mii_bus *bus, int addr) in mdiobus_get_phy() argument 122 mdiodev = mdiobus_find_device(bus, addr); in mdiobus_get_phy() [all …]
|
H A D | sfp-bus.c | 14 * struct sfp_bus - internal representation of a sfp bus 37 * @bus: a pointer to the &struct sfp_bus structure for the sfp module 49 int sfp_parse_port(struct sfp_bus *bus, const struct sfp_eeprom_id *id, in sfp_parse_port() argument 88 dev_warn(bus->sfp_dev, "SFP: unknown connector id 0x%02x\n", in sfp_parse_port() 112 * @bus: a pointer to the &struct sfp_bus structure for the sfp module 118 bool sfp_may_have_phy(struct sfp_bus *bus, const struct sfp_eeprom_id *id) in sfp_may_have_phy() argument 139 * @bus: a pointer to the &struct sfp_bus structure for the sfp module 148 void sfp_parse_support(struct sfp_bus *bus, const struct sfp_eeprom_id *id, in sfp_parse_support() argument 298 dev_warn(bus->sfp_dev, in sfp_parse_support() 342 if (bus->sfp_quirk && bus->sfp_quirk->modes) in sfp_parse_support() [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-bus-i3c | 1 What: /sys/bus/i3c/devices/i3c-<bus-id> 5 An I3C bus. This directory will contain one sub-directory per 6 I3C device present on the bus. 8 What: /sys/bus/i3c/devices/i3c-<bus-id>/current_master 12 Expose the master that owns the bus (<bus-id>-<master-pid>) at 13 the time this file is read. Note that bus ownership can change 17 What: /sys/bus/i3c/devices/i3c-<bus-id>/mode 21 I3C bus mode. Can be "pure", "mixed-fast" or "mixed-slow". See 25 What: /sys/bus/i3c/devices/i3c-<bus-id>/i3c_scl_frequency 32 What: /sys/bus/i3c/devices/i3c-<bus-id>/i2c_scl_frequency [all …]
|
H A D | sysfs-bus-soundwire-slave | 1 What: /sys/bus/soundwire/devices/sdw:.../status 2 /sys/bus/soundwire/devices/sdw:.../device_number 16 physically present on the bus, and conversely devices 19 What: /sys/bus/soundwire/devices/sdw:.../dev-properties/mipi_revision 20 /sys/bus/soundwire/devices/sdw:.../dev-properties/wake_capable 21 /sys/bus/soundwire/devices/sdw:.../dev-properties/test_mode_capable 22 /sys/bus/soundwire/devices/sdw:.../dev-properties/clk_stop_mode1 23 /sys/bus/soundwire/devices/sdw:.../dev-properties/simple_clk_stop_capable 24 /sys/bus/soundwire/devices/sdw:.../dev-properties/clk_stop_timeout 25 /sys/bus/soundwire/devices/sdw:.../dev-properties/ch_prep_timeout [all …]
|
/linux/drivers/ssb/ |
H A D | driver_gpio.c | 28 struct ssb_bus *bus = gpiochip_get_data(chip); in ssb_gpio_to_irq() local 30 if (bus->bustype == SSB_BUSTYPE_SSB) in ssb_gpio_to_irq() 31 return irq_find_mapping(bus->irq_domain, gpio); in ssb_gpio_to_irq() 43 struct ssb_bus *bus = gpiochip_get_data(chip); in ssb_gpio_chipco_get_value() local 45 return !!ssb_chipco_gpio_in(&bus->chipco, 1 << gpio); in ssb_gpio_chipco_get_value() 51 struct ssb_bus *bus = gpiochip_get_data(chip); in ssb_gpio_chipco_set_value() local 53 ssb_chipco_gpio_out(&bus->chipco, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_chipco_set_value() 59 struct ssb_bus *bus = gpiochip_get_data(chip); in ssb_gpio_chipco_direction_input() local 61 ssb_chipco_gpio_outen(&bus->chipco, 1 << gpio, 0); in ssb_gpio_chipco_direction_input() 68 struct ssb_bus *bus = gpiochip_get_data(chip); in ssb_gpio_chipco_direction_output() local [all …]
|
H A D | scan.c | 3 * Bus scanning 160 static u32 scan_read32(struct ssb_bus *bus, u8 current_coreidx, in scan_read32() argument 165 switch (bus->bustype) { in scan_read32() 173 ssb_pcmcia_switch_segment(bus, 1); in scan_read32() 176 ssb_pcmcia_switch_segment(bus, 0); in scan_read32() 177 lo = readw(bus->mmio + offset); in scan_read32() 178 hi = readw(bus->mmio + offset + 2); in scan_read32() 182 return ssb_sdio_scan_read32(bus, offset); in scan_read32() 184 return readl(bus->mmio + offset); in scan_read32() 187 static int scan_switchcore(struct ssb_bus *bus, u8 coreidx) in scan_switchcore() argument [all …]
|
H A D | embedded.c | 23 int ssb_watchdog_timer_set(struct ssb_bus *bus, u32 ticks) in ssb_watchdog_timer_set() argument 25 if (ssb_chipco_available(&bus->chipco)) { in ssb_watchdog_timer_set() 26 ssb_chipco_watchdog_timer_set(&bus->chipco, ticks); in ssb_watchdog_timer_set() 29 if (ssb_extif_available(&bus->extif)) { in ssb_watchdog_timer_set() 30 ssb_extif_watchdog_timer_set(&bus->extif, ticks); in ssb_watchdog_timer_set() 37 int ssb_watchdog_register(struct ssb_bus *bus) in ssb_watchdog_register() argument 42 if (ssb_chipco_available(&bus->chipco)) { in ssb_watchdog_register() 43 wdt.driver_data = &bus->chipco; in ssb_watchdog_register() 46 wdt.max_timer_ms = bus->chipco.max_timer_ms; in ssb_watchdog_register() 47 } else if (ssb_extif_available(&bus->extif)) { in ssb_watchdog_register() [all …]
|
H A D | sdio.c | 104 static inline struct device *ssb_sdio_dev(struct ssb_bus *bus) in ssb_sdio_dev() argument 106 return &bus->host_sdio->dev; in ssb_sdio_dev() 110 static int ssb_sdio_writeb(struct ssb_bus *bus, unsigned int addr, u8 val) in ssb_sdio_writeb() argument 114 sdio_writeb(bus->host_sdio, val, addr, &error); in ssb_sdio_writeb() 116 dev_dbg(ssb_sdio_dev(bus), "%08X <- %02x, error %d\n", in ssb_sdio_writeb() 124 static u8 ssb_sdio_readb(struct ssb_bus *bus, unsigned int addr) 129 val = sdio_readb(bus->host_sdio, addr, &error); 131 dev_dbg(ssb_sdio_dev(bus), "%08X -> %02x, error %d\n", 140 static int ssb_sdio_set_sbaddr_window(struct ssb_bus *bus, u32 address) in ssb_sdio_set_sbaddr_window() argument 144 error = ssb_sdio_writeb(bus, SBSDIO_FUNC1_SBADDRLOW, in ssb_sdio_set_sbaddr_window() [all …]
|
/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/ |
H A D | sdio.c | 112 #include "bus.h" 147 * sdio bus power cycle to clear (rev 9) */ 222 #define I_BUSPWR (1 << 17) /* SDIO Bus Power Change (rev 9) */ 389 /* dongle SDIO bus specific header info */ 436 /* Private data for SDIO bus interaction */ 476 u8 sdpcm_ver; /* Bus protocol reported by dongle */ 494 s32 idleclock; /* How to set bus driver when idle */ 504 spinlock_t txq_lock; /* protect bus->txq */ 523 u8 tx_hdrlen; /* sdio bus header length for tx packet */ 676 static bool data_ok(struct brcmf_sdio *bus) in data_ok() argument [all …]
|
H A D | bus.h | 43 /* The level of bus communication with the dongle */ 49 /* The level of bus communication with the dongle */ 71 * struct brcmf_bus_ops - bus callback operations. 73 * @preinit: execute bus/device specific dongle init commands (optional). 83 * @gettxq: obtain a reference of bus transmit queue (optional). 91 * bus specific driver. For control messages to common driver 114 * struct brcmf_bus_msgbuf - bus ringbuf if in case of msgbuf. 136 * struct brcmf_bus_stats - bus statistic counters. 147 * struct brcmf_bus - interface structure between common and bus layer 149 * @bus_priv: pointer to private bus device. [all …]
|
/linux/drivers/bcma/ |
H A D | main.c | 3 * Bus subsystem 23 /* contains the number the next bus should get. */ 80 static u16 bcma_cc_core_id(struct bcma_bus *bus) in bcma_cc_core_id() argument 82 if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4706) in bcma_cc_core_id() 87 struct bcma_device *bcma_find_core_unit(struct bcma_bus *bus, u16 coreid, in bcma_find_core_unit() argument 92 list_for_each_entry(core, &bus->cores, list) { in bcma_find_core_unit() 114 bcma_warn(core->bus, "Timeout waiting for register 0x%04X!\n", reg); in bcma_wait_value() 192 bcma_debug(core->bus, "bcma_of_get_irq() failed with rc=%d\n", in bcma_of_get_irq() 216 struct bcma_bus *bus = core->bus; in bcma_core_irq() local 219 switch (bus->hosttype) { in bcma_core_irq() [all …]
|
H A D | driver_mips.c | 36 return dev->bus->chipinfo.id == BCMA_CHIP_ID_BCM47162 && in bcma_core_mips_bcm47162a0_quirk() 37 dev->bus->chipinfo.rev == 0 && dev->id.id == BCMA_CORE_MIPS_74K; in bcma_core_mips_bcm47162a0_quirk() 43 return (dev->bus->chipinfo.id == BCMA_CHIP_ID_BCM5357 || in bcma_core_mips_bcm5357b0_quirk() 44 dev->bus->chipinfo.id == BCMA_CHIP_ID_BCM4749) && in bcma_core_mips_bcm5357b0_quirk() 45 dev->bus->chipinfo.pkg == 11 && in bcma_core_mips_bcm5357b0_quirk() 72 struct bcma_device *mdev = dev->bus->drv_mips.core; in bcma_core_mips_irq() 91 struct bcma_bus *bus = dev->bus; in bcma_core_mips_set_irq() local 92 struct bcma_device *mdev = bus->drv_mips.core; in bcma_core_mips_set_irq() 122 list_for_each_entry(core, &bus->cores, list) { in bcma_core_mips_set_irq() 134 bcma_debug(bus, "set_irq: core 0x%04x, irq %d => %d\n", in bcma_core_mips_set_irq() [all …]
|
/linux/drivers/devfreq/ |
H A D | exynos-bus.c | 3 * Generic Exynos Bus frequency driver with DEVFREQ Framework 8 * This driver support Exynos Bus frequency feature by using 42 * Control the devfreq-event device to get the current state of bus 45 static int exynos_bus_##ops(struct exynos_bus *bus) \ 49 for (i = 0; i < bus->edev_count; i++) { \ 50 if (!bus->edev[i]) \ 52 ret = devfreq_event_##ops(bus->edev[i]); \ 63 static int exynos_bus_get_event(struct exynos_bus *bus, in exynos_bus_get_event() argument 70 for (i = 0; i < bus->edev_count; i++) { in exynos_bus_get_event() 71 if (!bus->edev[i]) in exynos_bus_get_event() [all …]
|
/linux/arch/powerpc/platforms/pasemi/ |
H A D | gpio_mdio.c | 34 #define MDC_PIN(bus) (((struct gpio_priv *)bus->priv)->mdc_pin) argument 35 #define MDIO_PIN(bus) (((struct gpio_priv *)bus->priv)->mdio_pin) argument 37 static inline void mdio_lo(struct mii_bus *bus) in mdio_lo() argument 39 out_le32(gpio_regs+0x10, 1 << MDIO_PIN(bus)); in mdio_lo() 42 static inline void mdio_hi(struct mii_bus *bus) in mdio_hi() argument 44 out_le32(gpio_regs, 1 << MDIO_PIN(bus)); in mdio_hi() 47 static inline void mdc_lo(struct mii_bus *bus) in mdc_lo() argument 49 out_le32(gpio_regs+0x10, 1 << MDC_PIN(bus)); in mdc_lo() 52 static inline void mdc_hi(struct mii_bus *bus) in mdc_hi() argument 54 out_le32(gpio_regs, 1 << MDC_PIN(bus)); in mdc_hi() [all …]
|
/linux/sound/soc/intel/avs/ |
H A D | core.c | 42 avs_hda_update_config_dword(struct hdac_bus *bus, u32 reg, u32 mask, u32 value) in avs_hda_update_config_dword() argument 44 struct pci_dev *pci = to_pci_dev(bus->dev); in avs_hda_update_config_dword() 60 static void avs_hdac_clock_gating_enable(struct hdac_bus *bus, bool enable) in avs_hdac_clock_gating_enable() argument 64 avs_hda_update_config_dword(bus, AZX_PCIREG_CGCTL, cgctl_mask, value); in avs_hdac_clock_gating_enable() 84 static int avs_hdac_bus_init_streams(struct hdac_bus *bus) in avs_hdac_bus_init_streams() argument 89 gcap = snd_hdac_chip_readw(bus, GCAP); in avs_hdac_bus_init_streams() 92 bus->num_streams = cp_streams + pb_streams; in avs_hdac_bus_init_streams() 94 snd_hdac_ext_stream_init_all(bus, 0, cp_streams, SNDRV_PCM_STREAM_CAPTURE); in avs_hdac_bus_init_streams() 95 snd_hdac_ext_stream_init_all(bus, cp_streams, pb_streams, SNDRV_PCM_STREAM_PLAYBACK); in avs_hdac_bus_init_streams() 97 return snd_hdac_bus_alloc_stream_pages(bus); in avs_hdac_bus_init_streams() [all …]
|
/linux/sound/hda/ext/ |
H A D | hdac_ext_controller.c | 24 * @bus: the pointer to HDAC bus object 27 void snd_hdac_ext_bus_ppcap_enable(struct hdac_bus *bus, bool enable) in snd_hdac_ext_bus_ppcap_enable() argument 30 if (!bus->ppcap) { in snd_hdac_ext_bus_ppcap_enable() 31 dev_err(bus->dev, "Address of PP capability is NULL"); in snd_hdac_ext_bus_ppcap_enable() 36 snd_hdac_updatel(bus->ppcap, AZX_REG_PP_PPCTL, in snd_hdac_ext_bus_ppcap_enable() 39 snd_hdac_updatel(bus->ppcap, AZX_REG_PP_PPCTL, in snd_hdac_ext_bus_ppcap_enable() 46 * @bus: the pointer to HDAC bus object 49 void snd_hdac_ext_bus_ppcap_int_enable(struct hdac_bus *bus, bool enable) in snd_hdac_ext_bus_ppcap_int_enable() argument 52 if (!bus->ppcap) { in snd_hdac_ext_bus_ppcap_int_enable() 53 dev_err(bus->dev, "Address of PP capability is NULL\n"); in snd_hdac_ext_bus_ppcap_int_enable() [all …]
|
/linux/drivers/net/wireless/silabs/wfx/ |
H A D | bus_sdio.c | 18 #include "bus.h" 54 struct wfx_sdio_priv *bus = priv; in wfx_sdio_copy_from_io() local 64 sdio_addr |= (bus->buf_id_rx + 1) << 7; in wfx_sdio_copy_from_io() 65 ret = sdio_memcpy_fromio(bus->func, dst, sdio_addr, count); in wfx_sdio_copy_from_io() 67 bus->buf_id_rx = (bus->buf_id_rx + 1) % 4; in wfx_sdio_copy_from_io() 74 struct wfx_sdio_priv *bus = priv; in wfx_sdio_copy_to_io() local 84 sdio_addr |= bus->buf_id_tx << 7; in wfx_sdio_copy_to_io() 86 ret = sdio_memcpy_toio(bus->func, sdio_addr, (void *)src, count); in wfx_sdio_copy_to_io() 88 bus->buf_id_tx = (bus->buf_id_tx + 1) % 32; in wfx_sdio_copy_to_io() 95 struct wfx_sdio_priv *bus = priv; in wfx_sdio_lock() local [all …]
|