linux/drivers/staging/vt6655/tmacro.h
<<
>>
Prefs
   1/*
   2 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
   3 * All rights reserved.
   4 *
   5 * This program is free software; you can redistribute it and/or modify
   6 * it under the terms of the GNU General Public License as published by
   7 * the Free Software Foundation; either version 2 of the License, or
   8 * (at your option) any later version.
   9 *
  10 * This program is distributed in the hope that it will be useful,
  11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13 * GNU General Public License for more details.
  14 *
  15 * You should have received a copy of the GNU General Public License along
  16 * with this program; if not, write to the Free Software Foundation, Inc.,
  17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  18 *
  19 * File: tmacro.h
  20 *
  21 * Purpose: define basic common types and macros
  22 *
  23 * Author: Tevin Chen
  24 *
  25 * Date: May 21, 1996
  26 *
  27 */
  28
  29#ifndef __TMACRO_H__
  30#define __TMACRO_H__
  31
  32#include "ttype.h"
  33
  34/****** Common helper macros ***********************************************/
  35
  36#if !defined(LOBYTE)
  37#define LOBYTE(w)           ((unsigned char)(w))
  38#endif
  39#if !defined(HIBYTE)
  40#define HIBYTE(w)           ((unsigned char)(((unsigned short)(w) >> 8) & 0xFF))
  41#endif
  42
  43#if !defined(LOWORD)
  44#define LOWORD(d)           ((unsigned short)(d))
  45#endif
  46#if !defined(HIWORD)
  47#define HIWORD(d)           ((unsigned short)((((unsigned long)(d)) >> 16) & 0xFFFF))
  48#endif
  49
  50#define LODWORD(q)          ((q).u.dwLowDword)
  51#define HIDWORD(q)          ((q).u.dwHighDword)
  52
  53#if !defined(MAKEWORD)
  54#define MAKEWORD(lb, hb)    ((unsigned short)(((unsigned char)(lb)) | (((unsigned short)((unsigned char)(hb))) << 8)))
  55#endif
  56#if !defined(MAKEDWORD)
  57#define MAKEDWORD(lw, hw)   ((unsigned long)(((unsigned short)(lw)) | (((unsigned long)((unsigned short)(hw))) << 16)))
  58#endif
  59
  60#endif // __TMACRO_H__
  61