Exemple #1
0
uint32_t read_serial(fs_node_t *node, uint32_t offset, uint32_t size, uint8_t *buffer) {
	if (size < 1) {
		return 0;
	}
	memset(buffer, 0x00, 1);
	uint32_t collected = 0;
	while (collected < size) {
		while (!serial_rcvd((int)node->device)) {
			switch_task(1);
		}
		debug_print(NOTICE, "Data received from TTY");
		buffer[collected] = serial_recv((int)node->device);
		collected++;
	}
	return collected;
}
Exemple #2
0
static int8_t serial_recv(int32_t device)
{
	while (serial_rcvd(device) == 0);

	return inportb(device);
}
Exemple #3
0
static char serial_recv(int device) {
	while (serial_rcvd(device) == 0) ;
	return inportb(device);
}