| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/bar/ |
| H A D | base.c | 27 nvkm_bar_flush(struct nvkm_bar *bar) in nvkm_bar_flush() argument 29 if (bar && bar->func->flush) in nvkm_bar_flush() 30 bar->func->flush(bar); in nvkm_bar_flush() 36 return device->bar->func->bar1.vmm(device->bar); in nvkm_bar_bar1_vmm() 42 struct nvkm_bar *bar = device->bar; in nvkm_bar_bar1_reset() local 43 if (bar) { in nvkm_bar_bar1_reset() 44 bar->func->bar1.init(bar); in nvkm_bar_bar1_reset() 45 bar->func->bar1.wait(bar); in nvkm_bar_bar1_reset() 55 struct nvkm_bar *bar = device->bar; in nvkm_bar_bar2_vmm() local 56 if (bar && bar->bar2) in nvkm_bar_bar2_vmm() [all …]
|
| H A D | nv50.c | 34 struct nv50_bar *bar = nv50_bar(base); in nv50_bar_flush() local 35 struct nvkm_device *device = bar->base.subdev.device; in nv50_bar_flush() 37 spin_lock_irqsave(&bar->base.lock, flags); in nv50_bar_flush() 43 spin_unlock_irqrestore(&bar->base.lock, flags); in nv50_bar_flush() 59 nv50_bar_bar1_fini(struct nvkm_bar *bar) in nv50_bar_bar1_fini() argument 61 nvkm_wr32(bar->subdev.device, 0x001708, 0x00000000); in nv50_bar_bar1_fini() 68 struct nv50_bar *bar = nv50_bar(base); in nv50_bar_bar1_init() local 69 nvkm_wr32(device, 0x001708, 0x80000000 | bar->bar1->node->offset >> 4); in nv50_bar_bar1_init() 79 nv50_bar_bar2_fini(struct nvkm_bar *bar) in nv50_bar_bar2_fini() argument 81 nvkm_wr32(bar->subdev.device, 0x00170c, 0x00000000); in nv50_bar_bar2_fini() [all …]
|
| H A D | gf100.c | 34 return gf100_bar(base)->bar[1].vmm; in gf100_bar_bar1_vmm() 46 gf100_bar_bar1_fini(struct nvkm_bar *bar) in gf100_bar_bar1_fini() argument 48 nvkm_mask(bar->subdev.device, 0x001704, 0x80000000, 0x00000000); in gf100_bar_bar1_fini() 55 struct gf100_bar *bar = gf100_bar(base); in gf100_bar_bar1_init() local 56 const u32 addr = nvkm_memory_addr(bar->bar[1].inst) >> 12; in gf100_bar_bar1_init() 63 return gf100_bar(base)->bar[0].vmm; in gf100_bar_bar2_vmm() 67 gf100_bar_bar2_fini(struct nvkm_bar *bar) in gf100_bar_bar2_fini() argument 69 nvkm_mask(bar->subdev.device, 0x001714, 0x80000000, 0x00000000); in gf100_bar_bar2_fini() 76 struct gf100_bar *bar = gf100_bar(base); in gf100_bar_bar2_init() local 77 u32 addr = nvkm_memory_addr(bar->bar[0].inst) >> 12; in gf100_bar_bar2_init() [all …]
|
| H A D | tu102.c | 29 tu102_bar_bar2_wait(struct nvkm_bar *bar) in tu102_bar_bar2_wait() argument 31 struct nvkm_device *device = bar->subdev.device; in tu102_bar_bar2_wait() 39 tu102_bar_bar2_fini(struct nvkm_bar *bar) in tu102_bar_bar2_fini() argument 41 nvkm_mask(bar->subdev.device, 0xb80f48, 0x80000000, 0x00000000); in tu102_bar_bar2_fini() 48 struct gf100_bar *bar = gf100_bar(base); in tu102_bar_bar2_init() local 49 u32 addr = nvkm_memory_addr(bar->bar[0].inst) >> 12; in tu102_bar_bar2_init() 50 if (bar->bar2_halve) in tu102_bar_bar2_init() 56 tu102_bar_bar1_wait(struct nvkm_bar *bar) in tu102_bar_bar1_wait() argument 58 struct nvkm_device *device = bar->subdev.device; in tu102_bar_bar1_wait() 66 tu102_bar_bar1_fini(struct nvkm_bar *bar) in tu102_bar_bar1_fini() argument [all …]
|
| /linux/drivers/net/ethernet/netronome/nfp/nfpcore/ |
| H A D | nfp6000_pcie.c | 15 * abstraction builds upon this BAR interface. 98 #define NFP_PCIE_P2C_FIXED_SIZE(bar) (1 << (bar)->bitsize) argument 99 #define NFP_PCIE_P2C_BULK_SIZE(bar) (1 << (bar)->bitsize) argument 100 #define NFP_PCIE_P2C_GENERAL_TARGET_OFFSET(bar, x) ((x) << ((bar)->bitsize - 2)) argument 101 #define NFP_PCIE_P2C_GENERAL_TOKEN_OFFSET(bar, x) ((x) << ((bar)->bitsize - 4)) argument 102 #define NFP_PCIE_P2C_GENERAL_SIZE(bar) (1 << ((bar)->bitsize - 4)) argument 116 * struct nfp_bar - describes BAR configuration and usage 118 * @barcfg: cached contents of BAR config CSR 119 * @base: the BAR's base CPP offset 120 * @mask: mask for the BAR aperture (read only) [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/ |
| H A D | bar.c | 22 #include <subdev/bar/gf100.h> 30 #include "nvrm/bar.h" 34 r535_bar_flush(struct nvkm_bar *bar) in r535_bar_flush() argument 39 if (unlikely(!bar->bar2)) { in r535_bar_flush() 40 g84_bar_flush(bar); in r535_bar_flush() 44 ioread32_native(bar->flushBAR2); in r535_bar_flush() 69 r535_bar_bar2_fini(struct nvkm_bar *bar) in r535_bar_bar2_fini() argument 71 struct nvkm_vmm *vmm = gf100_bar(bar)->bar[0].vmm; in r535_bar_bar2_fini() 72 struct nvkm_gsp *gsp = bar->subdev.device->gsp; in r535_bar_bar2_fini() 74 bar->flushBAR2 = bar->flushBAR2PhysMode; in r535_bar_bar2_fini() [all …]
|
| /linux/drivers/pci/ |
| H A D | iomap.c | 15 * pci_iomap_range - create a virtual mapping cookie for a PCI BAR 16 * @dev: PCI device that owns the BAR 17 * @bar: BAR number 18 * @offset: map memory at the given offset in BAR 21 * Using this function you will get a __iomem address to your device BAR. 27 * the complete BAR from offset to the end, pass %0 here. 30 int bar, in pci_iomap_range() argument 37 if (!pci_bar_index_is_valid(bar)) in pci_iomap_range() 40 start = pci_resource_start(dev, bar); in pci_iomap_range() 41 len = pci_resource_len(dev, bar); in pci_iomap_range() [all …]
|
| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | cgroup_attach_override.c | 8 #define BAR "/foo/bar/" macro 28 int drop_prog = -1, allow_prog = -1, foo = -1, bar = -1; in serial_test_cgroup_attach_override() local 55 bar = test__join_cgroup(BAR); in serial_test_cgroup_attach_override() 56 if (CHECK(bar < 0, "cgroup_join_bar", "cgroup setup failed\n")) in serial_test_cgroup_attach_override() 63 if (CHECK(bpf_prog_attach(allow_prog, bar, BPF_CGROUP_INET_EGRESS, in serial_test_cgroup_attach_override() 66 "attach prog to %s failed, errno=%d\n", BAR, errno)) in serial_test_cgroup_attach_override() 72 if (CHECK(bpf_prog_detach(bar, BPF_CGROUP_INET_EGRESS), in serial_test_cgroup_attach_override() 74 "detach prog from %s failed, errno=%d\n", BAR, errno)) in serial_test_cgroup_attach_override() 81 if (CHECK(bpf_prog_attach(allow_prog, bar, BPF_CGROUP_INET_EGRESS, in serial_test_cgroup_attach_override() 84 "attach prog to %s failed, errno=%d\n", BAR, errno)) in serial_test_cgroup_attach_override() [all …]
|
| H A D | linked_list.c | 89 "but arg is at offset=0 in struct bar" }, 297 id = btf__add_struct(btf, "bar", refcount_field ? 60 : 56); in list_and_rb_node_same_struct() 298 if (!ASSERT_GT(id, 0, "btf__add_struct bar")) in list_and_rb_node_same_struct() 301 if (!ASSERT_OK(err, "btf__add_field bar::a")) in list_and_rb_node_same_struct() 304 if (!ASSERT_OK(err, "btf__add_field bar::c")) in list_and_rb_node_same_struct() 308 if (!ASSERT_OK(err, "btf__add_field bar::ref")) in list_and_rb_node_same_struct() 321 id = btf__add_decl_tag(btf, "contains:bar:a", foo_btf_id, 0); in list_and_rb_node_same_struct() 322 if (!ASSERT_GT(id, 0, "btf__add_decl_tag contains:bar:a")) in list_and_rb_node_same_struct() 443 id = btf__add_decl_tag(btf, "contains:bar:bar", in test_btf() [all...] |
| /linux/drivers/net/ethernet/sfc/ |
| H A D | ef100.c | 37 unsigned int bar; member 71 u32 bar = ef100_pci_get_bar_bits(efx, entry_location, EF100_BAR); in ef100_pci_parse_ef100_entry() local 74 "Found EF100 function control window bar=%d offset=0x%llx\n", in ef100_pci_parse_ef100_entry() 75 bar, offset); in ef100_pci_parse_ef100_entry() 83 if (bar == ESE_GZ_CFGBAR_EF100_BAR_NUM_EXPANSION_ROM || in ef100_pci_parse_ef100_entry() 84 bar == ESE_GZ_CFGBAR_EF100_BAR_NUM_INVALID) { in ef100_pci_parse_ef100_entry() 86 "Bad BAR value of %d in Xilinx capabilities EF100 entry.\n", in ef100_pci_parse_ef100_entry() 87 bar); in ef100_pci_parse_ef100_entry() 91 result->bar = bar; in ef100_pci_parse_ef100_entry() 97 static bool ef100_pci_does_bar_overflow(struct efx_nic *efx, int bar, in ef100_pci_does_bar_overflow() argument [all …]
|
| /linux/samples/trace_events/ |
| H A D | trace-events-sample.h | 70 * Here it is trace_foo_bar(char *foo, int bar). 73 * Here it is simply "foo, bar". 94 * __field_struct(struct bar, foo) 96 * __entry->bar.x = y; 108 * memcpy(__entry->foo, bar, 10); 119 * __dynamic_array( int, foo, bar) is similar to: int foo[bar]; 124 * memcpy(__get_dynamic_array(foo), bar, 10); 135 * __string(foo, bar) is similar to: strcpy(foo, bar) 175 * __string_len(foo, bar, len) 186 * memcpy(__get_str(foo), bar, len); [all …]
|
| /linux/drivers/xen/xen-pciback/ |
| H A D | conf_space_header.c | 129 struct pci_bar_info *bar = data; in rom_write() local 131 if (unlikely(!bar)) { in rom_write() 140 bar->which = 1; in rom_write() 144 if (tmpval != bar->val && value == bar->val) { in rom_write() 145 /* Allow restoration of bar value. */ in rom_write() 146 pci_write_config_dword(dev, offset, bar->val); in rom_write() 148 bar->which = 0; in rom_write() 162 struct pci_bar_info *bar = data; in bar_write() local 167 if (unlikely(!bar)) { in bar_write() 182 bar->which = 1; in bar_write() [all …]
|
| /linux/tools/perf/Documentation/ |
| H A D | callchain-overhead-calculation.txt | 29 void bar(void) { 35 bar() 40 In this case 'foo' is a child of 'bar', and 'bar' is an immediate 42 'main' is a parent of 'foo' and 'bar', and 'bar' is a parent of 'foo'. 44 Suppose all samples are recorded in 'foo' and 'bar' only. When it's 54 bar 58 40.00% bar 60 --- bar [all...] |
| /linux/arch/csky/include/asm/ |
| H A D | barrier.h | 13 * bar.brwarws: ordering barrier for all load/store instructions 26 * bar.brw 27 * bar.br 28 * bar.bw 29 * bar.arw 30 * bar.ar 31 * bar.aw 32 * bar.brwarw 33 * bar.brarw 34 * bar.bwarw [all …]
|
| /linux/samples/rust/ |
| H A D | rust_driver_pci.rs | 46 type Bar0<'bound> = pci::Bar<'bound, { regs::END }>; 69 bar: Bar0<'bound>, 86 fn testdev(index: &TestIndex, bar: &Bar0<'_>) -> Result<u32> { in config_space() 88 bar.write_reg(regs::TEST::zeroed().with_index(*index)); in config_space() 90 let offset = bar.read(regs::OFFSET).into_raw() as usize; in config_space() 91 let data = bar.read(regs::DATA).into(); in config_space() 96 bar.try_write8(data, offset)?; 98 Ok(bar.read(regs::COUNT).into()) 114 BAR(u32)[6] @ 0x10 { in probe() 133 "pci-testdev config space read32 BAR in unbind() 40 bar: Devres<Bar0>, global() field 117 let bar = bar.access(pdev.as_ref())?; probe() localVariable [all...] |
| /linux/arch/arm/mm/ |
| H A D | pmsa-v8.c | 141 static int __init __pmsav8_setup_region(unsigned int number, u32 bar, u32 lar) in __pmsav8_setup_region() argument 150 prbar_write(bar); in __pmsav8_setup_region() 153 mpu_rgn_info.rgns[number].prbar = bar; in __pmsav8_setup_region() 163 u32 bar, lar; in pmsav8_setup_ram() local 168 bar = start; in pmsav8_setup_ram() 171 bar |= PMSAv8_AP_PL1RW_PL0RW | PMSAv8_RGN_SHARED; in pmsav8_setup_ram() 174 return __pmsav8_setup_region(number, bar, lar); in pmsav8_setup_ram() 179 u32 bar, lar; in pmsav8_setup_io() local 184 bar = start; in pmsav8_setup_io() 187 bar |= PMSAv8_AP_PL1RW_PL0RW | PMSAv8_RGN_SHARED | PMSAv8_BAR_XN; in pmsav8_setup_io() [all …]
|
| /linux/sound/soc/sof/ |
| H A D | iomem-utils.c | 57 void __iomem *dest = sdev->bar[sdev->mailbox_bar] + offset; in sof_mailbox_write() 66 void __iomem *src = sdev->bar[sdev->mailbox_bar] + offset; in sof_mailbox_read() 79 int bar = snd_sof_dsp_get_bar_index(sdev, blk_type); in sof_block_write() local 86 if (bar < 0) in sof_block_write() 87 return bar; in sof_block_write() 89 dest = sdev->bar[bar] + offset; in sof_block_write() 118 int bar = snd_sof_dsp_get_bar_index(sdev, blk_type); in sof_block_read() local 120 if (bar < 0) in sof_block_read() 121 return bar; in sof_block_read() 123 memcpy_fromio(dest, sdev->bar[bar] + offset, size); in sof_block_read()
|
| H A D | ops.c | 46 bool snd_sof_dsp_update_bits_unlocked(struct snd_sof_dev *sdev, u32 bar, in snd_sof_pci_update_bits() 52 ret = snd_sof_dsp_read(sdev, bar, offset); in snd_sof_dsp_update_bits_unlocked() 60 snd_sof_dsp_write(sdev, bar, offset, new); in snd_sof_dsp_update_bits_unlocked() 66 bool snd_sof_dsp_update_bits64_unlocked(struct snd_sof_dev *sdev, u32 bar, in snd_sof_dsp_update_bits_unlocked() 71 old = snd_sof_dsp_read64(sdev, bar, offset); in snd_sof_dsp_update_bits64_unlocked() argument 78 snd_sof_dsp_write64(sdev, bar, offset, new); in snd_sof_dsp_update_bits64_unlocked() 85 bool snd_sof_dsp_update_bits(struct snd_sof_dev *sdev, u32 bar, u32 offset, in snd_sof_dsp_update_bits64_unlocked() 89 return snd_sof_dsp_update_bits_unlocked(sdev, bar, offset, mask, value); 93 bool snd_sof_dsp_update_bits64(struct snd_sof_dev *sdev, u32 bar, u32 offset, in snd_sof_dsp_update_bits() 97 return snd_sof_dsp_update_bits64_unlocked(sdev, bar, offse in snd_sof_dsp_update_bits() 51 snd_sof_dsp_update_bits_unlocked(struct snd_sof_dev * sdev,u32 bar,u32 offset,u32 mask,u32 value) snd_sof_dsp_update_bits_unlocked() argument 90 snd_sof_dsp_update_bits(struct snd_sof_dev * sdev,u32 bar,u32 offset,u32 mask,u32 value) snd_sof_dsp_update_bits() argument 104 snd_sof_dsp_update_bits64(struct snd_sof_dev * sdev,u32 bar,u32 offset,u64 mask,u64 value) snd_sof_dsp_update_bits64() argument 119 snd_sof_dsp_update_bits_forced_unlocked(struct snd_sof_dev * sdev,u32 bar,u32 offset,u32 mask,u32 value) snd_sof_dsp_update_bits_forced_unlocked() argument 134 snd_sof_dsp_update_bits_forced(struct snd_sof_dev * sdev,u32 bar,u32 offset,u32 mask,u32 value) snd_sof_dsp_update_bits_forced() argument [all...] |
| /linux/Documentation/translations/zh_CN/devicetree/ |
| H A D | overlay-notes.rst | 49 ---- bar.dtso - 按标签覆盖目标位置 --------------------------- 54 bar { 55 compatible = "corp,bar"; 59 ---- bar.dtso -------------------------------------------------------------- 61 当加载(并按照[1]中描述的方式解决)时,应该产生foo+bar.dts:: 63 ---- foo+bar.dts ----------------------------------------------------------- 78 bar { 79 compatible = "corp,bar"; 84 ---- foo+bar.dts ----------------------------------------------------------- 86 作为覆盖的结果,已经创建了一个新的设备节点(bar),因此将注册一个bar平台设备, [all …]
|
| /linux/Documentation/translations/zh_CN/admin-guide/ |
| H A D | bootconfig.rst | 46 foo.bar.baz = value1 47 foo.bar.qux.quux = value2 51 foo.bar { 58 foo.bar { baz = value1; qux.quux = value2 } 68 foo = bar, baz 73 foo = bar, baz 81 foo = bar, baz 84 这样, ``foo`` 关键字就同时拥有了 ``bar`` , ``baz`` 和 ``qux`` 。 90 foo.bar = value2 96 bar = value1 [all …]
|
| /linux/Documentation/translations/zh_TW/admin-guide/ |
| H A D | bootconfig.rst | 46 foo.bar.baz = value1 47 foo.bar.qux.quux = value2 51 foo.bar { 58 foo.bar { baz = value1; qux.quux = value2 } 68 foo = bar, baz 73 foo = bar, baz 81 foo = bar, baz 84 這樣, ``foo`` 關鍵字就同時擁有了 ``bar`` , ``baz`` 和 ``qux`` 。 90 foo.bar = value2 96 bar = value1 [all …]
|
| /linux/include/asm-generic/ |
| H A D | pci_iomap.h | 12 /* Create a virtual mapping cookie for a PCI BAR (memory or IO) */ 13 extern void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long max); 14 extern void __iomem *pci_iomap_wc(struct pci_dev *dev, int bar, unsigned long max); 15 extern void __iomem *pci_iomap_range(struct pci_dev *dev, int bar, 18 extern void __iomem *pci_iomap_wc_range(struct pci_dev *dev, int bar, 35 static inline void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long max) in pci_iomap() argument 40 static inline void __iomem *pci_iomap_wc(struct pci_dev *dev, int bar, unsigned long max) in pci_iomap_wc() argument 44 static inline void __iomem *pci_iomap_range(struct pci_dev *dev, int bar, in pci_iomap_range() argument 50 static inline void __iomem *pci_iomap_wc_range(struct pci_dev *dev, int bar, in pci_iomap_wc_range() argument
|
| /linux/Documentation/arch/powerpc/ |
| H A D | pci_iov_resource_on_powernv.rst | 172 discover the BAR sizes and assign addresses for them. For VF devices, 173 software uses VF BAR registers in the *PF* SR-IOV Capability to 177 When a VF BAR in the PF SR-IOV Capability is programmed, it sets the 180 1MB VF BAR0, the address in that VF BAR sets the base of an 8MB region. 182 is a BAR0 for one of the VFs. Note that even though the VF BAR 195 the segment size matches the smallest VF BAR, which means larger VF 210 and different segment sizes. If we have VFs that each have a 1MB BAR 211 and a 32MB BAR, we could use one M64 window to assign 1MB segments and 215 more in the next two sections. For a given VF BAR, we need to 216 effectively reserve the entire 256 segments (256 * VF BAR size) and [all …]
|
| /linux/tools/testing/selftests/ftrace/test.d/dynevent/ |
| H A D | eprobes_syntax_errors.tc | 14 check_error 'e:^/bar syscalls/sys_enter_openat' # NO_GROUP_NAME 15 check_error 'e:^12345678901234567890123456789012345678901234567890123456789012345/bar syscalls/sys_… 17 check_error 'e:^foo.1/bar syscalls/sys_enter_openat' # BAD_GROUP_NAME 20 check_error 'e:foo/^bar.1 syscalls/sys_enter_openat' # BAD_EVENT_NAME 22 check_error 'e:foo/bar syscalls/sys_enter_openat arg=^dfd' # BAD_FETCH_ARG 23 check_error 'e:foo/bar syscalls/sys_enter_openat arg=^$foo' # BAD_ATTACH_ARG 26 check_error 'e:foo/bar syscalls/sys_enter_openat if ^' # NO_EP_FILTER
|
| /linux/tools/testing/selftests/vfio/lib/ |
| H A D | vfio_pci_device.c | 165 struct vfio_pci_bar *bar = &device->bars[index]; in vfio_pci_bar_unmap() 171 VFIO_ASSERT_NULL(bar->vaddr); in vfio_pci_bar_unmap() 172 VFIO_ASSERT_TRUE(bar->info.flags & VFIO_REGION_INFO_FLAG_MMAP); in vfio_pci_bar_unmap() 173 VFIO_ASSERT_TRUE(is_power_of_2(bar->info.size)); in vfio_pci_bar_unmap() 175 if (bar->info.flags & VFIO_REGION_INFO_FLAG_READ) in vfio_pci_bar_unmap_all() 177 if (bar->info.flags & VFIO_REGION_INFO_FLAG_WRITE) in vfio_pci_bar_unmap_all() 180 size = bar->info.size; in vfio_pci_bar_unmap_all() 183 * Align BAR mmaps to improve page fault granularity during potential in vfio_pci_bar_unmap_all() 184 * subsequent IOMMU mapping of these BAR vaddr. 1G for x86 is the 193 bar in vfio_pci_config_access() 129 struct vfio_pci_bar *bar = &device->bars[index]; vfio_pci_bar_map() local 166 struct vfio_pci_bar *bar = &device->bars[index]; vfio_pci_bar_unmap() local 279 struct vfio_pci_bar *bar = device->bars + i; vfio_pci_device_setup() local [all...] |