Lines Matching full:cd

62 static inline void adjust_end(struct console_data *cd)  in adjust_end()  argument
64 u32 last_byte = readl(&cd->hdr->last_byte); in adjust_end()
66 cd->end_of_data = cd->start_addr + LAST_BYTE(last_byte); in adjust_end()
90 static ssize_t dpaa2_console_size(struct console_data *cd) in dpaa2_console_size() argument
94 if (cd->cur_ptr <= cd->end_of_data) in dpaa2_console_size()
95 size = cd->end_of_data - cd->cur_ptr; in dpaa2_console_size()
97 size = (cd->end_addr - cd->cur_ptr) + in dpaa2_console_size()
98 (cd->end_of_data - cd->start_addr); in dpaa2_console_size()
109 struct console_data *cd; in dpaa2_generic_console_open() local
113 cd = kmalloc(sizeof(*cd), GFP_KERNEL); in dpaa2_generic_console_open()
114 if (!cd) in dpaa2_generic_console_open()
123 cd->map_addr = ioremap(base_addr + offset, size); in dpaa2_generic_console_open()
124 if (!cd->map_addr) { in dpaa2_generic_console_open()
130 cd->hdr = (struct log_header __iomem *)cd->map_addr; in dpaa2_generic_console_open()
131 read_magic = readl(&cd->hdr->magic_word); in dpaa2_generic_console_open()
132 last_byte = readl(&cd->hdr->last_byte); in dpaa2_generic_console_open()
133 buf_start = readl(&cd->hdr->buf_start); in dpaa2_generic_console_open()
134 buf_length = readl(&cd->hdr->buf_length); in dpaa2_generic_console_open()
143 cd->start_addr = cd->map_addr + buf_start - offset_delta; in dpaa2_generic_console_open()
144 cd->end_addr = cd->start_addr + buf_length; in dpaa2_generic_console_open()
148 adjust_end(cd); in dpaa2_generic_console_open()
149 if (wrapped && cd->end_of_data != cd->end_addr) in dpaa2_generic_console_open()
150 cd->cur_ptr = cd->end_of_data + 1; in dpaa2_generic_console_open()
152 cd->cur_ptr = cd->start_addr; in dpaa2_generic_console_open()
154 fp->private_data = cd; in dpaa2_generic_console_open()
159 iounmap(cd->map_addr); in dpaa2_generic_console_open()
163 kfree(cd); in dpaa2_generic_console_open()
184 struct console_data *cd = fp->private_data; in dpaa2_console_close() local
186 iounmap(cd->map_addr); in dpaa2_console_close()
187 kfree(cd); in dpaa2_console_close()
194 struct console_data *cd = fp->private_data; in dpaa2_console_read() local
195 size_t bytes = dpaa2_console_size(cd); in dpaa2_console_read()
196 size_t bytes_end = cd->end_addr - cd->cur_ptr; in dpaa2_console_read()
202 adjust_end(cd); in dpaa2_console_read()
204 if (cd->end_of_data == cd->cur_ptr) in dpaa2_console_read()
215 memcpy_fromio(kbuf, cd->cur_ptr, bytes_end); in dpaa2_console_read()
221 cd->cur_ptr = cd->start_addr; in dpaa2_console_read()
226 memcpy_fromio(kbuf, cd->cur_ptr, bytes); in dpaa2_console_read()
231 cd->cur_ptr += bytes; in dpaa2_console_read()