/* SPDX-License-Identifier: GPL-2.0-or-later *//*************************************************************************** * Copyright (C) 2017 by Texas Instruments, Inc. * ***************************************************************************//* ... */#ifndefOPENOCD_FLASH_NOR_CC26XX_H#defineOPENOCD_FLASH_NOR_CC26XX_H/* Addresses of FCFG1 registers to access ICEPick Device ID and User ID */#defineFCFG1_ICEPICK_ID0x50001318#defineFCFG1_USER_ID0x50001294/* ICEPick device ID mask and values */#defineICEPICK_ID_MASK0x0fffffff#defineICEPICK_REV_MASK0xf0000000#defineCC26X0_ICEPICK_ID0x0b99a02f#defineCC26X1_ICEPICK_ID0x0b9bd02f#defineCC13X0_ICEPICK_ID0x0b9be02f#defineCC13X2_CC26X2_ICEPICK_ID0x0bb4102f/* User ID mask for Agama CC13x2 vs CC26x2 */#defineUSER_ID_CC13_MASK0x00800000/* Common CC26xx/CC13xx flash and memory parameters */#defineCC26XX_FLASH_BASE_ADDR0x00000000#defineCC26XX_FLASH_SIZE_INFO0x4003002c#defineCC26XX_SRAM_SIZE_INFO0x40082250#defineCC26XX_ALGO_BASE_ADDRESS0x20000000/* Chameleon CC26x0/CC13x0 specific parameters */#defineCC26X0_MAX_SECTORS32#defineCC26X0_SECTOR_LENGTH0x1000#defineCC26X0_ALGO_BUFFER_00x20001c00#defineCC26X0_ALGO_BUFFER_10x20002c00#defineCC26X0_ALGO_PARAMS_00x20001bd8#defineCC26X0_ALGO_PARAMS_10x20001bec#defineCC26X0_WORKING_SIZE(CC26X0_ALGO_BUFFER_1+CC26X0_SECTOR_LENGTH-\CC26XX_ALGO_BASE_ADDRESS).../* Agama CC26x2/CC13x2 specific parameters */#defineCC26X2_MAX_SECTORS128#defineCC26X2_SECTOR_LENGTH0x2000#defineCC26X2_ALGO_BUFFER_00x20002000#defineCC26X2_ALGO_BUFFER_10x20004000#defineCC26X2_ALGO_PARAMS_00x20001fd8#defineCC26X2_ALGO_PARAMS_10x20001fec#defineCC26X2_WORKING_SIZE(CC26X2_ALGO_BUFFER_1+CC26X2_SECTOR_LENGTH-\CC26XX_ALGO_BASE_ADDRESS).../* CC26xx flash helper algorithm buffer flags */#defineCC26XX_BUFFER_EMPTY0x00000000#defineCC26XX_BUFFER_FULL0xffffffff/* CC26XX flash helper algorithm commands */#defineCC26XX_CMD_NO_ACTION0#defineCC26XX_CMD_ERASE_ALL1#defineCC26XX_CMD_PROGRAM2#defineCC26XX_CMD_ERASE_AND_PROGRAM3#defineCC26XX_CMD_ERASE_AND_PROGRAM_WITH_RETAIN4#defineCC26XX_CMD_ERASE_SECTORS5/* CC26xx and CC13xx device types */#defineCC26XX_NO_TYPE0/* Device type not determined yet */#defineCC26X0_TYPE1/* CC26x0 Chameleon device */#defineCC26X1_TYPE2/* CC26x1 Chameleon device */#defineCC26X2_TYPE3/* CC26x2 Agama device */#defineCC13X0_TYPE4/* CC13x0 Chameleon device */#defineCC13X2_TYPE5/* CC13x2 Agama device *//* Flash helper algorithm parameter block struct */#defineCC26XX_STATUS_OFFSET0x0c43 definesstructcc26xx_algo_params{uint8_taddress[4];uint8_tlength[4];uint8_tcommand[4];uint8_tstatus[4];...};/* ... */#endif/* OPENOCD_FLASH_NOR_CC26XX_H */