Home
last modified time | relevance | path

Searched full:rsb (Results 1 – 25 of 103) sorted by relevance

12345

/openbmc/linux/drivers/bus/
H A Dsunxi-rsb.c3 * RSB (Reduced Serial Bus) driver.
7 * The RSB controller looks like an SMBus controller which only supports
24 * RSB section of Allwinner's A80 user manual, which can be found at
49 #include <linux/sunxi-rsb.h>
52 /* RSB registers */
61 #define RSB_CMD 0x2c /* RSB Command */
112 #define RSB_CTRL_NAME "sunxi-rsb"
196 * sunxi_rsb_device_create() - allocate and add an RSB device
197 * @rsb: RSB controller
198 * @node: RSB slave device node
[all …]
/openbmc/u-boot/arch/arm/mach-sunxi/
H A Drsb.c5 * Based on allwinner u-boot sources rsb code which is:
16 #include <asm/arch/rsb.h>
43 struct sunxi_rsb_reg * const rsb = in rsb_set_clk() local
48 /* Source is Hosc24M, set RSB clk to 3Mhz */ in rsb_set_clk()
54 writel((cd_odly << 8) | div, &rsb->ccr); in rsb_set_clk()
59 struct sunxi_rsb_reg * const rsb = in rsb_init() local
62 /* Enable RSB and PIO clk, and de-assert their resets */ in rsb_init()
68 writel(RSB_CTRL_SOFT_RST, &rsb->ctrl); in rsb_init()
76 struct sunxi_rsb_reg * const rsb = in rsb_await_trans() local
83 stat = readl(&rsb->stat); in rsb_await_trans()
[all …]
H A Dpmic_bus.c8 * axp223 uses the rsb bus, these functions abstract this.
13 #include <asm/arch/rsb.h>
/openbmc/linux/Documentation/devicetree/bindings/bus/
H A Dallwinner,sun8i-a23-rsb.yaml4 $id: http://devicetree.org/schemas/bus/allwinner,sun8i-a23-rsb.yaml#
7 title: Allwinner A23 RSB
22 - const: allwinner,sun8i-a23-rsb
25 - allwinner,sun8i-a83t-rsb
26 - allwinner,sun50i-h616-rsb
27 - const: allwinner,sun8i-a23-rsb
65 rsb@1f03400 {
66 compatible = "allwinner,sun8i-a23-rsb";
/openbmc/linux/include/linux/
H A Dsunxi-rsb.h22 * struct sunxi_rsb_device - Basic representation of an RSB device
24 * @ctrl: RSB controller managing the bus hosting this device.
30 struct sunxi_rsb *rsb; member
53 * struct sunxi_rsb_driver - RSB slave device driver
54 * @driver: RSB device drivers should initialize name and owner field of
56 * @probe: binds this driver to a RSB device.
57 * @remove: unbinds this driver from the RSB device.
73 * sunxi_rsb_driver_unregister() - unregister an RSB client driver
/openbmc/linux/fs/dlm/
H A Drecover.c229 * The recover_list contains all the rsb's for which we've requested the new
231 * rsb's are removed from the list. When the list is empty we're done.
233 * The recover_list is later similarly used for all rsb's for which we've sent
236 * We use the address of the rsb struct as a simple local identifier for the
237 * rsb so we can match an rcom reply with the rsb it was sent for.
381 /* Master recovery: find new master node for rsb's that were
397 * If we are the new master of the rsb, we may have received new
423 * The NEW_MASTER flag tells dlm_recover_locks() which rsb's to consider.
425 * rsb's to consider.
436 * We do async lookups on rsb's that need new masters. The rsb's
[all …]
H A Dlock.c39 Stage 2, xxxx_lock(), just finds and locks the relevant rsb which is
46 given rsb and lkb and queues callbacks.
173 printk(KERN_ERR "rsb: nodeid %d master %d dir %d flags %lx first %x " in dlm_print_rsb()
186 printk(KERN_ERR "rsb: root_list empty %d recover_list empty %d\n", in dlm_dump_rsb()
188 printk(KERN_ERR "rsb lookup list\n"); in dlm_dump_rsb()
191 printk(KERN_ERR "rsb grant queue:\n"); in dlm_dump_rsb()
194 printk(KERN_ERR "rsb convert queue:\n"); in dlm_dump_rsb()
197 printk(KERN_ERR "rsb wait queue:\n"); in dlm_dump_rsb()
320 * Basic operations on rsb's and lkb's
324 a valid reference to the rsb, so there's no need for locking. */
[all …]
H A Ddebug_fs.c266 seq_printf(s, "rsb %p %d %x %lx %d %d %u %d ", in print_format3()
342 seq_printf(s, "rsb %p %d %d %d %d %lu %lx %d ", in print_format4()
416 struct dlm_rsb *rsb; member
435 print_format1(ri->rsb, seq); in table_seq_show()
442 print_format2(ri->rsb, seq); in table_seq_show()
446 seq_puts(seq, "version rsb 1.1 lvb 1.1 lkb 1.1\n"); in table_seq_show()
449 print_format3(ri->rsb, seq); in table_seq_show()
453 seq_puts(seq, "version 4 rsb 2\n"); in table_seq_show()
456 print_format4(ri->rsb, seq); in table_seq_show()
463 print_format5(ri->rsb, seq); in table_seq_show()
[all …]
H A Ddir.c26 * Low bits are used for distribution of rsb's among hash buckets on each node.
232 /* Find the rsb where we left off (or start again), then send rsb names
233 for rsb's we're master of and whose directory node matches the requesting
234 node. inbuf is the rsb name last sent, inlen is the name's length */
H A Drecoverd.c65 * This list of root rsb's will be the basis of most of the recovery in ls_recover()
103 * nodes their master rsb names that hash to us. in ls_recover()
144 * Get new master nodeid's for rsb's that were mastered on in ls_recover()
155 * Send our locks on remastered rsb's to the new masters. in ls_recover()
176 * Finalize state in master rsb's now that all locks can be in ls_recover()
H A Dlockspace.c773 struct dlm_rsb *rsb; in release_lockspace() local
833 * Free all rsb's on rsbtbl[] lists in release_lockspace()
838 rsb = rb_entry(n, struct dlm_rsb, res_hashnode); in release_lockspace()
840 dlm_free_rsb(rsb); in release_lockspace()
844 rsb = rb_entry(n, struct dlm_rsb, res_hashnode); in release_lockspace()
846 dlm_free_rsb(rsb); in release_lockspace()
856 rsb = list_first_entry(&ls->ls_new_rsb, struct dlm_rsb, in release_lockspace()
858 list_del(&rsb->res_hashchain); in release_lockspace()
859 dlm_free_rsb(rsb); in release_lockspace()
H A Ddlm_internal.h179 * lkb_status: the lock status indicates which rsb queue the lock is
232 struct dlm_rsb *lkb_resource; /* the rsb */
234 int lkb_nodeid; /* copied from rsb */
253 struct list_head lkb_statequeue; /* rsb g/c/w list */
254 struct list_head lkb_rsb_lookup; /* waiting for rsb lookup */
296 int res_length; /* length of rsb name */
576 struct list_head ls_new_rsb; /* new rsb structs */
/openbmc/linux/drivers/mfd/
H A Daxp20x-rsb.c3 * RSB driver for the X-Powers' Power Management ICs
9 * This driver supports the RSB variants.
23 #include <linux/sunxi-rsb.h>
71 .name = "axp20x-rsb",
79 MODULE_DESCRIPTION("PMIC MFD sunXi RSB driver for AXP20X");
/openbmc/linux/drivers/md/
H A Ddm-verity-fec.c62 static u8 *fec_read_parity(struct dm_verity *v, u64 rsb, int index, in fec_read_parity() argument
73 position = (index + rsb) * v->fec->roots; in fec_read_parity()
80 v->data_dev->name, (unsigned long long)rsb, in fec_read_parity()
130 u64 rsb, int byte_index, unsigned int block_offset, in fec_decode_bufs() argument
138 par = fec_read_parity(v, rsb, block_offset, &offset, in fec_decode_bufs()
176 par = fec_read_parity(v, rsb, block_offset, &offset, in fec_decode_bufs()
189 v->data_dev->name, (unsigned long long)rsb, r); in fec_decode_bufs()
192 v->data_dev->name, (unsigned long long)rsb, r); in fec_decode_bufs()
217 u64 rsb, u64 target, unsigned int block_offset, in fec_read_bufs() argument
241 ileaved = fec_interleave(v, rsb * v->fec->rsn + i); in fec_read_bufs()
[all …]
/openbmc/linux/fs/romfs/
H A Dsuper.c461 struct romfs_super_block *rsb; in romfs_fill_super() local
490 rsb = kmalloc(512, GFP_KERNEL); in romfs_fill_super()
491 if (!rsb) in romfs_fill_super()
495 ret = romfs_dev_read(sb, 0, rsb, 512); in romfs_fill_super()
499 img_size = be32_to_cpu(rsb->size); in romfs_fill_super()
506 if (rsb->word0 != ROMSB_WORD0 || rsb->word1 != ROMSB_WORD1 || in romfs_fill_super()
514 if (romfs_checksum(rsb, min_t(size_t, img_size, 512))) { in romfs_fill_super()
521 len = strnlen(rsb->name, ROMFS_MAXFN); in romfs_fill_super()
524 (unsigned) len, (unsigned) len, rsb->name, storage); in romfs_fill_super()
526 kfree(rsb); in romfs_fill_super()
[all …]
/openbmc/linux/arch/x86/kvm/vmx/
H A Dvmenter.S117 * IMPORTANT: To avoid RSB underflow attacks and any other nastiness,
259 * IMPORTANT: RSB filling and SPEC_CTRL handling must be done before
262 * For retpoline or IBRS, RSB filling is needed to prevent poisoned RSB
263 * entries and (in some cases) RSB underflow.
265 * eIBRS has its own protection against poisoned RSB, so it doesn't
266 * need the RSB filling sequence. But it does need to be enabled, and a
/openbmc/linux/fs/xfs/
H A Dxfs_rtalloc.c37 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtget_summary() argument
40 return xfs_rtmodify_summary_int(mp, tp, log, bbno, 0, rbpp, rsb, sum); in xfs_rtget_summary()
55 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtany_summary() argument
73 error = xfs_rtget_summary(mp, tp, log, bbno, rbpp, rsb, &sum); in xfs_rtany_summary()
149 xfs_fsblock_t *rsb) /* in/out: summary block number */ in xfs_rtallocate_range() argument
180 XFS_BITTOBLOCK(mp, preblock), -1, rbpp, rsb); in xfs_rtallocate_range()
191 XFS_BITTOBLOCK(mp, preblock), 1, rbpp, rsb); in xfs_rtallocate_range()
203 XFS_BITTOBLOCK(mp, end + 1), 1, rbpp, rsb); in xfs_rtallocate_range()
248 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtallocate_extent_block() argument
284 rsb); in xfs_rtallocate_extent_block()
[all …]
/openbmc/linux/arch/x86/kernel/cpu/
H A Dbugs.c1128 * There is no need for RSB filling: entry_ibpb() ensures in retbleed_select_mitigation()
1129 * all predictions, including the RSB, are invalidated, in retbleed_select_mitigation()
1558 /* Disable in-kernel use of non-RSB RET predictors */
1580 * Similar to context switches, there are two types of RSB attacks in spectre_v2_determine_rsb_fill_type_at_vmexit()
1583 * 1) RSB underflow in spectre_v2_determine_rsb_fill_type_at_vmexit()
1585 * 2) Poisoned RSB entry in spectre_v2_determine_rsb_fill_type_at_vmexit()
1588 * the RSB. in spectre_v2_determine_rsb_fill_type_at_vmexit()
1591 * prediction isolation protections, RSB still needs to be cleared in spectre_v2_determine_rsb_fill_type_at_vmexit()
1593 * user-space-poisoned RSB entries. in spectre_v2_determine_rsb_fill_type_at_vmexit()
1595 * eIBRS should protect against RSB poisoning, but if the EIBRS_PBRSB in spectre_v2_determine_rsb_fill_type_at_vmexit()
[all …]
/openbmc/linux/fs/xfs/libxfs/
H A Dxfs_rtbitmap.h41 struct xfs_buf **rbpp, xfs_fsblock_t *rsb,
45 xfs_fsblock_t *rsb);
48 struct xfs_buf **rbpp, xfs_fsblock_t *rsb);
H A Dxfs_rtbitmap.c454 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtmodify_summary_int() argument
474 if (*rbpp && *rsb == sb) in xfs_rtmodify_summary_int()
493 *rsb = sb; in xfs_rtmodify_summary_int()
524 xfs_fsblock_t *rsb) /* in/out: summary block number */ in xfs_rtmodify_summary() argument
527 delta, rbpp, rsb, NULL); in xfs_rtmodify_summary()
697 xfs_fsblock_t *rsb) /* in/out: summary block number */ in xfs_rtfree_range() argument
735 XFS_BITTOBLOCK(mp, preblock), -1, rbpp, rsb); in xfs_rtfree_range()
747 XFS_BITTOBLOCK(mp, end + 1), -1, rbpp, rsb); in xfs_rtfree_range()
758 XFS_BITTOBLOCK(mp, preblock), 1, rbpp, rsb); in xfs_rtfree_range()
/openbmc/linux/arch/x86/include/asm/
H A Dnospec-branch.h18 * Call depth tracking for Intel SKL CPUs to address the RSB underflow
49 * but there is still a cushion vs. the RSB depth. The algorithm does not
117 * Each entry in the RSB, if used for a speculative 'ret', contains an
122 * eliminate potentially bogus entries from the RSB, and sometimes
144 * Stuff the entire RSB.
176 * Stuff a single RSB slot.
178 * To mitigate Post-Barrier RSB speculation, one CALL instruction must be
/openbmc/u-boot/arch/arm/lib/
H A Dmemcpy.S79 CALGN( rsb r3, ip, #32 )
102 rsb ip, ip, #32
153 9: rsb ip, ip, #4
179 CALGN( rsb ip, ip, #32 )
H A Duldivmod.S72 rsb ip, D_0, #32
181 rsb D_0, D_0, #31
224 rsb D_1, D_0, #32
/openbmc/linux/arch/arm/lib/
H A Dcopy_template.S90 CALGN( rsb r3, ip, #32 )
113 rsb ip, ip, #32
163 9: rsb ip, ip, #4
189 CALGN( rsb ip, ip, #32 )
H A Dfindbit.S113 rsb r0, r3, #0
116 rsb r3, r3, #31 @ offset of first set bit

12345