[update][board] config i2c clock

This commit is contained in:
jzlv 2022-10-24 19:05:55 +08:00
parent 44a68b3adc
commit 05b93d802a
4 changed files with 23 additions and 17 deletions

View file

@ -56,10 +56,10 @@ static void peripheral_clock_init(void)
GLB_Set_UART_CLK(ENABLE, HBN_UART_CLK_XCLK, 0); GLB_Set_UART_CLK(ENABLE, HBN_UART_CLK_XCLK, 0);
GLB_Set_SPI_CLK(ENABLE, GLB_SPI_CLK_MCU_MUXPLL_160M, 0); GLB_Set_SPI_CLK(ENABLE, GLB_SPI_CLK_MCU_MUXPLL_160M, 0);
GLB_Set_I2C_CLK(ENABLE, GLB_I2C_CLK_XCLK, 0);
GLB_Set_ADC_CLK(1, GLB_ADC_CLK_XCLK, 0); GLB_Set_ADC_CLK(ENABLE, GLB_ADC_CLK_XCLK, 0);
GLB_Set_DIG_CLK_Sel(GLB_DIG_CLK_XCLK); GLB_Set_DIG_CLK_Sel(GLB_DIG_CLK_XCLK);
GLB_Set_DIG_512K_CLK(1, ENABLE, 0x4E); GLB_Set_DIG_512K_CLK(ENABLE, ENABLE, 0x4E);
GLB_Set_PWM1_IO_Sel(GLB_PWM1_IO_DIFF_END); GLB_Set_PWM1_IO_Sel(GLB_PWM1_IO_DIFF_END);
#ifdef CONFIG_BSP_SDH_SDCARD #ifdef CONFIG_BSP_SDH_SDCARD
@ -220,7 +220,9 @@ void board_i2c0_gpio_init()
struct bflb_device_s *gpio; struct bflb_device_s *gpio;
gpio = bflb_device_get_by_name("gpio"); gpio = bflb_device_get_by_name("gpio");
/* I2C0_SDA */
bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1); bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1);
/* I2C0_SCL */
bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1); bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1);
} }

View file

@ -36,8 +36,11 @@ SECTIONS
. = ALIGN(4); . = ALIGN(4);
__text_code_start__ = .; __text_code_start__ = .;
KEEP (*(.text.metal.init.enter))
KEEP (*(SORT_NONE(.init))) KEEP (*(SORT_NONE(.init)))
*(.text)
*(.text.*)
/* section information for shell */ /* section information for shell */
. = ALIGN(4); . = ALIGN(4);
__fsymtab_start = .; __fsymtab_start = .;
@ -56,9 +59,6 @@ SECTIONS
. = ALIGN(4); . = ALIGN(4);
_usb_desc_end = .; _usb_desc_end = .;
*(.text)
*(.text.*)
/*put .rodata**/ /*put .rodata**/
*(EXCLUDE_FILE( *bl702_glb*.o* \ *(EXCLUDE_FILE( *bl702_glb*.o* \
*bl702_pds*.o* \ *bl702_pds*.o* \

View file

@ -6,7 +6,6 @@
#include "mmheap.h" #include "mmheap.h"
#include "board.h" #include "board.h"
#include "bl702_glb.h" #include "bl702_glb.h"
#include "bl702_pds.h"
extern uint32_t __HeapBase; extern uint32_t __HeapBase;
extern uint32_t __HeapLimit; extern uint32_t __HeapLimit;
@ -41,14 +40,14 @@ static void peripheral_clock_init(void)
PERIPHERAL_CLOCK_I2S_ENABLE(); PERIPHERAL_CLOCK_I2S_ENABLE();
PERIPHERAL_CLOCK_USB_ENABLE(); PERIPHERAL_CLOCK_USB_ENABLE();
GLB_Set_UART_CLK(1, HBN_UART_CLK_96M, 0); GLB_Set_UART_CLK(ENABLE, HBN_UART_CLK_96M, 0);
GLB_Set_SPI_CLK(1, 0); GLB_Set_SPI_CLK(ENABLE, 0);
GLB_Set_I2C_CLK(1, 0); GLB_Set_I2C_CLK(ENABLE, 0);
GLB_Set_ADC_CLK(1, GLB_ADC_CLK_XCLK, 0); GLB_Set_ADC_CLK(ENABLE, GLB_ADC_CLK_XCLK, 0);
GLB_Set_DAC_CLK(1, GLB_DAC_CLK_XCLK, 0x3E); GLB_Set_DAC_CLK(ENABLE, GLB_DAC_CLK_XCLK, 0x3E);
GLB_Set_USB_CLK(1); GLB_Set_USB_CLK(ENABLE);
} }
void bl_show_log(void) void bl_show_log(void)
@ -124,7 +123,9 @@ void board_i2c0_gpio_init()
struct bflb_device_s *gpio; struct bflb_device_s *gpio;
gpio = bflb_device_get_by_name("gpio"); gpio = bflb_device_get_by_name("gpio");
/* I2C0_SDA */
bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1); bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1);
/* I2C0_SCL */
bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1); bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1);
} }

View file

@ -63,13 +63,14 @@ static void peripheral_clock_init(void)
PERIPHERAL_CLOCK_IR_ENABLE(); PERIPHERAL_CLOCK_IR_ENABLE();
PERIPHERAL_CLOCK_I2S_ENABLE(); PERIPHERAL_CLOCK_I2S_ENABLE();
GLB_Set_ADC_CLK(1, GLB_ADC_CLK_XCLK, 4); GLB_Set_ADC_CLK(ENABLE, GLB_ADC_CLK_XCLK, 4);
GLB_Set_UART_CLK(ENABLE, HBN_UART_CLK_XCLK, 0); GLB_Set_UART_CLK(ENABLE, HBN_UART_CLK_XCLK, 0);
GLB_Set_SPI_CLK(ENABLE, GLB_SPI_CLK_MCU_MUXPLL_160M, 0); GLB_Set_SPI_CLK(ENABLE, GLB_SPI_CLK_MCU_MUXPLL_160M, 0);
GLB_Set_I2C_CLK(ENABLE, GLB_I2C_CLK_XCLK, 0);
GLB_Set_IR_CLK(ENABLE, GLB_IR_CLK_SRC_XCLK, 19); GLB_Set_IR_CLK(ENABLE, GLB_IR_CLK_SRC_XCLK, 19);
GLB_Set_ADC_CLK(1, GLB_ADC_CLK_XCLK, 0); GLB_Set_ADC_CLK(ENABLE, GLB_ADC_CLK_XCLK, 0);
GLB_Set_DIG_CLK_Sel(GLB_DIG_CLK_XCLK); GLB_Set_DIG_CLK_Sel(GLB_DIG_CLK_XCLK);
GLB_Set_DIG_512K_CLK(1, ENABLE, 0x4E); GLB_Set_DIG_512K_CLK(ENABLE, ENABLE, 0x4E);
GLB_Set_PWM1_IO_Sel(GLB_PWM1_IO_DIFF_END); GLB_Set_PWM1_IO_Sel(GLB_PWM1_IO_DIFF_END);
#ifdef CONFIG_BSP_SDH_SDCARD #ifdef CONFIG_BSP_SDH_SDCARD
@ -233,7 +234,9 @@ void board_i2c0_gpio_init(void)
struct bflb_device_s *gpio; struct bflb_device_s *gpio;
gpio = bflb_device_get_by_name("gpio"); gpio = bflb_device_get_by_name("gpio");
/* I2C0_SDA */
bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1); bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1);
/* I2C0_SCL */
bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1); bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_I2C0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_1);
} }