]> rtime.felk.cvut.cz Git - lincan.git/commitdiff
Changed data size from byte to unsigned for write_register indirect call
authorppisa <ppisa>
Sun, 6 Jun 2004 10:17:11 +0000 (10:17 +0000)
committerppisa <ppisa>
Sun, 6 Jun 2004 10:17:11 +0000 (10:17 +0000)
This is required for the support of the cards connected to the wider
bus architecture. This should not have negative impact, because
char has been propagated to int by C call convention anyway.
The global inline canobj_write_reg function has been left intact
(byte only), because it could better optimize for static call case.

35 files changed:
lincan/include/aim104.h
lincan/include/c_can.h
lincan/include/cc_can104.h
lincan/include/hms30c7202_can.h
lincan/include/m437.h
lincan/include/main.h
lincan/include/msmcan.h
lincan/include/nsi.h
lincan/include/pc-i03.h
lincan/include/pccan.h
lincan/include/pcccan.h
lincan/include/pcm3680.h
lincan/include/pikronisa.h
lincan/include/pip.h
lincan/include/smartcan.h
lincan/include/ssv.h
lincan/include/template.h
lincan/src/aim104.c
lincan/src/bfadcan.c
lincan/src/cc_can104.c
lincan/src/ems_cpcpci.c
lincan/src/hms30c7202_can.c
lincan/src/kv_pcican.c
lincan/src/m437.c
lincan/src/msmcan.c
lincan/src/nsi.c
lincan/src/pc_i03.c
lincan/src/pccan.c
lincan/src/pcccan.c
lincan/src/pcm3680.c
lincan/src/pikronisa.c
lincan/src/pip.c
lincan/src/smartcan.c
lincan/src/ssv.c
lincan/src/template.c

index c26911490d870bebac8dd4a1df44025b641448dd..b8d2366c691379a4a3659262e7042327909f4b96 100644 (file)
@@ -13,7 +13,7 @@ int aim104_reset(struct candevice_t *candev);
 int aim104_init_hw_data(struct candevice_t *candev);
 int aim104_init_chip_data(struct candevice_t *candev, int chipnr);
 int aim104_init_obj_data(struct chip_t *chip, int objnr);
 int aim104_init_hw_data(struct candevice_t *candev);
 int aim104_init_chip_data(struct candevice_t *candev, int chipnr);
 int aim104_init_obj_data(struct chip_t *chip, int objnr);
-void aim104_write_register(unsigned char data, unsigned long address);
+void aim104_write_register(unsigned data, unsigned long address);
 unsigned aim104_read_register(unsigned long address);
 int aim104_program_irq(struct candevice_t *candev);
 
 unsigned aim104_read_register(unsigned long address);
 int aim104_program_irq(struct candevice_t *candev);
 
index 4955d86e4293fa961502fbcf8ad29fe716e5e76c..8e72da4cfdc096f880cc5218c12e2b1924dda7f1 100644 (file)
@@ -9,41 +9,28 @@
  * Version lincan-0.2  9 Jul 2003
  */
 
  * Version lincan-0.2  9 Jul 2003
  */
 
-void hms30c7202_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg);
-
-u16 hms30c7202_read_reg_w(const struct chip_t *pchip, unsigned reg);
-
-#ifndef CONFIG_OC_LINCAN_DYNAMICIO
 /* 
  * optimized inline version, may it be, that it can be too fast for the chip
  */
 extern inline void c_can_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg)
 {
        u32 address = pchip->chip_base_addr + reg;
 /* 
  * optimized inline version, may it be, that it can be too fast for the chip
  */
 extern inline void c_can_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg)
 {
        u32 address = pchip->chip_base_addr + reg;
+    #ifndef CONFIG_OC_LINCAN_DYNAMICIO
        writew(data,address);
        writew(data,address);
+    #else /*CONFIG_OC_LINCAN_DYNAMICIO*/
+       pchip->write_register(data, address);
+    #endif /*CONFIG_OC_LINCAN_DYNAMICIO*/
 }
 
 extern inline u16 c_can_read_reg_w(const struct chip_t *pchip, unsigned reg)
 {
        u32 address = pchip->chip_base_addr + reg;
 }
 
 extern inline u16 c_can_read_reg_w(const struct chip_t *pchip, unsigned reg)
 {
        u32 address = pchip->chip_base_addr + reg;
+    #ifndef CONFIG_OC_LINCAN_DYNAMICIO
        return readw(address);
        return readw(address);
+    #else /*CONFIG_OC_LINCAN_DYNAMICIO*/
+       return pchip->read_register(address);
+    #endif /*CONFIG_OC_LINCAN_DYNAMICIO*/
 }
 }
-#else /*CONFIG_OC_LINCAN_DYNAMICIO*/
-/* 
- * the standard routines for register access cannot be used,
- * because they work only with 8-bit peripherals
- */
-
-extern inline void c_can_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg)
-{
-       hms30c7202_write_reg_w(pchip, data, reg);
-}
-
-extern inline u16 c_can_read_reg_w(const struct chip_t *pchip, unsigned reg)
-{
-       return hms30c7202_read_reg_w(pchip, reg);
-}
-#endif /*CONFIG_OC_LINCAN_DYNAMICIO*/
 
 extern can_spinlock_t c_can_spwlock; // Spin lock for write operations
 extern can_spinlock_t c_can_sprlock; // Spin lock for read operations
 
 extern can_spinlock_t c_can_spwlock; // Spin lock for write operations
 extern can_spinlock_t c_can_sprlock; // Spin lock for read operations
index c557f5c77e85fbd015a6081fb79f2a4094dd5862..ccfb840d87060a22185017dc6b544eaa088410de 100644 (file)
@@ -13,7 +13,7 @@ int cc104_reset(struct candevice_t *candev);
 int cc104_init_hw_data(struct candevice_t *candev);
 int cc104_init_chip_data(struct candevice_t *candev, int chipnr);
 int cc104_init_obj_data(struct chip_t *chip, int objnr);
 int cc104_init_hw_data(struct candevice_t *candev);
 int cc104_init_chip_data(struct candevice_t *candev, int chipnr);
 int cc104_init_obj_data(struct chip_t *chip, int objnr);
-void cc104_write_register(unsigned char data, unsigned long address);
+void cc104_write_register(unsigned data, unsigned long address);
 unsigned cc104_read_register(unsigned long address);
 int cc104_program_irq(struct candevice_t *candev);
 
 unsigned cc104_read_register(unsigned long address);
 int cc104_program_irq(struct candevice_t *candev);
 
index 25ce63269ad0a7efa26219636327ff0fcd50e738..5f113ff84a3a227c80712359487f0183b966c2dd 100644 (file)
@@ -17,8 +17,8 @@ int hms30c7202_init_chip_data(struct candevice_t *candev, int chipnr);
 int hms30c7202_request_io(struct candevice_t *candev);\r
 int hms30c7202_release_io(struct candevice_t *candev);\r
 int hms30c7202_reset(  struct candevice_t *candev);\r
 int hms30c7202_request_io(struct candevice_t *candev);\r
 int hms30c7202_release_io(struct candevice_t *candev);\r
 int hms30c7202_reset(  struct candevice_t *candev);\r
-void hms30c7202_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg);\r
-u16 hms30c7202_read_reg_w(const struct chip_t *pchip, unsigned reg);\r
+void hms30c7202_write_register(unsigned data, unsigned long address);\r
+unsigned hms30c7202_read_register(unsigned long address);\r
 \r
 \r
 \r
 \r
 \r
 \r
index 2c77bd31fa1f1842f9b044e27cdfef86c0ed828e..c2edd18268611e1558c005f880b54360195f9c7d 100644 (file)
@@ -15,7 +15,7 @@ int m437_reset(struct candevice_t *candev);
 int m437_init_hw_data(struct candevice_t *candev);
 int m437_init_chip_data(struct candevice_t *candev, int chipnr);
 int m437_init_obj_data(struct chip_t *chip, int objnr);
 int m437_init_hw_data(struct candevice_t *candev);
 int m437_init_chip_data(struct candevice_t *candev, int chipnr);
 int m437_init_obj_data(struct chip_t *chip, int objnr);
-void m437_write_register(unsigned char data, unsigned long address);
+void m437_write_register(unsigned data, unsigned long address);
 unsigned m437_read_register(unsigned long address);
 int m437_program_irq(struct candevice_t *candev);
 int m437_register(struct hwspecops_t *hwspecops);
 unsigned m437_read_register(unsigned long address);
 int m437_program_irq(struct candevice_t *candev);
 int m437_register(struct hwspecops_t *hwspecops);
index cc426b42cf7dec688dd6990c6ec850dfab44b96a..30ae627aea6df6b60181b2d378d77944ea19912d 100644 (file)
@@ -158,7 +158,7 @@ struct chip_t {
        long clock; /* Chip clock in Hz */
        long baudrate;
 
        long clock; /* Chip clock in Hz */
        long baudrate;
 
-       void (*write_register)(unsigned char data,unsigned long address);
+       void (*write_register)(unsigned data,unsigned long address);
        unsigned (*read_register)(unsigned long address);
        
        void *chip_data;
        unsigned (*read_register)(unsigned long address);
        
        void *chip_data;
@@ -297,7 +297,7 @@ struct hwspecops_t {
        int (*init_chip_data)(struct candevice_t *candev, int chipnr);
        int (*init_obj_data)(struct chip_t *chip, int objnr);
        int (*program_irq)(struct candevice_t *candev);
        int (*init_chip_data)(struct candevice_t *candev, int chipnr);
        int (*init_obj_data)(struct chip_t *chip, int objnr);
        int (*program_irq)(struct candevice_t *candev);
-       void (*write_register)(unsigned char data,unsigned long address);
+       void (*write_register)(unsigned data,unsigned long address);
        unsigned (*read_register)(unsigned long address);
 };
 
        unsigned (*read_register)(unsigned long address);
 };
 
index 632acace6a906873f195cb2cb0f04cb2b73e2e87..1d7bd336be5bfa6b05a600a32259caf49e4985fd 100644 (file)
@@ -13,7 +13,7 @@ int msmcan_reset(struct candevice_t *candev);
 int msmcan_init_hw_data(struct candevice_t *candev);
 int msmcan_init_chip_data(struct candevice_t *candev, int chipnr);
 int msmcan_init_obj_data(struct chip_t *chip, int objnr);
 int msmcan_init_hw_data(struct candevice_t *candev);
 int msmcan_init_chip_data(struct candevice_t *candev, int chipnr);
 int msmcan_init_obj_data(struct chip_t *chip, int objnr);
-void msmcan_write_register(unsigned char data, unsigned long address);
+void msmcan_write_register(unsigned data, unsigned long address);
 unsigned msmcan_read_register(unsigned long address);
 int msmcan_program_irq(struct candevice_t *candev);
 
 unsigned msmcan_read_register(unsigned long address);
 int msmcan_program_irq(struct candevice_t *candev);
 
index ec6db23913ca891ac90bf0d59cb7cc2188b4e7f1..8f00ae08b3e47784e1d85ae0eb221cccbaf78dcc 100644 (file)
@@ -13,7 +13,7 @@ int nsi_reset(struct candevice_t *candev);
 int nsi_init_hw_data(struct candevice_t *candev);
 int nsi_init_chip_data(struct candevice_t *candev, int chipnr);
 int nsi_init_obj_data(struct chip_t *chip, int objnr);
 int nsi_init_hw_data(struct candevice_t *candev);
 int nsi_init_chip_data(struct candevice_t *candev, int chipnr);
 int nsi_init_obj_data(struct chip_t *chip, int objnr);
-void nsi_write_register(unsigned char data, unsigned long address);
+void nsi_write_register(unsigned data, unsigned long address);
 unsigned nsi_read_register(unsigned long address);
 int nsi_program_irq(struct candevice_t *candev);
 
 unsigned nsi_read_register(unsigned long address);
 int nsi_program_irq(struct candevice_t *candev);
 
index 9b34ca3ee7c168ca134470ac3d44012393265896..2245e4e5ca92ee1b1b44fac7d79f69caf84bc18b 100644 (file)
@@ -13,7 +13,7 @@ int pci03_reset(struct candevice_t *candev);
 int pci03_init_hw_data(struct candevice_t *candev);
 int pci03_init_chip_data(struct candevice_t *candev, int chipnr);
 int pci03_init_obj_data(struct chip_t *chip, int objnr);
 int pci03_init_hw_data(struct candevice_t *candev);
 int pci03_init_chip_data(struct candevice_t *candev, int chipnr);
 int pci03_init_obj_data(struct chip_t *chip, int objnr);
-void pci03_write_register(unsigned char data, unsigned long address);
+void pci03_write_register(unsigned data, unsigned long address);
 unsigned pci03_read_register(unsigned long address);
 int pci03_program_irq(struct candevice_t *candev);
 
 unsigned pci03_read_register(unsigned long address);
 int pci03_program_irq(struct candevice_t *candev);
 
index d47804cc019b9b27a3a343afd48a0f568fcdf957..45b18be6d009c709dd6415ac8561ba5c0fea58e7 100644 (file)
@@ -19,7 +19,7 @@ int pccanq_reset(struct candevice_t *candev);
 int pccan_init_hw_data(struct candevice_t *candev);
 int pccan_init_chip_data(struct candevice_t *candev, int chipnr);
 int pccan_init_obj_data(struct chip_t *chip, int objnr);
 int pccan_init_hw_data(struct candevice_t *candev);
 int pccan_init_chip_data(struct candevice_t *candev, int chipnr);
 int pccan_init_obj_data(struct chip_t *chip, int objnr);
-void pccan_write_register(unsigned char data, unsigned long address);
+void pccan_write_register(unsigned data, unsigned long address);
 unsigned pccan_read_register(unsigned long address);
 int pccan_program_irq(struct candevice_t *candev);
 
 unsigned pccan_read_register(unsigned long address);
 int pccan_program_irq(struct candevice_t *candev);
 
index cf98553bd7a045f7ba9ee7ee4dc17246da7a1354..2e5b55b9e329f68688b134eb6e3b0c2203c64aad 100644 (file)
@@ -13,7 +13,7 @@ int pcccan_reset(struct candevice_t *candev);
 int pcccan_init_hw_data(struct candevice_t *candev);
 int pcccan_init_chip_data(struct candevice_t *candev, int chipnr);
 int pcccan_init_obj_data(struct chip_t *chip, int objnr);
 int pcccan_init_hw_data(struct candevice_t *candev);
 int pcccan_init_chip_data(struct candevice_t *candev, int chipnr);
 int pcccan_init_obj_data(struct chip_t *chip, int objnr);
-void pcccan_write_register(unsigned char data, unsigned long address);
+void pcccan_write_register(unsigned data, unsigned long address);
 unsigned pcccan_read_register(unsigned long address);
 int pcccan_program_irq(struct candevice_t *candev);
 
 unsigned pcccan_read_register(unsigned long address);
 int pcccan_program_irq(struct candevice_t *candev);
 
index 324854e6523db3854ea95a40dc3a45278e7d6e03..c0c5b6fd5da73a6eb0e5ee8b22b9fc42ffd4dd1e 100644 (file)
@@ -13,7 +13,7 @@ int pcm3680_reset(struct candevice_t *candev);
 int pcm3680_init_hw_data(struct candevice_t *candev);
 int pcm3680_init_chip_data(struct candevice_t *candev, int chipnr);
 int pcm3680_init_obj_data(struct chip_t *chip, int objnr);
 int pcm3680_init_hw_data(struct candevice_t *candev);
 int pcm3680_init_chip_data(struct candevice_t *candev, int chipnr);
 int pcm3680_init_obj_data(struct chip_t *chip, int objnr);
-void pcm3680_write_register(unsigned char data, unsigned long address);
+void pcm3680_write_register(unsigned data, unsigned long address);
 unsigned pcm3680_read_register(unsigned long address);
 int pcm3680_program_irq(struct candevice_t *candev);
 
 unsigned pcm3680_read_register(unsigned long address);
 int pcm3680_program_irq(struct candevice_t *candev);
 
index 360cc0873d81566f5b021d4b78049ea159eaeda5..1b8f4ebcebcf28e82df3f21b20d476654294f810 100644 (file)
@@ -17,6 +17,6 @@ int pikronisa_init_hw_data(struct candevice_t *candev);
 int pikronisa_init_chip_data(struct candevice_t *candev, int chipnr);
 int pikronisa_init_obj_data(struct chip_t *chip, int objnr);
 int pikronisa_program_irq(struct candevice_t *candev);
 int pikronisa_init_chip_data(struct candevice_t *candev, int chipnr);
 int pikronisa_init_obj_data(struct chip_t *chip, int objnr);
 int pikronisa_program_irq(struct candevice_t *candev);
-void pikronisa_write_register(unsigned char data, unsigned long address);
+void pikronisa_write_register(unsigned data, unsigned long address);
 unsigned pikronisa_read_register(unsigned long address);
 
 unsigned pikronisa_read_register(unsigned long address);
 
index c32b2b580fd7bc530720527cf203471d5a584da8..cc4891f781d5d185bd8891cf1eb9d6f11a875230 100644 (file)
@@ -13,7 +13,7 @@ int pip5_reset(struct candevice_t *candev);
 int pip5_init_hw_data(struct candevice_t *candev);
 int pip5_init_chip_data(struct candevice_t *candev, int chipnr);
 int pip5_init_obj_data(struct chip_t *chip, int objnr);
 int pip5_init_hw_data(struct candevice_t *candev);
 int pip5_init_chip_data(struct candevice_t *candev, int chipnr);
 int pip5_init_obj_data(struct chip_t *chip, int objnr);
-void pip5_write_register(unsigned char data, unsigned long address);
+void pip5_write_register(unsigned data, unsigned long address);
 unsigned pip5_read_register(unsigned long address);
 int pip5_program_irq(struct candevice_t *candev);
 
 unsigned pip5_read_register(unsigned long address);
 int pip5_program_irq(struct candevice_t *candev);
 
index 74fa2aa2cf578f26f8f50a58c7a6398bc69a2d39..047ab4bf2cfadba6dbd24c4ea16e922c7919783b 100644 (file)
@@ -13,6 +13,6 @@ int smartcan_reset(struct candevice_t *candev);
 int smartcan_init_hw_data(struct candevice_t *candev);
 int smartcan_init_chip_data(struct candevice_t *candev, int chipnr);
 int smartcan_init_obj_data(struct chip_t *chip, int objnr);
 int smartcan_init_hw_data(struct candevice_t *candev);
 int smartcan_init_chip_data(struct candevice_t *candev, int chipnr);
 int smartcan_init_obj_data(struct chip_t *chip, int objnr);
-void smartcan_write_register(unsigned char data, unsigned long address);
+void smartcan_write_register(unsigned data, unsigned long address);
 unsigned smartcan_read_register(unsigned long address);
 
 unsigned smartcan_read_register(unsigned long address);
 
index 9371487e2b7649b7fc3daf965901167f768882a4..547308e741c6bb797609e0a039febc37ee233244 100644 (file)
@@ -11,7 +11,7 @@ int ssv_reset(struct candevice_t *candev);
 int ssv_init_hw_data(struct candevice_t *candev);
 int ssv_init_chip_data(struct candevice_t *candev, int chipnr);
 int ssv_init_obj_data(struct chip_t *chip, int objnr);
 int ssv_init_hw_data(struct candevice_t *candev);
 int ssv_init_chip_data(struct candevice_t *candev, int chipnr);
 int ssv_init_obj_data(struct chip_t *chip, int objnr);
-void ssv_write_register(unsigned char data, unsigned long address);
+void ssv_write_register(unsigned data, unsigned long address);
 unsigned ssv_read_register(unsigned long address);
 int ssv_program_irq(struct candevice_t *candev);
 
 unsigned ssv_read_register(unsigned long address);
 int ssv_program_irq(struct candevice_t *candev);
 
index f61e31f88851b54a8a808ace1f62e971adf3e996..ef4b443a7896e115b8a543fa095fb1f673ecb475 100644 (file)
@@ -13,7 +13,7 @@ int template_reset(struct candevice_t *candev);
 int template_init_hw_data(struct candevice_t *candev);
 int template_init_chip_data(struct candevice_t *candev, int chipnr);
 int template_init_obj_data(struct chip_t *chip, int objnr);
 int template_init_hw_data(struct candevice_t *candev);
 int template_init_chip_data(struct candevice_t *candev, int chipnr);
 int template_init_obj_data(struct chip_t *chip, int objnr);
-void template_write_register(unsigned char data, unsigned long address);
+void template_write_register(unsigned data, unsigned long address);
 unsigned template_read_register(unsigned long address);
 int template_program_irq(struct candevice_t *candev);
 
 unsigned template_read_register(unsigned long address);
 int template_program_irq(struct candevice_t *candev);
 
index cc2480612839223737003a7cc1cd73142c2acb23..1119d613ade61fe96609d1317ba7c49f02f65d0a 100644 (file)
@@ -224,7 +224,7 @@ int aim104_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/template.c
  */
  * Return Value: The function does not return a value
  * File: src/template.c
  */
-void aim104_write_register(unsigned char data, unsigned long address)
+void aim104_write_register(unsigned data, unsigned long address)
 {
        outb(data,address);
 }
 {
        outb(data,address);
 }
index c2c9ce7aa03d7f83fbe4e47e0b96790d5eeb70b7..3fc306402ed88462e62cb5b3cb42246dc3a64c5c 100644 (file)
@@ -44,7 +44,7 @@ static can_spinlock_t bfadcan_win_lock=SPIN_LOCK_UNLOCKED;
 #endif
 
 unsigned bfadcan_read_register(unsigned long address);
 #endif
 
 unsigned bfadcan_read_register(unsigned long address);
-void bfadcan_write_register(unsigned char data, unsigned long address);
+void bfadcan_write_register(unsigned data, unsigned long address);
 
 
 /**
 
 
 /**
@@ -270,7 +270,7 @@ int bfadcan_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/bfadcan.c
  */
  * Return Value: The function does not return a value
  * File: src/bfadcan.c
  */
-void bfadcan_write_register(unsigned char data, unsigned long address)
+void bfadcan_write_register(unsigned data, unsigned long address)
 {
 #ifdef WINDOWED_ACCESS
        can_spin_irqflags_t flags;
 {
 #ifdef WINDOWED_ACCESS
        can_spin_irqflags_t flags;
index 1197bcfb48a81a4e1438850f458b2b82ce643493..9f621fdacfa2419db4b39b2464f29738d1b3a23c 100644 (file)
@@ -204,7 +204,7 @@ int cc104_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/template.c
  */
  * Return Value: The function does not return a value
  * File: src/template.c
  */
-void cc104_write_register(unsigned char data, unsigned long address)
+void cc104_write_register(unsigned data, unsigned long address)
 {
        outb(data,address);
 }
 {
        outb(data,address);
 }
index 69d855f31098c5726349d60a143afd3362416fbf..ce8927ed80259b0623d5e5a433ebd4e92a9cbfaf 100644 (file)
@@ -123,7 +123,7 @@ int ems_cpcpci_release_io(struct candevice_t *candev)
 }
 
 
 }
 
 
-void ems_cpcpci_write_register(unsigned char data, unsigned long address)
+void ems_cpcpci_write_register(unsigned data, unsigned long address)
 {
        address += ((address&(EMS_CPCPCI_BYTES_PER_CIRCUIT-1))
                            *(EMS_CPCPCI_BYTES_PER_REG-1));
 {
        address += ((address&(EMS_CPCPCI_BYTES_PER_CIRCUIT-1))
                            *(EMS_CPCPCI_BYTES_PER_REG-1));
index 2bf38aa30adb92a5070b7c98156c3e572ebbc2e3..fc130439e58c0a3c4413eebaf9a72194664334a6 100644 (file)
@@ -94,7 +94,7 @@ int hms30c7202_release_io(struct candevice_t *candev)
        u16 tempReg;
        
        //disable IRQ generation
        u16 tempReg;
        
        //disable IRQ generation
-       tempReg = hms30c7202_read_reg_w(candev->chip[0], CCCR);
+       tempReg = c_can_read_reg_w(candev->chip[0], CCCR);
 
        c_can_config_irqs(candev->chip[0], 0);
        
 
        c_can_config_irqs(candev->chip[0], 0);
        
@@ -155,7 +155,7 @@ int hms30c7202_reset(  struct candevice_t *candev)
        
        /* Check busoff status */
        
        
        /* Check busoff status */
        
-       while ( (hms30c7202_read_reg_w(pchip, CCSR) & SR_BOFF) && (i<=15)) {
+       while ( (c_can_read_reg_w(pchip, CCSR) & SR_BOFF) && (i<=15)) {
                udelay(20000);
                i++;
        }
                udelay(20000);
                i++;
        }
@@ -273,14 +273,6 @@ int hms30c7202_init_hw_data(struct candevice_t *candev)
        candev->nr_sja1000_chips=0;
        candev->nr_all_chips=NR_C_CAN;
 
        candev->nr_sja1000_chips=0;
        candev->nr_all_chips=NR_C_CAN;
 
-       // Register hardware operations
-       candev->hwspecops->request_io = hms30c7202_request_io;
-       candev->hwspecops->release_io = hms30c7202_release_io;
-       candev->hwspecops->reset = hms30c7202_reset;
-       /* private register read and write routines used */
-       candev->hwspecops->write_register = NULL; /*hms30c7202_write_register;*/
-       candev->hwspecops->read_register = NULL; /*hms30c7202_read_register;*/
-
        return 0;
 }
 
        return 0;
 }
 
@@ -359,17 +351,16 @@ int hms30c7202_init_obj_data(struct chip_t *chip, int objnr)
  * File: src/template.c
  */
 
  * File: src/template.c
  */
 
-void hms30c7202_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg)
+void hms30c7202_write_register(unsigned data, unsigned long address)
 {
 {
-   int i;
-   u32 address = pchip->chip_base_addr + reg;
+       int i;
        //unsigned long usecs = 1;
        //unsigned long usecs = 1;
-
-   //DEBUGMSG("Trying to write 0x%u16x to address 0x%lx\n",data,address);
-
-   writew(data,address);
+       
+       //DEBUGMSG("Trying to write 0x%u16x to address 0x%lx\n",data,address);
+       
+       writew(data,address);
        //udelay( usecs );
        //udelay( usecs );
-   for (i=0; i<5; i++);
+       for (i=0; i<5; i++);
 }
 
 /**
 }
 
 /**
@@ -382,23 +373,21 @@ void hms30c7202_write_reg_w(const struct chip_t *pchip, u16 data, unsigned reg)
  * Return Value: The function returns the value stored in @address
  * File: src/template.c
  */
  * Return Value: The function returns the value stored in @address
  * File: src/template.c
  */
-u16 hms30c7202_read_reg_w(const struct chip_t *pchip, unsigned reg)
+unsigned hms30c7202_read_register(unsigned long address)
 {
 {
-   u16 value, i;
-   u32 address = pchip->chip_base_addr + reg;
-       //unsigned long usecs = 1;
-
-   //DEBUGMSG("Trying to read from address 0x%lx :",address);
-
-   value = readw(address);
-   //udelay( usecs );
-   for (i=0;i<5;i++);
-   value = readw(address);
+       u16 value, i;
+       
+       //DEBUGMSG("Trying to read from address 0x%lx :",address);
+       
+       value = readw(address);
        //udelay( usecs );
        //udelay( usecs );
-   for (i=0;i<5;i++);
-
-   //DEBUGMSG("0x%u16x\n",value);
-   return value;
+       for (i=0;i<5;i++);
+       value = readw(address);
+               //udelay( usecs );
+       for (i=0;i<5;i++);
+       
+       //DEBUGMSG("0x%u16x\n",value);
+       return value;
 
 }
 
 
 }
 
@@ -427,9 +416,8 @@ int hms30c7202_register(struct hwspecops_t *hwspecops)
        hwspecops->init_hw_data = hms30c7202_init_hw_data;
        hwspecops->init_chip_data = hms30c7202_init_chip_data;
        hwspecops->init_obj_data = hms30c7202_init_obj_data;
        hwspecops->init_hw_data = hms30c7202_init_hw_data;
        hwspecops->init_chip_data = hms30c7202_init_chip_data;
        hwspecops->init_obj_data = hms30c7202_init_obj_data;
-       /* private register read and write routines used */
-       hwspecops->write_register = NULL; /*hms30c7202_write_register;*/
-       hwspecops->read_register = NULL; /*hms30c7202_read_register;*/
+       hwspecops->write_register = hms30c7202_write_register;
+       hwspecops->read_register = hms30c7202_read_register;
        hwspecops->program_irq = hms30c7202_program_irq;
        return 0;
 }
        hwspecops->program_irq = hms30c7202_program_irq;
        return 0;
 }
index e7f36e3306cef9b1e6ccabb0cb0f46614d542622..2b9893ec4713ca1b3ff241262fdfa9d781d1632d 100644 (file)
@@ -121,7 +121,7 @@ int kv_pcican_release_io(struct candevice_t *candev)
 }
 
 
 }
 
 
-void kv_pcican_write_register(unsigned char data, unsigned long address)
+void kv_pcican_write_register(unsigned data, unsigned long address)
 {
        outb(data,address); 
 }
 {
        outb(data,address); 
 }
index 37308b2019fe1028cdc31dea384fc9d996a5961c..eb6a330bd8c54f2ebaf76821cead72bde47e9931 100644 (file)
@@ -261,7 +261,7 @@ int m437_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/m437.c
  */
  * Return Value: The function does not return a value
  * File: src/m437.c
  */
-void m437_write_register(unsigned char data, unsigned long address)
+void m437_write_register(unsigned data, unsigned long address)
 {
        writeb(data,base+address);
 }
 {
        writeb(data,base+address);
 }
index 1d6fb517ea9839b4e75a0db5b805713f08da3b54..0cdb07d5d872a771973e015a4b7c5fa3b2c5f68e 100644 (file)
@@ -173,7 +173,7 @@ int msmcan_program_irq(struct candevice_t *candev)
  * on the CAN chip. You should only have to edit this function if your hardware
  * uses some specific write process.
  */
  * on the CAN chip. You should only have to edit this function if your hardware
  * uses some specific write process.
  */
-void msmcan_write_register(unsigned char data, unsigned long address)
+void msmcan_write_register(unsigned data, unsigned long address)
 {
        /* address is combination of base address shifted left by 16 and index */
        can_spin_irqflags_t flags;
 {
        /* address is combination of base address shifted left by 16 and index */
        can_spin_irqflags_t flags;
index 03ba230bc761348d3785eef043e07f5ddbeecc70..1ac0793a0e86f36b065916180ad0e28773755a1b 100644 (file)
@@ -170,7 +170,7 @@ int nsi_program_irq(struct candevice_t *candev)
  * on the CAN chip. You should only have to edit this function if your hardware
  * uses some specific write process.
  */
  * on the CAN chip. You should only have to edit this function if your hardware
  * uses some specific write process.
  */
-void nsi_write_register(unsigned char data, unsigned long address)
+void nsi_write_register(unsigned data, unsigned long address)
 {
     /* address is an absolute address */
 
 {
     /* address is an absolute address */
 
index d926e33b283ef0eed08b3054db13d32a6f179b92..c7b3863c732c916b20e37070b44c20b360c6d670 100644 (file)
@@ -231,7 +231,7 @@ int pci03_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/pc-i03.c
  */
  * Return Value: The function does not return a value
  * File: src/pc-i03.c
  */
-void pci03_write_register(unsigned char data, unsigned long address)
+void pci03_write_register(unsigned data, unsigned long address)
 {
        unsigned int *pci03_base_ptr;
        unsigned short address_to_write;
 {
        unsigned int *pci03_base_ptr;
        unsigned short address_to_write;
index 6e32610f2eea474b1ca1bb284a97ffdb13df3823..57dcd3c01ae5fc5e042e4f45d0d2d26003b94583 100644 (file)
@@ -338,7 +338,7 @@ int pccan_program_irq(struct candevice_t *candev)
        return 0;
 }
 
        return 0;
 }
 
-inline void pccan_write_register(unsigned char data, unsigned long address)
+inline void pccan_write_register(unsigned data, unsigned long address)
 {
        outb(data,address); 
 }
 {
        outb(data,address); 
 }
index ebf315c82e54e685f11e984758b5b4e48d2f9c36..b9407316befa2ab5f81604d5e9270efadc4ac06d 100644 (file)
@@ -253,7 +253,7 @@ int pcccan_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/pcccan.c
  */
  * Return Value: The function does not return a value
  * File: src/pcccan.c
  */
-void pcccan_write_register(unsigned char data, unsigned long address)
+void pcccan_write_register(unsigned data, unsigned long address)
 {
        can_spin_irqflags_t flags;
        can_spin_lock_irqsave(&pcccan_port_lock,flags);
 {
        can_spin_irqflags_t flags;
        can_spin_lock_irqsave(&pcccan_port_lock,flags);
index 2d178614a097cff9b7e5b1099475be98bab46510..43b58f69e963bbe1baa3cb6d2893c36678b0bb73 100644 (file)
@@ -237,7 +237,7 @@ int pcm3680_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/template.c
  */
  * Return Value: The function does not return a value
  * File: src/template.c
  */
-void pcm3680_write_register(unsigned char data, unsigned long address)
+void pcm3680_write_register(unsigned data, unsigned long address)
 {
        writeb(data,address);
 }
 {
        writeb(data,address);
 }
index 57788758b4f64a13d2879b165392c8a7a4056666..a102ab0a389c81e134575260eb8f92c2f38cfaf0 100644 (file)
@@ -243,7 +243,7 @@ int pikronisa_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/pikronisa.c
  */
  * Return Value: The function does not return a value
  * File: src/pikronisa.c
  */
-void pikronisa_write_register(unsigned char data, unsigned long address)
+void pikronisa_write_register(unsigned data, unsigned long address)
 {
        /*DEBUGMSG("pikronisa_write_register: addr=0x%lx data=0x%x",
                address,data);*/
 {
        /*DEBUGMSG("pikronisa_write_register: addr=0x%lx data=0x%x",
                address,data);*/
index 16c009823f469419357b5f71bd30bd2fddb7e3eb..f031a7346fec984f01802d4582b43940b0bad12d 100644 (file)
@@ -197,7 +197,7 @@ int pip6_program_irq(struct candevice_t *candev)
        return 0;
 }
 
        return 0;
 }
 
-void pip_write_register(unsigned char data, unsigned long address)
+void pip_write_register(unsigned data, unsigned long address)
 {
        outb(data,address);
 }
 {
        outb(data,address);
 }
index 4d638f9fdcdc34ab6d3f2a67fae94c2fc1dfdb94..4abbc9c79690a7030278f666973531eebcca0fb2 100644 (file)
@@ -100,7 +100,7 @@ int smartcan_init_obj_data(struct chip_t *chip, int objnr)
 }
 
 
 }
 
 
-void smartcan_write_register(unsigned char data, unsigned long address)
+void smartcan_write_register(unsigned data, unsigned long address)
 {
        can_spin_irqflags_t flags;
        can_spin_lock_irqsave(&smartcan_port_lock,flags);
 {
        can_spin_irqflags_t flags;
        can_spin_lock_irqsave(&smartcan_port_lock,flags);
index 802aee76450ef7c6dd4dfa2fa355338103237ffd..6f1b585442b8579f8594b93714d03a3da99d3ba3 100644 (file)
@@ -185,7 +185,7 @@ int ssv_program_irq(struct candevice_t *candev)
  * on the CAN chip. You should only have to edit this function if your hardware
  * uses some specific write process.
  */
  * on the CAN chip. You should only have to edit this function if your hardware
  * uses some specific write process.
  */
-void ssv_write_register(unsigned char data, unsigned long address)
+void ssv_write_register(unsigned data, unsigned long address)
 {
     /* address is an absolute address */
 
 {
     /* address is an absolute address */
 
index f53022855fe1897ce08e7e7015fdc7b7cba2f45f..6f49e8d6665d1c98782be1a5077b9e1a2f2c2ab0 100644 (file)
@@ -214,7 +214,7 @@ int template_program_irq(struct candevice_t *candev)
  * Return Value: The function does not return a value
  * File: src/template.c
  */
  * Return Value: The function does not return a value
  * File: src/template.c
  */
-void template_write_register(unsigned char data, unsigned long address)
+void template_write_register(unsigned data, unsigned long address)
 {
        outb(data,address);
 }
 {
        outb(data,address);
 }