127
127
#define SJA1105ET_SIZE_L2_LOOKUP_PARAMS_DYN_CMD \
128
128
SJA1105_SIZE_DYN_CMD
129
129
130
+ #define SJA1105PQRS_SIZE_L2_LOOKUP_PARAMS_DYN_CMD \
131
+ (SJA1105_SIZE_DYN_CMD + SJA1105PQRS_SIZE_L2_LOOKUP_PARAMS_ENTRY)
132
+
130
133
#define SJA1105ET_SIZE_GENERAL_PARAMS_DYN_CMD \
131
134
SJA1105_SIZE_DYN_CMD
132
135
136
+ #define SJA1105PQRS_SIZE_GENERAL_PARAMS_DYN_CMD \
137
+ (SJA1105_SIZE_DYN_CMD + SJA1105PQRS_SIZE_GENERAL_PARAMS_ENTRY)
138
+
133
139
#define SJA1105PQRS_SIZE_AVB_PARAMS_DYN_CMD \
134
140
(SJA1105_SIZE_DYN_CMD + SJA1105PQRS_SIZE_AVB_PARAMS_ENTRY)
135
141
143
149
(SJA1105_SIZE_DYN_CMD + SJA1105PQRS_SIZE_CBS_ENTRY)
144
150
145
151
#define SJA1105_MAX_DYN_CMD_SIZE \
146
- SJA1105PQRS_SIZE_MAC_CONFIG_DYN_CMD
152
+ SJA1105PQRS_SIZE_GENERAL_PARAMS_DYN_CMD
147
153
148
154
struct sja1105_dyn_cmd {
149
155
bool search ;
@@ -500,6 +506,18 @@ sja1105et_l2_lookup_params_entry_packing(void *buf, void *entry_ptr,
500
506
return 0 ;
501
507
}
502
508
509
+ static void
510
+ sja1105pqrs_l2_lookup_params_cmd_packing (void * buf ,
511
+ struct sja1105_dyn_cmd * cmd ,
512
+ enum packing_op op )
513
+ {
514
+ u8 * p = buf + SJA1105PQRS_SIZE_L2_LOOKUP_PARAMS_ENTRY ;
515
+ const int size = SJA1105_SIZE_DYN_CMD ;
516
+
517
+ sja1105_packing (p , & cmd -> valid , 31 , 31 , size , op );
518
+ sja1105_packing (p , & cmd -> rdwrset , 30 , 30 , size , op );
519
+ }
520
+
503
521
static void
504
522
sja1105et_general_params_cmd_packing (void * buf , struct sja1105_dyn_cmd * cmd ,
505
523
enum packing_op op )
@@ -522,6 +540,18 @@ sja1105et_general_params_entry_packing(void *buf, void *entry_ptr,
522
540
return 0 ;
523
541
}
524
542
543
+ static void
544
+ sja1105pqrs_general_params_cmd_packing (void * buf , struct sja1105_dyn_cmd * cmd ,
545
+ enum packing_op op )
546
+ {
547
+ u8 * p = buf + SJA1105PQRS_SIZE_GENERAL_PARAMS_ENTRY ;
548
+ const int size = SJA1105_SIZE_DYN_CMD ;
549
+
550
+ sja1105_packing (p , & cmd -> valid , 31 , 31 , size , op );
551
+ sja1105_packing (p , & cmd -> errors , 30 , 30 , size , op );
552
+ sja1105_packing (p , & cmd -> rdwrset , 28 , 28 , size , op );
553
+ }
554
+
525
555
static void
526
556
sja1105pqrs_avb_params_cmd_packing (void * buf , struct sja1105_dyn_cmd * cmd ,
527
557
enum packing_op op )
@@ -761,12 +791,12 @@ struct sja1105_dynamic_table_ops sja1105pqrs_dyn_ops[BLK_IDX_MAX_DYN] = {
761
791
[BLK_IDX_SCHEDULE_ENTRY_POINTS_PARAMS ] = {0 },
762
792
[BLK_IDX_VL_FORWARDING_PARAMS ] = {0 },
763
793
[BLK_IDX_L2_LOOKUP_PARAMS ] = {
764
- .entry_packing = sja1105et_l2_lookup_params_entry_packing ,
765
- .cmd_packing = sja1105et_l2_lookup_params_cmd_packing ,
794
+ .entry_packing = sja1105pqrs_l2_lookup_params_entry_packing ,
795
+ .cmd_packing = sja1105pqrs_l2_lookup_params_cmd_packing ,
766
796
.max_entry_count = SJA1105_MAX_L2_LOOKUP_PARAMS_COUNT ,
767
797
.access = (OP_READ | OP_WRITE ),
768
- .packed_size = SJA1105ET_SIZE_L2_LOOKUP_PARAMS_DYN_CMD ,
769
- .addr = 0x38 ,
798
+ .packed_size = SJA1105PQRS_SIZE_L2_LOOKUP_PARAMS_DYN_CMD ,
799
+ .addr = 0x54 ,
770
800
},
771
801
[BLK_IDX_L2_FORWARDING_PARAMS ] = {0 },
772
802
[BLK_IDX_AVB_PARAMS ] = {
@@ -778,12 +808,12 @@ struct sja1105_dynamic_table_ops sja1105pqrs_dyn_ops[BLK_IDX_MAX_DYN] = {
778
808
.addr = 0x8003 ,
779
809
},
780
810
[BLK_IDX_GENERAL_PARAMS ] = {
781
- .entry_packing = sja1105et_general_params_entry_packing ,
782
- .cmd_packing = sja1105et_general_params_cmd_packing ,
811
+ .entry_packing = sja1105pqrs_general_params_entry_packing ,
812
+ .cmd_packing = sja1105pqrs_general_params_cmd_packing ,
783
813
.max_entry_count = SJA1105_MAX_GENERAL_PARAMS_COUNT ,
784
- .access = OP_WRITE ,
785
- .packed_size = SJA1105ET_SIZE_GENERAL_PARAMS_DYN_CMD ,
786
- .addr = 0x34 ,
814
+ .access = ( OP_READ | OP_WRITE ) ,
815
+ .packed_size = SJA1105PQRS_SIZE_GENERAL_PARAMS_DYN_CMD ,
816
+ .addr = 0x3B ,
787
817
},
788
818
[BLK_IDX_RETAGGING ] = {
789
819
.entry_packing = sja1105_retagging_entry_packing ,
0 commit comments