]> rtime.felk.cvut.cz Git - lincan.git/blobdiff - lincan/src/template.c
The first round of I/O space pointers separation.
[lincan.git] / lincan / src / template.c
index d8ceaa435967a400f731b4b70a5e1b5d677d2685..a91d9fdef75cc707eae2cf5c6774c82ea5302a2a 100644 (file)
@@ -114,7 +114,6 @@ int template_init_hw_data(struct candevice_t *candev)
        return 0;
 }
 
-#define CHIP_TYPE "i82527"
 /**
  * template_init_chip_data - Initialize chips
  * @candev: Pointer to candevice/board structure
@@ -149,8 +148,11 @@ int template_init_hw_data(struct candevice_t *candev)
  */
 int template_init_chip_data(struct candevice_t *candev, int chipnr)
 {
-       candev->chip[chipnr]->chip_type=CHIP_TYPE;
-       candev->chip[chipnr]->chip_base_addr=candev->io_addr;
+       i82527_fill_chipspecops(candev->chip[chipnr]);
+       /*sja1000_fill_chipspecops(candev->chip[chipnr]);*/
+       /*sja1000p_fill_chipspecops(candev->chip[chipnr]);*/
+       
+       candev->chip[chipnr]->chip_base_addr=can_ioport2ioptr(candev->io_addr);
        candev->chip[chipnr]->clock = 16000000;
        candev->chip[chipnr]->int_cpu_reg = iCPU_DSC;
        candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
@@ -179,7 +181,7 @@ int template_init_chip_data(struct candevice_t *candev, int chipnr)
  * Return Value: The function always returns zero
  * File: src/template.c
  */
-int template_init_obj_data(struct chip_t *chip, int objnr)
+int template_init_obj_data(struct canchip_t *chip, int objnr)
 {
        chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr+(objnr+1)*0x10;
        
@@ -214,9 +216,9 @@ int template_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/template.c
  */
-void template_write_register(unsigned data, unsigned long address)
+void template_write_register(unsigned data, can_ioptr_t address)
 {
-       outb(data,address);
+       can_outb(data,address);
 }
 
 /**
@@ -229,9 +231,9 @@ void template_write_register(unsigned data, unsigned long address)
  * Return Value: The function returns the value stored in @address
  * File: src/template.c
  */
-unsigned template_read_register(unsigned long address)
+unsigned template_read_register(can_ioptr_t address)
 {
-       return inb(address);
+       return can_inb(address);
 }
 
 /* !!! Don't change this function !!! */