Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1317 → Rev 1318

/kernel/trunk/genarch/src/fb/fb.c
365,7 → 365,7
sysinfo_set_item_val("Framebuffer.height",NULL,y);
sysinfo_set_item_val("Framebuffer.scanline",NULL,scan);
sysinfo_set_item_val("Framebuffer.bpp",NULL,bpp);
sysinfo_set_item_val("Framebuffer.address",NULL,addr);
sysinfo_set_item_val("Framebuffer.address.virtual",NULL,addr);
 
 
/kernel/trunk/generic/include/sysinfo/sysinfo.h
51,3 → 51,7
 
sysinfo_rettype_t sysinfo_get_val(const char *name,sysinfo_item_t **root);
 
__native sys_sysinfo_valid(__native ptr,__native len);
__native sys_sysinfo_value(__native ptr,__native len);
 
 
/kernel/trunk/generic/include/syscall/syscall.h
58,6 → 58,8
SYS_MAP_PHYSMEM,
SYS_IOSPACE_ENABLE,
SYS_PREEMPT_CONTROL,
SYS_SYSINFO_VALID,
SYS_SYSINFO_VALUE,
SYSCALL_END
} syscall_t;
 
/kernel/trunk/generic/src/sysinfo/sysinfo.c
1,6 → 1,7
#include <sysinfo/sysinfo.h>
#include <mm/slab.h>
#include <print.h>
#include <syscall/copy.h>
 
sysinfo_item_t *_root=NULL;
 
220,3 → 221,31
}
return ret;
}
 
__native sys_sysinfo_valid(__native ptr,__native len)
{
char *str;
sysinfo_rettype_t ret;
str=malloc(len+1,0);
ASSERT(str);
copy_from_uspace(str,(void *)ptr,len+1);
if(str[len]) return 0; /*This is not len lenght C string*/
ret=sysinfo_get_val(str,NULL);
free(str);
return ret.valid;
}
 
__native sys_sysinfo_value(__native ptr,__native len)
{
char *str;
sysinfo_rettype_t ret;
str=malloc(len+1,0);
ASSERT(str);
copy_from_uspace(str,(void *)ptr,len+1);
if(str[len]) return 0; /*This is not len lenght C string*/
ret=sysinfo_get_val(str,NULL);
free(str);
return ret.val;
}
 
 
/kernel/trunk/generic/src/syscall/syscall.c
45,6 → 45,7
#include <ddi/ddi.h>
#include <security/cap.h>
#include <syscall/copy.h>
#include <sysinfo/sysinfo.h>
 
static __native sys_io(int fd, const void * buf, size_t count) {
108,5 → 109,9
/* DDI related syscalls. */
sys_physmem_map,
sys_iospace_enable,
sys_preempt_control
sys_preempt_control,
/* Sysinfo syscalls */
sys_sysinfo_valid,
sys_sysinfo_value
};
/kernel/trunk/arch/ia32/src/drivers/vesa.c
41,6 → 41,7
#include <typedefs.h>
#include <memstr.h>
#include <bitops.h>
#include <sysinfo/sysinfo.h>
 
__u32 vesa_ph_addr;
__u16 vesa_width;
78,6 → 79,8
PAGE_NOT_CACHEABLE);
 
fb_init(vram_lin_addr, vesa_width, vesa_height, vesa_bpp, vesa_scanline);
sysinfo_set_item_val("Framebuffer.address.physical",NULL,vesa_ph_addr);
}
 
#endif