This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DMA noob question

Hi. I'm writing a little driver for a camera and I'm at a point where I think the ISS/CSI2 is receiving data from the camera. I'm still a noob in this regard but I wonder if I can just take a peek at this data.

Apparently there is a dedicated DMA FIFO engine and all it seems to need is an address.

Ok don't laugh but here is what I'm trying:

static unsigned char dma_test[1000];

unsigned int dma_test_init(void) {

   return virt_to_phys(&(dma_test[0]));

}

An example of an address this gives me is 0x7f1e1628

Since address bits [4:0] are reserved as they need to be aligned, I have also tried adding this:

address &= ~(0x0000001f);

address += 0x00000020;

In either case, the dma_test[] remains unchanged.

I just want to see a little data from the ISS. I think the first thing I need to figure out is how I select an address that I hand to the DMA, which I can also then read out in my driver to see the data.