X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/4dc78b4651f006bf0404c8ec7db85651bcee7c2e..04ac67cc3cac14cd601daacd0592121ec0b84012:/lincan/src/nsi.c diff --git a/lincan/src/nsi.c b/lincan/src/nsi.c index 32876cb..3aa8c14 100644 --- a/lincan/src/nsi.c +++ b/lincan/src/nsi.c @@ -61,13 +61,13 @@ int nsi_request_io(struct candevice_t *candev) CANMSG("Unable to open port: 0x%lx\n",candev->io_addr); return -ENODEV; } else { - DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, + DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1); } return 0; } -/* The function template_release_io is used to free the previously reserved +/* The function template_release_io is used to free the previously reserved * io-memory. In case you reserved more memory, don't forget to free it here. */ int nsi_release_io(struct candevice_t *candev) @@ -84,7 +84,7 @@ int nsi_release_io(struct candevice_t *candev) */ int nsi_reset(struct candevice_t *candev) { - int i; + int i; DEBUGMSG("Resetting nsi hardware ...\n"); /* we don't use template_write_register because we don't use the two first @@ -93,9 +93,9 @@ int nsi_reset(struct candevice_t *candev) can_outb (0, nsican_base + candev->res_addr); for (i = 1; i < 1000; i++) udelay (1000); - - - /* Check hardware reset status */ + + + /* Check hardware reset status */ i=0; while ( (nsi_read_register(nsican_base+iCPU) & iCPU_RST) && (i<=15)) { udelay(20000); @@ -124,7 +124,7 @@ int nsi_reset(struct candevice_t *candev) #define NR_82527 1 #define NR_SJA1000 0 -int nsi_init_hw_data(struct candevice_t *candev) +int nsi_init_hw_data(struct candevice_t *candev) { candev->res_addr=RESET_ADDR; candev->nr_82527_chips=1; @@ -151,7 +151,7 @@ int nsi_init_chip_data(struct candevice_t *candev, int chipnr) candev->chip[chipnr]->chip_base_addr= can_ioport2ioptr(candev->io_addr); candev->chip[chipnr]->clock = 16000000; - nsican_irq=candev->chip[chipnr]->chip_irq; + nsican_irq=candev->chip[chipnr]->chip_irq; nsican_base=candev->chip[chipnr]->chip_base_addr; candev->chip[chipnr]->int_cpu_reg = iCPU_DSC; candev->chip[chipnr]->int_clk_reg = iCLK_SL1; @@ -165,7 +165,7 @@ int nsi_init_chip_data(struct candevice_t *candev, int chipnr) * CAN chip. In case of the sja1000 there's only one message object but on the * i82527 chip there are 15. * The code below is for a i82527 chip and initializes the object base addresses - * The entry obj_base_addr represents the first memory address of the message + * The entry obj_base_addr represents the first memory address of the message * object. In case of the sja1000 obj_base_addr is taken the same as the chips * base address. * Unless the hardware uses a segmented memory map, flags can be set zero. @@ -175,7 +175,7 @@ int nsi_init_obj_data(struct canchip_t *chip, int objnr) chip->msgobj[objnr]->obj_base_addr= chip->chip_base_addr+(objnr+1)*0x10; - + return 0; } @@ -201,9 +201,9 @@ void nsi_write_register(unsigned data, can_ioptr_t address) /* the nsi card has two registers, the address register at 0x0 and the data register at 0x01 */ - /* write the relative address on the eight LSB bits + /* write the relative address on the eight LSB bits and the data on the eight MSB bits in one time */ - can_outw(address-nsican_base + (256 * data), nsican_base); + can_outw(address-nsican_base + (256 * data), nsican_base); } /* The function template_read_register is used to read from hardware registers @@ -213,12 +213,12 @@ void nsi_write_register(unsigned data, can_ioptr_t address) unsigned nsi_read_register(can_ioptr_t address) { /* this is the same thing that the function write_register. - We use the two register, we write the address where we + We use the two register, we write the address where we want to read in a first time. In a second time we read the data */ unsigned char ret; can_spin_irqflags_t flags; - + can_spin_lock_irqsave(&nsican_port_lock,flags); can_outb(address-nsican_base, nsican_base); ret=can_inb(nsican_base+1);