1 /*
2  * @brief LPC15xx IOCON driver
3  *
4  * @note
5  * Copyright(C) NXP Semiconductors, 2013
6  * All rights reserved.
7  *
8  * Software that is described herein is for illustrative purposes only
9  * which provides customers with programming information regarding the
10  * LPC products.  This software is supplied "AS IS" without any warranties of
11  * any kind, and NXP Semiconductors and its licensor disclaim any and
12  * all warranties, express or implied, including all implied warranties of
13  * merchantability, fitness for a particular purpose and non-infringement of
14  * intellectual property rights.  NXP Semiconductors assumes no responsibility
15  * or liability for the use of the software, conveys no license or rights under any
16  * patent, copyright, mask work right, or any other intellectual property rights in
17  * or to any products. NXP Semiconductors reserves the right to make changes
18  * in the software without notification. NXP Semiconductors also makes no
19  * representation or warranty that such application will be suitable for the
20  * specified use without further testing or modification.
21  *
22  * Permission to use, copy, modify, and distribute this software and its
23  * documentation is hereby granted, under NXP Semiconductors' and its
24  * licensor's relevant copyrights in the software, without fee, provided that it
25  * is used in conjunction with NXP Semiconductors microcontrollers.  This
26  * copyright, permission, and disclaimer notice must appear in all copies of
27  * this code.
28  */
29 
30 #include "chip.h"
31 
32 /*****************************************************************************
33  * Private types/enumerations/variables
34  ****************************************************************************/
35 
36 /*****************************************************************************
37  * Public types/enumerations/variables
38  ****************************************************************************/
39 
40 /*****************************************************************************
41  * Private functions
42  ****************************************************************************/
43 
44 /*****************************************************************************
45  * Public functions
46  ****************************************************************************/
47 
48 /* Set all I/O Control pin muxing */
Chip_IOCON_SetPinMuxing(LPC_IOCON_T * pIOCON,const PINMUX_GRP_T * pinArray,uint32_t arrayLength)49 void Chip_IOCON_SetPinMuxing(LPC_IOCON_T *pIOCON, const PINMUX_GRP_T *pinArray, uint32_t arrayLength)
50 {
51 	uint32_t ix;
52 
53 	for (ix = 0; ix < arrayLength; ix++ ) {
54 		Chip_IOCON_PinMuxSet(pIOCON, pinArray[ix].port, pinArray[ix].pin, pinArray[ix].modefunc);
55 	}
56 }
57