constant memory copying problem

I am writing a very simple code of using constant memory. But I cannot copy the correct values to the constant memory. All I get are 0s.

constant ushort2 ck[64*128];

main(){

ushort2 * k = new ushort2 [64*128];

//set  values for  k


cudaMemcpyToSymbol(ck, k, 64*128*sizeof(ushort2),0, MemcpyHostToDevice);
.....

}

Does anyone have met the same problem ? Thanks