/linux/drivers/soc/tegra/fuse/ |
H A D | fuse-tegra20.c | 22 #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 D | fuse.h | 21 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 D | Makefile | 2 obj-y += fuse-tegra.o 3 obj-y += fuse-tegra30.o 5 obj-$(CONFIG_ARCH_TEGRA_2x_SOC) += fuse-tegra20.o
|
/linux/drivers/pmdomain/qcom/ |
H A D | cpr.c | 146 /* fuse quot */ 150 /* fuse quot_offset */ 367 struct fuse_corner *fuse = corner->fuse_corner; in cpr_corner_restore() local 371 ro_sel = fuse->ring_osc_idx; in cpr_corner_restore() 373 gcnt |= fuse->quot - corner->quot_adjust; in cpr_corner_restore() 377 step_quot |= fuse->step_quot & RBCPR_STEP_QUOT_STEPQUOT_MASK; in cpr_corner_restore() 802 struct fuse_corner *fuse = drv->fuse_corners; in cpr_populate_ring_osc_idx() local 803 struct fuse_corner *end = fuse + drv->desc->num_fuse_corners; in cpr_populate_ring_osc_idx() 808 for (; fuse < end; fuse++, fuses++) { in cpr_populate_ring_osc_idx() 812 fuse->ring_osc_idx = data; in cpr_populate_ring_osc_idx() [all …]
|
/linux/fs/fuse/ |
H A D | Kconfig | 3 tristate "FUSE (Filesystem in Userspace) support" 6 With FUSE it is possible to implement a fully functional filesystem 10 from the FUSE homepage: 13 installed if you've installed the "fuse" package itself. 15 See <file:Documentation/filesystems/fuse.rst> for more information. 19 a filesystem based on FUSE, answer Y or M. 25 This FUSE extension allows character devices to be 57 bool "FUSE passthrough operations support" 62 This allows bypassing FUSE server by mapping specific FUSE operation [all...] |
H A D | acl.c | 2 * FUSE: Filesystem in Userspace 84 * FUSE daemons before FUSE_POSIX_ACL was introduced could get and set in fuse_get_inode_acl() 119 * Fuse userspace is responsible for updating access in fuse_set_acl() 142 * Fuse daemons without FUSE_POSIX_ACL never changed the passed in fuse_set_acl() 159 * Fuse daemons without FUSE_POSIX_ACL never cached POSIX ACLs in fuse_set_acl()
|
/linux/Documentation/filesystems/ |
H A D | fuse.rst | 4 FUSE title 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 D | virtiofs.rst | 46 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
|
H A D | fuse-io.rst | 4 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/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/ |
H A D | base.c | 27 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(sizeof(*fuse), GFP_KERNEL))) 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 D | Kbuild | 2 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 D | nv50.c | 27 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 D | gf100.c | 27 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 D | nvidia,tegra20-fuse.yaml | 4 $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 D | opp-v2-qcom-level.yaml | 27 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 D | vpu_imx8q.c | 228 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/drivers/gpu/drm/nouveau/nvkm/subdev/volt/ |
H A D | gf117.c | 26 #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 D | gf100.c | 26 #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 D | gk104.c | 30 #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 D | Makefile | 9 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 D | fuse_test.c | 5 * 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 D | qcom,cpr.yaml | 71 - description: Fuse revision 112 qcom,opp-fuse-level = <1>; 116 qcom,opp-fuse-level = <2>; 120 qcom,opp-fuse-level = <3>;
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-bdi | 15 and FUSE. 70 mount that is prone to get stuck, or a FUSE mount which cannot 83 in case of an NFS mount that is prone to get stuck, or a FUSE mount 111 mount that is prone to get stuck, a FUSE mount which cannot be
|
/linux/drivers/nvmem/ |
H A D | imx-ocotp.c | 69 #define TIMING_STROBE_PROG_US 10 /* Min time to blow a fuse */ 131 * - A program is performed to a fuse word which has been locked in imx_ocotp_wait_for_busy() 132 * - A read is performed to from a fuse word which has been read in imx_ocotp_wait_for_busy() 249 * Note: there are minimum timings required to ensure an OTP fuse burns in imx_ocotp_set_imx6_timing() 256 * to physically burn out a fuse. in imx_ocotp_set_imx6_timing() 258 * - Minimum STROBE_READ i.e. the time to wait post OTP fuse burn before in imx_ocotp_set_imx6_timing() 386 * automatically read fuse value in OTP and use read value to mask in imx_ocotp_write() 400 * with the fuse blowing operation only taking place after data0 in imx_ocotp_write() 640 MODULE_DESCRIPTION("i.MX6/i.MX7 OCOTP fuse box driver");
|
/linux/drivers/gpu/drm/nouveau/nvkm/engine/device/ |
H A D | base.c | 785 .fuse = { 0x00000001, nv50_fuse_new }, 888 .fuse = { 0x00000001, nv50_fuse_new }, 919 .fuse = { 0x00000001, nv50_fuse_new }, 950 .fuse = { 0x00000001, nv50_fuse_new }, 981 .fuse = { 0x00000001, nv50_fuse_new }, 1012 .fuse = { 0x00000001, nv50_fuse_new }, 1043 .fuse = { 0x00000001, nv50_fuse_new }, 1074 .fuse = { 0x00000001, nv50_fuse_new }, 1105 .fuse = { 0x00000001, nv50_fuse_new }, 1138 .fuse = { 0x00000001, nv50_fuse_new }, [all …]
|