> > +           intel_scu_ipc_simple_command(0xf1, 1);
> > +   else {
> > +           bool charger_conn = check_charger_conn();
> > +
> > +           if (charger_conn) {
> > +                   /* enter into active dead mode to do battery charging */
> > +                   intel_scu_ipc_update_register(MSIC_RTC_CONFIG2,
> > +                           MSIC_ACTIVE_DEAD, MSIC_ACTIVE_DEAD_MASK);
> > +                   intel_scu_ipc_simple_command(IPCMSG_COLD_RESET, 0);
> > +           } else {
> > +                   intel_scu_ipc_update_register(MSIC_CHIP_CTRL,
> > +                                   MSIC_CHIP_COLD_OFF, MSIC_CHIP_COLD_OFF);
> > +           }
> > +   }
> >   }
> 
> how do you solve the race of the user plugging in a charger after this
> check, but before the reboot/power_off is completed?
> 
> shouldn't this be done by firmware instead?

One more point,
If you connect any USB device(for example mass storage or USB Hub)
Those registers (0x192 and 0x193) show USB connection present even though they 
not
Actually a charging type devices.

I think you should use penwell_otg_query_charging_cap() which is provided
by Penwell OTG transceiver driver. For more details please look into 
intel_mdf_battery driver.

Thanks,
Ram
_______________________________________________
MeeGo-kernel mailing list
[email protected]
http://lists.meego.com/listinfo/meego-kernel

Reply via email to