Skip to content

Commit

Permalink
Output more status info in zsbl for OpenPiton
Browse files Browse the repository at this point in the history
  • Loading branch information
msfschaffner authored and zarubaf committed Mar 18, 2019
1 parent a5f3184 commit e0a71ea
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 1 deletion.
9 changes: 9 additions & 0 deletions openpiton/bootrom/linux/src/sd.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,15 @@ int sd_copy(void *dst, uint32_t src_lba, uint32_t size)
uint64_t * addr = (uint64_t *)raw_addr;
volatile uint64_t * p = (uint64_t *)dst;
for (uint32_t blk = 0; blk < size; blk++) {
if(blk % 100 == 0) {
print_uart("copying block ");
print_uart_dec(blk, 1);
print_uart(" of ");
print_uart_dec(size, 1);
print_uart(" blocks (");
print_uart_dec((blk*100)/size, 1);
print_uart(" %)\r\n");
}
for (uint32_t offset = 0; offset < 64; offset++) {
*(p++) = *(addr++);
}
Expand Down
20 changes: 19 additions & 1 deletion openpiton/bootrom/linux/src/uart.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,24 @@ void bin_to_hex(uint8_t inp, uint8_t res[2])
return;
}

void print_uart_dec(uint32_t val, uint32_t digits)
{
int i;
uint32_t k = 1000000000;
for (i = 9; i > -1; i--)
{
uint32_t cur = val / k;
val -= cur * k;
k /= 10;
if(cur || (i<digits)) {
digits = i;
uint8_t dec;
dec = bin_to_hex_table[cur & 0xf];
write_serial(dec);
}
}
}

void print_uart_int(uint32_t addr)
{
int i;
Expand Down Expand Up @@ -87,4 +105,4 @@ void print_uart_byte(uint8_t byte)
bin_to_hex(byte, hex);
write_serial(hex[0]);
write_serial(hex[1]);
}
}
2 changes: 2 additions & 0 deletions openpiton/bootrom/linux/src/uart.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ void init_uart();

void print_uart(const char* str);

void print_uart_dec(uint32_t val, uint32_t digits);

void print_uart_int(uint32_t addr);

void print_uart_addr(uint64_t addr);
Expand Down

0 comments on commit e0a71ea

Please sign in to comment.