summaryrefslogtreecommitdiff
path: root/board/asurada
diff options
context:
space:
mode:
authorTing Shen <phoenixshen@google.com>2020-08-07 18:10:50 +0800
committerCommit Bot <commit-bot@chromium.org>2020-09-06 16:01:29 +0000
commitd55be87185ba432114da3f10c46f85d1669241d5 (patch)
tree76bd32bb1a5c1a2b368dcde7e99a8494c590b8c2 /board/asurada
parentea9371283258e2d172c120143ce3a3b1914101b7 (diff)
downloadchrome-ec-d55be87185ba432114da3f10c46f85d1669241d5.tar.gz
asurada: pwm config for rev1
Code update according to following pwm changes in rev1. - PWM0 netname changed from PWRLED to LED1_SUB. - PWM1/2 connected to a real led. - PWM3 became PACKET_MODE_EN, not a PWM pin anymore. Also lowered the brightness of the led connected to PWM 2/3. BUG=b:162814191 TEST=none BRANCH=master Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: Ib7009d987826cd777c5295c18b014a5675f9a3ae Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2342985 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'board/asurada')
-rw-r--r--board/asurada/board.c20
-rw-r--r--board/asurada/board.h4
-rw-r--r--board/asurada/gpio.inc6
-rw-r--r--board/asurada/led.c10
4 files changed, 27 insertions, 13 deletions
diff --git a/board/asurada/board.c b/board/asurada/board.c
index ee46ff495b..bf7508f0f1 100644
--- a/board/asurada/board.c
+++ b/board/asurada/board.c
@@ -72,10 +72,22 @@ const struct charger_config_t chg_chips[] = {
* number of pwm channel greater than three.
*/
const struct pwm_t pwm_channels[] = {
- [PWM_CH_PWRLED] = {
+ [PWM_CH_LED1] = {
.channel = 0,
.flags = PWM_CONFIG_DSLEEP | PWM_CONFIG_ACTIVE_LOW,
- .freq_hz = 500,
+ .freq_hz = 324, /* maximum supported frequency */
+ .pcfsr_sel = PWM_PRESCALER_C4
+ },
+ [PWM_CH_LED2] = {
+ .channel = 1,
+ .flags = PWM_CONFIG_DSLEEP | PWM_CONFIG_ACTIVE_LOW,
+ .freq_hz = 324, /* maximum supported frequency */
+ .pcfsr_sel = PWM_PRESCALER_C4
+ },
+ [PWM_CH_LED3] = {
+ .channel = 2,
+ .flags = PWM_CONFIG_DSLEEP | PWM_CONFIG_ACTIVE_LOW,
+ .freq_hz = 324, /* maximum supported frequency */
.pcfsr_sel = PWM_PRESCALER_C4
},
};
@@ -131,10 +143,6 @@ static void board_init(void)
/* For Rev0 only. Set GPM0~6 1.8V input. */
IT83XX_GPIO_GCR30 |= BIT(4);
- /* Set PWM of PWRLED to 5%. */
- pwm_set_duty(PWM_CH_PWRLED, 5);
- pwm_enable(PWM_CH_PWRLED, 1);
-
gpio_enable_interrupt(GPIO_USB_C0_BC12_INT_ODL);
/* Enable motion sensor interrupt */
diff --git a/board/asurada/board.h b/board/asurada/board.h
index b32de132a0..33a197f69a 100644
--- a/board/asurada/board.h
+++ b/board/asurada/board.h
@@ -228,7 +228,9 @@ enum battery_type {
};
enum pwm_channel {
- PWM_CH_PWRLED,
+ PWM_CH_LED1,
+ PWM_CH_LED2,
+ PWM_CH_LED3,
PWM_CH_COUNT,
};
diff --git a/board/asurada/gpio.inc b/board/asurada/gpio.inc
index bc14f66efa..967a3d5c98 100644
--- a/board/asurada/gpio.inc
+++ b/board/asurada/gpio.inc
@@ -116,7 +116,7 @@ ALTERNATE(PIN_MASK(E, 0x81), 1, MODULE_I2C, 0) /* I2C E */
ALTERNATE(PIN_MASK(B, 0x03), 1, MODULE_UART, 0) /* EC to Servo */
/* PWM */
-ALTERNATE(PIN_MASK(A, 0x0F), 1, MODULE_PWM, 0) /* PWM 0~3 */
+ALTERNATE(PIN_MASK(A, 0x07), 1, MODULE_PWM, 0) /* PWM 0~2 */
/* ADC */
ALTERNATE(PIN_MASK(I, 0xEF), 0, MODULE_ADC, 0) /* ADC 0,1,2,3,5,6,7 */
@@ -140,10 +140,6 @@ UNIMPLEMENTED(AC_PRESENT_PLACEHOLDER)
UNIMPLEMENTED_GPIO(SET_VMC_VOLT_AT_1V8, PIN(D, 4))
UNIMPLEMENTED_GPIO(EN_PP3000_VMC_PMU, PIN(D, 2))
-UNIMPLEMENTED_GPIO(LED1_SUB_ODL, PIN(A, 0))
-UNIMPLEMENTED_GPIO(LED2_SUB_ODL, PIN(A, 1))
-UNIMPLEMENTED_GPIO(LED3_SUB_ODL, PIN(A, 2))
-/* TODO: in P1, PACKET_MODE_EN moved from M6 to A3 */
UNIMPLEMENTED_GPIO(PACKET_MODE_EN, PIN(A, 3))
/* b/160218054: behavior not defined */
UNIMPLEMENTED_GPIO(USB_A0_FAULT_ODL, PIN(A, 7))
diff --git a/board/asurada/led.c b/board/asurada/led.c
index 29cf520700..1412b0ead5 100644
--- a/board/asurada/led.c
+++ b/board/asurada/led.c
@@ -66,7 +66,7 @@ void led_set_color_battery(enum ec_led_colors color)
void led_set_color_power(enum ec_led_colors color)
{
- pwm_enable(PWM_CH_PWRLED, color == EC_LED_COLOR_WHITE);
+ pwm_enable(PWM_CH_LED1, color == EC_LED_COLOR_WHITE);
}
void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range)
@@ -104,5 +104,13 @@ static void board_led_init(void)
/* set brightness to lowest value */
mt6360_led_set_brightness(MT6360_LED_RGB2, 0);
mt6360_led_set_brightness(MT6360_LED_RGB3, 0);
+
+ /* Set PWM of LEDs to 5%. */
+ pwm_set_duty(PWM_CH_LED1, 5);
+ pwm_enable(PWM_CH_LED1, 1);
+ pwm_set_duty(PWM_CH_LED2, 5);
+ pwm_enable(PWM_CH_LED2, 1);
+ pwm_set_duty(PWM_CH_LED3, 5);
+ pwm_enable(PWM_CH_LED3, 1);
}
DECLARE_HOOK(HOOK_INIT, board_led_init, HOOK_PRIO_DEFAULT);