From what it would seem there is more going on than just that, the bitmain_spi.ko kernel module appears to be built from the following source files. It looks like there is a FPGA of sorts as well that it interfaces with which would explain the fpga source files being a part of the bitmain_spi.ko kernel module.
bitmain-asic-drv.c
bitmain-asic.h
fpga.c
fpga.h
sha2.c
sha2.h
spi.c
spi.h
Makefile
One thing I found was that
sha2.c and
sha2.h are the exact same GPL licensed implementations that are found in cgminer(I confirmed the fuction names all match using objdump).