| 1 | /*************************************************************************** |
|---|
| 2 | * Copyright (c) 2003-2009, Broadcom Corporation |
|---|
| 3 | * All Rights Reserved |
|---|
| 4 | * Confidential Property of Broadcom Corporation |
|---|
| 5 | * |
|---|
| 6 | * THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE |
|---|
| 7 | * AGREEMENT BETWEEN THE USER AND BROADCOM. YOU HAVE NO RIGHT TO USE OR |
|---|
| 8 | * EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT. |
|---|
| 9 | * |
|---|
| 10 | * $brcm_Workfile: bcmtm.c $ |
|---|
| 11 | * $brcm_Revision: Hydra_Software_Devel/1 $ |
|---|
| 12 | * $brcm_Date: 9/30/09 5:19p $ |
|---|
| 13 | * |
|---|
| 14 | * Module Description: |
|---|
| 15 | * |
|---|
| 16 | * Revision History: |
|---|
| 17 | * |
|---|
| 18 | * $brcm_Log: /rockford/bsp/bcm97550/common/bcmtm.c $ |
|---|
| 19 | * |
|---|
| 20 | * Hydra_Software_Devel/1 9/30/09 5:19p farshidf |
|---|
| 21 | * SW7550-38: mini non-os code |
|---|
| 22 | * |
|---|
| 23 | * Bsp_Software_Devel/4 8/25/08 5:11p farshidf |
|---|
| 24 | * PR41450: add teh IR |
|---|
| 25 | * |
|---|
| 26 | * Bsp_Software_Devel/3 8/25/08 3:27p farshidf |
|---|
| 27 | * PR41450: correct the include |
|---|
| 28 | * |
|---|
| 29 | * Bsp_Software_Devel/2 5/23/08 5:10p farshidf |
|---|
| 30 | * PR41450: fix compile issue |
|---|
| 31 | * |
|---|
| 32 | * Bsp_Software_Devel/1 5/23/08 5:05p farshidf |
|---|
| 33 | * PR41450: add for Non_os |
|---|
| 34 | * |
|---|
| 35 | * |
|---|
| 36 | ***************************************************************************/ |
|---|
| 37 | #include "bstd.h" |
|---|
| 38 | #include "breg_mem.h" |
|---|
| 39 | #include "bchp_sun_top_ctrl.h" |
|---|
| 40 | |
|---|
| 41 | #ifndef BCM_REF_BOARD |
|---|
| 42 | #define BCM_REF_BOARD 1 |
|---|
| 43 | #endif |
|---|
| 44 | |
|---|
| 45 | /**************************************************************** |
|---|
| 46 | * bcmConfigureTm |
|---|
| 47 | * |
|---|
| 48 | * INPUTS: hReg7401 - 7401 register handle |
|---|
| 49 | * |
|---|
| 50 | * OUTPUTS: |
|---|
| 51 | * RETURNS: none |
|---|
| 52 | * FUNCTION: This function configures the BCM7401 pin muxing for |
|---|
| 53 | * BCM97401 reference board. |
|---|
| 54 | * On the 7401, various GPIO pins are MUXed together with |
|---|
| 55 | * other pins, e.g. I2C, SPI, etc. In order to make these pins |
|---|
| 56 | * function as I2C, SPI, etc. instead of GPIO, you have to write |
|---|
| 57 | * to the SUNDRY top control register. |
|---|
| 58 | * |
|---|
| 59 | ****************************************************************/ |
|---|
| 60 | void bcmConfigureTm (BREG_Handle hReg7401) |
|---|
| 61 | { |
|---|
| 62 | uint32_t lval; |
|---|
| 63 | |
|---|
| 64 | |
|---|
| 65 | |
|---|
| 66 | /* BCHP_SUN_TOP_CTRL_PIN_MUX_CTRL_4 |
|---|
| 67 | |
|---|
| 68 | * GPIO15 : UART_RXD_0(2) |
|---|
| 69 | * GPIO16 : UART_TXD_0(2) |
|---|
| 70 | */ |
|---|
| 71 | lval = BREG_Read32 (hReg7401, BCHP_SUN_TOP_CTRL_PIN_MUX_CTRL_4); |
|---|
| 72 | lval &= ~( |
|---|
| 73 | BCHP_MASK(SUN_TOP_CTRL_PIN_MUX_CTRL_4, gpio_15) | |
|---|
| 74 | BCHP_MASK(SUN_TOP_CTRL_PIN_MUX_CTRL_4, gpio_16) |
|---|
| 75 | ); |
|---|
| 76 | lval |= BCHP_FIELD_DATA(SUN_TOP_CTRL_PIN_MUX_CTRL_4, gpio_16, 2) | |
|---|
| 77 | BCHP_FIELD_DATA(SUN_TOP_CTRL_PIN_MUX_CTRL_4, gpio_15, 2); |
|---|
| 78 | BREG_Write32 (hReg7401, BCHP_SUN_TOP_CTRL_PIN_MUX_CTRL_4, lval); |
|---|
| 79 | |
|---|
| 80 | |
|---|
| 81 | |
|---|
| 82 | /* BCHP_SUN_TOP_CTRL_PIN_MUX_CTRL_6 |
|---|
| 83 | |
|---|
| 84 | */ |
|---|
| 85 | lval = BREG_Read32 (hReg7401, BCHP_SUN_TOP_CTRL_PIN_MUX_CTRL_6); |
|---|
| 86 | lval &= ~( |
|---|
| 87 | BCHP_MASK(SUN_TOP_CTRL_PIN_MUX_CTRL_6, gpio_31) | |
|---|
| 88 | BCHP_MASK(SUN_TOP_CTRL_PIN_MUX_CTRL_6, gpio_30) |
|---|
| 89 | ); |
|---|
| 90 | lval |= |
|---|
| 91 | BCHP_FIELD_DATA(SUN_TOP_CTRL_PIN_MUX_CTRL_6, gpio_31, 2) | |
|---|
| 92 | BCHP_FIELD_DATA(SUN_TOP_CTRL_PIN_MUX_CTRL_6, gpio_30, 2) ; |
|---|
| 93 | BREG_Write32 (hReg7401, BCHP_SUN_TOP_CTRL_PIN_MUX_CTRL_6, lval);; |
|---|
| 94 | |
|---|
| 95 | |
|---|
| 96 | |
|---|
| 97 | |
|---|
| 98 | |
|---|
| 99 | |
|---|
| 100 | } |
|---|
| 101 | |
|---|
| 102 | |
|---|