diff options
author | Ting Shen <phoenixshen@google.com> | 2020-08-07 18:10:50 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-09-06 16:01:29 +0000 |
commit | d55be87185ba432114da3f10c46f85d1669241d5 (patch) | |
tree | 76bd32bb1a5c1a2b368dcde7e99a8494c590b8c2 /board/asurada | |
parent | ea9371283258e2d172c120143ce3a3b1914101b7 (diff) | |
download | chrome-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.c | 20 | ||||
-rw-r--r-- | board/asurada/board.h | 4 | ||||
-rw-r--r-- | board/asurada/gpio.inc | 6 | ||||
-rw-r--r-- | board/asurada/led.c | 10 |
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); |