ioctl.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
  2. /*
  3. * Linux/PA-RISC Project (http://www.parisc-linux.org/)
  4. * Copyright (C) 1999,2003 Matthew Wilcox < willy at debian . org >
  5. * portions from "linux/ioctl.h for Linux" by H.H. Bergman.
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, write to the Free Software
  19. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  20. */
  21. #ifndef _ASM_PARISC_IOCTL_H
  22. #define _ASM_PARISC_IOCTL_H
  23. /* ioctl command encoding: 32 bits total, command in lower 16 bits,
  24. * size of the parameter structure in the lower 14 bits of the
  25. * upper 16 bits.
  26. * Encoding the size of the parameter structure in the ioctl request
  27. * is useful for catching programs compiled with old versions
  28. * and to avoid overwriting user space outside the user buffer area.
  29. * The highest 2 bits are reserved for indicating the ``access mode''.
  30. * NOTE: This limits the max parameter size to 16kB -1 !
  31. */
  32. /*
  33. * Direction bits.
  34. */
  35. #define _IOC_NONE 0U
  36. #define _IOC_WRITE 2U
  37. #define _IOC_READ 1U
  38. #include <asm-generic/ioctl.h>
  39. #endif /* _ASM_PARISC_IOCTL_H */