Browse Source

fixed warnings

master
Mathieu Serandour 1 year ago
parent
commit
89a6dd5006
  1. 4
      kernel/drivers/nvme/queue.c
  2. 4
      kernel/drivers/pcie/pcie.c
  3. 15
      kernel/drivers/terminal/terminal.c
  4. 2
      kernel/early_video.c
  5. 1
      kernel/early_video.h
  6. 2
      kernel/entry.c
  7. 11
      kernel/memory/paging.c

4
kernel/drivers/nvme/queue.c

@ -10,7 +10,7 @@ struct queue create_queue(
unsigned element_size
) {
uint64_t paddr = physalloc_single();
void* vaddr = translate_address(paddr);
void* vaddr = translate_address((void*)paddr);
// we know that all the memory is mapped
@ -37,7 +37,7 @@ struct queue create_queue(
}
void free_queue(struct queue* q) {
unmap_pages(q->base, 1);
unmap_pages((uint64_t)q->base, 1);
// vaddr -> paddr
physfree((uint64_t)q->base & ~TRANSLATED_PHYSICAL_MEMORY_BEGIN);

4
kernel/drivers/pcie/pcie.c

@ -140,7 +140,7 @@ int enable_msi(struct pcie_dev* dev,
// message data
cap[3] = cap[3]&0xffff0000 // keep the high part
cap[3] = (cap[3] & 0xffff0000) // keep the high part
| vector
| (edge_trigger == 1 ? 0 : (1 << 15))
| (deassert == 1 ? 0 : (1 << 14));
@ -199,7 +199,7 @@ int init_msix(struct pcie_dev* dev) {
dev->msix_table_size = table_size;
// global enable
cap[0] = cap[0] & 0x3fffffff | 0x80000000;
cap[0] = (cap[0] & 0x3fffffff) | 0x80000000;
// set 'enable' bit 31
// unset 'function mask' bit 30
// keep other bits

15
kernel/drivers/terminal/terminal.c

@ -53,25 +53,10 @@ driver_t* get_active_terminal(void) {
return active_terminal;
}
// need to redraw the entire terminal
static void empty_terminal_handler(driver_t* this,const char* s, size_t l) {
(void) (s + l);
(void) this;
// empty handler by default,
// make sure not to execute the address 0 :)
}
#define NCOLS_MAX 133
#define TERMINAL_LINES_MAX 75
static void append_string(const char *string, size_t length);
// common resource
static Image* charmap = NULL;

2
kernel/early_video.c

@ -7,7 +7,7 @@
typedef struct framebuffer_dev fd_t;
void video_init(
struct stivale2_struct_tag_framebuffer* framebuffer_tag
const struct stivale2_struct_tag_framebuffer* framebuffer_tag
) {
// framebuffer virtual device

1
kernel/early_video.h

@ -1,2 +1,3 @@
#pragma once
void video_init(const struct stivale2_struct_tag_framebuffer*);

2
kernel/entry.c

@ -206,13 +206,13 @@ void _start(struct stivale2_struct *stivale2_struct) {
// terminal is successfully installed
init_gdt_table();
puts(&_binary_bootmessage_txt);
printf("boot logs:\n");
puts(log_get());
log_flush();
pcie_init();
pic_init();

11
kernel/memory/paging.c

@ -575,7 +575,7 @@ void map_pages(uint64_t physical_addr,
}
// return 1 iif the no entry is present in the range
static int is_table_empty(pte* page_table, unsigned begin, unsigned end) {
static inline int is_table_empty(pte* page_table, unsigned begin, unsigned end) {
assert(begin <= end);
assert(end <= 512);
@ -646,6 +646,11 @@ void unmap_pages(uint64_t virtual_addr, size_t count) {
count--;
virtual_addr += 0x1000;
}
(void) begin;
/** @TODO unmap pages if empty
*
*/
/*
unsigned end = pti;
// unmap the page map if empty
@ -661,9 +666,9 @@ void unmap_pages(uint64_t virtual_addr, size_t count) {
}
uint64_t get_paddr(const void* vaddr) {
unsigned pti = pt_offset(vaddr);
unsigned pti = pt_offset((uint64_t)vaddr);
pte entry = get_page_table_or_panic((vaddr))[pti];
pte entry = get_page_table_or_panic((uint64_t)vaddr)[pti];
assert(present_entry(entry));

Loading…
Cancel
Save