#include <asm/elphel/ext353.h>
#include <linux/poll.h>
Include dependency graph for cxdma.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Defines | |
#define | QTABLES_FPGA 0x01 |
#define | QTABLES_EXIF 0x02 |
#define | QTABLES_TABLE 0x04 |
#define | JPEG_HEADER_SIZE 0x26f |
Functions | |
void | x313_dma_start (void) |
int | x313_dma_stop (void) |
void | x313_dma_reset_chain (void) |
unsigned long | x313_dma_init (void) |
int | x313_JPEG_cmd (int cmd) |
int | x313_get_JPEG_ctrl (void) |
int | x313_JPEG_ctrl (int cmd) |
void | setJPEGHeader (int quality, int width, int height) |
int | cmoscam_open_dma (struct inode *inode, struct file *filp) |
loff_t | x313_dma_lseek (struct file *file, loff_t offset, int orig) |
ssize_t | x313_dma_read (struct file *file, char *buf, size_t count, loff_t *off) |
int | x313_mmap_dma (struct file *filp, struct vm_area_struct *vma) |
ssize_t | x313_dma_write (struct file *file, const char *buf, size_t count, loff_t *off) |
void | x313_dma_update_jpeg_header (void) |
void | jpeg_set_quality (int quality, int target, void *table) |
void | ext_fill_jpeg_mmap_desc (struct ext_jpeg_mmap_desc_t *mdesc) |
void | ext_fill_jpeg_mmap_desc_ (struct _ext_jpeg_mmap_desc_t *mdesc) |
Variables | |
unsigned char * | jpeg_header_sbuffer_ptr |
#define QTABLES_EXIF 0x02 |
Definition at line 27 of file cxdma.h.
Referenced by jpeg_set_quality(), setJPEGHeader(), and update_JPEG_quality().
#define QTABLES_FPGA 0x01 |
#define QTABLES_TABLE 0x04 |
int cmoscam_open_dma | ( | struct inode * | inode, | |
struct file * | filp | |||
) |
void ext_fill_jpeg_mmap_desc | ( | struct ext_jpeg_mmap_desc_t * | mdesc | ) |
void ext_fill_jpeg_mmap_desc_ | ( | struct _ext_jpeg_mmap_desc_t * | mdesc | ) |
==================================================== ! JPEG HEADER is recalculated together with the FPGA tables ! and due to limitations of the FPGA implementation (no divide) ! header table may slightly deviate from canonical one. ! JPEG quality is stored in the circular buffer, but not JPEG ! header table, so when Q changes, JPEG frame header may be ! out of sync. Possible solutions: ! 1 - always flush circular buffer whan Q is changed or ! 2 - rebuild JPEG header (if different) simulating FPGA ! writes. !====================================================
TODO: Temporary disabling IRQs here - later move FPGA table setup to IRQ-safe function
NOTE
NOTE
NOTE
loff_t x313_dma_lseek | ( | struct file * | file, | |
loff_t | offset, | |||
int | orig | |||
) |
ssize_t x313_dma_read | ( | struct file * | file, | |
char * | buf, | |||
size_t | count, | |||
loff_t * | off | |||
) |
void x313_dma_reset_chain | ( | void | ) |
void x313_dma_update_jpeg_header | ( | void | ) |
ssize_t x313_dma_write | ( | struct file * | file, | |
const char * | buf, | |||
size_t | count, | |||
loff_t * | off | |||
) |
int x313_mmap_dma | ( | struct file * | filp, | |
struct vm_area_struct * | vma | |||
) |
unsigned char* jpeg_header_sbuffer_ptr |