1 1.3 andvar /* $Id: at91pioreg.h,v 1.3 2023/05/06 22:17:28 andvar Exp $ */ 2 1.3 andvar /* $NetBSD: at91pioreg.h,v 1.3 2023/05/06 22:17:28 andvar Exp $ */ 3 1.2 matt 4 1.2 matt /* 5 1.2 matt * Copyright (c) 2007 Embedtronics Oy. All rights reserved. 6 1.2 matt * 7 1.2 matt * Redistribution and use in source and binary forms, with or without 8 1.2 matt * modification, are permitted provided that the following conditions 9 1.2 matt * are met: 10 1.2 matt * 1. Redistributions of source code must retain the above copyright 11 1.2 matt * notice, this list of conditions and the following disclaimer. 12 1.2 matt * 2. Redistributions in binary form must reproduce the above copyright 13 1.2 matt * notice, this list of conditions and the following disclaimer in the 14 1.2 matt * documentation and/or other materials provided with the distribution. 15 1.2 matt * 16 1.2 matt * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 17 1.2 matt * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 1.2 matt * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19 1.2 matt * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 20 1.2 matt * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21 1.2 matt * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22 1.2 matt * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23 1.2 matt * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24 1.2 matt * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 1.2 matt * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 1.2 matt * SUCH DAMAGE. 27 1.2 matt */ 28 1.2 matt 29 1.2 matt #ifndef _AT91GPIOREG_H_ 30 1.2 matt #define _AT91GPIOREG_H_ 31 1.2 matt 32 1.2 matt #define PIO_PER 0x00U /* 00: PIO Enable Register */ 33 1.2 matt #define PIO_PDR 0x04U /* 04: PIO Disable Register */ 34 1.2 matt #define PIO_PSR 0x08U /* 08: PIO Status Register */ 35 1.2 matt #define PIO_OER 0x10U /* 10: PIO Output Enable Register */ 36 1.2 matt #define PIO_ODR 0x14U /* 14: PIO Output Disable Register */ 37 1.2 matt #define PIO_OSR 0x18U /* 18: PIO Output Status Register */ 38 1.2 matt #define PIO_IFER 0x20U /* 20: PIO Glitch Inp. Filter Ena. Reg */ 39 1.2 matt #define PIO_IFDR 0x24U /* 24: PIO Glitch Inp. Filter Dis. Reg */ 40 1.2 matt #define PIO_IFSR 0x28U /* 28: PIO Glitch Inp. Filter Sta. Reg */ 41 1.2 matt #define PIO_SODR 0x30U /* 30: PIO Set Output Data Reg */ 42 1.2 matt #define PIO_CODR 0x34U /* 34: PIO Clr Output Data Reg */ 43 1.2 matt #define PIO_ODSR 0x38U /* 38: PIO Output Data Status Reg */ 44 1.2 matt #define PIO_PDSR 0x3CU /* 3C: PIO Pin Data Status Reg */ 45 1.2 matt #define PIO_IER 0x40U /* 40: PIO Interrupt Enable Reg */ 46 1.2 matt #define PIO_IDR 0x44U /* 44: PIO Interrupt Disable Reg */ 47 1.2 matt #define PIO_IMR 0x48U /* 48: PIO Interrupt Mask Reg */ 48 1.2 matt #define PIO_ISR 0x4CU /* 4C: PIO Interrupt Status Reg */ 49 1.2 matt #define PIO_MDER 0x50U /* 50: PIO Multi-driver Enable Reg */ 50 1.2 matt #define PIO_MDDR 0x54U /* 54: PIO Multi-driver Disable Reg */ 51 1.2 matt #define PIO_MDSR 0x58U /* 58: PIO Multi-driver Status Reg */ 52 1.2 matt #define PIO_PUDR 0x60U /* 60: PIO Pull-up Disable Reg */ 53 1.2 matt #define PIO_PUER 0x64U /* 64: PIO Pull-up Enable Reg */ 54 1.2 matt #define PIO_PUSR 0x68U /* 68: PIO Pull-up Status Reg */ 55 1.2 matt #define PIO_ASR 0x70U /* 70: PIO Peripheral A Select Reg */ 56 1.2 matt #define PIO_BSR 0x74U /* 74: PIO Peripheral B Select Reg */ 57 1.2 matt #define PIO_ABSR 0x78U /* 78: PIO AB Status Reg */ 58 1.2 matt #define PIO_OWER 0xA0U /* A0: PIO Output Write Enable */ 59 1.2 matt #define PIO_OWDR 0xA4U /* A4: PIO Output Write Disable */ 60 1.2 matt #define PIO_OWSR 0xA8U /* A8: PIO Output Write Status Reg */ 61 1.3 andvar #define PIO_VERSION 0xFCU /* FC: version register (AT91SAM92xx) */ 62 1.2 matt 63 1.2 matt #endif /* _AT91GPIOREG_H_ */ 64