Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2005 → Rev 1999

/trunk/uspace/rd/rd.c
38,11 → 38,6
#include <ipc/ipc.h>
#include <ipc/services.h>
#include <ipc/ns.h>
#include <sysinfo.h>
#include <as.h>
#include <ddi.h>
#include <align.h>
#include <bool.h>
#include <errno.h>
#include <async.h>
 
69,40 → 64,20
}
 
 
static bool rd_init(void)
int main(int argc, char **argv)
{
size_t rd_size = sysinfo_value("rd.size");
void * rd_ph_addr = (void *) sysinfo_value("rd.address.physical");
ipcarg_t phonead;
if (rd_size == 0)
return false;
async_set_client_connection(rd_connection);
void * rd_addr = as_get_mappable_page(rd_size);
map_physmem(rd_ph_addr, rd_addr, ALIGN_UP(rd_size, PAGE_SIZE) >> PAGE_WIDTH, AS_AREA_READ | AS_AREA_WRITE);
return true;
}
/* Register service at nameserver */
if (ipc_connect_to_me(PHONE_NS, SERVICE_RD, 0, &phonead) != 0)
return -1;
 
async_manager();
 
int main(int argc, char **argv)
{
if (rd_init()) {
ipcarg_t phonead;
async_set_client_connection(rd_connection);
/* Register service at nameserver */
if (ipc_connect_to_me(PHONE_NS, SERVICE_RD, 0, &phonead) != 0)
return -1;
async_manager();
/* Never reached */
return 0;
}
return -1;
/* Never reached */
return 0;
}
 
/**
/trunk/uspace/libc/generic/sysinfo.c
38,8 → 38,10
 
sysarg_t sysinfo_value(char *name)
{
return __SYSCALL2(SYS_SYSINFO_VALUE, (sysarg_t ) name, (sysarg_t) strlen(name));
return __SYSCALL2(SYS_SYSINFO_VALUE, (sysarg_t ) name, (sysarg_t) strlen(name) );
}
 
/** @}
*/