/linux-6.14.4/Documentation/driver-api/media/ |
D | rc-core.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 ------------------------- 12 Every time a key is pressed on a remote controller, a scan code is produced. 23 infrared-based remote controllers, there's no key release event. Instead, 24 an extra code is produced to indicate key repeats. 33 hardware. When the carrier is switched on, it is called *PULSE*. 37 *PULSE* and *SPACE* events, each with a given duration. 40 *PULSE* and *SPACE* events depend on the protocol. 42 start with a 9ms *PULSE* and a 4.5ms SPACE. It then transmits 16 bits of 43 scan code, being 8 bits for address (usually it is a fixed number for a [all …]
|
/linux-6.14.4/drivers/media/rc/ |
D | ir-rc6-decoder.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* ir-rc6-decoder.c - A decoder for the RC6 IR protocol 7 #include "rc-core-priv.h" 12 * RC6-0-16 (standard toggle bit in header) 13 * RC6-6A-20 (no toggle bit) 14 * RC6-6A-24 (no toggle bit) 15 * RC6-6A-32 (MCE version with toggle bit in body) 33 #define RC6_6A_LCC_MASK 0xffff0000 /* RC6-6A-32 long customer code mask */ 34 #define RC6_6A_MCE_CC 0x800f0000 /* MCE customer code */ 35 #define RC6_6A_ZOTAC_CC 0x80340000 /* Zotac customer code */ [all …]
|
D | ir-sanyo-decoder.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // ir-sanyo-decoder.c - handle SANYO IR Pulse/Space protocol 7 // 13 bits Custom Code 8 // 13 bits NOT(Custom Code) 17 #include "rc-core-priv.h" 40 * ir_sanyo_decode() - Decode one SANYO pulse or space 42 * @ev: the struct ir_raw_event descriptor of the pulse/space 44 * This function returns -EINVAL if the pulse violates the state machine 48 struct sanyo_dec *data = &dev->raw->sanyo; in ir_sanyo_decode() 55 dev_dbg(&dev->dev, "SANYO event overflow received. reset to state 0\n"); in ir_sanyo_decode() [all …]
|
D | ite-cir.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 9 #define ITE_DRIVER_NAME "ite-cir" 34 /* hw-specific operation function pointers; most of these must be 43 /* make rx enter the idle state; keep listening for a pulse, but stop 98 /* duty cycle, 0-100 */ 114 /* low-speed carrier frequency limits (Hz) */ 118 /* high-speed carrier frequency limits (Hz) */ 130 * n in RDCR produces a tolerance of +/- n * 6.25% around the center 135 * frequency A = (H - L) / (H + L). We can use this in order to honor the 136 * s_rx_carrier_range() call in ir-core. We'll suppose that any request [all …]
|
D | redrat3.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * USB RedRat3 IR Transceiver rc-core driver 9 * This driver began life based on an old version of the first-generation 14 * The driver was then ported to rc-core and significantly rewritten again, 15 * by Jarod, using the in-kernel mceusb driver as a guide, after an initial 19 * - fix lirc not showing repeats properly 20 * -- 31 * -- 41 #include <media/rc-core.h> 57 /* Send encoded signal bulk-sent earlier*/ [all …]
|
/linux-6.14.4/Documentation/userspace-api/media/rc/ |
D | lirc-dev-intro.rst | 1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later 10 a bi-directional interface for transporting raw IR and decoded scancodes 21 .. code-block:: none 28 .. code-block:: none 30 $ ls -l /dev/lirc* 31 crw-rw---- 1 root root 248, 0 Jul 2 22:20 /dev/lirc0 33 Note that the package `v4l-utils <https://git.linuxtv.org/v4l-utils.git/>`_ 36 - ir-ctl: can receive raw IR and transmit IR, as well as query LIRC 39 - ir-keytable: can load keymaps; allows you to set IR kernel protocols; load 52 .. _lirc-mode-scancode: [all …]
|
D | lirc-write.rst | 1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later 4 .. _lirc-write: 13 lirc-write - Write to a LIRC device 18 .. code-block:: c 47 When in :ref:`LIRC_MODE_PULSE <lirc-mode-PULSE>` mode, the data written to 48 the chardev is a pulse/space sequence of integer values. Pulses and spaces 50 with a pulse, therefore, the data must always include an uneven number of 55 When in :ref:`LIRC_MODE_SCANCODE <lirc-mode-scancode>` mode, one 70 of data required for one frame. On error, -1 is returned, and the ``errno`` 72 :ref:`Generic Error Codes <gen-errors>` chapter.
|
/linux-6.14.4/drivers/media/rc/img-ir/ |
D | img-ir-sanyo.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright 2012-2014 Imagination Technologies Ltd. 7 * From ir-sanyo-decoder.c: 10 * 13 bits Custom Code 11 * 13 bits NOT(Custom Code) 19 #include "img-ir-hw.h" 26 /* a repeat code has no data */ in img_ir_sanyo_scancode() 30 return -EINVAL; in img_ir_sanyo_scancode() 37 return -EINVAL; in img_ir_sanyo_scancode() 40 return -EINVAL; in img_ir_sanyo_scancode() [all …]
|
D | img-ir-hw.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 5 * Copyright 2010-2014 Imagination Technologies Ltd. 12 #include <media/rc-core.h> 18 #define IMG_IR_CODETYPE_BIPHASE 0x2 /* RC-5/6 */ 19 #define IMG_IR_CODETYPE_2BITPULSEPOS 0x3 /* RC-MM */ 25 * struct img_ir_control - Decoder control settings 53 * struct img_ir_timing_range - range of timing values 65 * struct img_ir_symbol_timing - timing data for a symbol 66 * @pulse: Timing range for the length of the pulse in this symbol 70 struct img_ir_timing_range pulse; member [all …]
|
D | img-ir-nec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright 2010-2014 Imagination Technologies Ltd. 8 #include "img-ir-hw.h" 17 /* a repeat code has no data */ in img_ir_nec_scancode() 21 return -EINVAL; in img_ir_nec_scancode() 28 /* 32-bit NEC (used by Apple and TiVo remotes) */ in img_ir_nec_scancode() 30 request->scancode = bitrev8(addr) << 24 | in img_ir_nec_scancode() 34 request->protocol = RC_PROTO_NEC32; in img_ir_nec_scancode() 38 request->scancode = addr << 16 | in img_ir_nec_scancode() 41 request->protocol = RC_PROTO_NECX; in img_ir_nec_scancode() [all …]
|
/linux-6.14.4/arch/powerpc/platforms/44x/ |
D | fsp2.h | 33 #define PLB4OPB_GESR0 0x0 /* Error status 0: Master Dev 0-3 */ 36 #define PLB4OPB_GESR1 0x4 /* Error Status 1: Master Dev 4-7 */ 37 #define PLB4OPB_GESR2 0xC /* Error Status 2: Master Dev 8-11 */ 39 /* PLB4-to-AHB Bridge */ 54 /* PLB4-to-PLB6 Bridge */ 60 /* PLB6-to-PLB4 Bridge */ 66 /* PLB6-to-MCIF Bridge */ 164 /* PLB-Attached DDR3/4 Core Wrapper */ 198 #define CMUN_URCR3_P 0x26 /* Unit Reset Control Reg 3 Pulse */ 199 #define CMUN_PW0 0x2C /* Pulse Width Register */ [all …]
|
/linux-6.14.4/drivers/media/i2c/ |
D | ir-kbd-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (c) 2000-2003 Gerd Knorr <[email protected]> 23 * - drivers/char/pctv_zilogir.[ch] from Hauppauge Broadway product 25 * - drivers/staging/media/lirc/lirc_zilog.c 26 * Copyright (c) 2000 Gerd Knorr <[email protected]-berlin.de> 50 #include <media/rc-core.h> 51 #include <media/i2c/ir-kbd-i2c.h> 63 int start, range, toggle, dev, code, ircode, vendor; in get_key_haup_common() local 66 if (size != i2c_master_recv(ir->c, buf, size)) in get_key_haup_common() 67 return -EIO; in get_key_haup_common() [all …]
|
/linux-6.14.4/arch/arm/boot/dts/marvell/ |
D | kirkwood-linksys-viper.dts | 1 // SPDX-License-Identifier: GPL-2.0 3 * kirkwood-viper.dts - Device Tree file for Linksys viper (E4200v2 / EA4500) 12 /dts-v1/; 15 #include "kirkwood-6282.dtsi" 19 compatible = "linksys,viper", "marvell,kirkwood-88f6282", "marvell,kirkwood"; 31 stdout-path = "serial0:115200n8"; 35 compatible = "gpio-keys"; 36 pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >; 37 pinctrl-names = "default"; 39 button-wps { [all …]
|
/linux-6.14.4/drivers/media/usb/au0828/ |
D | au0828-input.c | 1 // SPDX-License-Identifier: GPL-2.0+ 7 // Based on em28xx-input.c. 17 #include <media/rc-core.h> 47 struct i2c_msg msg = { .addr = ir->i2c_dev_addr, .flags = 0, in au8522_rc_write() 50 rc = i2c_transfer(ir->dev->i2c_client.adapter, &msg, 1); in au8522_rc_write() 55 return (rc == 1) ? 0 : -EIO; in au8522_rc_write() 63 struct i2c_msg msg[2] = { { .addr = ir->i2c_dev_addr, .flags = 0, in au8522_rc_read() 65 { .addr = ir->i2c_dev_addr, .flags = I2C_M_RD, in au8522_rc_read() 75 rc = i2c_transfer(ir->dev->i2c_client.adapter, msg, 2); in au8522_rc_read() 80 return (rc == 2) ? 0 : -EIO; in au8522_rc_read() [all …]
|
/linux-6.14.4/sound/soc/tegra/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "SoC Audio for the Tegra System-on-Chip" 73 to interface with Pulse Density Modulation (PDM) input devices. 75 to Pulse Code Modulation (PCM) signals. This can be viewed as a 83 Config to enable the Inter-IC Sound (I2S) Controller which 84 implements full-duplex and bidirectional and single direction 85 point-to-point serial interfaces. It can interface with I2S 114 converts the multi-bit Pulse Code Modulation (PCM) audio input to 115 oversampled 1-bit Pulse Density Modulation (PDM) output. From the 117 that up-samples the input to the desired sampling rate by [all …]
|
/linux-6.14.4/include/video/ |
D | s1d13xxxfb.h | 4 * (c) 2005 Thibaut VARENE <varenet@parisc-linux.org> 6 * Header file for Epson S1D13XXX driver code 26 #define S1DREG_REV_CODE 0x0000 /* Prod + Rev Code Register */ 45 #define S1DREG_LCD_NDISP_HPER 0x0034 /* LCD Horizontal Non-Display Period Register: ((val)+1)*8)=N… 47 #define S1DREG_TFT_FPLINE_PWIDTH 0x0036 /* TFT FPLINE Pulse Width Register. */ 50 #define S1DREG_LCD_NDISP_VPER 0x003A /* LCD Vertical Non-Display Period Register: (val)+1=NDlines … 52 #define S1DREG_TFT_FPFRAME_PWIDTH 0x003C /* TFT FPFRAME Pulse Width Register */ 64 #define S1DREG_CRT_NDISP_HPER 0x0052 /* CRT/TV Horizontal Non-Display Period Register */ 66 #define S1DREG_CRT_HRTC_PWIDTH 0x0054 /* CRT/TV HRTC Pulse Width Register */ 69 #define S1DREG_CRT_NDISP_VPER 0x0058 /* CRT/TV Vertical Non-Display Period Register */ [all …]
|
/linux-6.14.4/drivers/hid/ |
D | hid-picolcd_cir.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2010-2012 by Bruno Prémont <bonbons@linux-vserver.org> * 11 #include <linux/hid-debug.h> 13 #include "hid-ids.h" 28 #include <media/rc-core.h> 30 #include "hid-picolcd.h" 41 spin_lock_irqsave(&data->lock, flags); in picolcd_raw_cir() 42 if (!data->rc_dev || (data->status & PICOLCD_CIR_SHUN)) { in picolcd_raw_cir() 43 spin_unlock_irqrestore(&data->lock, flags); in picolcd_raw_cir() 46 spin_unlock_irqrestore(&data->lock, flags); in picolcd_raw_cir() [all …]
|
/linux-6.14.4/Documentation/devicetree/bindings/sound/ |
D | nvidia,tegra186-dspk.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra186-dspk.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 The Digital Speaker Controller (DSPK) can be viewed as a Pulse 11 Density Modulation (PDM) transmitter that up-samples the input to 13 over sampled Pulse Code Modulation (PCM) input to the desired 1-bit 17 - Jon Hunter <[email protected]> 18 - Sameer Pujar <[email protected]> 21 - $ref: dai-common.yaml# [all …]
|
/linux-6.14.4/drivers/input/misc/ |
D | powermate.c | 1 // SPDX-License-Identifier: GPL-2.0-only 20 * pulse or two on a direction change; the granularity is so fine that I never 88 struct powermate_device *pm = urb->context; in powermate_irq() 89 struct device *dev = &pm->intf->dev; in powermate_irq() 92 switch (urb->status) { in powermate_irq() 96 case -ECONNRESET: in powermate_irq() 97 case -ENOENT: in powermate_irq() 98 case -ESHUTDOWN: in powermate_irq() 100 dev_dbg(dev, "%s - urb shutting down with status: %d\n", in powermate_irq() 101 __func__, urb->status); in powermate_irq() [all …]
|
/linux-6.14.4/drivers/watchdog/ |
D | aspeed_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 57 { .compatible = "aspeed,ast2400-wdt", .data = &ast2400_config }, 58 { .compatible = "aspeed,ast2500-wdt", .data = &ast2500_config }, 59 { .compatible = "aspeed,ast2600-wdt", .data = &ast2600_config }, 86 * WDT_RESET_WIDTH controls the characteristics of the external pulse (if 89 * * Pulse duration 90 * * Drive mode: push-pull vs open-drain 93 * Pulse duration configuration is available on both the AST2400 and AST2500, 103 * and bit 30 represents push-pull or open-drain. With respect to write, magic 106 * effect on the state of the drive mode or polarity bits. However, the pulse [all …]
|
/linux-6.14.4/drivers/net/phy/ |
D | bcm-phy-ptp.c | 1 // SPDX-License-Identifier: GPL-2.0 16 #include "bcm-phy-lib.h" 158 #define BCM_SKB_CB(skb) ((struct bcm_ptp_skb_cb *)(skb)->cb) 161 #define BCM_MAX_PULSE_8NS ((1U << 9) - 1) 162 #define BCM_MAX_PERIOD_8NS ((1U << 30) - 1) 165 ((phydev)->drv->phy_id & (phydev)->drv->phy_id_mask) 192 ts->tv_sec = (hb[3] << 16) | hb[2]; in bcm_ptp_get_framesync_ts() 193 ts->tv_nsec = (hb[1] << 16) | hb[0]; in bcm_ptp_get_framesync_ts() 213 /* trigger framesync - must have 0->1 transition. */ in bcm_ptp_framesync() 245 return reg & INTC_FSYNC ? 0 : -ETIMEDOUT; in bcm_ptp_framesync_ts() [all …]
|
/linux-6.14.4/drivers/iio/proximity/ |
D | ping.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2019 Andreas Klinger <ak@it-klinger.de> 8 * http://parallax.com/sites/default/files/downloads/28041-LaserPING-2m-Rangefinder-Guide.pdf 9 * http://parallax.com/sites/default/files/downloads/28015-PING-Documentation-v1.6.pdf 16 * |<->| interrupt interrupt 18 * |<---------------------->| 19 * . pulse time measured . 20 * . --> one round trip of ultra sonic waves 43 unsigned long trigger_pulse_us; /* length of trigger pulse */ 44 int laserping_error; /* support error code in */ [all …]
|
/linux-6.14.4/Documentation/driver-api/ |
D | pps.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 PPS - Pulse Per Second 22 -------- 27 PPS means "pulse per second" and a PPS source is just a device which 32 Carrier Detect pin) or to a parallel port (ACK-pin) or to a special 34 case when a new pulse arrives the system must apply to it a timestamp 38 GPS receiver as PPS source, to obtain a wallclock-time with 39 sub-millisecond synchronisation to UTC. 43 ------------------ 46 CPU GPIO-Pin as physical link to the signal, I encountered a deeper [all …]
|
/linux-6.14.4/drivers/iio/humidity/ |
D | dht11.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 44 * Data bits are encoded as pulse length (high time) on the data line. 45 * 0-bit: 22-30uS -- typically 26uS (AM2302) 46 * 1-bit: 68-75uS -- typically 70uS (AM2302) 51 * timeres > 34uS ... don't know what a 1-tick pulse is 53 * 30uS > timeres > 23uS ... don't know what a 2-tick pulse is 56 * Luckily clocks in the 33-44kHz range are quite uncommon, so we can 57 * support most systems if the threshold for decoding a pulse as 1-bit 84 /* num_edges: -1 means "no transmission in progress" */ 98 dev_dbg(dht11->dev, "%d edges detected:\n", dht11->num_edges); in dht11_edges_print() [all …]
|
/linux-6.14.4/Documentation/fb/ |
D | matroxfb.rst | 16 * Most important: boot logo :-) 34 box) and matroxfb (for graphics mode). You should not compile-in vesafb 35 unless you have primary display on non-Matrox VBE2.0 device (see 39 has [as addon] compatibility code): 43 ------------- 58 ------------------------- 73 ---------- 86 Non-listed number can be achieved by more complicated command-line, for 93 XF{68,86}_FBDev should work just fine, but it is non-accelerated. On non-intel 97 Running another (accelerated) X-Server like XF86_SVGA works too. But (at least) [all …]
|