mirror of
https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
synced 2025-09-09 01:28:05 -04:00
Fixed MTP to work with TWRP
This commit is contained in:
commit
f6dfaef42e
50820 changed files with 20846062 additions and 0 deletions
142
include/linux/leds-s2mpb02.h
Normal file
142
include/linux/leds-s2mpb02.h
Normal file
|
@ -0,0 +1,142 @@
|
|||
/*
|
||||
* leds-S2MPB02.h - Flash-led driver for Samsung S2MPB02
|
||||
*
|
||||
* Copyright (C) 2014 Samsung Electronics
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This driver is based on leds-max77804.h
|
||||
*/
|
||||
|
||||
#ifndef __LEDS_S2MPB02_H__
|
||||
#define __LEDS_S2MPB02_H__
|
||||
|
||||
#define S2MPB02_FLASH_TORCH_CURRENT_MAX 0xF
|
||||
#define S2MPB02_TIMEOUT_MAX 0xF
|
||||
|
||||
/* S2MPB02_LV_SEL_VOUT */
|
||||
#define S2MPB02_LV_SEL_VOUT_MASK 0x07
|
||||
#define S2MPB02_LV_SEL_VOLT(voltage) \
|
||||
((voltage) <= 2700 ? 0x00 : \
|
||||
((voltage) <= 3400 ? ((voltage) - 2900) / 100 : 0x07))
|
||||
|
||||
#define S2MPB02_FLASH_MASK 0xF0
|
||||
#define S2MPB02_TORCH_MASK 0x0F
|
||||
|
||||
#define S2MPB02_FLED_ENABLE 1
|
||||
#define S2MPB02_FLED_DISABLE 0
|
||||
#define S2MPB02_FLED_ENABLE_SHIFT 7
|
||||
|
||||
#define S2MPB02_FLED_FLASH_MODE 0
|
||||
#define S2MPB02_FLED_TORCH_MODE 1
|
||||
#define S2MPB02_FLED_MODE_SHIFT 6
|
||||
|
||||
#define S2MPB02_FLED_FLASH_TORCH_OFF 0x00
|
||||
#define S2MPB02_FLED_FLASH_ON 0x80
|
||||
#define S2MPB02_FLED_TORCH_ON 0xC0
|
||||
#define S2MPB02_FLED_ENABLE_MODE_MASK 0xC0
|
||||
|
||||
#define S2MPB02_FLED_CTRL1_LV_EN_MASK 0x08
|
||||
#define S2MPB02_FLED_CTRL1_LV_ENABLE 1
|
||||
#define S2MPB02_FLED_CTRL1_LV_DISABLE 0
|
||||
|
||||
enum s2mpb02_led_id {
|
||||
S2MPB02_FLASH_LED_1,
|
||||
S2MPB02_TORCH_LED_1,
|
||||
S2MPB02_LED_MAX,
|
||||
};
|
||||
|
||||
enum s2mpb02_flash_current {
|
||||
S2MPB02_FLASH_OUT_I_100MA = 1,
|
||||
S2MPB02_FLASH_OUT_I_200MA,
|
||||
S2MPB02_FLASH_OUT_I_300MA,
|
||||
S2MPB02_FLASH_OUT_I_400MA,
|
||||
S2MPB02_FLASH_OUT_I_500MA,
|
||||
S2MPB02_FLASH_OUT_I_600MA,
|
||||
S2MPB02_FLASH_OUT_I_700MA,
|
||||
S2MPB02_FLASH_OUT_I_800MA,
|
||||
S2MPB02_FLASH_OUT_I_900MA,
|
||||
S2MPB02_FLASH_OUT_I_1000MA,
|
||||
S2MPB02_FLASH_OUT_I_1100MA,
|
||||
S2MPB02_FLASH_OUT_I_1200MA,
|
||||
S2MPB02_FLASH_OUT_I_1300MA,
|
||||
S2MPB02_FLASH_OUT_I_1400MA,
|
||||
S2MPB02_FLASH_OUT_I_1500MA,
|
||||
S2MPB02_FLASH_OUT_I_MAX,
|
||||
};
|
||||
|
||||
enum s2mpb02_torch_current {
|
||||
S2MPB02_TORCH_OUT_I_20MA = 1,
|
||||
S2MPB02_TORCH_OUT_I_40MA,
|
||||
S2MPB02_TORCH_OUT_I_60MA,
|
||||
S2MPB02_TORCH_OUT_I_80MA,
|
||||
S2MPB02_TORCH_OUT_I_100MA,
|
||||
S2MPB02_TORCH_OUT_I_120MA,
|
||||
S2MPB02_TORCH_OUT_I_140MA,
|
||||
S2MPB02_TORCH_OUT_I_160MA,
|
||||
S2MPB02_TORCH_OUT_I_180MA,
|
||||
S2MPB02_TORCH_OUT_I_200MA,
|
||||
S2MPB02_TORCH_OUT_I_220MA,
|
||||
S2MPB02_TORCH_OUT_I_240MA,
|
||||
S2MPB02_TORCH_OUT_I_260MA,
|
||||
S2MPB02_TORCH_OUT_I_280MA,
|
||||
S2MPB02_TORCH_OUT_I_300MA,
|
||||
S2MPB02_TORCH_OUT_I_MAX,
|
||||
};
|
||||
|
||||
enum s2mpb02_flash_timeout {
|
||||
S2MPB02_FLASH_TIMEOUT_62P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_125MS,
|
||||
S2MPB02_FLASH_TIMEOUT_187P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_250MS,
|
||||
S2MPB02_FLASH_TIMEOUT_312P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_375MS,
|
||||
S2MPB02_FLASH_TIMEOUT_437P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_500MS,
|
||||
S2MPB02_FLASH_TIMEOUT_562P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_625MS,
|
||||
S2MPB02_FLASH_TIMEOUT_687P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_750MS,
|
||||
S2MPB02_FLASH_TIMEOUT_812P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_875MS,
|
||||
S2MPB02_FLASH_TIMEOUT_937P5MS,
|
||||
S2MPB02_FLASH_TIMEOUT_1000MS,
|
||||
S2MPB02_FLASH_TIMEOUT_MAX,
|
||||
};
|
||||
|
||||
|
||||
enum s2mpb02_torch_timeout {
|
||||
S2MPB02_TORCH_TIMEOUT_1S,
|
||||
S2MPB02_TORCH_TIMEOUT_2S,
|
||||
S2MPB02_TORCH_TIMEOUT_3S,
|
||||
S2MPB02_TORCH_TIMEOUT_4S,
|
||||
S2MPB02_TORCH_TIMEOUT_5S,
|
||||
S2MPB02_TORCH_TIMEOUT_6S,
|
||||
S2MPB02_TORCH_TIMEOUT_7S,
|
||||
S2MPB02_TORCH_TIMEOUT_8S,
|
||||
S2MPB02_TORCH_TIMEOUT_9S,
|
||||
S2MPB02_TORCH_TIMEOUT_10S,
|
||||
S2MPB02_TORCH_TIMEOUT_11S,
|
||||
S2MPB02_TORCH_TIMEOUT_12S,
|
||||
S2MPB02_TORCH_TIMEOUT_13S,
|
||||
S2MPB02_TORCH_TIMEOUT_14S,
|
||||
S2MPB02_TORCH_TIMEOUT_15S,
|
||||
S2MPB02_TORCH_TIMEOUT_16S,
|
||||
S2MPB02_TORCH_TIMEOUT_MAX,
|
||||
};
|
||||
|
||||
struct s2mpb02_led {
|
||||
const char *name;
|
||||
int id;
|
||||
int brightness;
|
||||
int timeout;
|
||||
};
|
||||
|
||||
struct s2mpb02_led_platform_data {
|
||||
int num_leds;
|
||||
struct s2mpb02_led leds[S2MPB02_LED_MAX];
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue