Just a heads up that the rayer_spi module wont work with a buffered xilinx DLC cable. There is a pull down buffer in the MISO ( Data In ) line which is enabled when pin 6 of the parallel port is pulled low.

I dont have time to be submitting patches, fix it or not I dont mind.

These are the changes I made.

Global var

static int rayer_pulldown_bit = 4;

in rayer_spi_init()

 after rget_io_perms();

 val = 1;
 lpt_outbyte &= ~(1 << rayer_pullup_bit);
 lpt_outbyte |= (val << rayer_pullup_bit);
 OUTB(lpt_outbyte, lpt_iobase);

Cheers, hope it will help stop someone else spending hours debugging something that doesn't work.