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/****** Common helper macros ***********************************************/
  33
  34#if !defined(LOBYTE)
  35#define LOBYTE(w)           ((unsigned char)(w))
  36#endif
  37#if !defined(HIBYTE)
  38#define HIBYTE(w)           ((unsigned char)(((unsigned short)(w) >> 8) & 0xFF))
  39#endif
  40
  41#if !defined(LOWORD)
  42#define LOWORD(d)           ((unsigned short)(d))
  43#endif
  44#if !defined(HIWORD)
  45#define HIWORD(d)           ((unsigned short)((((unsigned long)(d)) >> 16) & 0xFFFF))
  46#endif
  47
  48#define LODWORD(q)          ((q).u.dwLowDword)
  49#define HIDWORD(q)          ((q).u.dwHighDword)
  50
  51#if !defined(MAKEWORD)
  52#define MAKEWORD(lb, hb)    ((unsigned short)(((unsigned char)(lb)) | (((unsigned short)((unsigned char)(hb))) << 8)))
  53#endif
  54#if !defined(MAKEDWORD)
  55#define MAKEDWORD(lw, hw)   ((unsigned long)(((unsigned short)(lw)) | (((unsigned long)((unsigned short)(hw))) << 16)))
  56#endif
  57
  58#endif /* __TMACRO_H__ */
  59