OAL Library Query RRS feed

  • Question

  • Hi,

    I am working on porting of Winec HH 6.5 to Winec 7.I am calling a warmboot ioctl  from the Application using the KernelmodeIOControl().

    We have cloned the OALIOCT component from the public to our Platform and added  our  Kernel IOCTL to the switch case statement so  that we would like to allow from user space.we made sure that the component compiles as oalioctl.dll.

    When the IOCLTL is being called it is hitting the  Switch case statement in my OALIOCTL folder which has the  oalioctl.dll.and i am able to traverse to my IOCTL Handler function which is present in the OAL lib.when i call the Setsystempowerstate api from the function handler which is present in the oallib warm boot is not working.

    But it seems to be working fine when i call the SetSystemPowerState( NULL, POWER_STATE_RESET, POWER_FORCE ) api at the switch case in the OALIOCTL folder which has the  oalioctl.dllinstead of routing the call to the IOCTL function handler present in my lib.the warm boot works exceptionally fine.

    Please let me know what is that i,m doing wrong. what could be the problem when the setsystempowerstate is called from the ioctl handlerfunction.I need your suggestions and solutions  at the earliest.

    Thanks in advance.

    Friday, May 24, 2013 3:58 PM

All replies

  • As I mentioned in your other blog you can not call the SetSystemPowerState() from the kernel (OAL.lib).

    In kernel you have direct access to the physical device and you can reset the device directly without invoking the PM call. Why don't you call the SetSystemPowerState from application itself ?


    Saturday, May 25, 2013 11:15 AM
  • In winec6.5 hh when i call the KErneliocontrol for warm boot it is calling the function in the oal.lib present in oal folder which internally calls SetSystemPowerState() and it works fine.

    Pls help me on this

    Saturday, May 25, 2013 11:30 AM
  • Could you please help me on understanding why i cannot use the setsystempowerstate in the oal.lib .

    It works fine in winec6.5 hh and why is it not working in winec7.0.

    Could you please guide me on this as i am stuck with this problem for days now.

    Thanks in advance.

    Saturday, May 25, 2013 11:33 AM