Question: I have interfaced [M25P16](https://www.micron.com/~/media/documents/.../m25p16.pdf) with PIC32MX795F512L. MISO and CS is pulled up to VCC with 10k resistor. 
I am sending the 0x9f (MSB first) command for reading device ID and after that 20 dummy bytes are transmitted for generating clock for receiving bytes. But I'm getting unexpected noise pulses on MISO pin as shown in image below.

[![waveform](https://i.stack.imgur.com/v68dt.jpg)](https://i.stack.imgur.com/v68dt.jpg)
I have selected clock mode as 1 (i.e. CPOL = 0 and CPHA = 1). I'm sampling input in middle of clock.
One more thing HOLD# and W# are directly connected to VCC(3.3 V). Do I need to make changes in W# and HOLD# states?

Answer: 
I not sure if this problem was solved, I had exactly the same problem as you two days ago and nothing on the internet I found helped, it seems everyone had a unique problem expect yours... 

After 2 days of debugging I found the solution, its very simple.. the chip 3.3V tolerant (power supply and input signals.. they NOT 5V tolerant!), if your input signals is NOT 3.3v i.e (Input CLOCK, CS, MOSI, MISO) the flash chip will not respond. 

All I did was use a level translation using a 74HC4050, it is always a good test to make sure communication is 100% by sending a device id request to the chip, then proceeding to working with memory writes and reads. 

Funny, after two days of exceeding the input signals with a 5V input the chip still works, maybe internally some sort of (undocumented) protection clamp was active. 

I hope this helps.
It looks like the flash memory is trying to respond to the command, but can't. I would check that there are no conflicts with the MISO pin. Make sure that some other peripheral on your microcontroller isn't using the MISO pin, that the MISO pin is not shorted to another pin, and make sure there is not a problem with any other device on the SPI bus.