I am writing a device driver for an FPGA connected to the GPMC bus. I have adapted the smsc911x device driver for my FPGA device driver. However, the smsc911x is a network device driver and the FPGA is a character driver i believe. I have implemented the read/write callbacks using the readw/writew providing the virtual addresses map to the GPMC CS7 connected to the FPGA. However, i cannot find a way of specifying the read/write callbacks that will be called back when the user-space program calls the read/write function to the driver. In the smsc911x this is done using an instance of the net device driver framework. Can anyone provide a bit of an insight that could help me. Thanks