PR2159: Have the FIFO driver read follow POSIX standard.
The read call was only returning once the requested buffer was full. The change returns any available data.