Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/time/cmos-rtc/cmos-rtc.c

    ra582dff r1ae74c6  
    4040#include <as.h>
    4141#include <sysinfo.h>
    42 #include <libarch/ddi.h>
    4342#include <libarch/barrier.h>
    4443#include <stdio.h>
     
    10099static time_t uptime_get(void);
    101100static bool is_battery_ok(rtc_t *rtc);
    102 static int  rtc_fun_online(ddf_fun_t *fun);
    103 static int  rtc_fun_offline(ddf_fun_t *fun);
    104101
    105102static ddf_dev_ops_t rtc_dev_ops;
     
    109106        .dev_add = rtc_dev_add,
    110107        .dev_remove = rtc_dev_remove,
    111         .fun_online = rtc_fun_online,
    112         .fun_offline = rtc_fun_offline,
    113108};
    114109
     
    410405        /* Try to normalize the content of the tm structure */
    411406        time_t r = mktime(t);
    412         int result;
    413 
    414         if (r < 0)
    415                 result = EINVAL;
    416         else {
    417                 rtc->boottime = r - uptime_get();
    418                 result = EOK;
    419         }
     407
     408        rtc->boottime = r - uptime_get();
    420409
    421410        fibril_mutex_unlock(&rtc->mutex);
    422411
    423         return result;
     412        return r < 0 ? EINVAL : EOK;
    424413}
    425414
     
    648637        fibril_mutex_unlock(&rtc->mutex);
    649638
    650         rc = rtc_fun_offline(rtc->fun);
    651         if (rc != EOK) {
    652                 ddf_msg(LVL_ERROR, "Failed to offline function");
    653                 return rc;
    654         }
    655 
    656639        rc = ddf_fun_unbind(rtc->fun);
    657640        if (rc != EOK) {
     
    742725}
    743726
    744 static int
    745 rtc_fun_online(ddf_fun_t *fun)
    746 {
    747         int rc;
    748 
    749         ddf_msg(LVL_DEBUG, "rtc_fun_online()");
    750 
    751         rc = ddf_fun_online(fun);
    752         if (rc == EOK)
    753                 ddf_fun_add_to_category(fun, "clock");
    754 
    755         return rc;
    756 }
    757 
    758 static int
    759 rtc_fun_offline(ddf_fun_t *fun)
    760 {
    761         ddf_msg(LVL_DEBUG, "rtc_fun_offline()");
    762         return ddf_fun_offline(fun);
    763 }
    764 
    765727int
    766728main(int argc, char **argv)
Note: See TracChangeset for help on using the changeset viewer.