It looks like this error condition is supposed to be used if a read(2) system call is used on a file descriptor in non-blocking mode and no data is ready to be read. However, according to the read(2) man page for the GNU C library, EAGAIN is used in this situation instead.
ENODATA is used in the linux kernel in a few places, however. For example:
No page links to ENODATA.