Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hw/irc/apic/apic.c

    rb688fd8 r9a2eb14  
    3636 */
    3737
    38 #include <ipc/services.h>
    3938#include <ipc/irc.h>
    40 #include <ns.h>
     39#include <loc.h>
    4140#include <sysinfo.h>
    4241#include <as.h>
     
    185184                        async_answer_0(callid, apic_enable_irq(IPC_GET_ARG1(call)));
    186185                        break;
     186                case IRC_DISABLE_INTERRUPT:
     187                        /* XXX TODO */
     188                        async_answer_0(callid, EOK);
     189                        break;
    187190                case IRC_CLEAR_INTERRUPT:
    188191                        /* Noop */
     
    202205{
    203206        sysarg_t apic;
     207        category_id_t irc_cat;
     208        service_id_t svc_id;
    204209       
    205210        if ((sysinfo_get_value("apic", &apic) != EOK) || (!apic)) {
     
    216221       
    217222        async_set_fallback_port_handler(apic_connection, NULL);
    218         service_register(SERVICE_IRC);
     223       
     224        rc = loc_server_register(NAME);
     225        if (rc != EOK) {
     226                printf("%s: Failed registering server. (%d)\n", NAME, rc);
     227                return false;
     228        }
     229       
     230        rc = loc_service_register("irc/" NAME, &svc_id);
     231        if (rc != EOK) {
     232                printf("%s: Failed registering service. (%d)\n", NAME, rc);
     233                return false;
     234        }
     235       
     236        rc = loc_category_get_id("irc", &irc_cat, IPC_FLAG_BLOCKING);
     237        if (rc != EOK) {
     238                printf("%s: Failed resolving category 'iplink' (%d).\n", NAME,
     239                    rc);
     240                return false;
     241        }
     242       
     243        rc = loc_service_add_to_cat(svc_id, irc_cat);
     244        if (rc != EOK) {
     245                printf("%s: Failed adding service to category (%d).\n", NAME,
     246                    rc);
     247                return false;
     248        }
    219249       
    220250        return true;
Note: See TracChangeset for help on using the changeset viewer.