Cleaned up with scripts/clean-header-guards.pl. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Richard Henderson <rth@twiddle.net>
		
			
				
	
	
		
			136 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * Arm PrimeCell PL041 Advanced Audio Codec Interface
 | 
						|
 *
 | 
						|
 * Copyright (c) 2011
 | 
						|
 * Written by Mathieu Sonet - www.elasticsheep.com
 | 
						|
 *
 | 
						|
 * This code is licensed under the GPL.
 | 
						|
 *
 | 
						|
 * *****************************************************************
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef HW_PL041_H
 | 
						|
#define HW_PL041_H
 | 
						|
 | 
						|
/* Register file */
 | 
						|
#define REGISTER(name, offset) uint32_t name;
 | 
						|
typedef struct {
 | 
						|
    #include "pl041.hx"
 | 
						|
} pl041_regfile;
 | 
						|
#undef REGISTER
 | 
						|
 | 
						|
/* Register addresses */
 | 
						|
#define REGISTER(name, offset) PL041_##name = offset,
 | 
						|
enum {
 | 
						|
    #include "pl041.hx"
 | 
						|
 | 
						|
    PL041_periphid0 = 0xFE0,
 | 
						|
    PL041_periphid1 = 0xFE4,
 | 
						|
    PL041_periphid2 = 0xFE8,
 | 
						|
    PL041_periphid3 = 0xFEC,
 | 
						|
    PL041_pcellid0  = 0xFF0,
 | 
						|
    PL041_pcellid1  = 0xFF4,
 | 
						|
    PL041_pcellid2  = 0xFF8,
 | 
						|
    PL041_pcellid3  = 0xFFC,
 | 
						|
};
 | 
						|
#undef REGISTER
 | 
						|
 | 
						|
/* Register bits */
 | 
						|
 | 
						|
/* IEx */
 | 
						|
#define TXCIE           (1 << 0)
 | 
						|
#define RXTIE           (1 << 1)
 | 
						|
#define TXIE            (1 << 2)
 | 
						|
#define RXIE            (1 << 3)
 | 
						|
#define RXOIE           (1 << 4)
 | 
						|
#define TXUIE           (1 << 5)
 | 
						|
#define RXTOIE          (1 << 6)
 | 
						|
 | 
						|
/* TXCRx */
 | 
						|
#define TXEN            (1 << 0)
 | 
						|
#define TXSLOT1         (1 << 1)
 | 
						|
#define TXSLOT2         (1 << 2)
 | 
						|
#define TXSLOT3         (1 << 3)
 | 
						|
#define TXSLOT4         (1 << 4)
 | 
						|
#define TXCOMPACT       (1 << 15)
 | 
						|
#define TXFEN           (1 << 16)
 | 
						|
 | 
						|
#define TXSLOT_MASK_BIT (1)
 | 
						|
#define TXSLOT_MASK     (0xFFF << TXSLOT_MASK_BIT)
 | 
						|
 | 
						|
#define TSIZE_MASK_BIT  (13)
 | 
						|
#define TSIZE_MASK      (0x3 << TSIZE_MASK_BIT)
 | 
						|
 | 
						|
#define TSIZE_16BITS    (0x0 << TSIZE_MASK_BIT)
 | 
						|
#define TSIZE_18BITS    (0x1 << TSIZE_MASK_BIT)
 | 
						|
#define TSIZE_20BITS    (0x2 << TSIZE_MASK_BIT)
 | 
						|
#define TSIZE_12BITS    (0x3 << TSIZE_MASK_BIT)
 | 
						|
 | 
						|
/* SRx */
 | 
						|
#define RXFE         (1 << 0)
 | 
						|
#define TXFE         (1 << 1)
 | 
						|
#define RXHF         (1 << 2)
 | 
						|
#define TXHE         (1 << 3)
 | 
						|
#define RXFF         (1 << 4)
 | 
						|
#define TXFF         (1 << 5)
 | 
						|
#define RXBUSY       (1 << 6)
 | 
						|
#define TXBUSY       (1 << 7)
 | 
						|
#define RXOVERRUN    (1 << 8)
 | 
						|
#define TXUNDERRUN   (1 << 9)
 | 
						|
#define RXTIMEOUT    (1 << 10)
 | 
						|
#define RXTOFE       (1 << 11)
 | 
						|
 | 
						|
/* ISRx */
 | 
						|
#define TXCINTR      (1 << 0)
 | 
						|
#define RXTOINTR     (1 << 1)
 | 
						|
#define TXINTR       (1 << 2)
 | 
						|
#define RXINTR       (1 << 3)
 | 
						|
#define ORINTR       (1 << 4)
 | 
						|
#define URINTR       (1 << 5)
 | 
						|
#define RXTOFEINTR   (1 << 6)
 | 
						|
 | 
						|
/* SLFR */
 | 
						|
#define SL1RXBUSY    (1 << 0)
 | 
						|
#define SL1TXBUSY    (1 << 1)
 | 
						|
#define SL2RXBUSY    (1 << 2)
 | 
						|
#define SL2TXBUSY    (1 << 3)
 | 
						|
#define SL12RXBUSY   (1 << 4)
 | 
						|
#define SL12TXBUSY   (1 << 5)
 | 
						|
#define SL1RXVALID   (1 << 6)
 | 
						|
#define SL1TXEMPTY   (1 << 7)
 | 
						|
#define SL2RXVALID   (1 << 8)
 | 
						|
#define SL2TXEMPTY   (1 << 9)
 | 
						|
#define SL12RXVALID  (1 << 10)
 | 
						|
#define SL12TXEMPTY  (1 << 11)
 | 
						|
#define RAWGPIOINT   (1 << 12)
 | 
						|
#define RWIS         (1 << 13)
 | 
						|
 | 
						|
/* MAINCR */
 | 
						|
#define AACIFE       (1 << 0)
 | 
						|
#define LOOPBACK     (1 << 1)
 | 
						|
#define LOWPOWER     (1 << 2)
 | 
						|
#define SL1RXEN      (1 << 3)
 | 
						|
#define SL1TXEN      (1 << 4)
 | 
						|
#define SL2RXEN      (1 << 5)
 | 
						|
#define SL2TXEN      (1 << 6)
 | 
						|
#define SL12RXEN     (1 << 7)
 | 
						|
#define SL12TXEN     (1 << 8)
 | 
						|
#define DMAENABLE    (1 << 9)
 | 
						|
 | 
						|
/* INTCLR */
 | 
						|
#define WISC         (1 << 0)
 | 
						|
#define RXOEC1       (1 << 1)
 | 
						|
#define RXOEC2       (1 << 2)
 | 
						|
#define RXOEC3       (1 << 3)
 | 
						|
#define RXOEC4       (1 << 4)
 | 
						|
#define TXUEC1       (1 << 5)
 | 
						|
#define TXUEC2       (1 << 6)
 | 
						|
#define TXUEC3       (1 << 7)
 | 
						|
#define TXUEC4       (1 << 8)
 | 
						|
#define RXTOFEC1     (1 << 9)
 | 
						|
#define RXTOFEC2     (1 << 10)
 | 
						|
#define RXTOFEC3     (1 << 11)
 | 
						|
#define RXTOFEC4     (1 << 12)
 | 
						|
 | 
						|
#endif /* HW_PL041_H */
 |