linux/arch/m68k/include/asm/ide.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2/*
   3 *  Copyright (C) 1994-1996  Linus Torvalds & authors
   4 */
   5
   6/* Copyright(c) 1996 Kars de Jong */
   7/* Based on the ide driver from 1.2.13pl8 */
   8
   9/*
  10 * Credits (alphabetical):
  11 *
  12 *  - Bjoern Brauel
  13 *  - Kars de Jong
  14 *  - Torsten Ebeling
  15 *  - Dwight Engen
  16 *  - Thorsten Floeck
  17 *  - Roman Hodek
  18 *  - Guenther Kelleter
  19 *  - Chris Lawrence
  20 *  - Michael Rausch
  21 *  - Christian Sauer
  22 *  - Michael Schmitz
  23 *  - Jes Soerensen
  24 *  - Michael Thurm
  25 *  - Geert Uytterhoeven
  26 */
  27
  28#ifndef _M68K_IDE_H
  29#define _M68K_IDE_H
  30
  31#ifdef __KERNEL__
  32#include <asm/setup.h>
  33#include <asm/io.h>
  34#include <asm/irq.h>
  35
  36#ifdef CONFIG_MMU
  37
  38/*
  39 * Get rid of defs from io.h - ide has its private and conflicting versions
  40 * Since so far no single m68k platform uses ISA/PCI I/O space for IDE, we
  41 * always use the `raw' MMIO versions
  42 */
  43#undef readb
  44#undef readw
  45#undef writeb
  46#undef writew
  47
  48#define readb                           in_8
  49#define readw                           in_be16
  50#define __ide_mm_insw(port, addr, n)    raw_insw((u16 *)port, addr, n)
  51#define __ide_mm_insl(port, addr, n)    raw_insl((u32 *)port, addr, n)
  52#define writeb(val, port)               out_8(port, val)
  53#define writew(val, port)               out_be16(port, val)
  54#define __ide_mm_outsw(port, addr, n)   raw_outsw((u16 *)port, addr, n)
  55#define __ide_mm_outsl(port, addr, n)   raw_outsl((u32 *)port, addr, n)
  56
  57#else
  58
  59#define __ide_mm_insw(port, addr, n)    io_insw((unsigned int)port, addr, n)
  60#define __ide_mm_insl(port, addr, n)    io_insl((unsigned int)port, addr, n)
  61#define __ide_mm_outsw(port, addr, n)   io_outsw((unsigned int)port, addr, n)
  62#define __ide_mm_outsl(port, addr, n)   io_outsl((unsigned int)port, addr, n)
  63
  64#endif /* CONFIG_MMU */
  65
  66#endif /* __KERNEL__ */
  67#endif /* _M68K_IDE_H */
  68