X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/a4c9ead4b64bd4de307f375c2ff313a7a07a06e0..1d20caee804d28a792dcacbf8424dc23b80c6370:/lincan/src/pcm3680.c diff --git a/lincan/src/pcm3680.c b/lincan/src/pcm3680.c index dc3c274..b87e7a8 100644 --- a/lincan/src/pcm3680.c +++ b/lincan/src/pcm3680.c @@ -11,7 +11,6 @@ #include "../include/can_sysdep.h" #include "../include/main.h" #include "../include/pcm3680.h" -#include "../include/i82527.h" #include "../include/sja1000p.h" /* @@ -37,12 +36,12 @@ */ int pcm3680_request_io(struct candevice_t *candev) { - unsigned long remap_addr; + can_ioptr_t remap_addr; if (!can_request_mem_region(candev->io_addr,IO_RANGE,DEVICE_NAME " - pcm3680")) { CANMSG("Unable to request IO-memory: 0x%lx\n",candev->io_addr); return -ENODEV; } - if ( !( remap_addr = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) { + if ( !( remap_addr = ioremap( candev->io_addr, IO_RANGE ) ) ) { CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr); can_release_mem_region(candev->io_addr,IO_RANGE); return -ENODEV; @@ -85,7 +84,7 @@ int pcm3680_release_io(struct candevice_t *candev) int pcm3680_reset(struct candevice_t *candev) { int i=0; - struct chip_t *chip; + struct canchip_t *chip; int chipnr; DEBUGMSG("Resetting pcm3680 hardware ...\n"); @@ -140,7 +139,6 @@ int pcm3680_init_hw_data(struct candevice_t *candev) return 0; } -#define CHIP_TYPE "sja1000p" /** * template_init_chip_data - Initialize chips * @candev: Pointer to candevice/board structure @@ -172,9 +170,9 @@ int pcm3680_init_hw_data(struct candevice_t *candev) */ int pcm3680_init_chip_data(struct candevice_t *candev, int chipnr) { - candev->chip[chipnr]->chip_type=CHIP_TYPE; + sja1000p_fill_chipspecops(candev->chip[chipnr]); candev->chip[chipnr]->chip_base_addr= - candev->io_addr + 0x200*chipnr; + candev->dev_base_addr + 0x200*chipnr; candev->chip[chipnr]->clock = 16000000; candev->chip[chipnr]->int_clk_reg = 0x0; candev->chip[chipnr]->int_bus_reg = 0x0; @@ -202,7 +200,7 @@ int pcm3680_init_chip_data(struct candevice_t *candev, int chipnr) * Return Value: The function always returns zero * File: src/template.c */ -int pcm3680_init_obj_data(struct chip_t *chip, int objnr) +int pcm3680_init_obj_data(struct canchip_t *chip, int objnr) { chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr; @@ -237,9 +235,9 @@ int pcm3680_program_irq(struct candevice_t *candev) * Return Value: The function does not return a value * File: src/template.c */ -void pcm3680_write_register(unsigned data, unsigned long address) +void pcm3680_write_register(unsigned data, can_ioptr_t address) { - writeb(data,address); + can_writeb(data,address); } /** @@ -252,9 +250,9 @@ void pcm3680_write_register(unsigned data, unsigned long address) * Return Value: The function returns the value stored in @address * File: src/template.c */ -unsigned pcm3680_read_register(unsigned long address) +unsigned pcm3680_read_register(can_ioptr_t address) { - return readb(address); + return can_readb(address); } /* !!! Don't change this function !!! */