Conditionally compile dGPU support

Signed-off-by: Tim Crawford <tcrawford@system76.com>
This commit is contained in:
Tim Crawford
2024-06-26 13:44:16 -06:00
committed by Jeremy Soller
parent 5b0766a209
commit 3d09a0b546
30 changed files with 88 additions and 135 deletions

View File

@ -14,9 +14,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_0
@ -45,8 +42,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(60, 40), \
FAN_POINT(65, 60), \

View File

@ -14,9 +14,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -45,8 +42,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(60, 40), \
FAN_POINT(65, 60), \

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -56,8 +53,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -52,7 +52,7 @@ CFLAGS += -DBOARD_FAN_POINTS="\
"
# Enable DGPU support
CFLAGS += -DHAVE_DGPU=1
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS += -DBOARD_DGPU_HEATUP=5
CFLAGS += -DBOARD_DGPU_COOLDOWN=20

View File

@ -14,9 +14,6 @@ KEYBOARD=15in_102_nkey
CONFIG_HAVE_KBLED = y
KBLED=bonw14
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -45,8 +42,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(60, 40), \
FAN_POINT(65, 60), \

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=bonw14
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -61,8 +58,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -164,12 +164,12 @@ uint8_t acpi_read(uint8_t addr) {
ACPI_8(0xCE, DCR2);
ACPI_8(0xD0, F1TLRR);
ACPI_8(0xD1, F1TMRR);
#if HAVE_DGPU
#if CONFIG_HAVE_DGPU
ACPI_8(0xCD, dgpu_temp);
ACPI_8(0xCF, DCR4);
ACPI_8(0xD2, F2TLRR);
ACPI_8(0xD3, F2TMRR);
#endif // HAVE_DGPU
#endif // CONFIG_HAVE_DGPU
#if HAVE_LED_AIRPLANE_N
// Airplane mode LED

View File

@ -3,7 +3,7 @@
board-common-y += acpi.c
board-common-y += battery.c
board-common-y += config.c
board-common-y += dgpu.c
board-common-$(CONFIG_HAVE_DGPU) += dgpu.c
board-common-y += ecpm.c
board-common-$(CONFIG_BUS_ESPI) += espi.c
board-common-y += fan.c
@ -58,6 +58,10 @@ CFLAGS += -DCONFIG_PECI_OVER_ESPI=1
endif
endif
ifeq ($(CONFIG_HAVE_DGPU),y)
CFLAGS += -DCONFIG_HAVE_DGPU=1
endif
# Include system76 common source
SYSTEM76_COMMON_DIR=src/board/system76/common
INCLUDE += $(SYSTEM76_COMMON_DIR)/common.mk

View File

@ -2,9 +2,6 @@
#include <board/dgpu.h>
#include <board/fan.h>
#if HAVE_DGPU
#include <board/gpio.h>
#include <board/peci.h>
#include <board/power.h>
@ -95,13 +92,3 @@ uint8_t dgpu_get_fan_duty(void) {
TRACE("DGPU temp=%d\n", dgpu_temp);
return duty;
}
#else
void dgpu_init(void) {}
uint8_t dgpu_get_fan_duty(void) {
return PWM_DUTY(0);
}
#endif // HAVE_DGPU

View File

@ -5,15 +5,21 @@
#include <stdint.h>
#ifndef HAVE_DGPU
#define HAVE_DGPU 0
#endif
#if CONFIG_HAVE_DGPU
#if HAVE_DGPU
extern int16_t dgpu_temp;
#endif // HAVE_DGPU
void dgpu_init(void);
uint8_t dgpu_get_fan_duty(void);
#else
static inline void dgpu_init(void) {}
static inline uint8_t dgpu_get_fan_duty(void) {
return 0;
}
#endif // CONFIG_HAVE_DGPU
#endif // _BOARD_DGPU_H

View File

@ -57,7 +57,7 @@ void init(void) {
gpio_init();
// Can happen in any order
#if HAVE_DGPU
#if CONFIG_HAVE_DGPU
dgpu_init();
#endif
ecpm_init();

View File

@ -21,7 +21,7 @@ void scratch_trampoline(void) {
#if HAVE_CPU_FAN2
DCR3 = 0xFF;
#endif
#if HAVE_DGPU
#if CONFIG_HAVE_DGPU
DCR4 = 0xFF;
#endif

View File

@ -18,9 +18,6 @@ CONFIG_HAVE_KBLED = y
KBLED=white_dac
CFLAGS+=-DKBLED_DAC=2
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -51,8 +48,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(88, 100) \
"
# DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(70, 25), \
FAN_POINT(75, 40), \

View File

@ -14,9 +14,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -45,8 +42,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(60, 40), \
FAN_POINT(65, 60), \

View File

@ -17,9 +17,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -52,8 +49,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -55,8 +52,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -17,9 +17,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -52,8 +49,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -17,9 +17,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -57,8 +54,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -56,8 +53,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -17,9 +17,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -53,8 +50,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -55,8 +52,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -23,9 +23,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -64,8 +61,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(87, 100), \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -22,9 +22,6 @@ KEYBOARD=18H9LHA04
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -67,8 +64,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(90, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -58,7 +58,7 @@ CFLAGS += -DBOARD_FAN_POINTS="\
"
# Enable DGPU support
CFLAGS += -DHAVE_DGPU=1
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS += -DBOARD_DGPU_HEATUP=5
CFLAGS += -DBOARD_DGPU_COOLDOWN=20

View File

@ -15,9 +15,6 @@ CONFIG_HAVE_KBLED = y
KBLED=oryp5
CFLAGS+=-DI2C_KBLED=I2C_1
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_0
@ -46,8 +43,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(80, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(60, 40), \
FAN_POINT(65, 60), \

View File

@ -14,9 +14,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -50,8 +47,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(90, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(55, 25), \
FAN_POINT(65, 30), \

View File

@ -14,9 +14,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -50,8 +47,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(90, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(55, 25), \
FAN_POINT(65, 30), \

View File

@ -17,9 +17,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -53,8 +50,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(90, 100) \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\
FAN_POINT(55, 25), \
FAN_POINT(65, 30), \

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -61,8 +58,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(87, 100), \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\

View File

@ -20,9 +20,6 @@ KEYBOARD=15in_102
CONFIG_HAVE_KBLED = y
KBLED=rgb_pwm
# Set discrete GPU I2C bus
CFLAGS+=-DI2C_DGPU=I2C_1
# Set battery I2C bus
CFLAGS+=-DI2C_SMBUS=I2C_4
@ -63,8 +60,9 @@ CFLAGS+=-DBOARD_FAN_POINTS="\
FAN_POINT(87, 100), \
"
# Enable DGPU support
CFLAGS+=-DHAVE_DGPU=1
# Enable dGPU support
CONFIG_HAVE_DGPU = y
CFLAGS += -DI2C_DGPU=I2C_1
CFLAGS+=-DBOARD_DGPU_HEATUP=5
CFLAGS+=-DBOARD_DGPU_COOLDOWN=20
CFLAGS+=-DBOARD_DGPU_FAN_POINTS="\