fw-api: Add QCA6390 Hardware header files
Header update as per wcss_r43 version. Change-Id: Ia254ce19ff0740cbaf46bc2c19329c43a97344cb CRs-Fixed: 2262786
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
c02847b52f
commit
d9b2e528a7
468
hw/qca6390/v1/reo_flush_queue_status.h
Normal file
468
hw/qca6390/v1/reo_flush_queue_status.h
Normal file
@@ -0,0 +1,468 @@
|
||||
/*
|
||||
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _REO_FLUSH_QUEUE_STATUS_H_
|
||||
#define _REO_FLUSH_QUEUE_STATUS_H_
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#endif
|
||||
|
||||
#include "uniform_reo_status_header.h"
|
||||
|
||||
// ################ START SUMMARY #################
|
||||
//
|
||||
// Dword Fields
|
||||
// 0-1 struct uniform_reo_status_header status_header;
|
||||
// 2 error_detected[0], reserved_2a[31:1]
|
||||
// 3 reserved_3a[31:0]
|
||||
// 4 reserved_4a[31:0]
|
||||
// 5 reserved_5a[31:0]
|
||||
// 6 reserved_6a[31:0]
|
||||
// 7 reserved_7a[31:0]
|
||||
// 8 reserved_8a[31:0]
|
||||
// 9 reserved_9a[31:0]
|
||||
// 10 reserved_10a[31:0]
|
||||
// 11 reserved_11a[31:0]
|
||||
// 12 reserved_12a[31:0]
|
||||
// 13 reserved_13a[31:0]
|
||||
// 14 reserved_14a[31:0]
|
||||
// 15 reserved_15a[31:0]
|
||||
// 16 reserved_16a[31:0]
|
||||
// 17 reserved_17a[31:0]
|
||||
// 18 reserved_18a[31:0]
|
||||
// 19 reserved_19a[31:0]
|
||||
// 20 reserved_20a[31:0]
|
||||
// 21 reserved_21a[31:0]
|
||||
// 22 reserved_22a[31:0]
|
||||
// 23 reserved_23a[31:0]
|
||||
// 24 reserved_24a[27:0], looping_count[31:28]
|
||||
//
|
||||
// ################ END SUMMARY #################
|
||||
|
||||
#define NUM_OF_DWORDS_REO_FLUSH_QUEUE_STATUS 25
|
||||
|
||||
struct reo_flush_queue_status {
|
||||
struct uniform_reo_status_header status_header;
|
||||
uint32_t error_detected : 1, //[0]
|
||||
reserved_2a : 31; //[31:1]
|
||||
uint32_t reserved_3a : 32; //[31:0]
|
||||
uint32_t reserved_4a : 32; //[31:0]
|
||||
uint32_t reserved_5a : 32; //[31:0]
|
||||
uint32_t reserved_6a : 32; //[31:0]
|
||||
uint32_t reserved_7a : 32; //[31:0]
|
||||
uint32_t reserved_8a : 32; //[31:0]
|
||||
uint32_t reserved_9a : 32; //[31:0]
|
||||
uint32_t reserved_10a : 32; //[31:0]
|
||||
uint32_t reserved_11a : 32; //[31:0]
|
||||
uint32_t reserved_12a : 32; //[31:0]
|
||||
uint32_t reserved_13a : 32; //[31:0]
|
||||
uint32_t reserved_14a : 32; //[31:0]
|
||||
uint32_t reserved_15a : 32; //[31:0]
|
||||
uint32_t reserved_16a : 32; //[31:0]
|
||||
uint32_t reserved_17a : 32; //[31:0]
|
||||
uint32_t reserved_18a : 32; //[31:0]
|
||||
uint32_t reserved_19a : 32; //[31:0]
|
||||
uint32_t reserved_20a : 32; //[31:0]
|
||||
uint32_t reserved_21a : 32; //[31:0]
|
||||
uint32_t reserved_22a : 32; //[31:0]
|
||||
uint32_t reserved_23a : 32; //[31:0]
|
||||
uint32_t reserved_24a : 28, //[27:0]
|
||||
looping_count : 4; //[31:28]
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
struct uniform_reo_status_header status_header
|
||||
|
||||
Consumer: SW
|
||||
|
||||
Producer: REO
|
||||
|
||||
|
||||
|
||||
Details that can link this status with the original
|
||||
command. It also contains info on how long REO took to
|
||||
execute this command.
|
||||
|
||||
error_detected
|
||||
|
||||
Status of the blocking resource
|
||||
|
||||
0: No error has been detected while executing this
|
||||
command
|
||||
|
||||
1: Error detected: The resource to be used for blocking
|
||||
was already in use.
|
||||
|
||||
reserved_2a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_3a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_4a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_5a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_6a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_7a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_8a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_9a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_10a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_11a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_12a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_13a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_14a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_15a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_16a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_17a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_18a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_19a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_20a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_21a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_22a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_23a
|
||||
|
||||
<legal 0>
|
||||
|
||||
reserved_24a
|
||||
|
||||
<legal 0>
|
||||
|
||||
looping_count
|
||||
|
||||
A count value that indicates the number of times the
|
||||
producer of entries into this Ring has looped around the
|
||||
ring.
|
||||
|
||||
At initialization time, this value is set to 0. On the
|
||||
first loop, this value is set to 1. After the max value is
|
||||
reached allowed by the number of bits for this field, the
|
||||
count value continues with 0 again.
|
||||
|
||||
|
||||
|
||||
In case SW is the consumer of the ring entries, it can
|
||||
use this field to figure out up to where the producer of
|
||||
entries has created new entries. This eliminates the need to
|
||||
check where the head pointer' of the ring is located once
|
||||
the SW starts processing an interrupt indicating that new
|
||||
entries have been put into this ring...
|
||||
|
||||
|
||||
|
||||
Also note that SW if it wants only needs to look at the
|
||||
LSB bit of this count value.
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
|
||||
#define REO_FLUSH_QUEUE_STATUS_0_UNIFORM_REO_STATUS_HEADER_STATUS_HEADER_OFFSET 0x00000000
|
||||
#define REO_FLUSH_QUEUE_STATUS_0_UNIFORM_REO_STATUS_HEADER_STATUS_HEADER_LSB 28
|
||||
#define REO_FLUSH_QUEUE_STATUS_0_UNIFORM_REO_STATUS_HEADER_STATUS_HEADER_MASK 0xffffffff
|
||||
#define REO_FLUSH_QUEUE_STATUS_1_UNIFORM_REO_STATUS_HEADER_STATUS_HEADER_OFFSET 0x00000004
|
||||
#define REO_FLUSH_QUEUE_STATUS_1_UNIFORM_REO_STATUS_HEADER_STATUS_HEADER_LSB 28
|
||||
#define REO_FLUSH_QUEUE_STATUS_1_UNIFORM_REO_STATUS_HEADER_STATUS_HEADER_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_2_ERROR_DETECTED
|
||||
|
||||
Status of the blocking resource
|
||||
|
||||
0: No error has been detected while executing this
|
||||
command
|
||||
|
||||
1: Error detected: The resource to be used for blocking
|
||||
was already in use.
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_2_ERROR_DETECTED_OFFSET 0x00000008
|
||||
#define REO_FLUSH_QUEUE_STATUS_2_ERROR_DETECTED_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_2_ERROR_DETECTED_MASK 0x00000001
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_2_RESERVED_2A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_2_RESERVED_2A_OFFSET 0x00000008
|
||||
#define REO_FLUSH_QUEUE_STATUS_2_RESERVED_2A_LSB 1
|
||||
#define REO_FLUSH_QUEUE_STATUS_2_RESERVED_2A_MASK 0xfffffffe
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_3_RESERVED_3A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_3_RESERVED_3A_OFFSET 0x0000000c
|
||||
#define REO_FLUSH_QUEUE_STATUS_3_RESERVED_3A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_3_RESERVED_3A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_4_RESERVED_4A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_4_RESERVED_4A_OFFSET 0x00000010
|
||||
#define REO_FLUSH_QUEUE_STATUS_4_RESERVED_4A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_4_RESERVED_4A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_5_RESERVED_5A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_5_RESERVED_5A_OFFSET 0x00000014
|
||||
#define REO_FLUSH_QUEUE_STATUS_5_RESERVED_5A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_5_RESERVED_5A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_6_RESERVED_6A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_6_RESERVED_6A_OFFSET 0x00000018
|
||||
#define REO_FLUSH_QUEUE_STATUS_6_RESERVED_6A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_6_RESERVED_6A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_7_RESERVED_7A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_7_RESERVED_7A_OFFSET 0x0000001c
|
||||
#define REO_FLUSH_QUEUE_STATUS_7_RESERVED_7A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_7_RESERVED_7A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_8_RESERVED_8A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_8_RESERVED_8A_OFFSET 0x00000020
|
||||
#define REO_FLUSH_QUEUE_STATUS_8_RESERVED_8A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_8_RESERVED_8A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_9_RESERVED_9A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_9_RESERVED_9A_OFFSET 0x00000024
|
||||
#define REO_FLUSH_QUEUE_STATUS_9_RESERVED_9A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_9_RESERVED_9A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_10_RESERVED_10A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_10_RESERVED_10A_OFFSET 0x00000028
|
||||
#define REO_FLUSH_QUEUE_STATUS_10_RESERVED_10A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_10_RESERVED_10A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_11_RESERVED_11A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_11_RESERVED_11A_OFFSET 0x0000002c
|
||||
#define REO_FLUSH_QUEUE_STATUS_11_RESERVED_11A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_11_RESERVED_11A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_12_RESERVED_12A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_12_RESERVED_12A_OFFSET 0x00000030
|
||||
#define REO_FLUSH_QUEUE_STATUS_12_RESERVED_12A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_12_RESERVED_12A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_13_RESERVED_13A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_13_RESERVED_13A_OFFSET 0x00000034
|
||||
#define REO_FLUSH_QUEUE_STATUS_13_RESERVED_13A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_13_RESERVED_13A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_14_RESERVED_14A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_14_RESERVED_14A_OFFSET 0x00000038
|
||||
#define REO_FLUSH_QUEUE_STATUS_14_RESERVED_14A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_14_RESERVED_14A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_15_RESERVED_15A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_15_RESERVED_15A_OFFSET 0x0000003c
|
||||
#define REO_FLUSH_QUEUE_STATUS_15_RESERVED_15A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_15_RESERVED_15A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_16_RESERVED_16A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_16_RESERVED_16A_OFFSET 0x00000040
|
||||
#define REO_FLUSH_QUEUE_STATUS_16_RESERVED_16A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_16_RESERVED_16A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_17_RESERVED_17A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_17_RESERVED_17A_OFFSET 0x00000044
|
||||
#define REO_FLUSH_QUEUE_STATUS_17_RESERVED_17A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_17_RESERVED_17A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_18_RESERVED_18A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_18_RESERVED_18A_OFFSET 0x00000048
|
||||
#define REO_FLUSH_QUEUE_STATUS_18_RESERVED_18A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_18_RESERVED_18A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_19_RESERVED_19A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_19_RESERVED_19A_OFFSET 0x0000004c
|
||||
#define REO_FLUSH_QUEUE_STATUS_19_RESERVED_19A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_19_RESERVED_19A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_20_RESERVED_20A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_20_RESERVED_20A_OFFSET 0x00000050
|
||||
#define REO_FLUSH_QUEUE_STATUS_20_RESERVED_20A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_20_RESERVED_20A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_21_RESERVED_21A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_21_RESERVED_21A_OFFSET 0x00000054
|
||||
#define REO_FLUSH_QUEUE_STATUS_21_RESERVED_21A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_21_RESERVED_21A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_22_RESERVED_22A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_22_RESERVED_22A_OFFSET 0x00000058
|
||||
#define REO_FLUSH_QUEUE_STATUS_22_RESERVED_22A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_22_RESERVED_22A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_23_RESERVED_23A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_23_RESERVED_23A_OFFSET 0x0000005c
|
||||
#define REO_FLUSH_QUEUE_STATUS_23_RESERVED_23A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_23_RESERVED_23A_MASK 0xffffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_24_RESERVED_24A
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_24_RESERVED_24A_OFFSET 0x00000060
|
||||
#define REO_FLUSH_QUEUE_STATUS_24_RESERVED_24A_LSB 0
|
||||
#define REO_FLUSH_QUEUE_STATUS_24_RESERVED_24A_MASK 0x0fffffff
|
||||
|
||||
/* Description REO_FLUSH_QUEUE_STATUS_24_LOOPING_COUNT
|
||||
|
||||
A count value that indicates the number of times the
|
||||
producer of entries into this Ring has looped around the
|
||||
ring.
|
||||
|
||||
At initialization time, this value is set to 0. On the
|
||||
first loop, this value is set to 1. After the max value is
|
||||
reached allowed by the number of bits for this field, the
|
||||
count value continues with 0 again.
|
||||
|
||||
|
||||
|
||||
In case SW is the consumer of the ring entries, it can
|
||||
use this field to figure out up to where the producer of
|
||||
entries has created new entries. This eliminates the need to
|
||||
check where the head pointer' of the ring is located once
|
||||
the SW starts processing an interrupt indicating that new
|
||||
entries have been put into this ring...
|
||||
|
||||
|
||||
|
||||
Also note that SW if it wants only needs to look at the
|
||||
LSB bit of this count value.
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define REO_FLUSH_QUEUE_STATUS_24_LOOPING_COUNT_OFFSET 0x00000060
|
||||
#define REO_FLUSH_QUEUE_STATUS_24_LOOPING_COUNT_LSB 28
|
||||
#define REO_FLUSH_QUEUE_STATUS_24_LOOPING_COUNT_MASK 0xf0000000
|
||||
|
||||
|
||||
#endif // _REO_FLUSH_QUEUE_STATUS_H_
|
Reference in New Issue
Block a user