# HG changeset patch # User Mychaela Falconia # Date 1502160613 0 # Node ID 840113655bbf218c574694c8b8f5c412e347f3e2 # Parent 504c9dcbffb2edf5ef808198f30550994a90a8e4 GTA0x target: mux DSR_MODEM/LPG signal to LPG in init.c to avoid floating diff -r 504c9dcbffb2 -r 840113655bbf src/cs/system/Main/init.c --- a/src/cs/system/Main/init.c Tue Aug 08 01:28:52 2017 +0000 +++ b/src/cs/system/Main/init.c Tue Aug 08 02:50:13 2017 +0000 @@ -354,8 +354,22 @@ #else #if (BOARD==35) *((volatile SYS_UWORD16 *) ASIC_CONF) = 0x2000; - #elif defined(CONFIG_TARGET_PIRELLI) /* from disasm of original fw */ + #elif defined(CONFIG_TARGET_PIRELLI) + /* + * Pirelli's version of this Init_Target() function + * in their fw sets the ASIC_CONF register to 0x6050, + * which means PWL on the LT/PWL pin and LPG on the + * DSR_MODEM pin. + */ *((volatile SYS_UWORD16 *) ASIC_CONF) = 0x6050; + #elif defined(CONFIG_TARGET_GTAMODEM) + /* + * The DSR_MODEM/LPG Calypso signal is unconnected on + * Openmoko's modem, so let's mux it as LPG (output) + * so it doesn't float, like Foxconn seem to have done + * on the Pirelli. + */ + *((volatile SYS_UWORD16 *) ASIC_CONF) = 0x6040; #else *((volatile SYS_UWORD16 *) ASIC_CONF) = 0x6000; #endif /* (BOARD == 35) */