@@ -180,20 +180,6 @@ SERCOM sercom5(SERCOM5);
180180#define VOLTAGE_LIMIT_4V36 (0x6 << 3 )
181181#define VOLTAGE_LIMIT_4V04 (0x2 << 3 )
182182
183- static inline void set_pmic_safe_defaults () {
184- PERIPH_WIRE.initMasterWIRE (100000 );
185- PERIPH_WIRE.enableWIRE ();
186- pinPeripheral (PIN_WIRE_SDA, g_APinDescription[PIN_WIRE_SDA].ulPinType );
187- pinPeripheral (PIN_WIRE_SCL, g_APinDescription[PIN_WIRE_SCL].ulPinType );
188-
189- PERIPH_WIRE.startTransmissionWIRE ( PMIC_ADDRESS, WIRE_WRITE_FLAG );
190- PERIPH_WIRE.sendDataMasterWIRE (PMIC_REG02);
191- PERIPH_WIRE.sendDataMasterWIRE (0 );
192- PERIPH_WIRE.prepareCommandBitsWire (WIRE_MASTER_ACT_STOP);
193-
194- PERIPH_WIRE.disableWIRE ();
195- }
196-
197183static inline void disable_battery_charging () {
198184 PERIPH_WIRE.initMasterWIRE (100000 );
199185 PERIPH_WIRE.enableWIRE ();
@@ -210,18 +196,19 @@ static inline void disable_battery_charging() {
210196
211197#else
212198
213- static inline void set_pmic_safe_defaults () {}
214199static inline void disable_battery_charging () {}
215200
216201#endif
217202
218203void initVariant () {
219- pinMode (32 , INPUT_PULLDOWN);
204+
205+ pinMode (32 , OUTPUT);
206+ digitalWrite (32 , LOW);
207+ pinMode (32 , INPUT);
220208 if (analogRead (32 ) < 800 ) {
221209 disable_battery_charging ();
222- } else {
223- set_pmic_safe_defaults ();
224210 }
211+
225212 // Workaround for RTS not being controlled correctly
226213 pinMode (28 , OUTPUT);
227214 digitalWrite (28 , LOW);
0 commit comments