[U-Boot] [PATCH v2] ATMEL/PIO: Enable new feature of PIO on Atmel device

Bo Shen voice.shen at atmel.com
Thu May 17 03:19:02 CEST 2012


On 5/16/2012 18:42, Andreas Bießmann wrote:
> Dear Bo Shen,
>
> On 16.05.2012 04:16, Bo Shen wrote:
>> v2:
>>    Remove legacy interface.
>>
>> v1:
>>    Enable new PIO feature supported by Atmel SoC.
>>    Using CPU_HAS_PIO3 micro to enable PIO new feature.
> these go behind the '---' line. All before the '---' will be the git
> commit message. The git commit message should not contain the history!
>
> Please read http://www.denx.de/wiki/U-Boot/Patches for that.

OK. Thanks

>
>> Signed-off-by: Bo Shen<voice.shen at atmel.com>
>> ---
>>   arch/arm/include/asm/arch-at91/at91_pio.h |   78 ++++++++++--------
>>   drivers/gpio/at91_gpio.c                  |  125 ++++++++++++++++++++++++++++-
>>   2 files changed, 167 insertions(+), 36 deletions(-)
>>
>> diff --git a/arch/arm/include/asm/arch-at91/at91_pio.h b/arch/arm/include/asm/arch-at91/at91_pio.h
>> index 416cabf..0ec2dca 100644
>> --- a/arch/arm/include/asm/arch-at91/at91_pio.h
>> +++ b/arch/arm/include/asm/arch-at91/at91_pio.h
> <snip new interface>
>
> new interface looks good so far, but seems there are no users currently
> (will there new at91 devices coming soon?)

Yes. I plan to submit new at91 devices at following days.

>
>> -#ifdef CONFIG_AT91_LEGACY
>> -
>> -#define PIO_PER		0x00	/* Enable Register */
>> -#define PIO_PDR		0x04	/* Disable Register */
>> -#define PIO_PSR		0x08	/* Status Register */
>> -#define PIO_OER		0x10	/* Output Enable Register */
>> -#define PIO_ODR		0x14	/* Output Disable Register */
>> -#define PIO_OSR		0x18	/* Output Status Register */
>> -#define PIO_IFER	0x20	/* Glitch Input Filter Enable */
>> -#define PIO_IFDR	0x24	/* Glitch Input Filter Disable */
>> -#define PIO_IFSR	0x28	/* Glitch Input Filter Status */
>> -#define PIO_SODR	0x30	/* Set Output Data Register */
>> -#define PIO_CODR	0x34	/* Clear Output Data Register */
>> -#define PIO_ODSR	0x38	/* Output Data Status Register */
>> -#define PIO_PDSR	0x3c	/* Pin Data Status Register */
>> -#define PIO_IER		0x40	/* Interrupt Enable Register */
>> -#define PIO_IDR		0x44	/* Interrupt Disable Register */
>> -#define PIO_IMR		0x48	/* Interrupt Mask Register */
>> -#define PIO_ISR		0x4c	/* Interrupt Status Register */
>> -#define PIO_MDER	0x50	/* Multi-driver Enable Register */
>> -#define PIO_MDDR	0x54	/* Multi-driver Disable Register */
>> -#define PIO_MDSR	0x58	/* Multi-driver Status Register */
>> -#define PIO_PUDR	0x60	/* Pull-up Disable Register */
>> -#define PIO_PUER	0x64	/* Pull-up Enable Register */
>> -#define PIO_PUSR	0x68	/* Pull-up Status Register */
>> -#define PIO_ASR		0x70	/* Peripheral A Select Register */
>> -#define PIO_BSR		0x74	/* Peripheral B Select Register */
>> -#define PIO_ABSR	0x78	/* AB Status Register */
>> -#define PIO_OWER	0xa0	/* Output Write Enable Register */
>> -#define PIO_OWDR	0xa4	/* Output Write Disable Register */
>> -#define PIO_OWSR	0xa8	/* Output Write Status Register */
>> -#endif
>> -
> I think this should be done in a separate patch (series). There are a
> lot of CONFIG_AT91_LEGACY left somewhere in the code. Please read
> doc/README.at91-soc; I think step 4 is reached so step 5 should follow.

Would this be dealt one by one, while not a series?

>
> For this patch I think it would be best to not touch these definitions
> at all.
> A second patch (series) fulfilling step 5 in doc/README.at91-soc would
> be great ;)
>
> best regards
>
> Andreas Bießmann



More information about the U-Boot mailing list