view src/cs/drivers/drv_app/r2d/uwire.h @ 635:baa0a02bc676

niq32.c DTR handling restored for targets that have it TI's original TCS211 fw treated GPIO 3 as the DTR input (wired so on C-Sample and D-Sample boards, also compatible with Leonardo and FCDEV3B which have a fixed pull-down resistor on this GPIO line), and the code in niq32.c called UAF_DTRInterruptHandler() (implemented in uartfax.c) from the IQ_KeypadGPIOHandler() function. But on Openmoko's GTA02 with their official fw this GPIO is a floating input, all of the DTR handling code in uartfax.c including the interrupt logic is still there, but the hobbled TCS211-20070608 semi-src delivery which OM got from TI contained a change in niq32.c (which had been kept in FC until now) that removed the call to UAF_DTRInterruptHandler() as part of those not-quite-understood "CC test" hacks. The present change fixes this bug at a long last: if we are building fw for a target that has TI's "classic" DTR & DCD GPIO arrangement (dsample, fcmodem and gtm900), we bring back all of TI's original code in both uartfax.c and niq32.c, whereas if we are building fw for a target that does not use this classic GPIO arrangement, the code in niq32.c goes back to what we got from OM and all DTR & DCD code in uartfax.c is conditioned out. This change also removes the very last remaining bit of "CC test" bogosity from our FreeCalypso code base.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 19 Jan 2020 01:41:35 +0000
parents b8fc86826624
children
line wrap: on
line source

/**
                                                                          
	@file:	uwire.h	
	
	@author Davide Carpegna                              
                                                                          
    @version	1.0	

    Purpose:	Driver for the uwire HD module       
	
*/

/*
																			
 	Date       	Modification												
  ------------------------------------									
    09/22/2000	Create		
    10/18/2001  Updated for R2D by Christophe Favergeon
																											    
																			
 (C) Copyright 2000 by Texas Instruments Incorporated, All Rights Reserved
*/

#ifndef _UWIRE_H_
#define _UWIRE_H_

#define MEM_UWIRE       0xFFFE4000
#define	TDR             (MEM_UWIRE)
#define	RDR             (MEM_UWIRE)
#define	CSR             (MEM_UWIRE+0x02)
#define	SR1             (MEM_UWIRE+0x04)
#define	SR2             (MEM_UWIRE+0x06)
#define	SR3             (MEM_UWIRE+0x08)

#define INDEX_CS1       (1 << 10)
#define NB_BITS_WR_8    (1 << 8 )
#define INDEX_CS0       0
#define NB_BITS_WR_9    (9 << 5)
#define CS_CMD          (1 << 12)
#define START           (1 << 13)
#define CS1_EDGE_RD     (1 << 6)
#define CS1_FRQ_FINT_4  (1 << 9)
#define CS0_FRQ_FINT_2  0
#define CS0_FRQ_FINT_4  (1 << 3)
#define SR3_CLK_EN      1

#define CSRB            ( 1<<14 )

#define IO_SEL0         0xFFFEF008
#define IO_SEL          0xFFFEF00A

#define GPIO_INOUT      0xFFFE4804
#define GPIO_OUT        0xFFFE4802 
#define CNTL_RST        0xFFFFFD04

#ifdef _WINDOWS
   #ifdef __cplusplus
      extern "C"
      {
   #endif
#endif

// prototypes of uwire functions for lcd
BOOLEAN lcd_polling(void);
void lcd_transmit_cmd(UINT8 cmd);
void uwire_init_lcd(void);

// Defined only for board
void lcd_transmit_data(UINT8 data);

// Defined only for PC
void lcd_refresh(void);
void lcd_set_pos(unsigned char x,unsigned char y);
void* lcd_get_dc(void);

#ifdef _WINDOWS
   #ifdef __cplusplus
      }
   #endif
#endif

#endif /*_UWIRE_H_*/