| /kernel/linux/linux-6.6/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 …]
|
| /kernel/linux/linux-5.10/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 …]
|
| /kernel/linux/linux-5.10/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 reset 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" 64 /* duty cycle, 0-100 */ 67 /* hw-specific operation function pointers; most of these must be 76 /* make rx enter the idle state; keep listening for a pulse, but stop 137 /* low-speed carrier frequency limits (Hz) */ 141 /* high-speed carrier frequency limits (Hz) */ 153 * n in RDCR produces a tolerance of +/- n * 6.25% around the center 158 * frequency A = (H - L) / (H + L). We can use this in order to honor the 159 * s_rx_carrier_range() call in ir-core. We'll suppose that any request [all …]
|
| /kernel/linux/linux-6.6/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 …]
|
| /kernel/linux/linux-5.10/Documentation/userspace-api/media/rc/ |
| D | lirc-dev-intro.rst | 1 .. SPDX-License-Identifier: 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: 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.
|
| /kernel/linux/linux-6.6/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.
|
| /kernel/linux/linux-5.10/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 …]
|
| /kernel/linux/linux-6.6/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 …]
|
| /kernel/linux/linux-5.10/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 …]
|
| /kernel/linux/linux-6.6/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 …]
|
| /kernel/linux/linux-5.10/sound/soc/tegra/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "SoC Audio for the Tegra System-on-Chip" 80 to interface with Pulse Density Modulation (PDM) input devices. 82 to Pulse Code Modulation (PCM) signals. This can be viewed as a 90 Config to enable the Inter-IC Sound (I2S) Controller which 91 implements full-duplex and bidirectional and single direction 92 point-to-point serial interfaces. It can interface with I2S 101 converts the multi-bit Pulse Code Modulation (PCM) audio input to 102 oversampled 1-bit Pulse Density Modulation (PDM) output. From the 104 that up-samples the input to the desired sampling rate by [all …]
|
| /kernel/linux/linux-5.10/drivers/media/i2c/ |
| D | ir-kbd-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (c) 2000-2003 Gerd Knorr <kraxel@bytesex.org> 23 * - drivers/char/pctv_zilogir.[ch] from Hauppauge Broadway product 25 * - drivers/staging/media/lirc/lirc_zilog.c 26 * Copyright (c) 2000 Gerd Knorr <kraxel@goldbach.in-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 …]
|
| /kernel/linux/linux-6.6/drivers/media/i2c/ |
| D | ir-kbd-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (c) 2000-2003 Gerd Knorr <kraxel@bytesex.org> 23 * - drivers/char/pctv_zilogir.[ch] from Hauppauge Broadway product 25 * - drivers/staging/media/lirc/lirc_zilog.c 26 * Copyright (c) 2000 Gerd Knorr <kraxel@goldbach.in-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 …]
|
| /kernel/linux/linux-6.6/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 …]
|
| /kernel/linux/linux-5.10/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 …]
|
| /kernel/linux/linux-6.6/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 #address-cells = <1>; 37 #size-cells = <0>; 38 pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >; [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| 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 #address-cells = <1>; 37 #size-cells = <0>; 38 pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >; [all …]
|
| /kernel/linux/linux-6.6/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 82 Config to enable the Inter-IC Sound (I2S) Controller which 83 implements full-duplex and bidirectional and single direction 84 point-to-point serial interfaces. It can interface with I2S 113 converts the multi-bit Pulse Code Modulation (PCM) audio input to 114 oversampled 1-bit Pulse Density Modulation (PDM) output. From the 116 that up-samples the input to the desired sampling rate by [all …]
|
| /kernel/linux/linux-5.10/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 …]
|