AVR32: Make GPIO implmentation cpu dependent
There are some differences in the implementation of GPIO in the at32uc chip compared to the ap700x series. Signed-off-by: Gunnar Rangoy <gunnar@rangoy.com> Signed-off-by: Paul Driveklepp <pauldriveklepp@gmail.com> Signed-off-by: Olav Morken <olavmrk@gmail.com> Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
This commit is contained in:
parent
a38de083d2
commit
f5f652fa91
include/asm-avr32
|
@ -0,0 +1,86 @@
|
|||
#ifndef __ASM_AVR32_ARCH_GPIO_IMPL_H__
|
||||
#define __ASM_AVR32_ARCH_GPIO_IMPL_H__
|
||||
|
||||
/* Register offsets */
|
||||
struct gpio_regs {
|
||||
u32 GPER;
|
||||
u32 GPERS;
|
||||
u32 GPERC;
|
||||
u32 GPERT;
|
||||
u32 PMR0;
|
||||
u32 PMR0S;
|
||||
u32 PMR0C;
|
||||
u32 PMR0T;
|
||||
u32 PMR1;
|
||||
u32 PMR1S;
|
||||
u32 PMR1C;
|
||||
u32 PMR1T;
|
||||
u32 __reserved0[4];
|
||||
u32 ODER;
|
||||
u32 ODERS;
|
||||
u32 ODERC;
|
||||
u32 ODERT;
|
||||
u32 OVR;
|
||||
u32 OVRS;
|
||||
u32 OVRC;
|
||||
u32 OVRT;
|
||||
u32 PVR;
|
||||
u32 __reserved_PVRS;
|
||||
u32 __reserved_PVRC;
|
||||
u32 __reserved_PVRT;
|
||||
u32 PUER;
|
||||
u32 PUERS;
|
||||
u32 PUERC;
|
||||
u32 PUERT;
|
||||
u32 PDER;
|
||||
u32 PDERS;
|
||||
u32 PDERC;
|
||||
u32 PDERT;
|
||||
u32 IER;
|
||||
u32 IERS;
|
||||
u32 IERC;
|
||||
u32 IERT;
|
||||
u32 IMR0;
|
||||
u32 IMR0S;
|
||||
u32 IMR0C;
|
||||
u32 IMR0T;
|
||||
u32 IMR1;
|
||||
u32 IMR1S;
|
||||
u32 IMR1C;
|
||||
u32 IMR1T;
|
||||
u32 GFER;
|
||||
u32 GFERS;
|
||||
u32 GFERC;
|
||||
u32 GFERT;
|
||||
u32 IFR;
|
||||
u32 __reserved_IFRS;
|
||||
u32 IFRC;
|
||||
u32 __reserved_IFRT;
|
||||
u32 ODMER;
|
||||
u32 ODMERS;
|
||||
u32 ODMERC;
|
||||
u32 ODMERT;
|
||||
u32 __reserved1[4];
|
||||
u32 ODCR0;
|
||||
u32 ODCR0S;
|
||||
u32 ODCR0C;
|
||||
u32 ODCR0T;
|
||||
u32 ODCR1;
|
||||
u32 ODCR1S;
|
||||
u32 ODCR1C;
|
||||
u32 ODCR1T;
|
||||
u32 __reserved2[4];
|
||||
u32 OSRR0;
|
||||
u32 OSRR0S;
|
||||
u32 OSRR0C;
|
||||
u32 OSRR0T;
|
||||
u32 __reserved3[8];
|
||||
u32 STER;
|
||||
u32 STERS;
|
||||
u32 STERC;
|
||||
u32 STERT;
|
||||
u32 __reserved4[35];
|
||||
u32 VERSION;
|
||||
};
|
||||
|
||||
#endif /* __ASM_AVR32_ARCH_GPIO_IMPL_H__ */
|
|
@ -24,87 +24,8 @@
|
|||
|
||||
#include <asm/io.h>
|
||||
|
||||
/* Register offsets */
|
||||
struct gpio_regs {
|
||||
u32 GPER;
|
||||
u32 GPERS;
|
||||
u32 GPERC;
|
||||
u32 GPERT;
|
||||
u32 PMR0;
|
||||
u32 PMR0S;
|
||||
u32 PMR0C;
|
||||
u32 PMR0T;
|
||||
u32 PMR1;
|
||||
u32 PMR1S;
|
||||
u32 PMR1C;
|
||||
u32 PMR1T;
|
||||
u32 __reserved0[4];
|
||||
u32 ODER;
|
||||
u32 ODERS;
|
||||
u32 ODERC;
|
||||
u32 ODERT;
|
||||
u32 OVR;
|
||||
u32 OVRS;
|
||||
u32 OVRC;
|
||||
u32 OVRT;
|
||||
u32 PVR;
|
||||
u32 __reserved_PVRS;
|
||||
u32 __reserved_PVRC;
|
||||
u32 __reserved_PVRT;
|
||||
u32 PUER;
|
||||
u32 PUERS;
|
||||
u32 PUERC;
|
||||
u32 PUERT;
|
||||
u32 PDER;
|
||||
u32 PDERS;
|
||||
u32 PDERC;
|
||||
u32 PDERT;
|
||||
u32 IER;
|
||||
u32 IERS;
|
||||
u32 IERC;
|
||||
u32 IERT;
|
||||
u32 IMR0;
|
||||
u32 IMR0S;
|
||||
u32 IMR0C;
|
||||
u32 IMR0T;
|
||||
u32 IMR1;
|
||||
u32 IMR1S;
|
||||
u32 IMR1C;
|
||||
u32 IMR1T;
|
||||
u32 GFER;
|
||||
u32 GFERS;
|
||||
u32 GFERC;
|
||||
u32 GFERT;
|
||||
u32 IFR;
|
||||
u32 __reserved_IFRS;
|
||||
u32 IFRC;
|
||||
u32 __reserved_IFRT;
|
||||
u32 ODMER;
|
||||
u32 ODMERS;
|
||||
u32 ODMERC;
|
||||
u32 ODMERT;
|
||||
u32 __reserved1[4];
|
||||
u32 ODCR0;
|
||||
u32 ODCR0S;
|
||||
u32 ODCR0C;
|
||||
u32 ODCR0T;
|
||||
u32 ODCR1;
|
||||
u32 ODCR1S;
|
||||
u32 ODCR1C;
|
||||
u32 ODCR1T;
|
||||
u32 __reserved2[4];
|
||||
u32 OSRR0;
|
||||
u32 OSRR0S;
|
||||
u32 OSRR0C;
|
||||
u32 OSRR0T;
|
||||
u32 __reserved3[8];
|
||||
u32 STER;
|
||||
u32 STERS;
|
||||
u32 STERC;
|
||||
u32 STERT;
|
||||
u32 __reserved4[35];
|
||||
u32 VERSION;
|
||||
};
|
||||
/* Register layout for this specific device */
|
||||
#include <asm/arch/gpio-impl.h>
|
||||
|
||||
/* Register access macros */
|
||||
#define gpio_readl(port, reg) \
|
||||
|
|
Loading…
Reference in New Issue