Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
mac_esp.c File Reference
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/platform_device.h>
#include <linux/dma-mapping.h>
#include <linux/scatterlist.h>
#include <linux/delay.h>
#include <linux/io.h>
#include <linux/nubus.h>
#include <linux/slab.h>
#include <asm/irq.h>
#include <asm/dma.h>
#include <asm/macints.h>
#include <asm/macintosh.h>
#include <asm/mac_via.h>
#include <scsi/scsi_host.h>
#include "esp_scsi.h"

Go to the source code of this file.

Data Structures

struct  mac_esp_priv
 

Macros

#define DRV_MODULE_NAME   "mac_esp"
 
#define PFX   DRV_MODULE_NAME ": "
 
#define DRV_VERSION   "1.000"
 
#define DRV_MODULE_RELDATE   "Sept 15, 2007"
 
#define MAC_ESP_IO_BASE   0x50F00000
 
#define MAC_ESP_REGS_QUADRA   (MAC_ESP_IO_BASE + 0x10000)
 
#define MAC_ESP_REGS_QUADRA2   (MAC_ESP_IO_BASE + 0xF000)
 
#define MAC_ESP_REGS_QUADRA3   (MAC_ESP_IO_BASE + 0x18000)
 
#define MAC_ESP_REGS_SPACING   0x402
 
#define MAC_ESP_PDMA_REG   0xF9800024
 
#define MAC_ESP_PDMA_REG_SPACING   0x4
 
#define MAC_ESP_PDMA_IO_OFFSET   0x100
 
#define esp_read8(REG)   mac_esp_read8(esp, REG)
 
#define esp_write8(VAL, REG)   mac_esp_write8(esp, VAL, REG)
 
#define MAC_ESP_GET_PRIV(esp)
 
#define MAC_ESP_PDMA_LOOP(operands)
 
#define MAC_ESP_PIO_LOOP(operands, reg1)
 
#define MAC_ESP_PIO_FILL(operands, reg1)
 
#define MAC_ESP_FIFO_SIZE   16
 

Functions

 MODULE_DESCRIPTION ("Mac ESP SCSI driver")
 
 MODULE_AUTHOR ("Finn Thain <[email protected]>")
 
 MODULE_LICENSE ("GPL v2")
 
 MODULE_VERSION (DRV_VERSION)
 
 MODULE_ALIAS ("platform:"DRV_MODULE_NAME)
 
 module_init (mac_esp_init)
 
 module_exit (mac_esp_exit)
 

Macro Definition Documentation

#define DRV_MODULE_NAME   "mac_esp"

Definition at line 34 of file mac_esp.c.

#define DRV_MODULE_RELDATE   "Sept 15, 2007"

Definition at line 37 of file mac_esp.c.

#define DRV_VERSION   "1.000"

Definition at line 36 of file mac_esp.c.

#define esp_read8 (   REG)    mac_esp_read8(esp, REG)

Definition at line 48 of file mac_esp.c.

#define esp_write8 (   VAL,
  REG 
)    mac_esp_write8(esp, VAL, REG)

Definition at line 49 of file mac_esp.c.

#define MAC_ESP_FIFO_SIZE   16

Definition at line 344 of file mac_esp.c.

#define MAC_ESP_GET_PRIV (   esp)
Value:
((struct mac_esp_priv *) \
platform_get_drvdata((struct platform_device *) \
(esp->dev)))

Definition at line 59 of file mac_esp.c.

#define MAC_ESP_IO_BASE   0x50F00000

Definition at line 39 of file mac_esp.c.

#define MAC_ESP_PDMA_IO_OFFSET   0x100

Definition at line 46 of file mac_esp.c.

#define MAC_ESP_PDMA_LOOP (   operands)

Definition at line 172 of file mac_esp.c.

#define MAC_ESP_PDMA_REG   0xF9800024

Definition at line 44 of file mac_esp.c.

#define MAC_ESP_PDMA_REG_SPACING   0x4

Definition at line 45 of file mac_esp.c.

#define MAC_ESP_PIO_FILL (   operands,
  reg1 
)
Value:
asm volatile ( \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" moveb " operands " \n" \
" subqw #8,%1 \n" \
" subqw #8,%1 \n" \
: "+a" (addr), "+r" (reg1) \
: "a" (fifo))

Definition at line 321 of file mac_esp.c.

#define MAC_ESP_PIO_LOOP (   operands,
  reg1 
)
Value:
asm volatile ( \
"1: moveb " operands " \n" \
" subqw #1,%1 \n" \
" jbne 1b \n" \
: "+a" (addr), "+r" (reg1) \
: "a" (fifo))

Definition at line 313 of file mac_esp.c.

#define MAC_ESP_REGS_QUADRA   (MAC_ESP_IO_BASE + 0x10000)

Definition at line 40 of file mac_esp.c.

#define MAC_ESP_REGS_QUADRA2   (MAC_ESP_IO_BASE + 0xF000)

Definition at line 41 of file mac_esp.c.

#define MAC_ESP_REGS_QUADRA3   (MAC_ESP_IO_BASE + 0x18000)

Definition at line 42 of file mac_esp.c.

#define MAC_ESP_REGS_SPACING   0x402

Definition at line 43 of file mac_esp.c.

#define PFX   DRV_MODULE_NAME ": "

Definition at line 35 of file mac_esp.c.

Function Documentation

MODULE_ALIAS ( "platform:"  DRV_MODULE_NAME)
MODULE_AUTHOR ( "Finn Thain <[email protected]>"  )
MODULE_DESCRIPTION ( "Mac ESP SCSI driver )
module_exit ( mac_esp_exit  )
module_init ( mac_esp_init  )
MODULE_LICENSE ( "GPL v2 )
MODULE_VERSION ( DRV_VERSION  )