/linux/drivers/fsi/ |
H A D | fsi-master-ast-cf.c | 4 * A FSI master based on Aspeed ColdFire coprocessor 25 #include "fsi-master.h" 88 struct fsi_master master; member 120 #define to_fsi_master_acf(m) container_of(m, struct fsi_master_acf, master) 159 static bool check_same_address(struct fsi_master_acf *master, int id, in check_same_address() argument 163 return master->last_addr == (((id & 0x3) << 21) | (addr & ~0x3)); in check_same_address() 166 static bool check_relative_address(struct fsi_master_acf *master, int id, in check_relative_address() argument 169 uint32_t last_addr = master->last_addr; in check_relative_address() 196 static void last_address_update(struct fsi_master_acf *master, in last_address_update() argument 200 master->last_addr = LAST_ADDR_INVALID; in last_address_update() [all …]
|
H A D | fsi-master-gpio.c | 3 * A FSI master controller, using a simple GPIO bit-banging interface 18 #include "fsi-master.h" 24 struct fsi_master master; member 42 #define to_fsi_master_gpio(m) container_of(m, struct fsi_master_gpio, master) 49 static void clock_toggle(struct fsi_master_gpio *master, int count) in clock_toggle() argument 54 if (!master->no_delays) in clock_toggle() 56 gpiod_set_value(master->gpio_clk, 0); in clock_toggle() 57 if (!master->no_delays) in clock_toggle() 59 gpiod_set_value(master->gpio_clk, 1); in clock_toggle() 63 static int sda_clock_in(struct fsi_master_gpio *master) in sda_clock_in() argument [all …]
|
H A D | fsi-core.c | 27 #include "fsi-master.h" 97 static int fsi_master_read(struct fsi_master *master, int link, 99 static int fsi_master_write(struct fsi_master *master, int link, 101 static int fsi_master_break(struct fsi_master *master, int link); 197 struct fsi_master *master = slave->master; in fsi_slave_report_and_clear_errors() local 205 rc = fsi_master_read(master, link, id, FSI_SLAVE_BASE + FSI_SISC, in fsi_slave_report_and_clear_errors() 210 rc = fsi_master_read(master, link, id, FSI_SLAVE_BASE + FSI_SSTAT, in fsi_slave_report_and_clear_errors() 219 return fsi_master_write(master, link, id, FSI_SLAVE_BASE + FSI_SISC, in fsi_slave_report_and_clear_errors() 266 return fsi_master_write(slave->master, slave->link, slave->id, in fsi_slave_set_smode() 274 struct fsi_master *master = slave->master; in fsi_slave_handle_error() local [all …]
|
H A D | fsi-master-hub.c | 3 * FSI hub master driver 14 #include "fsi-master.h" 21 * FSI hub master support 23 * A hub master increases the number of potential target devices that the 24 * primary FSI master can access. For each link a primary master supports, 25 * each of those links can in turn be chained to a hub master with multiple 37 struct fsi_master master; member 40 /* master address space */ 43 #define to_fsi_master_hub(m) container_of(m, struct fsi_master_hub, master) 45 static int hub_master_read(struct fsi_master *master, int link, in hub_master_read() argument [all …]
|
/linux/drivers/i3c/master/ |
H A D | dw-i3c-master.c | 13 #include <linux/i3c/master.h> 26 #include "dw-i3c-master.h" 292 to_dw_i3c_master(struct i3c_master_controller *master) in to_dw_i3c_master() argument 294 return container_of(master, struct dw_i3c_master, base); in to_dw_i3c_master() 297 static void dw_i3c_master_disable(struct dw_i3c_master *master) in dw_i3c_master_disable() argument 299 writel(readl(master->regs + DEVICE_CTRL) & ~DEV_CTRL_ENABLE, in dw_i3c_master_disable() 300 master->regs + DEVICE_CTRL); in dw_i3c_master_disable() 303 static void dw_i3c_master_enable(struct dw_i3c_master *master) in dw_i3c_master_enable() argument 307 dev_ctrl = readl(master->regs + DEVICE_CTRL); in dw_i3c_master_enable() 310 if (master->i2c_slv_prsnt) in dw_i3c_master_enable() [all …]
|
H A D | svc-i3c-master.c | 3 * Silvaco dual-role I3C master driver 14 #include <linux/i3c/master.h> 24 /* Master Mode Registers */ 162 * struct svc_i3c_master - Silvaco I3C Master structure 163 * @base: I3C master controller 185 * @lock: Transfer lock, protect between IBI work thread and callbacks from master 223 * @index: Index in the master tables corresponding to this device 224 * @ibi: IBI slot index in the master structure 233 static inline bool is_events_enabled(struct svc_i3c_master *master, u32 mask) in is_events_enabled() argument 235 return !!(master->enabled_events & mask); in is_events_enabled() [all …]
|
H A D | i3c-master-cdns.c | 12 #include <linux/i3c/master.h> 422 to_cdns_i3c_master(struct i3c_master_controller *master) in to_cdns_i3c_master() argument 424 return container_of(master, struct cdns_i3c_master, base); in to_cdns_i3c_master() 427 static void cdns_i3c_master_wr_to_tx_fifo(struct cdns_i3c_master *master, in cdns_i3c_master_wr_to_tx_fifo() argument 430 writesl(master->regs + TX_FIFO, bytes, nbytes / 4); in cdns_i3c_master_wr_to_tx_fifo() 435 writesl(master->regs + TX_FIFO, &tmp, 1); in cdns_i3c_master_wr_to_tx_fifo() 439 static void cdns_i3c_master_rd_from_rx_fifo(struct cdns_i3c_master *master, in cdns_i3c_master_rd_from_rx_fifo() argument 442 readsl(master->regs + RX_FIFO, bytes, nbytes / 4); in cdns_i3c_master_rd_from_rx_fifo() 446 readsl(master->regs + RX_FIFO, &tmp, 1); in cdns_i3c_master_rd_from_rx_fifo() 492 static int cdns_i3c_master_disable(struct cdns_i3c_master *master) in cdns_i3c_master_disable() argument [all …]
|
/linux/drivers/clk/at91/ |
H A D | clk-master.c | 46 static inline bool clk_master_ready(struct clk_master *master) in clk_master_ready() argument 48 unsigned int bit = master->id ? AT91_PMC_MCKXRDY : AT91_PMC_MCKRDY; in clk_master_ready() 51 regmap_read(master->regmap, AT91_PMC_SR, &status); in clk_master_ready() 58 struct clk_master *master = to_clk_master(hw); in clk_master_prepare() local 61 spin_lock_irqsave(master->lock, flags); in clk_master_prepare() 63 while (!clk_master_ready(master)) in clk_master_prepare() 66 spin_unlock_irqrestore(master->lock, flags); in clk_master_prepare() 73 struct clk_master *master = to_clk_master(hw); in clk_master_is_prepared() local 77 spin_lock_irqsave(master->lock, flags); in clk_master_is_prepared() 78 status = clk_master_ready(master); in clk_master_is_prepared() [all …]
|
/linux/drivers/gpu/drm/ |
H A D | drm_auth.c | 42 * DOC: master and authentication 46 * least once successfully became the device master (either through the 48 * no one else is the current master that time) there exists one &drm_master. 52 * In addition only one &drm_master can be the current master for a &drm_device. 57 * Clients can authenticate against the current master (if it matches their own) 68 return fpriv->is_master && drm_lease_owner(fpriv->master) == fpriv->minor->dev->master; in drm_is_current_master_locked() 72 * drm_is_current_master - checks whether @priv is the current master 75 * Checks whether @fpriv is current master on its device. This decides whether a 79 * - the current master is assumed to own the non-shareable display hardware. 100 ret = idr_alloc(&file_priv->master->magic_map, file_priv, in drm_getmagic() [all …]
|
H A D | drm_lease.c | 21 * DRM leases provide information about whether a DRM master may control a DRM 25 * The original DRM master of a device 'owns' the available drm resources. It 27 * to the new DRM master. This gives the new DRM master control over the 28 * leased resources until the owner revokes the lease, or the new DRM master 62 * through the SETMASTER or DROPMASTER IOCTL, so &drm_device.master points to 74 struct drm_master *drm_lease_owner(struct drm_master *master) in drm_lease_owner() argument 76 while (master->lessor != NULL) in drm_lease_owner() 77 master = master->lessor; in drm_lease_owner() 78 return master; in drm_lease_owner() 82 _drm_find_lessee(struct drm_master *master, int lessee_id) in _drm_find_lessee() argument [all …]
|
/linux/drivers/i3c/ |
H A D | master.c | 74 * In other words, transfer requests passed to the I3C master can be submitted 75 * in parallel and I3C master drivers have to use their own locking to make 112 struct i3c_master_controller *master; in dev_to_i3cbus() local 117 master = dev_to_i3cmaster(dev); in dev_to_i3cbus() 119 return &master->bus; in dev_to_i3cbus() 124 struct i3c_master_controller *master; in dev_to_i3cdesc() local 129 master = dev_to_i3cmaster(dev); in dev_to_i3cdesc() 131 return master->this; in dev_to_i3cdesc() 562 static int i3c_set_hotjoin(struct i3c_master_controller *master, bool enable) in i3c_set_hotjoin() argument 566 if (!master || !master->ops) in i3c_set_hotjoin() [all …]
|
/linux/include/trace/events/ |
H A D | fsi_master_gpio.h | 12 TP_PROTO(const struct fsi_master_gpio *master, int bits, uint64_t msg), 13 TP_ARGS(master, bits, msg), 20 __entry->master_idx = master->master.idx; 33 TP_PROTO(const struct fsi_master_gpio *master, int bits, uint64_t msg), 34 TP_ARGS(master, bits, msg), 41 __entry->master_idx = master->master.idx; 54 TP_PROTO(const struct fsi_master_gpio *master, int clocks), 55 TP_ARGS(master, clocks), 61 __entry->master_idx = master->master.idx; 70 TP_PROTO(const struct fsi_master_gpio *master), [all …]
|
H A D | fsi_master_ast_cf.h | 11 TP_PROTO(const struct fsi_master_acf *master, uint32_t op), 12 TP_ARGS(master, op), 18 __entry->master_idx = master->master.idx; 27 TP_PROTO(const struct fsi_master_acf *master, const struct fsi_msg *cmd, u8 rbits), 28 TP_ARGS(master, cmd, rbits), 36 __entry->master_idx = master->master.idx; 48 TP_PROTO(const struct fsi_master_acf *master, u8 rtag, u8 rcrc, __be32 rdata, bool crc_ok), 49 TP_ARGS(master, rtag, rcrc, rdata, crc_ok), 58 __entry->master_idx = master->master.idx; 71 TP_PROTO(const struct fsi_master_acf *master, int retries), [all …]
|
H A D | fsi.h | 12 TP_PROTO(const struct fsi_master *master, int link, int id, 14 TP_ARGS(master, link, id, addr, size), 23 __entry->master_idx = master->idx; 39 TP_PROTO(const struct fsi_master *master, int link, int id, 41 TP_ARGS(master, link, id, addr, size, data), 51 __entry->master_idx = master->idx; 70 TP_PROTO(const struct fsi_master *master, int link, int id, 73 TP_ARGS(master, link, id, addr, size, write, data, ret), 85 __entry->master_idx = master->idx; 109 TP_PROTO(const struct fsi_master *master, int link), [all …]
|
/linux/sound/core/ |
H A D | vmaster.c | 3 * Virtual master and follower controls 24 * link master - this contains a list of follower controls that are 28 * The master control is so far only mono volume/switch for simplicity. 34 int val; /* the master value */ 44 * master control. A follower may have either one or two channels. 49 struct link_master *master; member 108 /* initialize master volume */ 109 static int master_init(struct link_master *master) in master_init() argument 113 if (master->info.count) in master_init() 116 list_for_each_entry(follower, &master->followers, list) { in master_init() [all …]
|
/linux/drivers/base/regmap/ |
H A D | regmap-w1.c | 30 mutex_lock(&sl->master->bus_mutex); in w1_reg_a8_v8_read() 32 w1_write_8(sl->master, W1_CMD_READ_DATA); in w1_reg_a8_v8_read() 33 w1_write_8(sl->master, reg); in w1_reg_a8_v8_read() 34 *val = w1_read_8(sl->master); in w1_reg_a8_v8_read() 38 mutex_unlock(&sl->master->bus_mutex); in w1_reg_a8_v8_read() 52 mutex_lock(&sl->master->bus_mutex); in w1_reg_a8_v8_write() 54 w1_write_8(sl->master, W1_CMD_WRITE_DATA); in w1_reg_a8_v8_write() 55 w1_write_8(sl->master, reg); in w1_reg_a8_v8_write() 56 w1_write_8(sl->master, val); in w1_reg_a8_v8_write() 60 mutex_unlock(&sl->master->bus_mutex); in w1_reg_a8_v8_write() [all …]
|
/linux/drivers/i2c/busses/ |
H A D | i2c-qcom-cci.c | 112 u16 master; member 134 struct cci_master master[NUM_MASTERS]; member 148 complete(&cci->master[0].irq_complete); in cci_isr() 149 if (cci->master[1].master) in cci_isr() 150 complete(&cci->master[1].irq_complete); in cci_isr() 157 cci->master[0].status = 0; in cci_isr() 158 complete(&cci->master[0].irq_complete); in cci_isr() 165 cci->master[1].status = 0; in cci_isr() 166 complete(&cci->master[1].irq_complete); in cci_isr() 186 cci->master[0].status = -ENXIO; in cci_isr() [all …]
|
/linux/Documentation/devicetree/bindings/iommu/ |
H A D | iommu.txt | 2 master(s). 29 IOMMUs can be single-master or multiple-master. Single-master IOMMU devices 30 typically have a fixed association to the master device, whereas multiple- 31 master IOMMU devices can translate accesses from more than one master. 46 - #iommu-cells = <0>: Single master IOMMU devices are not configurable and 48 This may also apply to multiple master IOMMU devices that do not allow the 50 be multi-master yet only expose a single master in a given configuration. 52 - #iommu-cells = <1>: Multiple master IOMMU devices may need to be configured 53 in order to enable translation for a given master. In such cases the single 54 address cell corresponds to the master device's ID. In some cases more than [all …]
|
/linux/drivers/iommu/arm/arm-smmu-v3/ |
H A D | arm-smmu-v3-sva.c | 27 struct arm_smmu_master *master = master_domain->master; in arm_smmu_update_s1_domain_cd_entry() local 30 cdptr = arm_smmu_get_cd_ptr(master, master_domain->ssid); in arm_smmu_update_s1_domain_cd_entry() 34 arm_smmu_make_s1_cd(&target_cd, master, smmu_domain); in arm_smmu_update_s1_domain_cd_entry() 35 arm_smmu_write_cd_entry(master, master_domain->ssid, cdptr, in arm_smmu_update_s1_domain_cd_entry() 54 struct arm_smmu_master *master, struct mm_struct *mm, in arm_smmu_make_sva_cd() argument 73 (master->stall_enabled ? CTXDESC_CD_0_S : 0) | in arm_smmu_make_sva_cd() 105 if (!(master->smmu->features & ARM_SMMU_FEAT_STALL_FORCE)) in arm_smmu_make_sva_cd() 173 struct arm_smmu_master *master = master_domain->master; in arm_smmu_mm_release() local 177 cdptr = arm_smmu_get_cd_ptr(master, master_domain->ssid); in arm_smmu_mm_release() 180 arm_smmu_make_sva_cd(&target, master, NULL, in arm_smmu_mm_release() [all …]
|
/linux/arch/arm/mach-omap2/ |
H A D | omap_hwmod_2xxx_interconnect_data.c | 25 .master = &omap2xxx_l3_main_hwmod, 32 .master = &omap2xxx_mpu_hwmod, 39 .master = &omap2xxx_dss_core_hwmod, 52 .master = &omap2xxx_l4_core_hwmod, 59 .master = &omap2xxx_l4_core_hwmod, 67 .master = &omap2xxx_l4_core_hwmod, 75 .master = &omap2xxx_l4_core_hwmod, 83 .master = &omap2xxx_l4_core_hwmod, 91 .master = &omap2xxx_l4_core_hwmod, 99 .master = &omap2xxx_l4_core_hwmod, [all …]
|
/linux/include/linux/i3c/ |
H A D | master.h | 42 * @master: I3C master that instantiated this device. Will be used to do 44 * @master_priv: master private data assigned to the device. Can be used to 45 * add master specific information 51 struct i3c_master_controller *master; member 110 * Every time an IBI comes in, the I3C master driver should find a free IBI 114 * How IBI slots are allocated is left to the I3C master driver, though, for 135 * rejected by the master 151 * infrastructure. I3C master drivers may have their own internal 174 * assigned a dynamic address by the master. Will be used during 204 * should never be accessed from I3C master controller drivers. Only core [all …]
|
/linux/Documentation/scsi/ |
H A D | advansys.rst | 21 - ABP-480 - Bus-Master CardBus (16 CDB) 24 - ABP510/5150 - Bus-Master ISA (240 CDB) 25 - ABP5140 - Bus-Master ISA PnP (16 CDB) 26 - ABP5142 - Bus-Master ISA PnP with floppy (16 CDB) 27 - ABP902/3902 - Bus-Master PCI (16 CDB) 28 - ABP3905 - Bus-Master PCI (16 CDB) 29 - ABP915 - Bus-Master PCI (16 CDB) 30 - ABP920 - Bus-Master PCI (16 CDB) 31 - ABP3922 - Bus-Master PCI (16 CDB) 32 - ABP3925 - Bus-Master PCI (16 CDB) [all …]
|
/linux/drivers/mtd/ |
H A D | mtdcore.c | 454 struct mtd_info *master = mtd_get_master(mtd); in mtd_wunit_to_pairing_info() local 455 int npairs = mtd_wunit_per_eb(master) / mtd_pairing_groups(master); in mtd_wunit_to_pairing_info() 460 if (master->pairing && master->pairing->get_info) in mtd_wunit_to_pairing_info() 461 return master->pairing->get_info(master, wunit, info); in mtd_wunit_to_pairing_info() 497 struct mtd_info *master = mtd_get_master(mtd); in mtd_pairing_info_to_wunit() local 498 int ngroups = mtd_pairing_groups(master); in mtd_pairing_info_to_wunit() 499 int npairs = mtd_wunit_per_eb(master) / ngroups; in mtd_pairing_info_to_wunit() 505 if (master->pairing && master->pairing->get_wunit) in mtd_pairing_info_to_wunit() 506 return mtd->pairing->get_wunit(master, info); in mtd_pairing_info_to_wunit() 524 struct mtd_info *master = mtd_get_master(mtd); in mtd_pairing_groups() local [all …]
|
H A D | mtdpart.c | 45 struct mtd_info *master = mtd_get_master(parent); in allocate_partition() local 47 master->writesize : master->erasesize; in allocate_partition() 83 * However, it is very useful to have the master node present, in allocate_partition() 84 * so the MTD_PARTITIONED_MASTER option allows that. The master in allocate_partition() 171 child->erasesize = master->erasesize; in allocate_partition() 206 if (master->_block_isbad) { in allocate_partition() 248 struct mtd_info *master = mtd_get_master(parent); in mtd_add_partition() local 275 mutex_lock(&master->master.partitions_lock); in mtd_add_partition() 277 mutex_unlock(&master->master.partitions_lock); in mtd_add_partition() 288 mutex_lock(&master->master.partitions_lock); in mtd_add_partition() [all …]
|
/linux/drivers/video/backlight/ |
H A D | adp5520_bl.c | 18 struct device *master; member 29 struct device *master = data->master; in adp5520_bl_set() local 35 ret |= adp5520_clr_bits(master, ADP5520_BL_CONTROL, in adp5520_bl_set() 37 ret |= adp5520_write(master, ADP5520_DAYLIGHT_MAX, in adp5520_bl_set() 44 ret |= adp5520_write(master, ADP5520_DAYLIGHT_MAX, in adp5520_bl_set() 46 ret |= adp5520_set_bits(master, ADP5520_BL_CONTROL, in adp5520_bl_set() 50 ret |= adp5520_write(master, ADP5520_DAYLIGHT_MAX, brightness); in adp5520_bl_set() 54 ret |= adp5520_set_bits(master, in adp5520_bl_set() 57 ret |= adp5520_clr_bits(master, in adp5520_bl_set() 77 error = adp5520_read(data->master, ADP5520_BL_VALUE, ®_val); in adp5520_bl_get_brightness() [all …]
|