openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

cache_mem_test.h (2456B)


      1 /*
      2  * 
      3  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      4  * 
      5  * Copyright 2007-2019 Broadcom Inc. All rights reserved.
      6  */
      7 
      8 #ifndef _CACHE_MEM_TEST_H
      9 #define _CACHE_MEM_TEST_H
     10 
     11 #if defined(BCM_ESW_SUPPORT) || defined(BCM_PETRA_SUPPORT) || defined(BCM_DFE_SUPPORT) || defined(BCM_DNX_SUPPORT) || defined(BCM_DNXF_SUPPORT)
     12 
     13 #include <appl/diag/shell.h>
     14 
     15 int		do_cache_mem_test(int , args_t *a, void *);
     16 int		do_cache_mem_test_init(int, args_t *, void **);
     17 int		do_cache_mem_test_done(int, void *);
     18 
     19 
     20 
     21 typedef enum cache_mem_test_write_value_pattern_e {
     22 	cache_mem_test_write_value_pattern_all_ones = 0,
     23 	cache_mem_test_write_value_pattern_all_zeroes,
     24 	cache_mem_test_write_value_pattern_incremental,
     25 	cache_mem_test_write_value_pattern_smart
     26 }cache_mem_test_write_value_pattern_t;
     27 
     28 typedef enum cache_mem_test_type_e {
     29 	cache_mem_test_type_single = 0,
     30 	cache_mem_test_type_all_mems
     31 }cache_mem_test_type_t;
     32 
     33 typedef enum cache_mem_test_write_type_e {
     34 	cache_mem_test_write_type_dma = 0,
     35 	cache_mem_test_write_type_schan
     36 }cache_mem_test_write_type_t;
     37 
     38 typedef enum cache_mem_test_partial_e {
     39 	cache_mem_test_full = 0,
     40 	cache_mem_test_write_only,
     41 	cache_mem_test_read_only,
     42 	cache_mem_test_cache_only
     43 }cache_mem_test_partial_t;
     44 
     45 typedef struct tr_do_cache_mem_test_e
     46 {
     47 	cache_mem_test_type_t				test_type;
     48 	cache_mem_test_write_type_t			write_type;
     49 	cache_mem_test_write_value_pattern_t write_value_pattern;
     50 	cache_mem_test_partial_t			test_part;
     51     int                                 stat_mem_not_tested_cnt;
     52     int                                 stat_mem_succeed_cnt;
     53     int                                 stat_mem_fail_cnt;
     54     int                                 stat_mem_total_cnt;
     55     soc_mem_t                           mem_id;
     56 	cmd_result_t						result;
     57 
     58     uint32                              mem_test_result_flag[NUM_SOC_MEM];
     59 } tr_do_cache_mem_test_t;
     60 
     61 #define CACHE_MEM_TEST_ALIAS_SKIP_FLAG          (1 << 0)
     62 #define CACHE_MEM_TEST_NON_CACHEABLE_SKIP_FLAG  (1 << 1)
     63 #define CACHE_MEM_TEST_NOT_SHADOWED_SKIP_FLAG   (1 << 2)
     64 #define CACHE_MEM_TEST_FORCE_SKIP_FLAG          (1 << 3)
     65 #define CACHE_MEM_TEST_READ_FAILUE_FLAG         (1 << 4)
     66 #define CACHE_MEM_TEST_WRITE_FAILUE_FLAG        (1 << 5)
     67 #define CACHE_MEM_TEST_COMPARE_FAILUE_FLAG      (1 << 6)
     68 
     69 #endif /*#(BCM_ESW_SUPPORT) || (BCM_PETRA_SUPPORT) || (BCM_DFE_SUPPORT) */
     70 #endif /*_CACHE_MEM_TEST_H*/
     71