/linux/drivers/leds/flash/ |
H A D | leds-as3645a.c | 3 * drivers/leds/leds-as3645a.c - AS3645A and LM3555 flash controllers driver 16 #include <linux/led-class-flash.h> 23 #include <media/v4l2-flash-led-class.h> 156 static int as3645a_write(struct as3645a *flash, u8 addr, u8 val) in as3645a_write() argument 158 struct i2c_client *client = flash->client; in as3645a_write() 170 static int as3645a_read(struct as3645a *flash, u8 addr) in as3645a_read() argument 172 struct i2c_client *client = flash->client; in as3645a_read() 188 * as3645a_set_current - Set flash configuration registers 189 * @flash: The flash 191 * Configure the hardware with flash, assist and indicator currents, as well as [all …]
|
H A D | leds-rt4505.c | 6 #include <linux/led-class-flash.h> 11 #include <media/v4l2-flash-led-class.h> 48 struct led_classdev_flash flash; member 56 container_of(lcdev, struct rt4505_priv, flash.led_cdev); in rt4505_torch_brightness_set() 84 container_of(lcdev, struct rt4505_priv, flash.led_cdev); in rt4505_torch_brightness_get() 120 container_of(fled_cdev, struct rt4505_priv, flash); in rt4505_flash_brightness_set() 137 container_of(fled_cdev, struct rt4505_priv, flash); in rt4505_flash_strobe_set() 153 container_of(fled_cdev, struct rt4505_priv, flash); in rt4505_flash_strobe_get() 174 container_of(fled_cdev, struct rt4505_priv, flash); in rt4505_flash_timeout_set() 190 container_of(fled_cdev, struct rt4505_priv, flash); in rt4505_fault_get() [all …]
|
H A D | leds-mt6370-flash.c | 15 #include <linux/led-class-flash.h> 22 #include <media/v4l2-flash-led-class.h> 71 struct led_classdev_flash flash; member 89 struct mt6370_led *led = to_mt6370_led(lcdev, flash.led_cdev); in mt6370_torch_brightness_set() 101 * There is only one set of flash control logic, and this flag is used to check if 'strobe' in mt6370_torch_brightness_set() 124 * There're two flash channels in MT6370. If joint flash output is used, in mt6370_torch_brightness_set() 157 * Because of the current spikes when turning on the flash, the brightness should be kept in mt6370_flash_brightness_set() 166 struct mt6370_led *led = to_mt6370_led(fl_cdev, flash); in _mt6370_flash_brightness_set() 176 * There're two flash channels in MT6370. If joint flash output is used, storbe in _mt6370_flash_brightness_set() 197 struct mt6370_led *led = to_mt6370_led(fl_cdev, flash); in mt6370_strobe_set() [all …]
|
/linux/drivers/media/i2c/ |
H A D | adp1653.c | 38 static int adp1653_update_hw(struct adp1653_flash *flash) in adp1653_update_hw() argument 40 struct i2c_client *client = v4l2_get_subdevdata(&flash->subdev); in adp1653_update_hw() 46 flash->indicator_intensity->val) in adp1653_update_hw() 49 switch (flash->led_mode->val) { in adp1653_update_hw() 53 /* Flash mode, light on with strobe, duration from timer */ in adp1653_update_hw() 55 config |= TIMEOUT_US_TO_CODE(flash->flash_timeout->val) in adp1653_update_hw() 61 flash->torch_intensity->val) in adp1653_update_hw() 77 static int adp1653_get_fault(struct adp1653_flash *flash) in adp1653_get_fault() argument 79 struct i2c_client *client = v4l2_get_subdevdata(&flash->subdev); in adp1653_get_fault() 87 flash->fault |= fault; in adp1653_get_fault() [all …]
|
H A D | lm3646.c | 4 * General device driver for TI lm3646, Dual FLASH LED Driver 81 static int lm3646_mode_ctrl(struct lm3646_flash *flash, in lm3646_mode_ctrl() argument 86 return regmap_write(flash->regmap, in lm3646_mode_ctrl() 87 REG_ENABLE, flash->mode_reg | MODE_SHDN); in lm3646_mode_ctrl() 89 return regmap_write(flash->regmap, in lm3646_mode_ctrl() 90 REG_ENABLE, flash->mode_reg | MODE_TORCH); in lm3646_mode_ctrl() 92 return regmap_write(flash->regmap, in lm3646_mode_ctrl() 93 REG_ENABLE, flash->mode_reg | MODE_FLASH); in lm3646_mode_ctrl() 101 struct lm3646_flash *flash = to_lm3646_flash(ctrl); in lm3646_get_ctrl() local 108 rval = regmap_read(flash->regmap, REG_FLAG, ®_val); in lm3646_get_ctrl() [all …]
|
H A D | lm3560.c | 4 * General device driver for TI lm3559, lm3560, FLASH LED Driver 68 static int lm3560_mode_ctrl(struct lm3560_flash *flash) in lm3560_mode_ctrl() argument 72 switch (flash->led_mode) { in lm3560_mode_ctrl() 74 rval = regmap_update_bits(flash->regmap, in lm3560_mode_ctrl() 78 rval = regmap_update_bits(flash->regmap, in lm3560_mode_ctrl() 82 rval = regmap_update_bits(flash->regmap, in lm3560_mode_ctrl() 90 static int lm3560_enable_ctrl(struct lm3560_flash *flash, in lm3560_enable_ctrl() argument 97 rval = regmap_update_bits(flash->regmap, in lm3560_enable_ctrl() 100 rval = regmap_update_bits(flash->regmap, in lm3560_enable_ctrl() 104 rval = regmap_update_bits(flash->regmap, in lm3560_enable_ctrl() [all …]
|
/linux/Documentation/userspace-api/media/v4l/ |
H A D | ext-ctrls-flash.rst | 6 Flash Control Reference 9 The V4L2 flash controls are intended to provide generic access to flash 10 controller devices. Flash controller devices are typically used in 13 The interface can support both LED and xenon flash devices. As of 14 writing this, there is no xenon flash driver using this interface. 23 Unsynchronised LED flash (software strobe) 26 Unsynchronised LED flash is controlled directly by the host as the 27 sensor. The flash must be enabled by the host before the exposure of the 29 for the timing of the flash. 34 Synchronised LED flash (hardware strobe) [all …]
|
/linux/include/linux/ |
H A D | led-class-flash.h | 3 * LED Flash class interface 34 /* set flash brightness */ 37 /* get flash brightness */ 40 /* set flash strobe state */ 42 /* get flash strobe state */ 44 /* set flash timeout */ 46 /* get the flash LED fault */ 48 /* set flash duration */ 53 * Current value of a flash setting along 71 /* flash led specific ops */ [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-led-flash | 6 Set the brightness of this LED in the flash strobe mode, in 7 microamperes. The file is created only for the flash LED devices 8 that support setting flash brightness. 18 Maximum brightness level for this LED in the flash strobe mode, 26 Hardware timeout for flash, in microseconds. The flash strobe 28 of the strobe. The file is created only for the flash LED 29 devices that support setting flash timeout. 36 Maximum flash timeout for this LED, in microseconds. 43 Flash strobe state. When written with 1 it triggers flash strobe 44 and when written with 0 it turns the flash off. [all …]
|
/linux/drivers/mtd/devices/ |
H A D | sst25l.c | 5 * Driver for SST25L SPI Flash chips 25 #include <linux/spi/flash.h> 67 static int sst25l_status(struct sst25l_flash *flash, int *status) in sst25l_status() argument 83 err = spi_sync(flash->spi, &m); in sst25l_status() 91 static int sst25l_write_enable(struct sst25l_flash *flash, int enable) in sst25l_write_enable() argument 97 err = spi_write(flash->spi, command, 1); in sst25l_write_enable() 102 err = spi_write(flash->spi, command, 1); in sst25l_write_enable() 108 err = spi_write(flash->spi, command, 2); in sst25l_write_enable() 113 err = sst25l_status(flash, &status); in sst25l_write_enable() 123 static int sst25l_wait_till_ready(struct sst25l_flash *flash) in sst25l_wait_till_ready() argument [all …]
|
H A D | mchp23k256.c | 16 #include <linux/spi/flash.h> 41 static void mchp23k256_addr2cmd(struct mchp23k256_flash *flash, in mchp23k256_addr2cmd() argument 51 for (i = flash->caps->addr_width; i > 0; i--, addr >>= 8) in mchp23k256_addr2cmd() 55 static int mchp23k256_cmdsz(struct mchp23k256_flash *flash) in mchp23k256_cmdsz() argument 57 return 1 + flash->caps->addr_width; in mchp23k256_cmdsz() 63 struct mchp23k256_flash *flash = to_mchp23k256_flash(mtd); in mchp23k256_write() local 71 cmd_len = mchp23k256_cmdsz(flash); in mchp23k256_write() 74 mchp23k256_addr2cmd(flash, to, command); in mchp23k256_write() 84 mutex_lock(&flash->lock); in mchp23k256_write() 86 ret = spi_sync(flash->spi, &message); in mchp23k256_write() [all …]
|
H A D | spear_smi.c | 2 * SMI (Serial Memory Controller) device driver for Serial NOR Flash on 90 /* flash opcodes */ 93 /* Flash Device Ids maintenance section */ 95 /* data structure to maintain flash ids from different vendors */ 165 * @cmd_complete: queue to wait for command completion of NOR-flash. 167 * @flash: separate structure for each Serial NOR-flash attached to SMI. 178 struct spear_snor_flash *flash[MAX_NUM_FLASH_CHIP]; member 182 * struct spear_snor_flash - Structure for Serial NOR Flash 184 * @bank: Bank number(0, 1, 2, 3) for each NOR-flash. 185 * @dev_id: Device ID of NOR-flash. [all …]
|
/linux/drivers/mtd/maps/ |
H A D | Kconfig | 7 bool "Support non-linear mappings of flash chips" 10 paged mappings of flash chips. 13 tristate "Flash device in physical memory map" 16 This provides a 'mapping' driver which allows the NOR Flash and 19 the physical address and size of the flash chips on your 38 hex "Physical start address of flash mapping" 42 This is the physical memory location at which the flash chips 48 hex "Physical length of flash mapping" 52 This is the total length of the mapping of the flash chips on 55 than the total amount of flash present. Refer to the memory [all …]
|
/linux/drivers/sbus/char/ |
H A D | flash.c | 2 /* flash.c: Allow mmap access to the OBP Flash, for OBP updates. 31 } flash; variable 40 if (flash.read_base == flash.write_base) { in flash_mmap() 41 addr = flash.read_base; in flash_mmap() 42 size = flash.read_size; in flash_mmap() 50 addr = flash.read_base; in flash_mmap() 51 size = flash.read_size; in flash_mmap() 53 addr = flash.write_base; in flash_mmap() 54 size = flash.write_size; in flash_mmap() 87 if (file->f_pos > flash.read_size) in flash_llseek() [all …]
|
/linux/Documentation/leds/ |
H A D | leds-class-flash.rst | 2 Flash LED handling under Linux 5 Some LED devices provide two modes - torch and flash. In the LED subsystem 7 and LED Flash class respectively. The torch mode related features are enabled 8 by default and the flash ones only if a driver declares it by setting 11 In order to enable the support for flash LEDs CONFIG_LEDS_CLASS_FLASH symbol 12 must be defined in the kernel config. A LED Flash class driver must be 15 Following sysfs attributes are exposed for controlling flash LED devices: 16 (see Documentation/ABI/testing/sysfs-class-led-flash) 26 V4L2 flash wrapper for flash LEDs 37 flash device, e.g. an I2C device [all …]
|
/linux/include/media/ |
H A D | v4l2-flash-led-class.h | 3 * V4L2 flash LED sub-device registration helpers. 21 * struct v4l2_flash_ctrl_data - flash control initialization data, filled 22 * basing on the features declared by the LED flash 25 * @cid: contains v4l2 flash control id if the config 34 * struct v4l2_flash_ops - V4L2 flash operations 36 * @external_strobe_set: Setup strobing the flash by hardware pin state 53 * struct v4l2_flash_config - V4L2 Flash sub-device initialization data 56 * @intensity: non-flash strobe constraints for the LED 57 * @flash_faults: bitmask of flash faults that the LED flash class 60 * <linux/led-class-flash.h> [all …]
|
/linux/drivers/mtd/chips/ |
H A D | Kconfig | 2 menu "RAM/ROM/Flash chip drivers" 6 tristate "Detect flash chips by Common Flash Interface (CFI) probe" 10 The Common Flash Interface specification was developed by Intel, 11 AMD and other flash manufactures that provides a universal method 12 for probing the capabilities of flash devices. If you wish to 18 tristate "Detect non-CFI AMD/JEDEC-compatible flash chips" 22 This option enables JEDEC-style probing of flash chips which are not 23 compatible with the Common Flash Interface, but will use the common 24 CFI-targeted flash drivers for any chips which are identified which 33 bool "Flash chip driver advanced configuration options" [all …]
|
/linux/Documentation/devicetree/bindings/mtd/ |
H A D | mtd-physmap.yaml | 7 title: CFI or JEDEC memory-mapped NOR flash, MTD-RAM (NVRAM...) 13 Flash chips (Memory Technology Devices) are often used for solid state 29 - arm,versatile-flash 30 - arm,vexpress-flash 31 - cortina,gemini-flash 34 - ge,imp3a-paged-flash 36 - gef,ppc9a-paged-flash 38 - gef,sbc310-paged-flash 40 - gef,sbc610-paged-flash 43 - intel,ixp4xx-flash [all …]
|
/linux/drivers/mtd/nand/raw/ |
H A D | Kconfig | 8 NAND flash devices. For further information see 13 comment "Raw/parallel NAND flash controllers" 23 Enable the driver for NAND flash on Intel Moorestown, using the 31 Enable the driver for NAND flash on platforms using a Denali NAND 39 Support for NAND flash on Amstrad E3 (Delta). 47 Support for NAND flash on Texas Instruments OMAP2, OMAP3, OMAP4 69 This enables the driver for the NAND flash controller on the 78 NDFC Nand Flash Controllers are integrated in IBM/AMCC's 4xx SoCs 84 This enables the NAND flash controller on the S3C24xx and S3C64xx 117 Use NAND flash attached to the CAFÉ chip designed for the OLPC [all …]
|
/linux/Documentation/driver-api/mtd/ |
H A D | spi-nor.rst | 5 How to propose a new flash addition 9 Serial Flash Discoverable Parameter (SFDP) standard. SFDP describes 10 the functional and feature capabilities of serial flash devices in a 14 flash's parameters and settings. If the flash defines the SFDP tables 15 it's likely that you won't need a flash entry at all, and instead 16 rely on the generic flash driver which probes the flash solely based 20 There are cases however where you need to define an explicit flash 21 entry. This typically happens when the flash has settings or support 23 when the flash contains mangled SFDP data. If the later, one needs 33 1) Specify the controller that you used to test the flash and specify [all …]
|
/linux/arch/powerpc/kernel/ |
H A D | rtas_flash.c | 9 * firmware image and flash it as it reboots (see rtas.c). 34 /* Flash image status values */ 37 #define FLASH_IMG_SHORT -1005 /* Flash image shorter than expected */ 38 #define FLASH_IMG_BAD_LEN -1004 /* Bad length value in flash list block */ 39 #define FLASH_IMG_NULL_DATA -1003 /* Bad data value in flash list block */ 40 #define FLASH_IMG_READY 0 /* Firmware img ready for flash on reboot */ 57 /* ibm,validate-flash-image update result tokens */ 82 /* ibm,manage-flash-image operation tokens */ 101 * that needed by the rtas flash update. 121 * Local copy of the flash block list. [all …]
|
/linux/Documentation/networking/devlink/ |
H A D | ixgbe.rst | 67 - Version defining the format of the flash contents. 80 Flash Update 83 The ``ixgbe`` driver implements support for flash update using the 84 ``devlink-flash`` interface. It supports updating the device flash using a 85 combined flash image that contains the ``fw.mgmt``, ``fw.undi``, and 94 - Do not preserve settings stored in the flash components being 100 in the flash with the contents from the provided image, without 109 The ``ixgbe`` driver supports activating new firmware after a flash update 135 * - ``nvm-flash`` 136 - The contents of the entire flash chip, sometimes referred to as [all …]
|
/linux/drivers/mtd/ |
H A D | Kconfig | 5 Memory Technology Devices are flash, RAM and similar chips, often 43 Although most flash chips have an erase size too large to be useful 53 on flash chips to emulate a smaller block size. Needless to say, 76 tristate "FTL (Flash Translation Layer) support" 80 This provides support for the original Flash Translation Layer which 82 file system on a flash device to emulate a block device with 93 tristate "NFTL (NAND Flash Translation Layer) support" 97 This provides support for the NAND Flash Translation Layer which is 99 file system on a flash device to emulate a block device with 113 Support for writing to the NAND Flash Translation Layer, as used [all …]
|
/linux/Documentation/devicetree/bindings/leds/ |
H A D | kinetic,ktd2692.yaml | 7 title: KTD2692 Flash LED Driver from Kinetic Technologies 13 KTD2692 is the ideal power solution for high-power flash LEDs. 17 enable/disable the IC, Movie(max 1/3 of Flash current) / Flash mode current, 18 Flash timeout, LVP(low voltage protection). 21 LED current will be ramped up to the flash-mode current level. 45 flash-max-timeout-us: 46 description: Flash LED maximum timeout. 53 flash-max-microamp: 55 description: Flash LED maximum current 81 flash-max-timeout-us = <250000>; [all …]
|
/linux/drivers/mtd/spi-nor/ |
H A D | core.h | 21 /* Standard SPI NOR flash operations. */ 210 * @idx: Erase Type index as sorted in the Basic Flash Parameter 335 * struct spi_nor_flash_parameter - SPI NOR flash parameters and settings. 336 * Includes legacy flash parameters and settings that can be overwritten 338 * Serial Flash Discoverable Parameters (SFDP) tables. 340 * @bank_size: the flash memory bank density in bytes. 341 * @size: the total flash memory density in bytes. 342 * @writesize Minimal writable flash unit size. Defaults to 1. Set to 344 * @page_size: the page size of the SPI NOR flash memory. 347 * when the flash operates with 4B opcodes but needs the [all …]
|