Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
[safe/jmp/linux-2.6] / drivers / net / sunhme.h
index 90f446d..efd2ca0 100644 (file)
  * Always write the address first before setting the ownership
  * bits to avoid races with the hardware scanning the ring.
  */
+typedef u32 __bitwise__ hme32;
+
 struct happy_meal_rxd {
-       u32 rx_flags;
-       u32 rx_addr;
+       hme32 rx_flags;
+       hme32 rx_addr;
 };
 
 #define RXFLAG_OWN         0x80000000 /* 1 = hardware, 0 = software */
@@ -313,8 +315,8 @@ struct happy_meal_rxd {
 #define RXFLAG_CSUM        0x0000ffff /* HW computed checksum       */
 
 struct happy_meal_txd {
-       u32 tx_flags;
-       u32 tx_addr;
+       hme32 tx_flags;
+       hme32 tx_addr;
 };
 
 #define TXFLAG_OWN         0x80000000 /* 1 = hardware, 0 = software */
@@ -400,17 +402,14 @@ struct happy_meal {
        struct hmeal_init_block  *happy_block;  /* RX and TX descriptors (CPU addr)  */
 
 #if defined(CONFIG_SBUS) && defined(CONFIG_PCI)
-       u32 (*read_desc32)(u32 *);
+       u32 (*read_desc32)(hme32 *);
        void (*write_txd)(struct happy_meal_txd *, u32, u32);
        void (*write_rxd)(struct happy_meal_rxd *, u32, u32);
-       u32 (*dma_map)(void *, void *, long, int);
-       void (*dma_unmap)(void *, u32, long, int);
-       void (*dma_sync_for_cpu)(void *, u32, long, int);
-       void (*dma_sync_for_device)(void *, u32, long, int);
 #endif
 
-       /* This is either a sbus_dev or a pci_dev. */
+       /* This is either an of_device or a pci_dev. */
        void                      *happy_dev;
+       struct device             *dma_dev;
 
        spinlock_t                happy_lock;