Skip to content

PIPBOY_LINUX build appears broken since adding PIN_TEARING #2614

@rikkuness

Description

@rikkuness

Hey, I may be incorrect in my findings but I've been unable to build against board PIPBOY_LINUX as it fails with:

libs/pipboy/jswrap_pipboy.c:1134:18: error: ‘LCD_TEARING’ undeclared (first use in this function)
 1134 |   jshPinSetState(LCD_TEARING, JSHPINSTATE_GPIO_IN_PULLDOWN);

This reference seems to have been introduced in 01aa8f0

From my digging this definition is added by a pin_tearing param of the devices.LCD in the board definition, which is present in the PIPBOY board definition and adding a dummy value into the PIPBOY_LINUX.py does seem to make that error go away.

Alterntively the cleaner option may be to add a conditional here?

index f2957b67c..b058cb67d 100644
--- a/libs/pipboy/jswrap_pipboy.c
+++ b/libs/pipboy/jswrap_pipboy.c
@@ -1132,7 +1132,9 @@ static void jswrap_pb_periph_off() {
   jshPinSetState(DAC_SDA_PIN, JSHPINSTATE_GPIO_IN);
   jshPinSetState(RADIO_SCL_PIN, JSHPINSTATE_ADC_IN);
   jshPinSetState(RADIO_SDA_PIN, JSHPINSTATE_ADC_IN);
+#ifdef LCD_TEARING
   jshPinSetState(LCD_TEARING, JSHPINSTATE_GPIO_IN_PULLDOWN);
+#endif
   STM32_I2S_Kill();
 }

Assume @rblakesley should be tagged for review 😄

Thanks <3

Edit:
I forgot to add reproduction steps, but from a clean repo I tried

BOARD=PIPBOY_LINUX make

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions