Has anyone used the ability of CC2511 to do ADC and then DMA the data into XDATA buffer without CPU intervention?

I have setup the Wixel to do that but read negative values (0xFF0) all the time. Not sure what the fix should be. I have posted this question in TI forum but have not heard anything so far. So instead of loosing time, I felt I will post it here as well. Would appreciate your help.

What is not clear is the use of TRIG (ADC DMA trigger and DC6 of dmaConfig). 12.10.2.9 ADC DMA Triggers says that DMA ADC trigger is generated when a sample is ready (as per Table 51). The way I read this is, if the sample is ready, I need to do something about that sample and not expect the ADC data to be moved without CPU intervention into XDATA space i.e., it will not be DMAed into the destination address as specified by dmaConfig. I am using ADC sequence and fixed number of DMA transfers for P0_0, P0_1 and P0_2. The fixed number of transfers to XDATA space is done using repeated single mode of ADC. All these suggest that when ADC sample is ready it will be DMAed directly into XDATA space. I have specified a fixed length transfer and enabled IRQMASK so I do get an interrupt after a fixed number of Transfers into XDATA buffer. But when I read the ADC data from the XDATA buffer, it is all invalid (4095 decimal).

What I have found is at the end of n number of DMA transfers, when I get the DMA interrupt and as per data sheet, which says sample is ready, then if I read the ADC, I get 1.7 mV, which is acceptable (This is done in DMA ISR as shown in the code below). However, for all the other n-1 ADC conversions followed by DMA transfers, the value was 4095 decimal.

TRIG has to be set to either ADC_CHALL or specific channels AIN0, AIN1, AIN2.
I get DMA interrupt only after transfer of n number of fixed byte transfers. My dilemma is even though there are other ways of reading ADC, whether it is through calling adcRead() or through setting up single mode and reading ADC in an interrupt and then moving the data to XDATA space, I want to utilize the powerful feature provided by the hardware so I save on the power as well. But that does not seem to work.