BOOT ROM

[English]

BOOTROM API Brief

Application

Brief

uart_dma_open()

Open UART DMA

uart_dma_close()

Close UART DMA

dlp_dma_open()

Open charging port communication (DLP) DMA

dlp_dma_close()

Close charging port communication (DLP) DMA

BOOTROM API Reference

Header File

Functions

int32_t uart_dma_open(uint32_t dev_index)

Open UART DMA.

Set up the UART device indicated by dev_index and configure the RX DMA to get ready for incoming UART data transmissions.

参数:

dev_index[in] UART device index, from 0(the first device)

返回值:
  • 0 – success [BK_RET_OK]

  • other – fail

返回:

result

int32_t uart_dma_close(uint32_t dev_index)

Close UART DMA.

Deactivate the UART device specified by dev_index and release the RX DMA to halt the reception of incoming UART data transmissions.

参数:

dev_index[in] UART device index, from 0(the first device)

返回值:
  • 0 – success [BK_RET_OK]

  • other – fail

返回:

result

int32_t dlp_dma_open(uint32_t dev_index)

Open charging port communication (DLP) DMA.

Set up the DLP device indicated by dev_index and configure the RX DMA to get ready for incoming DLP data transmissions.

参数:

dev_index[in] DLP device index, from 0(the first device)

返回值:
  • 0 – success [BK_RET_OK]

  • other – fail

返回:

result

int32_t dlp_dma_close(uint32_t dev_index)

Close charging port communication (DLP) DMA.

Deactivate the DLP device specified by dev_index and release the RX DMA to halt the reception of incoming DLP data transmissions.

参数:

dev_index[in] DLP device index, from 0(the first device)

返回值:
  • 0 – success [BK_RET_OK]

  • other – fail BOOTROM_H EOF

返回:

result

Structures

struct _hci_cmd_t

HCI command struct definition.

Public Members

uint8_t type

command packet type, always equal 0x01

uint16_t opcode

vendor opcode, always equal 0xfce0

uint8_t len

parameter length, include cmd & param

uint8_t cmd

command

uint8_t param[0]

parameters

struct _hci_cmd_flash_t

HCI flash command struct definition.

Public Members

uint8_t type

command packet type, always equal 0x01

uint16_t opcode

vendor opcode, always equal 0xfce0

uint8_t len

parameter length, always equal 0xff

uint8_t cmd

flash operation, always equal 0xf4

uint16_t flen

flash operation parameter length, include fcmd & param

uint8_t fcmd

flash operation command

uint8_t param[0]

parameters

struct _hci_evt_t

HCI event struct definition.

Public Members

uint8_t type

event packet type, always equal 0x04

uint8_t evt

command complete event code, always equal 0x0e

uint8_t len

parameter length

uint8_t rx_type

rx command packet type, always equal 0x01

uint16_t opcode

rx vendor opcode, always equal 0xfce0

uint8_t cmd

command

uint8_t param[0]

parameters

struct _hci_evt_flash_t

HCI flash event struct definition.

Public Members

uint8_t type

event packet type, always equal 0x04

uint8_t evt

command complete event code, always equal 0x0e

uint8_t len

parameter length, always equal 0xff

uint8_t rx_type

rx command packet type, always equal 0x01

uint16_t opcode

rx vendor opcode, always equal 0xfce0

uint8_t cmd

flash operation, always equal 0xf4

uint16_t flen

flash operation parameter length, include fcmd & param

uint8_t fcmd

flash operation command

uint8_t param[0]

parameters

Macros

BR_LOG_INIT()
BR_LOG_DEINIT()
BR_LOG(format, ...)
BR_DUMP(format, ...)
BR_ASSERT(exp)
BR_LOG_DISPATCH()
SPI_FLASH_CMD_read_status_reg

Definition of SPI Flash commands.

SPI_FLASH_CMD_read_status1_reg
SPI_FLASH_CMD_write_status_reg
SPI_FLASH_CMD_read_id
SPI_FLASH_CMD_write_enable
SPI_FLASH_CMD_write_disable
SPI_FLASH_CMD_read_data
SPI_FLASH_CMD_page_program
SPI_FLASH_CMD_sector_erase
SPI_FLASH_CMD_chip_erase
SPI_FLASH_CMD_blk_erase_32k
SPI_FLASH_CMD_blk_erase_64k
SPI_FLASH_STATUS_WIP_BIT

Definition of SPI Flash status.

SPI_FLASH_STATUS_WEL_BIT
SPI_FLASH_STATUS_BUSY_MASK
SPI_FLASH_PAGE_SIZE

Definition of SPI Flash page size.

SPI_FLASH_PAGE_MASK
SPI_TX_LEN_PREFIX_FOR_RX
SPI_FLASH_SECTOR_SIZE

Definition of SPI Flash sector size.

0x1000 4k

SPI_FLASH_SECTOR_MASK
MAX_PURE_DATA_SIZE
MAX_DATA_BUF_SIZE
VALID_VENDOR_OPCODE

Definition of vendor opcode.

Type Definitions

typedef struct _hci_cmd_t hci_cmd_t

HCI command struct definition.

typedef struct _hci_cmd_flash_t hci_cmd_flash_t

HCI flash command struct definition.

typedef struct _hci_evt_t hci_evt_t

HCI event struct definition.

typedef struct _hci_evt_flash_t hci_evt_flash_t

HCI flash event struct definition.

typedef enum _bkcmd_e bkcmd_e

vendor opcode command definition.

typedef enum _bkcmd_flash_e bkcmd_flash_e

Beken flash operation command definition.

typedef enum _evt_state_e evt_state_e

vendor event state definition.

Enumerations

enum _bkcmd_e

vendor opcode command definition.

Values:

return 0x04 0x0e 0x04 0x01 0xe0 0xfc 0x00

enumerator REGISTER_WRITE_CMD

write certain reg

enumerator REGISTER_READ_CMD

read certain reg value

enumerator CMD_ERROR_EVENT
enumerator SYS_REBOOT_CMD

download form bootrom ok, drop ota

enumerator CHANGE_UART_SAMPRATE_CMD

change UART samplerate

enumerator FLASH_IMAGE_CEC_CHECK

flash image CEC check

enumerator SYS_RESET_CMD

reboot by watch dog Bluetooth Tx/Rx Test

enumerator TX_PN9_CMD
enumerator RX_PN9_CMD
enumerator CEVA_BR_SEND_CMD
enumerator CEVA_BR_RECV_CMD
enumerator BLE_ADVERTISER_CMD
enumerator CEVA_FHS_SEND_CMD
enumerator FALSH_STAY_ROM_CMD

Beken Digital Test

enumerator TEST_CMD_CHIP_ID
enumerator TEST_CMD_RF_TXRX
enumerator TEST_CMD_DEEPSLEEP
enumerator TEST_CMD_SUBDEEPSLEEP
enumerator TEST_CMD_DIGITAL_OP
enumerator TEST_CMD_DMIPS
enumerator TEST_CMD_BR_TXRX
enumerator TEST_CMD_LE_TXRX
enumerator TEST_CMD_BK24_TXRX
enumerator TEST_CMD_LPO_BT_LINK
enumerator TEST_CMD_ADC
enumerator TEST_CMD_FLASH_OP
enumerator TEST_CMD_SPI
enumerator TEST_CMD_I2C
enumerator TEST_CMD_WDT
enumerator TEST_CMD_3DS
enumerator LOOP_MODE_CMD
enumerator SYS_ERROR_RSP
enumerator SYS_UNDEFINE_INT
enumerator FLASH_OPERATE_CMD

flash operation

enum _bkcmd_flash_e

Beken flash operation command definition.

Values:

enumerator FLASH_ADDR_WRITE_CMD
enumerator FLASH_4K_WRITE_CMD
enumerator FLASH_ADDR_READ_CMD
enumerator FLASH_4K_READ_CMD
enumerator FLASH_CHIP_ERRASE_CMD
enumerator FLASH_4K_ERRASE_CMD
enumerator FLASH_SR_READ_CMD
enumerator FLASH_SR_WRITE_CMD
enumerator FLASH_SPI_OP_CMD
enumerator FLASH_SIZE_ERRASE_CMD
enumerator FLASH_JUMP_MEMORY_ADDR

for ram run

enumerator FLASH_WRITE_MEMORY_DATA

for ram run

enum _evt_state_e

vendor event state definition.

Values:

enumerator STATUS_OK
enumerator FLASH_STATUS_BUSY
enumerator SPI_OP_T_OUT
enumerator FLASH_OP_T_OUT
enumerator PACK_LEN_ERROR
enumerator PACK_PAYLOAD_LACK
enumerator PARAM_ERROR
enumerator UNKNOW_CMD