| /linux/rust/kernel/ |
| H A D | faux.rs | 1 // SPDX-License-Identifier: GPL-2.0-only 5 //! This module provides bindings for working with faux devices in kernel modules. 19 /// `self.0` always holds a valid pointer to an initialized and registered [`struct faux_device`]. 27 pub fn new(name: &CStr, parent: Option<&device::Device>) -> Result<Self> { in new() argument 29 // - `name` is copied by this function into its own storage in new() 30 // - `faux_ops` is safe to leave NULL according to the C API in new() 31 // - `parent` can be either NULL or a pointer to a `struct device`, and `faux_device_create` in new() 32 // will take a reference to `parent` using `device_add` - ensuring that it remains valid in new() 45 Ok(Self(NonNull::new(dev).ok_or(ENODEV)?)) in new() 48 fn as_raw(&self) -> *mut bindings::faux_device { in as_raw() [all …]
|
| /linux/rust/kernel/sync/ |
| H A D | poll.rs | 1 // SPDX-License-Identifier: GPL-2.0 5 //! Utilities for working with `struct poll_table`. 15 /// Creates a [`PollCondVar`] initialiser with the given name and a newly-created lock class. 42 pub unsafe fn from_raw(table: *mut bindings::poll_table) -> Self { in from_raw() argument 52 pub fn register_wait(&self, file: &File, cv: &PollCondVar) { in register_wait() argument 55 // * `self.table` is null or references a valid poll_table for the duration of this call. in register_wait() 61 unsafe { bindings::poll_wait(file.as_ptr(), cv.wait_queue_head.get(), self.table) } in register_wait() 76 pub fn new(name: &'static CStr, key: Pin<&'static LockClassKey>) -> impl PinInit<Self> { in new() argument 77 pin_init!(Self { in new() 78 inner <- CondVar::new(name, key), in new() [all …]
|
| H A D | atomic.rs | 1 // SPDX-License-Identifier: GPL-2.0 13 //! - A normal write from C side is treated as an atomic write if 15 //! - Mixed-size atomic accesses don't cause data races. 17 //! [`LKMM`]: srctree/tools/memory-model/ 38 /// [`Atomic::as_ptr()`], this provides a way to interact with [C-side atomic operations] 44 /// `self.0` is a valid `T`. 47 /// [LKMM]: srctree/tools/memory-model/ 48 /// [C-side atomic operations]: srctree/Documentation/atomic_t.txt 57 /// # Round-trip transmutability 59 /// `T` is round-trip transmutable to `U` if and only if both of these properties hold: [all …]
|
| /linux/Documentation/mm/ |
| H A D | multigen_lru.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Multi-Gen LRU 6 The multi-gen LRU is an alternative LRU implementation that optimizes 14 ---------- 20 * Simple self-correcting heuristics 23 implementations. In the multi-gen LRU, each generation represents a 25 (time-based) common frame of reference and therefore help make better 41 choices; thus self-correction is necessary. 43 The benefits of simple self-correcting heuristics are self-evident. 51 ----------- [all …]
|
| /linux/Documentation/devicetree/bindings/mfd/ |
| H A D | x-powers,axp152.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/mfd/x-powers,axp152.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: X-Powers AXP PMIC 10 - Chen-Yu Tsai <wens@csie.org> 13 - if: 18 - x-powers,axp152 19 - x-powers,axp202 20 - x-powers,axp209 [all …]
|
| /linux/tools/testing/selftests/net/ |
| H A D | so_incoming_cpu.c | 1 // SPDX-License-Identifier: GPL-2.0 62 ASSERT_NE(fd, -1); in write_sysctl() 78 #define NR_PORT (60001 - 10000 - 1) 96 self->servers = malloc(sizeof(int) * nr_server); in FIXTURE_SETUP() 97 ASSERT_NE(self->servers, NULL); in FIXTURE_SETUP() 99 self->in_addr.sin_family = AF_INET; in FIXTURE_SETUP() 100 self->in_addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK); in FIXTURE_SETUP() 101 self->in_addr.sin_port = htons(0); in FIXTURE_SETUP() 102 self->addrlen = sizeof(struct sockaddr_in); in FIXTURE_SETUP() 110 close(self->servers[i]); in FIXTURE_TEARDOWN() [all …]
|
| /linux/tools/testing/selftests/hid/ |
| H A D | hidraw.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright (c) 2022-2024 Red Hat */ 18 static void close_hidraw(FIXTURE_DATA(hidraw) * self) in close_hidraw() 20 if (self->hidraw_fd) in close_hidraw() 21 close(self->hidraw_fd); 22 self 15 close_hidraw(FIXTURE_DATA (hidraw)* self) close_hidraw() argument [all...] |
| /linux/scripts/gdb/linux/ |
| H A D | symbols.py | 6 # Copyright (c) Siemens AG, 2011-2013 25 def __init__(self, spec, gdb_command): argument 26 super(LoadModuleBreakpoint, self).__init__(spec, internal=True) 27 self.silent = True 28 self.gdb_command = gdb_command 30 def stop(self): argument 33 cmd = self.gdb_command 38 # Disable pagination while reporting symbol (re-)loading. 63 kaslr_offset_phys = paddr_vmcoreinfo_note - 1 65 gdb.execute("symbol-file {0} -o {1}".format( [all …]
|
| /linux/scripts/kconfig/tests/ |
| H A D | conftest.py | 1 # SPDX-License-Identifier: GPL-2.0 24 This class provides methods to run text-based interface of Kconfig 30 def __init__(self, request): argument 36 self._test_dir = os.path.dirname(str(request.fspath)) 39 def _run_conf(self, mode, dot_config=None, out_file='.config', argument 41 """Run text-based Kconfig executable and save the result. 43 mode: input mode option (--oldaskconfig, --defconfig=<file> etc.) 54 extra_env['srctree'] = self._test_dir 64 # if .config is given, copy it to the working directory 66 shutil.copyfile(os.path.join(self._test_dir, dot_config), [all …]
|
| /linux/tools/testing/selftests/hid/tests/ |
| H A D | base_device.py | 2 # SPDX-License-Identifier: GPL-2.0 3 # -*- coding: utf-8 -*- 46 def __init__(self, path): argument 47 self.path = path 49 def __set_value(self, value): argument 50 with open(self.path, "w") as f: 53 def __get_value(self): argument 54 with open(self.path) as f: 58 def int_value(self) -> int: argument 59 return int(self.__get_value()) [all …]
|
| /linux/Documentation/networking/device_drivers/ethernet/cirrus/ |
| H A D | cs89x0.rst | 1 .. SPDX-License-Identifier: GPL-2.0 33 2.1 CS8900-based Adapter Configuration 34 2.2 CS8920-based Adapter Configuration 46 5.2.1 Diagnostic Self-Test 66 The CS8900-based ISA Ethernet Adapters from Cirrus Logic follow 67 IEEE 802.3 standards and support half or full-duplex operation in ISA bus 69 in 16-bit ISA or EISA bus expansion slots and are available in 70 10BaseT-only or 3-media configurations (10BaseT, 10Base2, and AUI for 10Base-5 73 CS8920-based adapters are similar to the CS8900-based adapter with additional 85 or loaded at run-time as a device driver module. [all …]
|
| /linux/Documentation/trace/coresight/ |
| H A D | coresight-perf.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 CoreSight - Perf 15 perf record -e cs_etm//u testbinary 19 is working correctly. You can dump the content of this file as 22 perf report --stdio --dump -i perf.data 26 …ERF_RECORD_AUXTRACE size: 0x11dd0 offset: 0 ref: 0x1b614fc1061b0ad1 idx: 0 tid: 531230 cpu: -1 48 for the support such as libopencsd and libopencsd-dev or download it 60 ------------------------ 81 Fine-grained tracing with AUX pause and resume 82 ---------------------------------------------- [all …]
|
| H A D | coresight-cpu-debug.rst | 9 ------------ 11 Coresight CPU debug module is defined in ARMv8-a architecture reference manual 13 debug module and it is mainly used for two modes: self-hosted debug and 16 explore debugging method which rely on self-hosted debug mode, this document 19 The debug module provides sample-based profiling extension, which can be used 21 every CPU has one dedicated debug module to be connected. Based on self-hosted 29 -------------- 31 - During driver registration, it uses EDDEVID and EDDEVID1 - two device ID 32 registers to decide if sample-based profiling is implemented or not. On some 36 - At the time this documentation was written, the debug driver mainly relies on [all …]
|
| /linux/tools/perf/tests/shell/base_report/ |
| H A D | test_basic.sh | 3 # SPDX-License-Identifier: GPL-2.0 18 # include working environment 26 $CMD_PERF report --help > $LOGS_DIR/basic_helpmsg.log 2> $LOGS_DIR/basic_helpmsg.err 30 "PERF-REPORT" "NAME" "SYNOPSIS" "DESCRIPTION" "OPTIONS" \ 34 "input" "verbose" "show-nr-samples" "show-cpu-utilization" \ 35 "threads" "comms" "pid" "tid" "dsos" "symbols" "symbol-filter" \ 39 "hide-unresolved" "sort" "fields" "parent" "exclude-other" \ 40 "column-widths" "field-separator" "dump-raw-trace" "children" \ 44 "call-graph" "max-stack" "inverted" "ignore-callees" "pretty" \ 49 "force" "symfs" "cpu" "disassembler-style" "source" "asm-raw" \ [all …]
|
| /linux/tools/testing/selftests/ftrace/test.d/ftrace/ |
| H A D | func-filter-notrace-pid.tc | 2 # SPDX-License-Identifier: GPL-2.0 3 # description: ftrace - function pid notrace filters 11 if [ ! -f options/function-fork ]; then 13 echo "no option for function-fork found. Option will not be tested." 16 read PID _ < /proc/self/stat 18 if [ $do_function_fork -eq 1 ]; then 19 # default value of function-fork option 20 orig_value=`grep function-fork trace_options` 24 if [ $do_function_fork -eq 0 ]; then 47 if [ $do_function_fork -eq 1 ]; then [all …]
|
| H A D | func-filter-pid.tc | 2 # SPDX-License-Identifier: GPL-2.0 3 # description: ftrace - function pid filters 13 if [ ! -f options/function-fork ]; then 15 echo "no option for function-fork found. Option will not be tested." 18 if [ ! -f options/funcgraph-proc ]; then 20 echo "no option for function-fork found. Option will not be tested." 23 read PID _ < /proc/self/stat 25 if [ $do_function_fork -eq 1 ]; then 26 # default value of function-fork option 27 orig_value=`grep function-fork trace_options` [all …]
|
| /linux/Documentation/devicetree/bindings/memory-controllers/ |
| H A D | rockchip,rk3399-dmc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/memory-controllers/rockchip,rk3399-dmc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Brian Norris <briannorris@chromium.org> 15 - rockchip,rk3399-dmc 17 devfreq-events: 26 clock-names: 28 - const: dmc_clk 30 operating-points-v2: true [all …]
|
| /linux/Documentation/filesystems/iomap/ |
| H A D | porting.rst | 1 .. SPDX-License-Identifier: GPL-2.0 27 This worked well enough for direct/indirect-mapped filesystems such 28 as ext2, but is very inefficient for extent-based filesystems such 34 3. Direct access to storage on memory-like devices (fsdax) is only 40 No ->write_begin(), ->write_end() or direct_IO 49 Build the kernel, run fstests with the ``-g all`` option across a wide 53 The recommended approach is first to implement ``->iomap_begin`` (and 54 ``->iomap_end`` if necessary) to allow iomap to obtain a read-only 57 ``get_block()`` function for read-only mappings. 62 other read-only mapping operations will do the right thing. [all …]
|
| /linux/arch/alpha/kernel/ |
| H A D | sys_eiger.c | 1 // SPDX-License-Identifier: GPL-2.0 39 static unsigned long cached_irq_mask[2] = { -1, -1 }; 46 mask = (irq >= 64 ? mask << 16 : mask >> ((irq - 16) & 0x30)); in eiger_update_irq_hw() 47 regaddr = 0x510 + (((irq - 16) >> 2) & 0x0c); in eiger_update_irq_hw() 54 unsigned int irq = d->irq; in eiger_enable_irq() 63 unsigned int irq = d->irq; in eiger_disable_irq() 90 * OTOH, the accelerator thing doesn't seem to be working in eiger_device_interrupt() 116 int irq = (vector - 0x800) >> 4; in eiger_srm_device_interrupt() 134 eiger_update_irq_hw(i, -1); in eiger_init_irq() 154 so we subtract 80 because it is (90 - allocated ISA IRQ's). */ in eiger_map_irq() [all …]
|
| /linux/drivers/usb/host/ |
| H A D | ohci-q.c | 1 // SPDX-License-Identifier: GPL-1.0+ 6 * (C) Copyright 2000-2002 David Brownell <dbrownell@users.sourceforge.net> 16 int last = urb_priv->length - 1; in urb_free_priv() 23 td = urb_priv->td [i]; in urb_free_priv() 29 list_del (&urb_priv->pending); in urb_free_priv() 33 /*-------------------------------------------------------------------------*/ 42 __releases(ohci->lock) in finish_urb() 43 __acquires(ohci->lock) in finish_urb() 45 struct device *dev = ohci_to_hcd(ohci)->self.controller; in finish_urb() 46 struct usb_host_endpoint *ep = urb->ep; in finish_urb() [all …]
|
| /linux/rust/pin-init/ |
| H A D | README.md | 1 [](https://crates.io/crates/pin-init) 2 [](https://docs.rs/pin-init/) 3 [](https://deps.rs/repo/github/Rust-for-Linux/pin-ini [all...] |
| /linux/lib/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 31 converting bitfields between a CPU-usable representation and a 33 - Is little endian (bytes are reversed within a 32-bit group) 34 - The least-significant 32-bit word comes first (within a 64-bit 36 - The most significant bit of a byte is at its right (bit 0 of a 51 please refer to the KUnit documentation in Documentation/dev-tools/kunit/. 62 This option enables the use of hardware bit-reversal instructions on 102 bool "Access I/O in non-MMIO mode" 108 mechanism, the host-local I/O resource can be mapped into system 110 system can access the I/O devices with the mapped-logic PIO through [all …]
|
| /linux/tools/memory-model/Documentation/ |
| H A D | README | 4 Linux-kernel memory model (LKMM) audience might be anywhere from novice 12 If LKMM-specific terms lost you, glossary.txt might help you. 14 o You are new to Linux-kernel concurrency: simple.txt 16 o You have some background in Linux-kernel concurrency, and would 17 like an overview of the types of low-level concurrency primitives 22 o You are familiar with the Linux-kernel concurrency primitives 24 tests: litmus-tests.txt 30 recipes.txt, but is self-contained. 32 o You are familiar with Linux-kernel concurrency, and would 37 and cannot do to control dependencies: control-dependencies.txt [all …]
|
| /linux/arch/arm64/boot/dts/allwinner/ |
| H A D | sun50i-h616-orangepi-zero2.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 /dts-v1/; 8 #include "sun50i-h616-orangepi-zero.dtsi" 9 #include "sun50i-h616-cpu-opp.dtsi" 13 compatible = "xunlong,orangepi-zero2", "allwinner,sun50i-h616"; 17 cpu-supply = <®_dcdca>; 21 allwinner,rx-delay-ps = <3100>; 22 allwinner,tx-delay-ps = <700>; 23 phy-mode = "rgmii"; 24 phy-supply = <®_dcdce>; [all …]
|
| /linux/arch/hexagon/kernel/ |
| H A D | kgdb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * arch/hexagon/kernel/kgdb.c - Hexagon KGDB Support 5 * Copyright (c) 2011-2012, The Linux Foundation. All rights reserved. 18 * Keep these at three letters to pretty-print. */ 92 return -EINVAL; in dbg_set_reg() 106 /* Not yet working */ 120 gdb_regs[0] = thread_regs->r00; in sleeping_thread_to_gdb_regs() 124 * kgdb_arch_handle_exception - Handle architecture specific GDB packets. 135 * they are handled here. The code should return -1 if it wants to 139 * Not yet working. [all …]
|