Home
last modified time | relevance | path

Searched full:fuse (Results 1 – 25 of 162) sorted by relevance

1234567

/linux/drivers/soc/tegra/fuse/
H A Dfuse-tegra20.c22 #include <soc/tegra/fuse.h>
24 #include "fuse.h"
30 static u32 tegra20_fuse_read_early(struct tegra_fuse *fuse, unsigned int offset) in tegra20_fuse_read_early() argument
32 return readl_relaxed(fuse->base + FUSE_BEGIN + offset); in tegra20_fuse_read_early()
37 struct tegra_fuse *fuse = args; in apb_dma_complete() local
39 complete(&fuse->apbdma.wait); in apb_dma_complete()
42 static u32 tegra20_fuse_read(struct tegra_fuse *fuse, unsigned int offset) in tegra20_fuse_read() argument
50 err = pm_runtime_resume_and_get(fuse->dev); in tegra20_fuse_read()
54 mutex_lock(&fuse->apbdma.lock); in tegra20_fuse_read()
56 fuse->apbdma.config.src_addr = fuse->phys + FUSE_BEGIN + offset; in tegra20_fuse_read()
[all …]
H A Dfuse-tegra.c23 #include <soc/tegra/fuse.h>
25 #include "fuse.h"
62 static struct tegra_fuse *fuse = &(struct tegra_fuse) { variable
102 struct tegra_fuse *fuse = priv; in tegra_fuse_read() local
106 buffer[i] = fuse->read(fuse, offset + i * 4); in tegra_fuse_read()
113 fuse->base = (void __iomem *)base; in tegra_fuse_restore()
114 fuse->clk = NULL; in tegra_fuse_restore()
127 static int tegra_fuse_add_lookups(struct tegra_fuse *fuse) in tegra_fuse_add_lookups() argument
129 fuse->lookups = kmemdup_array(fuse->soc->lookups, fuse->soc->num_lookups, in tegra_fuse_add_lookups()
130 sizeof(*fuse->lookups), GFP_KERNEL); in tegra_fuse_add_lookups()
[all …]
H A Dfuse.h21 u32 (*read)(struct tegra_fuse *fuse, unsigned int offset);
27 void (*init)(struct tegra_fuse *fuse);
29 int (*probe)(struct tegra_fuse *fuse);
52 u32 (*read_early)(struct tegra_fuse *fuse, unsigned int offset);
53 u32 (*read)(struct tegra_fuse *fuse, unsigned int offset);
H A DMakefile2 obj-y += fuse-tegra.o
3 obj-y += fuse-tegra30.o
5 obj-$(CONFIG_ARCH_TEGRA_2x_SOC) += fuse-tegra20.o
/linux/drivers/nvmem/
H A Drcar-efuse.c3 * Renesas R-Car E-FUSE/OTP Driver
24 unsigned int bank; /* 0: PFC + E-FUSE, 1: OPT_MEM + E-FUSE */
32 struct rcar_fuse *fuse = priv; in rcar_fuse_reg_read() local
35 ret = pm_runtime_resume_and_get(fuse->dev); in rcar_fuse_reg_read()
39 __ioread32_copy(val, fuse->base + offset, bytes / 4); in rcar_fuse_reg_read()
41 pm_runtime_put(fuse->dev); in rcar_fuse_reg_read()
52 .name = "rcar-fuse", in rcar_fuse_probe()
62 struct rcar_fuse *fuse; in rcar_fuse_probe() local
70 fuse = devm_kzalloc(dev, sizeof(*fuse), GFP_KERNEL); in rcar_fuse_probe()
71 if (!fuse) in rcar_fuse_probe()
[all …]
/linux/Documentation/filesystems/fuse/
H A Dfuse-passthrough.rst4 FUSE Passthrough
10 FUSE (Filesystem in Userspace) passthrough is a feature designed to improve the
11 performance of FUSE filesystems for I/O operations. Typically, FUSE operations
12 involve communication between the kernel and a userspace FUSE daemon, which can
13 incur overhead. Passthrough allows certain operations on a FUSE file to bypass
17 This is achieved by the FUSE daemon registering a file descriptor (pointing to
18 the backing file on a lower filesystem) with the FUSE kernel module. The kernel
20 When a FUSE file is subsequently opened, the FUSE daemon can, in its response to
31 To use FUSE passthrough:
33 1. The FUSE filesystem must be compiled with ``CONFIG_FUSE_PASSTHROUGH``
[all …]
H A Dfuse.rst4 FUSE Overview
37 What is FUSE?
40 FUSE is a userspace filesystem framework. It consists of a kernel
41 module (fuse.ko), a userspace library (libfuse.*) and a mount utility
44 One of the most important features of FUSE is allowing secure,
50 `FUSE homepage: <https://github.com/libfuse/>`_
57 fuse
58 This is the usual way to mount a FUSE filesystem. The first
72 obtained by opening the FUSE device ('/dev/fuse').
84 By default FUSE doesn't check file access permissions, the
[all …]
H A Dfuse-io.rst4 FUSE I/O Modes
7 Fuse supports the following I/O modes:
40 assumes that all changes to the filesystem go through the FUSE kernel module
/linux/fs/fuse/
H A DKconfig3 tristate "FUSE (Filesystem in Userspace) support"
7 With FUSE it is possible to implement a fully functional filesystem
11 from the FUSE homepage:
14 installed if you've installed the "fuse" package itself.
16 See <file:Documentation/filesystems/fuse/fuse.rst> for more information.
20 a filesystem based on FUSE, answer Y or M.
26 This FUSE extension allows character devices to be
58 bool "FUSE passthrough operations support"
63 This allows bypassing FUSE server by mapping specific FUSE operations
69 bool "FUSE communication over io-uring"
[all …]
/linux/Documentation/filesystems/
H A Dvirtiofs.rst46 ro, rw, context, etc. It also supports FUSE mount options.
58 Since the virtio-fs device uses the FUSE protocol for file system requests, the
59 virtiofs file system for Linux is integrated closely with the FUSE file system
60 client. The guest acts as the FUSE client while the host acts as the FUSE
61 server. The /dev/fuse interface between the kernel and userspace is replaced
64 FUSE requests are placed into a virtqueue and processed by the host. The
68 Mapping /dev/fuse to virtqueues requires solving differences in semantics
69 between /dev/fuse and virtqueues. Each time the /dev/fuse device is read, the
70 FUSE client may choose which request to transfer, making it possible to
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/
H A Dbase.c27 nvkm_fuse_read(struct nvkm_fuse *fuse, u32 addr) in nvkm_fuse_read() argument
29 return fuse->func->read(fuse, addr); in nvkm_fuse_read()
47 struct nvkm_fuse *fuse; in nvkm_fuse_new_() local
48 if (!(fuse = *pfuse = kzalloc_obj(*fuse))) in nvkm_fuse_new_()
50 nvkm_subdev_ctor(&nvkm_fuse, device, type, inst, &fuse->subdev); in nvkm_fuse_new_()
51 fuse->func = func; in nvkm_fuse_new_()
52 spin_lock_init(&fuse->lock); in nvkm_fuse_new_()
H A DKbuild2 nvkm-y += nvkm/subdev/fuse/base.o
3 nvkm-y += nvkm/subdev/fuse/nv50.o
4 nvkm-y += nvkm/subdev/fuse/gf100.o
5 nvkm-y += nvkm/subdev/fuse/gm107.o
H A Dnv50.c27 nv50_fuse_read(struct nvkm_fuse *fuse, u32 addr) in nv50_fuse_read() argument
29 struct nvkm_device *device = fuse->subdev.device; in nv50_fuse_read()
34 spin_lock_irqsave(&fuse->lock, flags); in nv50_fuse_read()
38 spin_unlock_irqrestore(&fuse->lock, flags); in nv50_fuse_read()
H A Dgf100.c27 gf100_fuse_read(struct nvkm_fuse *fuse, u32 addr) in gf100_fuse_read() argument
29 struct nvkm_device *device = fuse->subdev.device; in gf100_fuse_read()
34 spin_lock_irqsave(&fuse->lock, flags); in gf100_fuse_read()
40 spin_unlock_irqrestore(&fuse->lock, flags); in gf100_fuse_read()
/linux/Documentation/devicetree/bindings/fuse/
H A Dnvidia,tegra20-fuse.yaml4 $id: http://devicetree.org/schemas/fuse/nvidia,tegra20-fuse.yaml#
7 title: NVIDIA Tegra FUSE block
38 - const: fuse
45 - const: fuse
81 fuse@7000f800 {
85 clock-names = "fuse";
87 reset-names = "fuse";
/linux/Documentation/devicetree/bindings/opp/
H A Dopp-v2-qcom-level.yaml27 qcom,opp-fuse-level:
29 A positive value representing the fuse corner/level associated with
30 this OPP node. Sometimes several corners/levels shares a certain fuse
31 corner/level. A fuse corner/level contains e.g. ref uV, min uV,
39 - qcom,opp-fuse-level
53 qcom,opp-fuse-level = <1>;
57 qcom,opp-fuse-level = <2>;
61 qcom,opp-fuse-level = <3>;
/linux/drivers/media/platform/amphion/
H A Dvpu_imx8q.c228 u32 fuse = vpu_imx8q_get_fuse(); in vpu_imx8q_check_codec() local
231 if (fuse & VPU_ENCODER_MASK) in vpu_imx8q_check_codec()
234 fuse >>= VPU_IMX_DECODER_FUSE_OFFSET; in vpu_imx8q_check_codec()
235 fuse &= VPU_DECODER_MASK; in vpu_imx8q_check_codec()
237 if (fuse == VPU_DECODER_MASK) in vpu_imx8q_check_codec()
245 u32 fuse = vpu_imx8q_get_fuse(); in vpu_imx8q_check_fmt() local
248 fuse >>= VPU_IMX_DECODER_FUSE_OFFSET; in vpu_imx8q_check_fmt()
249 fuse &= VPU_DECODER_MASK; in vpu_imx8q_check_fmt()
251 if (fuse == VPU_DECODER_HEVC_MASK && pixelfmt == V4L2_PIX_FMT_HEVC) in vpu_imx8q_check_fmt()
253 if (fuse == VPU_DECODER_H264_MASK && pixelfmt == V4L2_PIX_FMT_H264) in vpu_imx8q_check_fmt()
[all …]
/linux/tools/testing/selftests/filesystems/fuse/
H A Dfusectl_test.c22 #define FUSECTL_MOUNTPOINT "/sys/fs/fuse/connections"
24 #define FUSE_DEVICE "/dev/fuse"
65 "Failed to create FUSE mountpoint %s", in FIXTURE_SETUP()
70 "FUSE control filesystem not mounted"); in FIXTURE_SETUP()
75 "Failed to fork FUSE daemon process: %s", in FIXTURE_SETUP()
86 "Failed to start FUSE daemon %s", in FIXTURE_SETUP()
92 "Failed to stat FUSE mountpoint %s", in FIXTURE_SETUP()
109 sprintf(path_buf, "/sys/fs/fuse/connections/%d/abort", self->connection); in TEST_F()
H A DMakefile20 VAR_CFLAGS := $(shell pkg-config fuse --cflags 2>/dev/null)
22 VAR_CFLAGS := -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse
25 VAR_LDLIBS := $(shell pkg-config fuse --libs 2>/dev/null)
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/volt/
H A Dgf117.c26 #include <subdev/fuse.h>
32 struct nvkm_fuse *fuse = device->fuse; in gf117_volt_speedo_read() local
34 if (!fuse) in gf117_volt_speedo_read()
37 return nvkm_fuse_read(fuse, 0x3a8); in gf117_volt_speedo_read()
H A Dgf100.c26 #include <subdev/fuse.h>
32 struct nvkm_fuse *fuse = device->fuse; in gf100_volt_speedo_read() local
34 if (!fuse) in gf100_volt_speedo_read()
37 return nvkm_fuse_read(fuse, 0x1cc); in gf100_volt_speedo_read()
H A Dgk104.c30 #include <subdev/fuse.h>
72 struct nvkm_fuse *fuse = device->fuse; in gk104_volt_speedo_read() local
75 if (!fuse) in gk104_volt_speedo_read()
79 ret = nvkm_fuse_read(fuse, 0x3a8); in gk104_volt_speedo_read()
/linux/tools/testing/selftests/memfd/
H A DMakefile9 VAR_CFLAGS := $(shell pkg-config fuse --cflags 2>/dev/null)
11 VAR_CFLAGS := -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse
14 VAR_LDLIBS := $(shell pkg-config fuse --libs 2>/dev/null)
H A Dfuse_test.c5 * fuse_mnt.c program to provide a fake direct-IO FUSE mount-point for us. This
176 /* wait 200ms for FUSE-request to be active */ in sealing_thread_fn()
190 /* wait 1s more so the FUSE-request is done */ in sealing_thread_fn()
260 /* open FUSE memfd file for GUP testing */ in main()
282 /* Use read() on the FUSE file to read into our memory-mapped memfd in main()
285 * If @fd is on the memfd-fake-FUSE-FS, the read() is delayed by 1s. in main()
327 printf("fuse: DONE\n"); in main()
/linux/Documentation/devicetree/bindings/power/avs/
H A Dqcom,cpr.yaml71 - description: Fuse revision
112 qcom,opp-fuse-level = <1>;
116 qcom,opp-fuse-level = <2>;
120 qcom,opp-fuse-level = <3>;

1234567