Merge pull request #4826 from ArdaFu/master

[bsp][tm4c129x] Fix the buffer free error in eth driver receive func.
This commit is contained in:
Bernard Xiong 2021-06-26 14:09:00 +08:00 committed by GitHub
commit c9fa432756
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
107 changed files with 1596 additions and 1147 deletions

View File

@ -89,10 +89,12 @@
#define PHY_PHYS_ADDR 0
#endif
#if 1
#ifndef EMAC_PHY_CONFIG
#define EMAC_PHY_CONFIG (EMAC_PHY_TYPE_INTERNAL | EMAC_PHY_INT_MDIX_EN | \
EMAC_PHY_AN_100B_T_FULL_DUPLEX)
#endif
#endif
/**
* If necessary, set the defaui32t number of transmit and receive DMA descriptors
@ -142,6 +144,11 @@ extern void lwIPHostGetTime(u32_t *time_s, u32_t *time_ns);
#include "lwipopts.h"
#include "drv_eth.h"
/* Define those to better describe your network interface. */
#define IFNAME0 't'
#define IFNAME1 'i'
/**
* A structure used to keep track of driver state and error counts.
*/
@ -233,6 +240,13 @@ static tStellarisIF g_StellarisIFData = {
volatile uint32_t g_ui32NormalInts;
volatile uint32_t g_ui32AbnormalInts;
/**
* Status flag for EEE link established
*/
#if EEE_SUPPORT
volatile bool g_bEEELinkActive;
#endif
/**
* A macro which determines whether a pointer is within the SRAM address
* space and, hence, points to a buffer that the Ethernet MAC can directly
@ -335,9 +349,35 @@ tivaif_hwinit(struct netif *psNetif)
{
uint16_t ui16Val;
/* clear the EEE Link Active flag */
#if EEE_SUPPORT
g_bEEELinkActive = false;
#endif
/* Set MAC hardware address length */
psNetif->hwaddr_len = ETHARP_HWADDR_LEN;
/* Set MAC hardware address */
EMACAddrGet(EMAC0_BASE, 0, &(psNetif->hwaddr[0]));
/* Maximum transfer unit */
psNetif->mtu = 1500;
/* Device capabilities */
psNetif->flags = NETIF_FLAG_BROADCAST | NETIF_FLAG_ETHARP | NETIF_FLAG_LINK_UP;
/* Initialize the DMA descriptors. */
InitDMADescriptors();
#if defined(EMAC_PHY_IS_EXT_MII) || defined(EMAC_PHY_IS_EXT_RMII)
/* If PHY is external then reset the PHY before configuring it */
EMACPHYWrite(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_BMCR,
EPHY_BMCR_MIIRESET);
while((EMACPHYRead(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_BMCR) &
EPHY_BMCR_MIIRESET) == EPHY_BMCR_MIIRESET);
#endif
/* Clear any stray PHY interrupts that may be set. */
ui16Val = EMACPHYRead(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_MISR1);
ui16Val = EMACPHYRead(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_MISR2);
@ -398,8 +438,13 @@ tivaif_hwinit(struct netif *psNetif)
IntMasterEnable();
/* Tell the PHY to start an auto-negotiation cycle. */
#if defined(EMAC_PHY_IS_EXT_MII) || defined(EMAC_PHY_IS_EXT_RMII)
EMACPHYWrite(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_BMCR, (EPHY_BMCR_SPEED |
EPHY_BMCR_DUPLEXM | EPHY_BMCR_ANEN | EPHY_BMCR_RESTARTAN));
#else
EMACPHYWrite(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_BMCR, (EPHY_BMCR_ANEN |
EPHY_BMCR_RESTARTAN));
#endif
}
#ifdef DEBUG
@ -484,16 +529,16 @@ tivaif_check_pbuf(struct pbuf *p)
tivaif_trace_pbuf("Copied:", pBuf);
#endif
DRIVER_STATS_INC(TXCopyCount);
/* Reduce the reference count on the original pbuf since
* we're not going to hold on to it after returning from
* tivaif_transmit. Note that we already bumped
* the reference count at the top of tivaif_transmit.
*/
pbuf_free(p);
}
}
/* Reduce the reference count on the original pbuf since we're not
* going to hold on to it after returning from tivaif_transmit.
* Note that we already bumped the reference count at the top of
* tivaif_transmit.
*/
pbuf_free(p);
/* Send back the new pbuf pointer or NULL if an error occurred. */
return(pBuf);
}
@ -573,7 +618,7 @@ tivaif_transmit(net_device_t dev, struct pbuf *p)
{
/**
* The current write descriptor has a pbuf attached to it so this
* implies that the ring is fui32l. Reject this transmit request with a
* implies that the ring is full. Reject this transmit request with a
* memory error since we can't satisfy it just now.
*/
pbuf_free(p);
@ -630,13 +675,8 @@ tivaif_transmit(net_device_t dev, struct pbuf *p)
pDesc->Desc.ui32CtrlStatus = 0;
}
#ifdef RT_LWIP_USING_HW_CHECKSUM
pDesc->Desc.ui32CtrlStatus |= (DES0_TX_CTRL_IP_ALL_CKHSUMS |
DES0_TX_CTRL_CHAINED);
#else
pDesc->Desc.ui32CtrlStatus |= (DES0_TX_CTRL_NO_CHKSUM |
DES0_TX_CTRL_CHAINED);
#endif
/* Decrement our descriptor counter, move on to the next buffer in the
* pbuf chain. */
@ -761,7 +801,7 @@ tivaif_receive(net_device_t dev)
{
tDescriptorList *pDescList;
tStellarisIF *pIF;
struct pbuf *pBuf;
static struct pbuf *pBuf = NULL;
uint32_t ui32DescEnd;
/* Get a pointer to our state data */
@ -773,10 +813,10 @@ tivaif_receive(net_device_t dev)
/* Start with a NULL pbuf so that we don't try to link chain the first
* time round.
*/
pBuf = NULL;
//pBuf = NULL;
/* Determine where we start and end our walk of the descriptor list */
ui32DescEnd = pDescList->ui32Read ? (pDescList->ui32Read - 1) : (pDescList->ui32NumDescs - 1);
ui32DescEnd = pDescList->ui32Read ? (pDescList->ui32Read - 1) : (pDescList->ui32NumDescs - 1);
/* Step through the descriptors that are marked for CPU attention. */
while(pDescList->ui32Read != ui32DescEnd)
@ -816,7 +856,7 @@ tivaif_receive(net_device_t dev)
if(pBuf)
{
/* Link this pbuf to the last one we looked at since this buffer
* is a continuation of an existing frame (split across mui32tiple
* is a continuation of an existing frame (split across multiple
* pbufs). Note that we use pbuf_cat() here rather than
* pbuf_chain() since we don't want to increase the reference
* count of either pbuf - we only want to link them together.
@ -843,6 +883,7 @@ tivaif_receive(net_device_t dev)
pbuf_free(pBuf);
LINK_STATS_INC(link.drop);
DRIVER_STATS_INC(RXPacketErrCount);
pBuf = NULL;
}
else
{
@ -860,13 +901,11 @@ tivaif_receive(net_device_t dev)
#if NO_SYS
if(ethernet_input(pBuf, psNetif) != RT_EOK)
{
#else
//if(tcpip_input(pBuf, psNetif) != RT_EOK)
if((rt_mb_send(dev->rx_pbuf_mb, (rt_uint32_t)pBuf) != RT_EOK) ||
(eth_device_ready(&(dev->parent)) != RT_EOK))
{
//if(tcpip_input(pBuf, psNetif) != ERR_OK)
if(rt_mb_send(dev->rx_pbuf_mb, (rt_uint32_t)pBuf) != RT_EOK)
#endif
{
/* drop the packet */
LWIP_DEBUGF(NETIF_DEBUG, ("tivaif_input: input error\n"));
pbuf_free(pBuf);
@ -943,6 +982,9 @@ void
tivaif_process_phy_interrupt(net_device_t dev)
{
uint16_t ui16Val, ui16Status;
#if EEE_SUPPORT
uint16_t ui16EEEStatus;
#endif
uint32_t ui32Config, ui32Mode, ui32RxMaxFrameSize;
/* Read the PHY interrupt status. This clears all interrupt sources.
@ -951,13 +993,16 @@ tivaif_process_phy_interrupt(net_device_t dev)
*/
ui16Val = EMACPHYRead(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_MISR1);
/*
* Dummy read PHY REG EPHY_BMSR, it will force update the EPHY_STS register
*/
EMACPHYRead(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_BMSR);
/* Read the current PHY status. */
ui16Status = EMACPHYRead(EMAC0_BASE, PHY_PHYS_ADDR, EPHY_STS);
/* If EEE mode support is requested then read the value of the Link
* partners status
*/
#if EEE_SUPPORT
ui16EEEStatus = EMACPHYMMDRead(EMAC0_BASE, PHY_PHYS_ADDR, 0x703D);
#endif
/* Has the link status changed? */
if(ui16Val & EPHY_MISR1_LINKSTAT)
{
@ -972,6 +1017,19 @@ tivaif_process_phy_interrupt(net_device_t dev)
eth_device_linkchange(&(dev->parent), RT_TRUE);
#endif
/* if the link has been advertised as EEE capable then configure
* the MAC register for LPI timers and manually set the PHY link
* status bit
*/
#if EEE_SUPPORT
if(ui16EEEStatus & 0x2)
{
EMACLPIConfig(EMAC0_BASE, true, 1000, 36);
EMACLPILinkSet(EMAC0_BASE);
g_bEEELinkActive = true;
}
#endif
/* In this case we drop through since we may need to reconfigure
* the MAC depending upon the speed and half/fui32l-duplex settings.
*/
@ -985,6 +1043,16 @@ tivaif_process_phy_interrupt(net_device_t dev)
//tcpip_callback((tcpip_callback_fn)netif_set_link_down, psNetif);
eth_device_linkchange(&(dev->parent), RT_FALSE);
#endif
/* if the link has been advertised as EEE capable then clear the
* MAC register LPI timers and manually clear the PHY link status
* bit
*/
#if EEE_SUPPORT
g_bEEELinkActive = false;
EMACLPILinkClear(EMAC0_BASE);
EMACLPIConfig(EMAC0_BASE, false, 1000, 0);
#endif
}
}
@ -1061,11 +1129,17 @@ tivaif_interrupt(net_device_t dev, uint32_t ui32Status)
*/
if(ui32Status & EMAC_INT_TRANSMIT)
{
#if EEE_SUPPORT
if(g_bEEELinkActive)
{
EMACLPIEnter(EMAC0_BASE);
}
#endif
tivaif_process_transmit(dev->dma_if);
}
/**
* Process the receive DMA list and pass all successfui32ly received packets
* Process the receive DMA list and pass all successfully received packets
* up the stack. We also call this function in cases where the receiver has
* stalled due to missing buffers since the receive function will attempt to
* allocate new pbufs for descriptor entries which have none.

View File

@ -2,7 +2,7 @@
//
// adc.c - Driver for the ADC.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -568,10 +568,15 @@ ADCSequenceConfigure(uint32_t ui32Base, uint32_t ui32SequenceNum,
//! \param ui32Base is the base address of the ADC module.
//! \param ui32SequenceNum is the sample sequence number.
//! \param ui32Step is the step to be configured.
//! \param ui32Config is the configuration of this step; must be a logical OR
//! \param ui32Config is the configuration of this step; is a logical OR
//! of \b ADC_CTL_TS, \b ADC_CTL_IE, \b ADC_CTL_END, \b ADC_CTL_D, one of the
//! input channel selects (\b ADC_CTL_CH0 through \b ADC_CTL_CH23), and one of
//! the digital comparator selects (\b ADC_CTL_CMP0 through \b ADC_CTL_CMP7).
//! On some parts the sample and hold time can be increased by including a
//! logical OR of one of \b ADC_CTL_SHOLD_4, \b ADC_CTL_SHOLD_8,
//! \b ADC_CTL_SHOLD_16, \b ADC_CTL_SHOLD_32, \b ADC_CTL_SHOLD_64,
//! \b ADC_CTL_SHOLD_128 or \b ADC_CTL_SHOLD_256. The default sample time is 4
//! ADC clocks.
//!
//! This function configures the ADC for one step of a sample sequence. The
//! ADC can be configured for single-ended or differential operation (the
@ -1977,7 +1982,7 @@ ADCClockConfigSet(uint32_t ui32Base, uint32_t ui32Config,
//
// Check the argument.
//
ASSERT((ui32Base == ADC0_BASE) || (ui32Base == ADC1_BASE));
ASSERT(ui32Base == ADC0_BASE);
ASSERT((ui32ClockDiv - 1) <= (ADC_CC_CLKDIV_M >> ADC_CC_CLKDIV_S));
//
@ -2036,12 +2041,12 @@ ADCClockConfigGet(uint32_t ui32Base, uint32_t *pui32ClockDiv)
//
// Check the argument.
//
ASSERT((ui32Base == ADC0_BASE) || (ui32Base == ADC1_BASE));
ASSERT(ui32Base == ADC0_BASE);
//
// Read the current configuration.
//
ui32Config = HWREG(ui32Base + ADC_O_CC);
ui32Config = HWREG(ADC0_BASE + ADC_O_CC);
//
// If the clock divider was requested provide the current value.
@ -2060,7 +2065,7 @@ ADCClockConfigGet(uint32_t ui32Base, uint32_t *pui32ClockDiv)
//
// Add in the sample interval to the configuration.
//
ui32Config |= (HWREG(ui32Base + ADC_O_PC) & ADC_PC_SR_M) << 4;
ui32Config |= (HWREG(ADC0_BASE + ADC_O_PC) & ADC_PC_SR_M) << 4;
return(ui32Config);
}

View File

@ -2,7 +2,7 @@
//
// adc.h - ADC headers for using the ADC driver functions.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// aes.c - Driver for the AES module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// aes.h - Defines and Macros for the AES module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// can.c - Driver for the CAN module.
//
// Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -831,7 +831,7 @@ CANIntRegister(uint32_t ui32Base, void (*pfnHandler)(void))
IntRegister(ui8IntNumber, pfnHandler);
//
// Enable the Ethernet interrupt.
// Enable the CAN interrupt.
//
IntEnable(ui8IntNumber);
}
@ -1077,6 +1077,13 @@ CANIntStatus(uint32_t ui32Base, tCANIntStsReg eIntStsReg)
//! being immediately reentered (because the interrupt controller still sees
//! the interrupt source asserted).
//!
//! \note The functions CANIntClear(), CANMessageSet(), and CANMessageClear()
//! are not re-entrant. If any of these functions are used in the main
//! application code and if any of them are also used within an interrupt
//! routine, then the corresponding interrupt for that interrupt routine should
//! be disabled prior to the call for any of these functions. The interrupt
//! can be re-enabled immediately after the function call has returned.
//!
//! \return None.
//
//*****************************************************************************
@ -1470,6 +1477,13 @@ CANErrCntrGet(uint32_t ui32Base, uint32_t *pui32RxCount,
//! If you specify a message object buffer that already contains a message
//! definition, it is overwritten.
//!
//! \note The functions CANIntClear(), CANMessageSet(), and CANMessageClear()
//! are not re-entrant. If any of these functions are used in the main
//! application code and if any of them are also used within an interrupt
//! routine, then the corresponding interrupt for that interrupt routine should
//! be disabled prior to the call for any of these functions. The interrupt
//! can be re-enabled immediately after the function call has returned.
//!
//! \return None.
//
//*****************************************************************************
@ -1831,6 +1845,12 @@ CANMessageSet(uint32_t ui32Base, uint32_t ui32ObjID,
//! - \b MSG_OBJ_DATA_LOST indicates that at least one message was received on
//! this message object and not read by the host before being overwritten.
//!
//! \note This function is not re-entrant. If it is used in both main
//! application code and in an interrupt routine, then the corresponding
//! interrupt should be disabled prior to the call for CANMessageGet().
//! The interrupt can be re-enabled immediately after the function call has
//! returned.
//!
//! \return None.
//
//*****************************************************************************
@ -2076,6 +2096,13 @@ CANMessageGet(uint32_t ui32Base, uint32_t ui32ObjID,
//! object has been ``cleared,'' it no longer automatically sends or receives
//! messages, nor does it generate interrupts.
//!
//! \note The functions CANIntClear(), CANMessageSet(), and CANMessageClear()
//! are not re-entrant. If any of these functions are used in the main
//! application code and if any of them are also used within an interrupt
//! routine, then the corresponding interrupt for that interrupt routine should
//! be disabled prior to the call for any of these functions. The interrupt
//! can be re-enabled immediately after the function call has returned.
//!
//! \return None.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// can.h - Defines and Macros for the CAN controller.
//
// Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// comp.c - Driver for the analog comparator.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// comp.h - Prototypes for the analog comparator driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -3,7 +3,7 @@
// cpu.c - Instruction wrappers for special CPU instructions needed by the
// drivers.
//
// Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// cpu.h - Prototypes for the CPU instruction wrapper functions.
//
// Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// crc.c - Driver for the CRC module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// crc.h - Defines and Macros for CRC module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// debug.h - Macros for assisting debug of the driver library.
//
// Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// des.c - Driver for the DES data transformation.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// des.h - Defines and Macros for the DES module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// eeprom.c - Driver for programming the on-chip EEPROM.
//
// Copyright (c) 2010-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2010-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// eeprom.h - Prototypes for the EEPROM driver.
//
// Copyright (c) 2010-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2010-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -3,7 +3,7 @@
// emac.c - Driver for the Integrated Ethernet Controller on Snowflake-class
// Tiva devices.
//
// Copyright (c) 2013-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2013-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -3,7 +3,7 @@
// emac.h - Defines and Macros for the Ethernet module on Snowflake-class
// devices.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// epi.c - Driver for the EPI module.
//
// Copyright (c) 2008-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2008-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// epi.h - Prototypes and macros for the EPI module.
//
// Copyright (c) 2008-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2008-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -338,7 +338,7 @@ EPIWorkaroundWordWrite(uint32_t *pui32Addr, uint32_t ui32Value)
__asm
{
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
NOP
@ -364,7 +364,7 @@ EPIWorkaroundWordRead(uint32_t *pui32Addr)
__asm
{
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
NOP
@ -392,7 +392,7 @@ EPIWorkaroundHWordWrite(uint16_t *pui16Addr, uint16_t ui16Value)
__asm
{
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
NOP
@ -419,7 +419,7 @@ EPIWorkaroundHWordRead(uint16_t *pui16Addr)
__asm
{
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
NOP
@ -447,7 +447,7 @@ EPIWorkaroundByteWrite(uint8_t *pui8Addr, uint8_t ui8Value)
__asm
{
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
NOP
@ -474,7 +474,7 @@ EPIWorkaroundByteRead(uint8_t *pui8Addr)
__asm
{
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
NOP
@ -525,7 +525,7 @@ EPIWorkaroundWordWrite(uint32_t *pui32Addr, uint32_t ui32Value)
__asm volatile (
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
" NOP\n"
@ -553,7 +553,7 @@ EPIWorkaroundWordRead(uint32_t *pui32Addr)
__asm volatile(
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
" NOP\n"
@ -580,7 +580,7 @@ EPIWorkaroundHWordWrite(uint16_t *pui16Addr, uint16_t ui16Value)
__asm volatile (
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
" NOP\n"
@ -610,7 +610,7 @@ EPIWorkaroundHWordRead(uint16_t *pui16Addr)
__asm volatile(
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
" NOP\n"
@ -636,7 +636,7 @@ EPIWorkaroundByteWrite(uint8_t *pui8Addr, uint8_t ui8Value)
__asm volatile (
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
" NOP\n"
@ -665,7 +665,7 @@ EPIWorkaroundByteRead(uint8_t *pui8Addr)
__asm volatile(
//
// Add a NOP to ensure we dont have a flash read immediately before
// Add a NOP to ensure we don have a flash read immediately before
// the EPI read.
//
" NOP\n"

View File

@ -2,7 +2,7 @@
//
// flash.c - Driver for programming the on-chip flash.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// flash.h - Prototypes for the flash driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -3,7 +3,7 @@
// fpu.c - Routines for manipulating the floating-point unit in the Cortex-M
// processor.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// fpu.h - Prototypes for the floatint point manipulation routines.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// gpio.c - API for GPIO ports
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -479,8 +479,9 @@ GPIOIntTypeGet(uint32_t ui32Port, uint8_t ui8Pin)
ui32IS = HWREG(ui32Port + GPIO_O_IS);
ui32IEV = HWREG(ui32Port + GPIO_O_IEV);
ui32SI = HWREG(ui32Port + GPIO_O_SI);
return(((ui32IBE & ui8Pin) ? 1 : 0) | ((ui32IS & ui8Pin) ? 2 : 0) |
((ui32IEV & ui8Pin) ? 4 : 0) | (ui32SI & 0x01) ? 0x10000 : 0);
((ui32IEV & ui8Pin) ? 4 : 0) | ((ui32SI & 0x01) ? 0x10000 : 0));
}
//*****************************************************************************
@ -573,21 +574,22 @@ GPIOPadConfigSet(uint32_t ui32Port, uint8_t ui8Pins,
(ui32PinType == GPIO_PIN_TYPE_WAKE_HIGH) ||
(ui32PinType == GPIO_PIN_TYPE_ANALOG));
//
// Set the GPIO peripheral configuration register first as required. This
// register only appears in TM4E111 and later device classes, but is a
// harmless write on older devices. Walk pins 0-7 and clear or set the
// provided PC[EDMn] encoding.
//
for(ui8Bit = 0; ui8Bit < 8; ui8Bit++)
if (!(CLASS_IS_TM4C123))
{
if(ui8Pins & (1 << ui8Bit))
//
// Set the GPIO peripheral configuration register first as required.
// This register only appears in TM4C129x devices, but is a harmless
// write on older devices.
//
for(ui8Bit = 0; ui8Bit < 8; ui8Bit++)
{
HWREG(ui32Port + GPIO_O_PC) = (HWREG(ui32Port + GPIO_O_PC) &
~(0x3 << (2 * ui8Bit)));
HWREG(ui32Port + GPIO_O_PC) |= (((ui32Strength >> 5) & 0x3) <<
(2 * ui8Bit));
if(ui8Pins & (1 << ui8Bit))
{
HWREG(ui32Port + GPIO_O_PC) = (HWREG(ui32Port + GPIO_O_PC) &
~(0x3 << (2 * ui8Bit)));
HWREG(ui32Port + GPIO_O_PC) |= (((ui32Strength >> 5) & 0x3) <<
(2 * ui8Bit));
}
}
}
@ -615,56 +617,62 @@ GPIOPadConfigSet(uint32_t ui32Port, uint8_t ui8Pins,
(HWREG(ui32Port + GPIO_O_SLR) &
~(ui8Pins)));
//
// Set the 12-mA drive select register. This register only appears in
// TM4E111 and later device classes, but is a harmless write on older
// devices.
//
HWREG(ui32Port + GPIO_O_DR12R) = ((ui32Strength & 0x10) ?
(HWREG(ui32Port + GPIO_O_DR12R) |
ui8Pins) :
(HWREG(ui32Port + GPIO_O_DR12R) &
~(ui8Pins)));
if (!(CLASS_IS_TM4C123))
{
//
// Set the 12-mA drive select register. This register only appears in
// TM4C129x and later device classes, but is a harmless write on older
// devices.
//
HWREG(ui32Port + GPIO_O_DR12R) = ((ui32Strength & 0x10) ?
(HWREG(ui32Port + GPIO_O_DR12R) |
ui8Pins) :
(HWREG(ui32Port + GPIO_O_DR12R) &
~(ui8Pins)));
}
//
// Set the pin type.
//
HWREG(ui32Port + GPIO_O_ODR) = ((ui32PinType & 1) ?
(HWREG(ui32Port + GPIO_O_ODR) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_ODR) & ~(ui8Pins)));
(HWREG(ui32Port + GPIO_O_ODR) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_ODR) & ~(ui8Pins)));
HWREG(ui32Port + GPIO_O_PUR) = ((ui32PinType & 2) ?
(HWREG(ui32Port + GPIO_O_PUR) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_PUR) & ~(ui8Pins)));
(HWREG(ui32Port + GPIO_O_PUR) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_PUR) & ~(ui8Pins)));
HWREG(ui32Port + GPIO_O_PDR) = ((ui32PinType & 4) ?
(HWREG(ui32Port + GPIO_O_PDR) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_PDR) & ~(ui8Pins)));
(HWREG(ui32Port + GPIO_O_PDR) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_PDR) & ~(ui8Pins)));
HWREG(ui32Port + GPIO_O_DEN) = ((ui32PinType & 8) ?
(HWREG(ui32Port + GPIO_O_DEN) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_DEN) & ~(ui8Pins)));
(HWREG(ui32Port + GPIO_O_DEN) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_DEN) & ~(ui8Pins)));
//
// Set the wake pin enable register and the wake level register. These
// registers only appear in TM4E111 and later device classes, but are
// harmless writes on older devices.
//
HWREG(ui32Port + GPIO_O_WAKELVL) = ((ui32PinType & 0x200) ?
(HWREG(ui32Port + GPIO_O_WAKELVL) |
ui8Pins) :
(HWREG(ui32Port + GPIO_O_WAKELVL) &
~(ui8Pins)));
HWREG(ui32Port + GPIO_O_WAKEPEN) = ((ui32PinType & 0x300) ?
(HWREG(ui32Port + GPIO_O_WAKEPEN) |
ui8Pins) :
(HWREG(ui32Port + GPIO_O_WAKEPEN) &
~(ui8Pins)));
if (!(CLASS_IS_TM4C123))
{
//
// Set the wake pin enable register and the wake level register. These
// registers only appear in TM4C129x and later device classes, but are
// harmless writes on older devices.
//
HWREG(ui32Port + GPIO_O_WAKELVL) = ((ui32PinType & 0x200) ?
(HWREG(ui32Port + GPIO_O_WAKELVL) |
ui8Pins) :
(HWREG(ui32Port + GPIO_O_WAKELVL) &
~(ui8Pins)));
HWREG(ui32Port + GPIO_O_WAKEPEN) = ((ui32PinType & 0x300) ?
(HWREG(ui32Port + GPIO_O_WAKEPEN) |
ui8Pins) :
(HWREG(ui32Port + GPIO_O_WAKEPEN) &
~(ui8Pins)));
}
//
// Set the analog mode select register.
//
HWREG(ui32Port + GPIO_O_AMSEL) =
((ui32PinType == GPIO_PIN_TYPE_ANALOG) ?
(HWREG(ui32Port + GPIO_O_AMSEL) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_AMSEL) & ~(ui8Pins)));
((ui32PinType == GPIO_PIN_TYPE_ANALOG) ?
(HWREG(ui32Port + GPIO_O_AMSEL) | ui8Pins) :
(HWREG(ui32Port + GPIO_O_AMSEL) & ~(ui8Pins)));
}
//*****************************************************************************
@ -710,9 +718,12 @@ GPIOPadConfigGet(uint32_t ui32Port, uint8_t ui8Pin,
ui32Strength |= ((HWREG(ui32Port + GPIO_O_DR4R) & ui8Pin) ? 2 : 0);
ui32Strength |= ((HWREG(ui32Port + GPIO_O_DR8R) & ui8Pin) ? 4 : 0);
ui32Strength |= ((HWREG(ui32Port + GPIO_O_SLR) & ui8Pin) ? 8 : 0);
ui32Strength |= ((HWREG(ui32Port + GPIO_O_DR12R) & ui8Pin) ? 0x10 : 0);
ui32Strength |= (((HWREG(ui32Port + GPIO_O_PC) >>
(2 * ui8Pin)) & 0x3) << 5);
if (!(CLASS_IS_TM4C123))
{
ui32Strength |= ((HWREG(ui32Port + GPIO_O_DR12R) & ui8Pin) ? 0x10 : 0);
ui32Strength |= (((HWREG(ui32Port + GPIO_O_PC) >>
(2 * ui8Pin)) & 0x3) << 5);
}
*pui32Strength = ui32Strength;
//
@ -722,10 +733,13 @@ GPIOPadConfigGet(uint32_t ui32Port, uint8_t ui8Pin,
ui32PinType |= ((HWREG(ui32Port + GPIO_O_PUR) & ui8Pin) ? 2 : 0);
ui32PinType |= ((HWREG(ui32Port + GPIO_O_PDR) & ui8Pin) ? 4 : 0);
ui32PinType |= ((HWREG(ui32Port + GPIO_O_DEN) & ui8Pin) ? 8 : 0);
if(HWREG(ui32Port + GPIO_O_WAKEPEN) & ui8Pin)
if (!(CLASS_IS_TM4C123))
{
ui32PinType |= ((HWREG(ui32Port + GPIO_O_WAKELVL) & ui8Pin) ?
0x200 : 0x100);
if(HWREG(ui32Port + GPIO_O_WAKEPEN) & ui8Pin)
{
ui32PinType |= ((HWREG(ui32Port + GPIO_O_WAKELVL) & ui8Pin) ?
0x200 : 0x100);
}
}
*pui32PinType = ui32PinType;
}
@ -2614,6 +2628,41 @@ GPIOADCTriggerDisable(uint32_t ui32Port, uint8_t ui8Pins)
HWREG(ui32Port + GPIO_O_ADCCTL) &= (~ui8Pins);
}
//*****************************************************************************
//
//! Unlocks a GPIO pin which had been previously locked.
//!
//! \param ui32Port is the base address of the GPIO port.
//! \param ui8Pins is the bit-packed representation of the pin(s).
//!
//! This function is used to unlock pins which were locked for specific
//! functionality such as JTAG operation. To be able to use pins which have
//! been locked, the following procedure is required to unlock the pin and
//! commit the change. This function will have no effect on pins which are
//! not protected by the GPIOCR register.
//!
//! \return None.
//
//*****************************************************************************
void
GPIOUnlockPin(uint32_t ui32Port, uint8_t ui8Pins)
{
//
// Check the arguments.
//
ASSERT(_GPIOBaseValid(ui32Port));
//
// Unlock the port by using the device LOCK key
//
HWREG(ui32Port + GPIO_O_LOCK) = GPIO_LOCK_KEY;
//
// Commit the pin to keep it in GPIO mode
//
HWREG(ui32Port + GPIO_O_CR) |= ui8Pins;
}
//*****************************************************************************
//
// Close the Doxygen group.

View File

@ -2,7 +2,7 @@
//
// gpio.h - Defines and Macros for GPIO API.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -191,6 +191,7 @@ extern void GPIODMATriggerEnable(uint32_t ui32Port, uint8_t ui8Pins);
extern void GPIODMATriggerDisable(uint32_t ui32Port, uint8_t ui8Pins);
extern void GPIOADCTriggerEnable(uint32_t ui32Port, uint8_t ui8Pins);
extern void GPIOADCTriggerDisable(uint32_t ui32Port, uint8_t ui8Pins);
extern void GPIOUnlockPin(uint32_t ui32Port, uint8_t ui8Pins);
//*****************************************************************************
//

View File

@ -2,7 +2,7 @@
//
// hibernate.c - Driver for the Hibernation module
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -272,8 +272,7 @@ HibernateClockConfig(uint32_t ui32Config)
//
if(HIBERNATE_CLOCK_OUTPUT)
{
HWREG(HIB_CC) = ui32Config & (HIBERNATE_OUT_SYSCLK |
HIBERNATE_OUT_ALT1CLK);
HWREG(HIB_CC) = ui32Config & (HIBERNATE_OUT_SYSCLK);
}
}
@ -1615,6 +1614,12 @@ _HibernateCalendarSet(uint32_t ui32Reg, struct tm *psTime)
//! the hibernate counter is configured in calendar mode using the
//! HibernateCounterMode() function with one of the calendar modes.
//!
//! The hibernate module contains a 7-bit register field to store the year with
//! valid values ranges from 0 to 99. In order to maximize the calendar
//! year up to 2099, the HibernateCalendarSet() will accept calendar year
//! after the year 2000 only. Calendar years before 2000 (i.e. 1987) will
//! produce unexpected results.
//!
//! \note The hibernate calendar mode is not available on all Tiva
//! devices. Please consult the data sheet to determine if the device you are
//! using supports this feature in the Hibernation module.

View File

@ -2,7 +2,7 @@
//
// hibernate.h - API definition for the Hibernation module.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -104,7 +104,6 @@ extern "C"
#define HIBERNATE_OSC_DISABLE 0x00010000
#define HIBERNATE_OUT_WRSTALL 0x20000000
#define HIBERNATE_OUT_SYSCLK 0x00000001
#define HIBERNATE_OUT_ALT1CLK 0x00000002
//*****************************************************************************
//

View File

@ -2,7 +2,7 @@
//
// i2c.c - Driver for Inter-IC (I2C) bus block.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -1782,7 +1782,7 @@ I2CRxFIFOFlush(uint32_t ui32Base)
//!
//! This function retrieves the status for both the transmit (TX) and receive
//! (RX) FIFOs. The trigger level for the transmit FIFO is set using
//! I2CTxFIFOConfigSet() and for the receive FIFO using I2CTxFIFOConfigSet().
//! I2CTxFIFOConfigSet() and for the receive FIFO using I2CRxFIFOConfigSet().
//!
//! \note Not all Tiva devices have an I2C FIFO. Please consult the
//! device data sheet to determine if this feature is supported.

View File

@ -2,7 +2,7 @@
//
// i2c.h - Prototypes for the I2C Driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// interrupt.c - Driver for the NVIC Interrupt Controller.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// interrupt.h - Prototypes for the NVIC Interrupt Controller Driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// lcd.c - Defines and Macros for the LCD Controller module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// lcd.h - Defines and Macros for the LCD Controller module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// mpu.c - Driver for the Cortex-M3 memory protection unit (MPU).
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// mpu.h - Defines and Macros for the memory protection unit.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// onewire.c - Driver for OneWire master module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// onewire.h - Prototypes for the OneWire Driver.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// pin_map.h - Mapping of peripherals to pins for all parts.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// pwm.c - API for the PWM modules
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -1993,7 +1993,8 @@ PWMClockSet(uint32_t ui32Base, uint32_t ui32Config)
// Check the arguments.
//
ASSERT((ui32Base == PWM0_BASE) || (ui32Base == PWM1_BASE));
ASSERT((ui32Config == PWM_SYSCLK_DIV_2) ||
ASSERT((ui32Config == PWM_SYSCLK_DIV_1) ||
(ui32Config == PWM_SYSCLK_DIV_2) ||
(ui32Config == PWM_SYSCLK_DIV_4) ||
(ui32Config == PWM_SYSCLK_DIV_8) ||
(ui32Config == PWM_SYSCLK_DIV_16) ||

View File

@ -2,7 +2,7 @@
//
// pwm.h - API function protoypes for Pulse Width Modulation (PWM) ports
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// qei.c - Driver for the Quadrature Encoder with Index.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// qei.h - Prototypes for the Quadrature Encoder Driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@ This project will build the TivaWare Peripheral Driver Library.
-------------------------------------------------------------------------------
Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
Software License Agreement
Redistribution and use in source and binary forms, with or without
@ -33,4 +33,4 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.

View File

@ -2,7 +2,7 @@
//
// rom.h - Macros to facilitate calling functions in the ROM.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -3,7 +3,7 @@
// rom_map.h - Macros to facilitate calling functions in the ROM when they are
// available and in flash otherwise.
//
// Copyright (c) 2008-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2008-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -1703,6 +1703,20 @@
#define MAP_FlashUserSet \
FlashUserSet
#endif
#ifdef ROM_FlashAllUserRegisterGet
#define MAP_FlashAllUserRegisterGet \
ROM_FlashAllUserRegisterGet
#else
#define MAP_FlashAllUserRegisterGet \
FlashAllUserRegisterGet
#endif
#ifdef ROM_FlashAllUserRegisterSet
#define MAP_FlashAllUserRegisterSet \
ROM_FlashAllUserRegisterSet
#else
#define MAP_FlashAllUserRegisterSet \
FlashAllUserRegisterSet
#endif
#ifdef ROM_FlashUserSave
#define MAP_FlashUserSave \
ROM_FlashUserSave
@ -1710,6 +1724,13 @@
#define MAP_FlashUserSave \
FlashUserSave
#endif
#ifdef ROM_FlashAllUserRegisterSave
#define MAP_FlashAllUserRegisterSave \
ROM_FlashAllUserRegisterSave
#else
#define MAP_FlashAllUserRegisterSave \
FlashAllUserRegisterSave
#endif
#ifdef ROM_FlashIntEnable
#define MAP_FlashIntEnable \
ROM_FlashIntEnable
@ -1883,6 +1904,41 @@
#define MAP_GPIOPinTypeComparator \
GPIOPinTypeComparator
#endif
#ifdef ROM_GPIOPinTypeComparatorOutput
#define MAP_GPIOPinTypeComparatorOutput \
ROM_GPIOPinTypeComparatorOutput
#else
#define MAP_GPIOPinTypeComparatorOutput \
GPIOPinTypeComparatorOutput
#endif
#ifdef ROM_GPIOPinTypeDIVSCLK
#define MAP_GPIOPinTypeDIVSCLK \
ROM_GPIOPinTypeDIVSCLK
#else
#define MAP_GPIOPinTypeDIVSCLK \
GPIOPinTypeDIVSCLK
#endif
#ifdef ROM_GPIOPinTypeEPI
#define MAP_GPIOPinTypeEPI \
ROM_GPIOPinTypeEPI
#else
#define MAP_GPIOPinTypeEPI \
GPIOPinTypeEPI
#endif
#ifdef ROM_GPIOPinTypeEthernetLED
#define MAP_GPIOPinTypeEthernetLED \
ROM_GPIOPinTypeEthernetLED
#else
#define MAP_GPIOPinTypeEthernetLED \
GPIOPinTypeEthernetLED
#endif
#ifdef ROM_GPIOPinTypeEthernetMII
#define MAP_GPIOPinTypeEthernetMII \
ROM_GPIOPinTypeEthernetMII
#else
#define MAP_GPIOPinTypeEthernetMII \
GPIOPinTypeEthernetMII
#endif
#ifdef ROM_GPIOPinTypeGPIOInput
#define MAP_GPIOPinTypeGPIOInput \
ROM_GPIOPinTypeGPIOInput
@ -1897,6 +1953,13 @@
#define MAP_GPIOPinTypeGPIOOutput \
GPIOPinTypeGPIOOutput
#endif
#ifdef ROM_GPIOPinTypeHibernateRTCCLK
#define MAP_GPIOPinTypeHibernateRTCCLK \
ROM_GPIOPinTypeHibernateRTCCLK
#else
#define MAP_GPIOPinTypeHibernateRTCCLK \
GPIOPinTypeHibernateRTCCLK
#endif
#ifdef ROM_GPIOPinTypeI2C
#define MAP_GPIOPinTypeI2C \
ROM_GPIOPinTypeI2C
@ -1932,6 +1995,13 @@
#define MAP_GPIOPinTypeTimer \
GPIOPinTypeTimer
#endif
#ifdef ROM_GPIOPinTypeTrace
#define MAP_GPIOPinTypeTrace \
ROM_GPIOPinTypeTrace
#else
#define MAP_GPIOPinTypeTrace \
GPIOPinTypeTrace
#endif
#ifdef ROM_GPIOPinTypeUART
#define MAP_GPIOPinTypeUART \
ROM_GPIOPinTypeUART
@ -2058,6 +2128,34 @@
#define MAP_GPIOIntStatus \
GPIOIntStatus
#endif
#ifdef ROM_GPIOIntRegister
#define MAP_GPIOIntRegiste \
ROM_GPIOIntRegister
#else
#define MAP_GPIOIntRegister \
GPIOIntRegister
#endif
#ifdef ROM_GPIOIntUnregister
#define MAP_GPIOIntUnregister \
ROM_GPIOIntUnregister
#else
#define MAP_GPIOIntUnregister \
GPIOIntUnregister
#endif
#ifdef ROM_GPIOIntRegisterPin
#define MAP_GPIOIntRegisterPin \
ROM_GPIOIntRegisterPin
#else
#define MAP_GPIOIntRegisterPin \
GPIOIntRegisterPin
#endif
#ifdef ROM_GPIOIntUnregisterPin
#define MAP_GPIOIntUnregisterPin \
ROM_GPIOIntUnregisterPin
#else
#define MAP_GPIOIntUnregisterPin \
GPIOIntUnregisterPin
#endif
#ifdef ROM_GPIOPinWakeStatus
#define MAP_GPIOPinWakeStatus \
ROM_GPIOPinWakeStatus
@ -2065,6 +2163,13 @@
#define MAP_GPIOPinWakeStatus \
GPIOPinWakeStatus
#endif
#ifdef ROM_GPIOUnlockPin
#define MAP_GPIOUnlockPin \
ROM_GPIOUnlockPin
#else
#define MAP_GPIOUnlockPin \
GPIOUnlockPin
#endif
//*****************************************************************************
//
@ -2756,6 +2861,13 @@
#define MAP_I2CMasterGlitchFilterConfigSet \
I2CMasterGlitchFilterConfigSet
#endif
#ifdef ROM_I2CLoopbackEnable
#define MAP_I2CLoopbackEnable \
ROM_I2CLoopbackEnable
#else
#define MAP_I2CLoopbackEnable \
I2CLoopbackEnable
#endif
//*****************************************************************************
//
@ -3492,6 +3604,27 @@
#define MAP_QEIErrorGet \
QEIErrorGet
#endif
#ifdef ROM_QEIFilterEnable
#define MAP_QEIFilterEnable \
ROM_QEIFilterEnable
#else
#define MAP_QEIFilterEnable \
QEIFilterEnable
#endif
#ifdef ROM_QEIFilterDisable
#define MAP_QEIFilterDisable \
ROM_QEIFilterDisable
#else
#define MAP_QEIFilterDisable \
QEIFilterDisable
#endif
#ifdef ROM_QEIFilterConfigure
#define MAP_QEIFilterConfigure \
ROM_QEIFilterConfigure
#else
#define MAP_QEIFilterConfigure \
QEIFilterConfigure
#endif
#ifdef ROM_QEIVelocityEnable
#define MAP_QEIVelocityEnable \
ROM_QEIVelocityEnable
@ -4405,6 +4538,20 @@
#define MAP_SSIAdvFrameHoldDisable \
SSIAdvFrameHoldDisable
#endif
#ifdef ROM_SSILoopbackEnable
#define MAP_SSILoopbackEnable \
ROM_SSILoopbackEnable
#else
#define MAP_SSILoopbackEnable \
SSILoopbackEnable
#endif
#ifdef ROM_SSILoopbackDisable
#define MAP_SSILoopbackDisable \
ROM_SSILoopbackDisable
#else
#define MAP_SSILoopbackDisable \
SSILoopbackDisable
#endif
//*****************************************************************************
//
@ -4726,6 +4873,13 @@
#define MAP_SysCtlAltClkConfig \
SysCtlAltClkConfig
#endif
#ifdef ROM_SysCtlVCOGet
#define MAP_SysCtlVCOGet \
ROM_SysCtlVCOGet
#else
#define MAP_SysCtlVCOGet \
SysCtlVCOGet
#endif
//*****************************************************************************
//
@ -5066,6 +5220,13 @@
#define MAP_TimerSynchronize \
TimerSynchronize
#endif
#ifdef ROM_TimerUpdateMode
#define MAP_TimerUpdateMode \
ROM_TimerUpdateMode
#else
#define MAP_TimerUpdateMode \
TimerUpdateMode
#endif
//*****************************************************************************
//
@ -5380,6 +5541,13 @@
#define MAP_UARTFlowControlSet \
UARTFlowControlSet
#endif
#ifdef ROM_UARTLoopbackEnable
#define MAP_UARTLoopbackEnable \
ROM_UARTLoopbackEnable
#else
#define MAP_UARTLoopbackEnable \
UARTLoopbackEnable
#endif
//*****************************************************************************
//

View File

@ -3,7 +3,7 @@
// rtos_bindings.h - Macros intended to aid porting of TivaWare modules
// for use with an RTOS.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// shamd5.c - Driver for the SHA/MD5 module.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// shamd5.h - Defines and Macros for the SHA/MD5.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// ssi.c - Driver for Synchronous Serial Interface.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -692,10 +692,10 @@ SSIDataGet(uint32_t ui32Base, uint32_t *pui32Data)
//! \param pui32Data is a pointer to a storage location for data that was
//! received over the SSI interface.
//!
//! This function gets received data from the receive FIFO of the specified SSI
//! module and places that data into the location specified by the \e ui32Data
//! parameter. If there is no data in the FIFO, then this function returns a
//! zero.
//! This function gets one received data element from the receive FIFO of the
//! specified SSI module and places that data into the location specified by
//! the \e ui32Data parameter. If there is no data in the FIFO, then this
//! function returns a zero.
//!
//! \note Only the lower N bits of the value written to \e pui32Data contain
//! valid data, where N is the data width as configured by
@ -703,7 +703,7 @@ SSIDataGet(uint32_t ui32Base, uint32_t *pui32Data)
//! 8-bit data width, only the lower 8 bits of the value written to
//! \e pui32Data contain valid data.
//!
//! \return Returns the number of elements read from the SSI receive FIFO.
//! \return Returns 1 if there is data element read or 0 if no data in FIFO
//
//*****************************************************************************
int32_t
@ -1013,7 +1013,7 @@ SSIAdvDataPutFrameEnd(uint32_t ui32Base, uint32_t ui32Data)
// Check the arguments.
//
ASSERT(_SSIBaseValid(ui32Base));
ASSERT((ui32Data & 0xff) == 0);
ASSERT((ui32Data & 0xffffff00) == 0);
//
// Wait until there is space.
@ -1058,7 +1058,7 @@ SSIAdvDataPutFrameEndNonBlocking(uint32_t ui32Base, uint32_t ui32Data)
// Check the arguments.
//
ASSERT(_SSIBaseValid(ui32Base));
ASSERT((ui32Data & 0xff) == 0);
ASSERT((ui32Data & 0xffffff00) == 0);
//
// Check for space to write.
@ -1142,6 +1142,61 @@ SSIAdvFrameHoldDisable(uint32_t ui32Base)
HWREG(ui32Base + SSI_O_CR1) &= ~(SSI_CR1_FSSHLDFRM);
}
//*****************************************************************************
//
//! Enables the use of SSI Loopback mode.
//!
//! \param ui32Base is the base address of the SSI module.
//!
//! This function configures the SSI module to enter loopback mode. When in
//! loopback mode, the output of the transmit serial shift register is
//! connected internally to the input of the receive serial shift register.
//! This mode is useful for diagnostic/debug testing of the SSI module.
//!
//! \return None.
//
//*****************************************************************************
void
SSILoopbackEnable(uint32_t ui32Base)
{
//
// Check the arguments.
//
ASSERT(_SSIBaseValid(ui32Base));
//
// Enable Loopback mode
//
HWREG(ui32Base + SSI_O_CR1) |= 1u;
}
//*****************************************************************************
//
//! Disables the use of SSI Loopback mode.
//!
//! \param ui32Base is the base address of the SSI module.
//!
//! This function restores the SSI module to be in normal serial port operation
//! where the the input of the receive serial shift register is no longer
//! connected internally to the output of the transmit serial shift register.
//!
//! \return None.
//
//*****************************************************************************
void
SSILoopbackDisable(uint32_t ui32Base)
{
//
// Check the arguments.
//
ASSERT(_SSIBaseValid(ui32Base));
//
// Disable Loopback mode
//
HWREG(ui32Base + SSI_O_CR1) &= ~(1u);
}
//*****************************************************************************
//
// Close the Doxygen group.

View File

@ -2,7 +2,7 @@
//
// ssi.h - Prototypes for the Synchronous Serial Interface Driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -144,6 +144,8 @@ extern int32_t SSIAdvDataPutFrameEndNonBlocking(uint32_t ui32Base,
uint32_t ui32Data);
extern void SSIAdvFrameHoldEnable(uint32_t ui32Base);
extern void SSIAdvFrameHoldDisable(uint32_t ui32Base);
extern void SSILoopbackEnable(uint32_t ui32Base);
extern void SSILoopbackDisable(uint32_t ui32Base);
//*****************************************************************************
//

View File

@ -2,7 +2,7 @@
//
// sw_crc.c - Software CRC functions.
//
// Copyright (c) 2010-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2010-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// sw_crc.h - Prototypes for the software CRC functions.
//
// Copyright (c) 2010-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2010-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// sysctl.c - Driver for the system controller.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -2495,8 +2495,8 @@ SysCtlClockFreqSet(uint32_t ui32Config, uint32_t ui32SysClock)
//! many of which are grouped into sets where only one can be chosen.
//!
//! The system clock divider is chosen with one of the following values:
//! \b SYSCTL_SYSDIV_1, \b SYSCTL_SYSDIV_2, \b SYSCTL_SYSDIV_3, ...
//! \b SYSCTL_SYSDIV_64.
//! \b SYSCTL_SYSDIV_1, \b SYSCTL_SYSDIV_2, \b SYSCTL_SYSDIV_2_5,
//! \b SYSCTL_SYSDIV_3, ... \b SYSCTL_SYSDIV_63_5, \b SYSCTL_SYSDIV_64.
//!
//! The use of the PLL is chosen with either \b SYSCTL_USE_PLL or
//! \b SYSCTL_USE_OSC.
@ -3522,7 +3522,8 @@ SysCtlVoltageEventClear(uint32_t ui32Status)
//
//! Gets the effective VCO frequency.
//!
//! \param ui32Crystal holds the crystal value used for the PLL.
//! \param ui32Crystal holds the crystal value definition from \b sysctl.h
//! such as \b SYSCTL_XTAL_25MHZ.
//! \param pui32VCOFrequency is a pointer to the storage location which holds
//! value of the VCO computed.
//!

View File

@ -2,7 +2,7 @@
//
// sysctl.h - Prototypes for the system control driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -344,8 +344,23 @@ extern "C"
#define SYSCTL_SYSDIV_61_5 0xDE800000 // Processor clock is pll / 61.5
#define SYSCTL_SYSDIV_62_5 0xDF000000 // Processor clock is pll / 62.5
#define SYSCTL_SYSDIV_63_5 0xDF800000 // Processor clock is pll / 63.5
#define SYSCTL_CFG_VCO_480 0xF1000000 // VCO is 480 MHz
#define SYSCTL_CFG_VCO_320 0xF0000000 // VCO is 320 MHz
//
// TivaWare 2.2.0.xxx Update
// Due to TM4C129x Errata Item SYSCTL#22, the SYSCTL_CFG_VCO_xxx configurations
// have misleading *names* as currently defined as the VCO does not run at the
// stated frequencies. To amend this, new *name* defintions are being used,
// however the register configuration remains the same.
// The old definitions will remain for compatibility with code ported from
// older versions of TivaWare.
//
#define SYSCTL_CFG_VCO_480 0xF1000000 // VCO is 480 MHz - Legacy
// Does not work @ 480, use
// SYSCTL_CFG_VCO_240 instead
#define SYSCTL_CFG_VCO_320 0xF0000000 // VCO is 320 MHz - Legacy
// Does not work @ 320, use
// SYSCTL_CFG_VCO_160 instead
#define SYSCTL_CFG_VCO_240 0xF1000000 // VCO is 240 MHz
#define SYSCTL_CFG_VCO_160 0xF0000000 // VCO is 160 MHz
#define SYSCTL_USE_PLL 0x00000000 // System clock is the PLL clock
#define SYSCTL_USE_OSC 0x00003800 // System clock is the osc clock
#define SYSCTL_XTAL_1MHZ 0x00000000 // External crystal is 1MHz

View File

@ -2,7 +2,7 @@
//
// sysexc.c - Routines for the System Exception Module.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// sysexc.h - Prototypes for the System Exception Module routines.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// systick.c - Driver for the SysTick timer in NVIC.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// systick.h - Prototypes for the SysTick driver.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// timer.c - Driver for the timer module.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -297,6 +297,7 @@ TimerDisable(uint32_t ui32Base, uint32_t ui32Timer)
//! - \b TIMER_CFG_A_CAP_TIME - Half-width edge time capture
//! - \b TIMER_CFG_A_CAP_TIME_UP - Half-width edge time capture that counts up
//! instead of down (not available on all parts)
//! - \b TIMER_CFG_A_ONE_SHOT_PWM - Half-width one shot PWM output
//! - \b TIMER_CFG_A_PWM - Half-width PWM output
//!
//! Some Tiva devices also allow configuring an action when the timers
@ -351,11 +352,11 @@ TimerConfigure(uint32_t ui32Base, uint32_t ui32Config)
// Check the arguments.
//
ASSERT(_TimerBaseValid(ui32Base));
ASSERT((ui32Config == TIMER_CFG_ONE_SHOT) ||
(ui32Config == TIMER_CFG_ONE_SHOT_UP) ||
(ui32Config == TIMER_CFG_PERIODIC) ||
(ui32Config == TIMER_CFG_PERIODIC_UP) ||
(ui32Config == TIMER_CFG_RTC) ||
ASSERT(((ui32Config & 0xfff0ffff) == TIMER_CFG_ONE_SHOT) ||
((ui32Config & 0xfff0ffff) == TIMER_CFG_ONE_SHOT_UP) ||
((ui32Config & 0xfff0ffff) == TIMER_CFG_PERIODIC) ||
((ui32Config & 0xfff0ffff) == TIMER_CFG_PERIODIC_UP) ||
((ui32Config & 0xfff0ffff) == TIMER_CFG_RTC) ||
((ui32Config & 0xff000000) == TIMER_CFG_SPLIT_PAIR));
ASSERT(((ui32Config & 0xff000000) != TIMER_CFG_SPLIT_PAIR) ||
((((ui32Config & 0x000000ff) == TIMER_CFG_A_ONE_SHOT) ||
@ -366,6 +367,7 @@ TimerConfigure(uint32_t ui32Base, uint32_t ui32Config)
((ui32Config & 0x000000ff) == TIMER_CFG_A_CAP_COUNT_UP) ||
((ui32Config & 0x000000ff) == TIMER_CFG_A_CAP_TIME) ||
((ui32Config & 0x000000ff) == TIMER_CFG_A_CAP_TIME_UP) ||
((ui32Config & 0x000000ff) == TIMER_CFG_A_ONE_SHOT_PWM) ||
((ui32Config & 0x000000ff) == TIMER_CFG_A_PWM)) &&
(((ui32Config & 0x0000ff00) == TIMER_CFG_B_ONE_SHOT) ||
((ui32Config & 0x0000ff00) == TIMER_CFG_B_ONE_SHOT_UP) ||
@ -375,6 +377,7 @@ TimerConfigure(uint32_t ui32Base, uint32_t ui32Config)
((ui32Config & 0x0000ff00) == TIMER_CFG_B_CAP_COUNT_UP) ||
((ui32Config & 0x0000ff00) == TIMER_CFG_B_CAP_TIME) ||
((ui32Config & 0x0000ff00) == TIMER_CFG_B_CAP_TIME_UP) ||
((ui32Config & 0x0000ff00) == TIMER_CFG_B_ONE_SHOT_PWM) ||
((ui32Config & 0x0000ff00) == TIMER_CFG_B_PWM))));
//
@ -1454,10 +1457,12 @@ TimerIntUnregister(uint32_t ui32Base, uint32_t ui32Timer)
//! - \b TIMER_TIMA_DMA - Timer A uDMA complete
//! - \b TIMER_CAPB_EVENT - Capture B event interrupt
//! - \b TIMER_CAPB_MATCH - Capture B match interrupt
//! - \b TIMER_TIMB_MATCH - Timer B match interrupt
//! - \b TIMER_TIMB_TIMEOUT - Timer B timeout interrupt
//! - \b TIMER_RTC_MATCH - RTC interrupt mask
//! - \b TIMER_CAPA_EVENT - Capture A event interrupt
//! - \b TIMER_CAPA_MATCH - Capture A match interrupt
//! - \b TIMER_TIMA_MATCH - Timer A match interrupt
//! - \b TIMER_TIMA_TIMEOUT - Timer A timeout interrupt
//!
//! \return None.

View File

@ -2,7 +2,7 @@
//
// timer.h - Prototypes for the timer module
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -72,6 +72,7 @@ extern "C"
#define TIMER_CFG_A_CAP_COUNT_UP 0x00000013 // Timer A event up-counter
#define TIMER_CFG_A_CAP_TIME 0x00000007 // Timer A event timer
#define TIMER_CFG_A_CAP_TIME_UP 0x00000017 // Timer A event up-count timer
#define TIMER_CFG_A_ONE_SHOT_PWM 0x00000009 // Timer A one-shot PWM output
#define TIMER_CFG_A_PWM 0x0000000A // Timer A PWM output
#define TIMER_CFG_B_ONE_SHOT 0x00002100 // Timer B one-shot timer
#define TIMER_CFG_B_ONE_SHOT_UP 0x00003100 // Timer B one-shot up-count timer
@ -81,6 +82,7 @@ extern "C"
#define TIMER_CFG_B_CAP_COUNT_UP 0x00001300 // Timer B event up-counter
#define TIMER_CFG_B_CAP_TIME 0x00000700 // Timer B event timer
#define TIMER_CFG_B_CAP_TIME_UP 0x00001700 // Timer B event up-count timer
#define TIMER_CFG_B_ONE_SHOT_PWM 0x00000900 // Timer B one-shot PWM output
#define TIMER_CFG_B_PWM 0x00000A00 // Timer B PWM output
#define TIMER_CFG_A_ACT_TOINTD 0x00010000 // Timer A compare action disable
// time-out interrupt.

View File

@ -2,7 +2,7 @@
//
// uart.c - Driver for the UART.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************
@ -811,7 +811,17 @@ UARTModemControlSet(uint32_t ui32Base, uint32_t ui32Control)
//
// Check the arguments.
//
#if defined(TARGET_IS_TM4C123_RA1) || defined(TARGET_IS_TM4C123_RA2) || \
defined(TARGET_IS_TM4C123_RA3) || defined(TARGET_IS_TM4C123_RB0) || \
defined(TARGET_IS_TM4C123_RB1)
ASSERT(ui32Base == UART1_BASE);
#else
ASSERT((ui32Base == UART0_BASE) ||
(ui32Base == UART1_BASE) ||
(ui32Base == UART2_BASE) ||
(ui32Base == UART3_BASE) ||
(ui32Base == UART4_BASE));
#endif
ASSERT((ui32Control & ~(UART_OUTPUT_RTS | UART_OUTPUT_DTR)) == 0);
//
@ -853,7 +863,17 @@ UARTModemControlClear(uint32_t ui32Base, uint32_t ui32Control)
//
// Check the arguments.
//
#if defined(TARGET_IS_TM4C123_RA1) || defined(TARGET_IS_TM4C123_RA2) || \
defined(TARGET_IS_TM4C123_RA3) || defined(TARGET_IS_TM4C123_RB0) || \
defined(TARGET_IS_TM4C123_RB1)
ASSERT(ui32Base == UART1_BASE);
#else
ASSERT((ui32Base == UART0_BASE) ||
(ui32Base == UART1_BASE) ||
(ui32Base == UART2_BASE) ||
(ui32Base == UART3_BASE) ||
(ui32Base == UART4_BASE));
#endif
ASSERT((ui32Control & ~(UART_OUTPUT_RTS | UART_OUTPUT_DTR)) == 0);
//
@ -889,7 +909,17 @@ UARTModemControlGet(uint32_t ui32Base)
//
// Check the arguments.
//
#if defined(TARGET_IS_TM4C123_RA1) || defined(TARGET_IS_TM4C123_RA2) || \
defined(TARGET_IS_TM4C123_RA3) || defined(TARGET_IS_TM4C123_RB0) || \
defined(TARGET_IS_TM4C123_RB1)
ASSERT(ui32Base == UART1_BASE);
#else
ASSERT((ui32Base == UART0_BASE) ||
(ui32Base == UART1_BASE) ||
(ui32Base == UART2_BASE) ||
(ui32Base == UART3_BASE) ||
(ui32Base == UART4_BASE));
#endif
return(HWREG(ui32Base + UART_O_CTL) & (UART_OUTPUT_RTS | UART_OUTPUT_DTR));
}
@ -919,7 +949,17 @@ UARTModemStatusGet(uint32_t ui32Base)
//
// Check the arguments.
//
#if defined(TARGET_IS_TM4C123_RA1) || defined(TARGET_IS_TM4C123_RA2) || \
defined(TARGET_IS_TM4C123_RA3) || defined(TARGET_IS_TM4C123_RB0) || \
defined(TARGET_IS_TM4C123_RB1)
ASSERT(ui32Base == UART1_BASE);
#else
ASSERT((ui32Base == UART0_BASE) ||
(ui32Base == UART1_BASE) ||
(ui32Base == UART2_BASE) ||
(ui32Base == UART3_BASE) ||
(ui32Base == UART4_BASE));
#endif
return(HWREG(ui32Base + UART_O_FR) & (UART_INPUT_RI | UART_INPUT_DCD |
UART_INPUT_CTS | UART_INPUT_DSR));

View File

@ -2,7 +2,7 @@
//
// uart.h - Defines and Macros for the UART.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// udma.c - Driver for the micro-DMA controller.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// udma.h - Prototypes and macros for the uDMA controller.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// usb.c - Driver for the USB Interface.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// usb.h - Prototypes for the USB Interface Driver.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// watchdog.c - Driver for the Watchdog Timer Module.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// watchdog.h - Prototypes for the Watchdog Timer API
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Peripheral Driver Library.
// This is part of revision 2.2.0.295 of the Tiva Peripheral Driver Library.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// asmdefs.h - Macros to allow assembly code be portable among toolchains.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_adc.h - Macros used when accessing the ADC hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_aes.h - Macros used when accessing the AES hardware.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_can.h - Defines and macros used when accessing the CAN controllers.
//
// Copyright (c) 2006-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2006-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_ccm.h - Macros used when accessing the CCM hardware.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_comp.h - Macros used when accessing the comparator hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_des.h - Macros used when accessing the DES hardware.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_eeprom.h - Macros used when accessing the EEPROM controller.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_emac.h - Macros used when accessing the EMAC hardware.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_epi.h - Macros for use in accessing the EPI registers.
//
// Copyright (c) 2008-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2008-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_fan.h - Macros used when accessing the fan control hardware.
//
// Copyright (c) 2010-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2010-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_flash.h - Macros used when accessing the flash controller.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_gpio.h - Defines and Macros for GPIO hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_hibernate.h - Defines and Macros for the Hibernation module.
//
// Copyright (c) 2007-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2007-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_i2c.h - Macros used when accessing the I2C master and slave hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -3,7 +3,7 @@
// hw_ints.h - Macros that define the interrupt assignment on Tiva C Series
// MCUs.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -34,7 +34,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_lcd.h - Defines and macros used when accessing the LCD controller.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_memmap.h - Macros defining the memory map of the device.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_nvic.h - Macros used when accessing the NVIC hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_onewire.h - Macros used when accessing the One wire hardware.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_pwm.h - Defines and Macros for Pulse Width Modulation (PWM) ports.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_qei.h - Macros used when accessing the QEI hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_shamd5.h - Macros used when accessing the SHA/MD5 hardware.
//
// Copyright (c) 2012-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2012-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_ssi.h - Macros used when accessing the SSI hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_sysctl.h - Macros used when accessing the system control hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_sysexc.h - Macros used when accessing the system exception module.
//
// Copyright (c) 2011-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2011-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_timer.h - Defines and macros used when accessing the timer.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

View File

@ -2,7 +2,7 @@
//
// hw_types.h - Common types and macros.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************
@ -110,7 +110,7 @@
#ifndef REVISION_IS_A1
#define REVISION_IS_A1 \
((HWREG(SYSCTL_DID0) & (SYSCTL_DID0_MAJ_M | SYSCTL_DID0_MIN_M)) == \
(SYSCTL_DID0_MAJ_REVA | SYSCTL_DID0_MIN_0))
(SYSCTL_DID0_MAJ_REVA | SYSCTL_DID0_MIN_1))
#endif
#ifndef REVISION_IS_A2

View File

@ -2,7 +2,7 @@
//
// hw_uart.h - Macros and defines used when accessing the UART hardware.
//
// Copyright (c) 2005-2017 Texas Instruments Incorporated. All rights reserved.
// Copyright (c) 2005-2020 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
@ -33,7 +33,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.
// This is part of revision 2.2.0.295 of the Tiva Firmware Development Package.
//
//*****************************************************************************

Some files were not shown because too many files have changed in this diff Show More