Lines Matching refs:wr_idx

113 static int octeon_pci_console_buffer_free_bytes(uint32_t buffer_size, uint32_t wr_idx, uint32_t rd_idx)
115 if (rd_idx >= buffer_size || wr_idx >= buffer_size)
118 return (((buffer_size -1) - (wr_idx - rd_idx))%buffer_size);
120 static int octeon_pci_console_buffer_avail_bytes(uint32_t buffer_size, uint32_t wr_idx, uint32_t rd_idx)
122 if (rd_idx >= buffer_size || wr_idx >= buffer_size)
125 return (buffer_size - 1 - octeon_pci_console_buffer_free_bytes(buffer_size, wr_idx, rd_idx));
152 uint32_t rd_idx, wr_idx;
157 wr_idx = octeon_read_mem32(console_addr + offsetof(octeon_pci_console_t, input_write_index));
159 // printf("Input base: 0x%llx, rd: %d(0x%x), wr: %d(0x%x)\n", (long long)base_addr, rd_idx, rd_idx, wr_idx, wr_idx);
160 int bytes_to_write = octeon_pci_console_buffer_free_bytes(console_buffer_size, wr_idx, rd_idx);
165 if (wr_idx + bytes_to_write >= console_buffer_size)
166 bytes_to_write = console_buffer_size - wr_idx;
170 octeon_pci_write_mem(base_addr + wr_idx, buffer, bytes_to_write, OCTEON_PCI_ENDIAN_64BIT_SWAP);
171 octeon_write_mem32(console_addr + offsetof(octeon_pci_console_t, input_write_index), (wr_idx + bytes_to_write)%console_buffer_size);
195 uint32_t rd_idx, wr_idx;
200 wr_idx = octeon_read_mem32(console_addr + offsetof(octeon_pci_console_t, output_write_index));
202 // printf("Read buffer base: 0x%llx, rd: %d(0x%x), wr: %d(0x%x)\n", (long long)base_addr, rd_idx, rd_idx, wr_idx, wr_idx);
203 int bytes_to_read = octeon_pci_console_buffer_avail_bytes(console_buffer_size, wr_idx, rd_idx);
239 uint32_t rd_idx, wr_idx;
244 wr_idx = octeon_read_mem32(console_addr + offsetof(octeon_pci_console_t, input_write_index));
246 // printf("Input base: 0x%llx, rd: %d(0x%x), wr: %d(0x%x)\n", (long long)base_addr, rd_idx, rd_idx, wr_idx, wr_idx);
247 return octeon_pci_console_buffer_free_bytes(console_buffer_size, wr_idx, rd_idx);
269 uint32_t rd_idx, wr_idx;
274 wr_idx = octeon_read_mem32(console_addr + offsetof(octeon_pci_console_t, output_write_index));
276 // printf("Read buffer base: 0x%llx, rd: %d(0x%x), wr: %d(0x%x)\n", (long long)base_addr, rd_idx, rd_idx, wr_idx, wr_idx);
277 return octeon_pci_console_buffer_avail_bytes(console_buffer_size, wr_idx, rd_idx);