From 5cd6f77e2ab40dfe175f7661873ddbb1d77c73a1 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Tue, 28 Jan 2020 14:59:54 -0700 Subject: [PATCH] Add DAC initialization --- src/board/system76/galp3-c/dac.c | 8 ++++++++ src/board/system76/galp3-c/gpio.c | 2 +- src/board/system76/galp3-c/include/board/dac.h | 8 ++++++++ src/board/system76/galp3-c/main.c | 11 +++++++---- 4 files changed, 24 insertions(+), 5 deletions(-) create mode 100644 src/board/system76/galp3-c/dac.c create mode 100644 src/board/system76/galp3-c/include/board/dac.h diff --git a/src/board/system76/galp3-c/dac.c b/src/board/system76/galp3-c/dac.c new file mode 100644 index 0000000..52f1bd6 --- /dev/null +++ b/src/board/system76/galp3-c/dac.c @@ -0,0 +1,8 @@ +#include + +void dac_init(void) { + // Enable DAC5, used for KBLIGHT_ADJ + DACPDREG &= ~(1 << 5); + // Set DAC5 to 0V + DACDAT5 = 0; +} diff --git a/src/board/system76/galp3-c/gpio.c b/src/board/system76/galp3-c/gpio.c index c9a882c..b8f11e1 100644 --- a/src/board/system76/galp3-c/gpio.c +++ b/src/board/system76/galp3-c/gpio.c @@ -210,7 +210,7 @@ void gpio_init() { // WLAN_PWR_EN GPCRJ4 = GPIO_OUT | GPIO_UP; // KBLIGHT_ADJ - GPCRJ5 = GPIO_OUT; + GPCRJ5 = GPIO_ALT; // 3G_PWR_EN GPCRJ6 = GPIO_OUT | GPIO_UP; // NC diff --git a/src/board/system76/galp3-c/include/board/dac.h b/src/board/system76/galp3-c/include/board/dac.h new file mode 100644 index 0000000..fedf609 --- /dev/null +++ b/src/board/system76/galp3-c/include/board/dac.h @@ -0,0 +1,8 @@ +#ifndef _BOARD_DAC_H +#define _BOARD_DAC_H + +#include + +void dac_init(void); + +#endif // _BOARD_DAC_H diff --git a/src/board/system76/galp3-c/main.c b/src/board/system76/galp3-c/main.c index 996092f..6266062 100644 --- a/src/board/system76/galp3-c/main.c +++ b/src/board/system76/galp3-c/main.c @@ -4,6 +4,7 @@ #include #include +#include #include #include #include @@ -46,12 +47,14 @@ void timer_2(void) __interrupt(5) { void init(void) { gpio_init(); gctrl_init(); - kbc_init(); - pmc_init(); - kbscan_init(); + dac_init(); pwm_init(); - smbus_init(); + + kbc_init(); + kbscan_init(); + pmc_init(); peci_init(); + smbus_init(); //TODO: INTC }