/Linux-v6.6/drivers/leds/flash/ |
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 …]
|
D | Kconfig | 15 tristate "AS3645A and LM3555 LED flash controllers support" 19 Enable LED flash class support for AS3645A LED flash 20 controller. V4L2 flash API is provided as well if 24 tristate "LED support for Kinetic KTD2692 flash LED controller" 28 This option enables support for Kinetic KTD2692 LED flash connected 39 of flash, torch and indicator classes. 42 tristate "LED support for MAX77693 Flash" 47 This option enables support for the flash part of the MAX77693 48 multifunction device. It has build in control for two leds in flash 59 This option enables support for dual Flash LED drivers found on [all …]
|
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 …]
|
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-v6.6/drivers/media/i2c/ |
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 …]
|
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 …]
|
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-v6.6/Documentation/userspace-api/media/v4l/ |
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-v6.6/drivers/staging/media/atomisp/i2c/ |
D | atomisp-lm3554.c | 3 * LED flash driver for LM3554 82 static int lm3554_write(struct lm3554 *flash, u8 addr, u8 val) in lm3554_write() argument 84 struct i2c_client *client = v4l2_get_subdevdata(&flash->sd); in lm3554_write() 96 static int lm3554_read(struct lm3554 *flash, u8 addr) in lm3554_read() argument 98 struct i2c_client *client = v4l2_get_subdevdata(&flash->sd); in lm3554_read() 113 static int lm3554_set_mode(struct lm3554 *flash, unsigned int mode) in lm3554_set_mode() argument 119 (flash->flash_current << LM3554_FLASH_CURRENT_SHIFT); in lm3554_set_mode() 121 ret = lm3554_write(flash, LM3554_FLASH_BRIGHTNESS_REG, val); in lm3554_set_mode() 123 flash->mode = mode; in lm3554_set_mode() 127 static int lm3554_set_torch(struct lm3554 *flash) in lm3554_set_torch() argument [all …]
|
/Linux-v6.6/drivers/mtd/devices/ |
D | mchp48l640.c | 23 #include <linux/spi/flash.h> 60 static int mchp48l640_mkcmd(struct mchp48l640_flash *flash, u8 cmd, loff_t addr, char *buf) in mchp48l640_mkcmd() argument 69 static int mchp48l640_read_status(struct mchp48l640_flash *flash, int *status) in mchp48l640_read_status() argument 76 mutex_lock(&flash->lock); in mchp48l640_read_status() 77 ret = spi_write_then_read(flash->spi, &cmd[0], 1, &cmd[1], 1); in mchp48l640_read_status() 78 mutex_unlock(&flash->lock); in mchp48l640_read_status() 81 dev_dbg(&flash->spi->dev, "read status ret: %d status: %x", ret, *status); in mchp48l640_read_status() 86 static int mchp48l640_waitforbit(struct mchp48l640_flash *flash, int bit, bool set) in mchp48l640_waitforbit() argument 93 ret = mchp48l640_read_status(flash, &status); in mchp48l640_waitforbit() 94 dev_dbg(&flash->spi->dev, "read status ret: %d bit: %x %sset status: %x", in mchp48l640_waitforbit() [all …]
|
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 …]
|
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 …]
|
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-v6.6/Documentation/ABI/testing/ |
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-v6.6/drivers/mtd/maps/ |
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-v6.6/include/linux/ |
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 */ 51 * Current value of a flash setting along 69 /* flash led specific ops */ 72 /* flash brightness value in microamperes along with its constraints */ [all …]
|
/Linux-v6.6/drivers/sbus/char/ |
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-v6.6/Documentation/leds/ |
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-v6.6/include/media/ |
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-v6.6/Documentation/devicetree/bindings/leds/ |
D | qcom,spmi-flash-led.yaml | 4 $id: http://devicetree.org/schemas/leds/qcom,spmi-flash-led.yaml# 7 title: Flash LED device inside Qualcomm Technologies, Inc. PMICs 13 Flash LED controller is present inside some Qualcomm Technologies, Inc. PMICs. 14 The flash LED module can have different number of LED channels supported 25 - qcom,pm6150l-flash-led 26 - qcom,pm8150c-flash-led 27 - qcom,pm8150l-flash-led 28 - qcom,pm8350c-flash-led 29 - qcom,pm8550-flash-led 30 - qcom,pmi8998-flash-led [all …]
|
/Linux-v6.6/drivers/mtd/chips/ |
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-v6.6/Documentation/devicetree/bindings/mtd/ |
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-v6.6/drivers/mtd/nand/raw/ |
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-v6.6/drivers/net/ethernet/brocade/bna/ |
D | bfa_ioc.c | 1424 BFA_FLASH_NOT_PRESENT = -1, /*!< flash not present */ 1425 BFA_FLASH_UNINIT = -2, /*!< flash not initialized */ 1426 BFA_FLASH_BAD = -3, /*!< flash bad */ 1427 BFA_FLASH_BUSY = -4, /*!< flash busy */ 1435 /* flash command register data structure */ 1457 /* flash device status register data structure */ 1481 /* flash address register data structure */ 1495 /* Flash raw private functions */ 1563 /* Read flash status. */ 1601 /* Start flash read operation. */ [all …]
|
/Linux-v6.6/drivers/mtd/ |
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 …]
|