| /linux/Documentation/driver-api/media/ |
| H A 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/drivers/media/rc/ |
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A D | ite-cir.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 8 * skeleton provided by the nuvoton-cir driver. 10 * The lirc_it87 driver was originally written by Hans-Gunter Lutke Uphues 13 * <jimbo-lirc@edwardsclan.net>. 16 * <spmf2004-lirc@yahoo.fr> in 2008. 29 #include <media/rc-core.h> 32 #include "ite-cir.h" 42 static int model_number = -1; 47 /* HW-independent code functions */ 79 freq = DIV_ROUND_CLOSEST(freq - ITE_LCF_MIN_CARRIER_FREQ, 1000); in ite_get_carrier_freq_bits() [all …]
|
| /linux/Documentation/userspace-api/media/rc/ |
| H A 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 …]
|
| H A 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/drivers/media/rc/img-ir/ |
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A D | img-ir-hw.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright 2010-2014 Imagination Technologies Ltd. 7 * This ties into the input subsystem using the RC-core. Protocol support is 18 #include <media/rc-core.h> 19 #include "img-ir.h" 53 /* code type quirks */ 59 * received any new data after an incomplete IR code is decoded. 68 if (range->max < range->min) in img_ir_timing_preprocess() 69 range->max = range->min; in img_ir_timing_preprocess() 72 range->min = (range->min*unit)/1000; in img_ir_timing_preprocess() [all …]
|
| /linux/arch/powerpc/platforms/44x/ |
| H A 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/arch/arm/boot/dts/marvell/ |
| H A 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/drivers/media/usb/au0828/ |
| H A 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/sound/soc/tegra/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 5 tristate "SoC Audio for the Tegra System-on-Chip" 75 to interface with Pulse Density Modulation (PDM) input devices. 77 to Pulse Code Modulation (PCM) signals. This can be viewed as a 85 Config to enable the Inter-IC Sound (I2S) Controller which 86 implements full-duplex and bidirectional and single direction 87 point-to-point serial interfaces. It can interface with I2S 116 converts the multi-bit Pulse Code Modulation (PCM) audio input to 117 oversampled 1-bit Pulse Density Modulation (PDM) output. From the 119 that up-samples the input to the desired sampling rate by [all …]
|
| /linux/include/video/ |
| H A 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/drivers/hid/ |
| H A 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/drivers/input/misc/ |
| H A 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/Documentation/devicetree/bindings/sound/ |
| H A 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 <jonathanh@nvidia.com> 18 - Sameer Pujar <spujar@nvidia.com> 21 - $ref: dai-common.yaml# [all …]
|
| H A D | maxim,max98357a.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Tzung-Bi Shih <tzungbi@kernel.org> 13 Maxim Integrated MAX98357A/MAX98360A is a digital pulse-code modulation (PCM) 17 - $ref: dai-common.yaml# 22 - maxim,max98357a 23 - maxim,max98360a 25 '#sound-dai-cells': 28 sdmode-gpios: [all …]
|
| /linux/drivers/net/phy/ |
| H A 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/Documentation/fb/ |
| H A D | matroxfb.rst | 2 matroxfb - Framebuffer driver for Matrox devices 13 * Most important: boot logo :-) 31 box) and matroxfb (for graphics mode). You should not compile-in vesafb 32 unless you have primary display on non-Matrox VBE2.0 device (see 36 has [as addon] compatibility code): 40 ------------- 55 ------------------------- 70 ---------- 83 Non-listed number can be achieved by more complicated command-line, for 90 XF{68,86}_FBDev should work just fine, but it is non-accelerated. On non-intel [all …]
|
| /linux/drivers/media/i2c/cx25840/ |
| H A D | cx25840-ir.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 13 #include <media/drv-intf/cx25840.h> 14 #include <media/rc-core.h> 16 #include "cx25840-core.h" 117 return state ? state->ir_state : NULL; in to_ir_state() 135 d--; in count_to_clock_divider() 193 * FIFO register pulse width count computations 199 * the pulse width counter as read from the FIFO. The two lsb's are in clock_divider_to_resolution() 212 * The 2 lsb's of the pulse width timer count are not readable, hence in pulse_width_count_to_ns() 231 * The 2 lsb's of the pulse width timer count are not accessible, hence [all …]
|
| /linux/arch/arm/mach-sa1100/ |
| H A D | jornada720.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/arch/arm/mach-sa1100/jornada720.c 5 * HP Jornada720 init code 17 #include <linux/platform_data/sa11x0-serial.h> 26 #include <asm/mach-types.h> 74 {0x0034,0x07}, // LCD Horizontal Non-Display Period Register 76 {0x0036,0x0B}, // TFT FPLINE Pulse Width Register 79 {0x003A,0x13}, // LCD Vertical Non-Display Period Register 81 {0x003C,0x01}, // TFT FPFRAME Pulse Width Register 93 {0x0052,0x13}, // CRT/TV Horizontal Non-Display Period Register [all …]
|
| /linux/drivers/media/i2c/ |
| H A D | saa711x_regs.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 3 * saa711x - Philips SAA711x video decoder register specifications 10 /* Video Decoder - Frontend part */ 16 /* Video Decoder - Decoder part */ 196 /* SAA7113 bit-masks */ 230 /* Video Decoder - Frontend part: R_01_INC_DELAY to R_05_INPUT_CNTL_4 */ 242 /* Video Decoder - Decoder part: R_06_H_SYNC_START to R_1F_STATUS_BYTE_2_VD_DEC */ 297 /* 0x20 to 0x22 - Reserved */ 304 /* 0x26 to 0x28 - Reserved */ 323 /* 0x33 - Reserved */ [all …]
|