@@ -68,8 +68,8 @@ func TestCompareConfig(t *testing.T) {
68
68
for i := range asics {
69
69
var (
70
70
ihr = (nHR - 1 - i ) * nBytesCfgHR
71
- buf1 = devDB .cfg . hr . data [ihr : ihr + nBytesCfgHR ]
72
- buf2 = devCSV .cfg . hr . data [ihr : ihr + nBytesCfgHR ]
71
+ buf1 = devDB .brd . sli [ihr : ihr + nBytesCfgHR ]
72
+ buf2 = devCSV .brd . sli [ihr : ihr + nBytesCfgHR ]
73
73
)
74
74
if ! bytes .Equal (buf1 , buf2 ) {
75
75
t .Errorf ("asic-%d: hr-data NOT OK" , i )
@@ -83,9 +83,9 @@ func TestCompareConfig(t *testing.T) {
83
83
func testCfgWithDB (dev * Device , asics []conddb.ASIC , rshaper uint32 , rfms []int ) error {
84
84
WithRShaper (rshaper )(& dev .cfg )
85
85
dev .cfg .hr .cshaper = 3
86
- dev .cfg .hr .data = dev .cfg .hr .buf [4 :]
87
86
dev .cfg .hr .db = newDbConfig ()
88
87
dev .rfms = rfms
88
+ dev .brd = newBoard (dev .msg )
89
89
90
90
{
91
91
rfmID := asics [0 ].DIFID
@@ -95,22 +95,22 @@ func testCfgWithDB(dev *Device, asics []conddb.ASIC, rshaper uint32, rfms []int)
95
95
return fmt .Errorf ("could not configure ASICs for rfm=%d: %w" , rfmID , err )
96
96
}
97
97
}
98
- dev .hrscSetBit (0 , 854 , 0 )
98
+ dev .brd . hrscSetBit (0 , 854 , 0 )
99
99
100
- dev .hrscSetRShaper (0 , dev .cfg .hr .rshaper )
101
- dev .hrscSetCShaper (0 , dev .cfg .hr .cshaper )
100
+ dev .brd . hrscSetRShaper (0 , dev .cfg .hr .rshaper )
101
+ dev .brd . hrscSetCShaper (0 , dev .cfg .hr .cshaper )
102
102
103
- dev .hrscCopyConf (1 , 0 )
104
- dev .hrscCopyConf (2 , 0 )
105
- dev .hrscCopyConf (3 , 0 )
106
- dev .hrscCopyConf (4 , 0 )
107
- dev .hrscCopyConf (5 , 0 )
108
- dev .hrscCopyConf (6 , 0 )
109
- dev .hrscCopyConf (7 , 0 )
103
+ dev .brd . hrscCopyConf (1 , 0 )
104
+ dev .brd . hrscCopyConf (2 , 0 )
105
+ dev .brd . hrscCopyConf (3 , 0 )
106
+ dev .brd . hrscCopyConf (4 , 0 )
107
+ dev .brd . hrscCopyConf (5 , 0 )
108
+ dev .brd . hrscCopyConf (6 , 0 )
109
+ dev .brd . hrscCopyConf (7 , 0 )
110
110
111
111
// set chip IDs
112
112
for hr := uint32 (0 ); hr < nHR ; hr ++ {
113
- dev .hrscSetChipID (hr , hr + 1 )
113
+ dev .brd . hrscSetChipID (hr , hr + 1 )
114
114
}
115
115
116
116
for i := range dev .rfms {
@@ -122,12 +122,12 @@ func testCfgWithDB(dev *Device, asics []conddb.ASIC, rshaper uint32, rfms []int)
122
122
m2 := bitU64 (asics [hr ].Mask2 , ch )
123
123
124
124
mask := uint32 (m0 | m1 << 1 | m2 << 2 )
125
- dev .hrscSetMask (hr , ch , mask )
125
+ dev .brd . hrscSetMask (hr , ch , mask )
126
126
}
127
127
128
- dev .hrscSetDAC0 (hr , uint32 (asics [hr ].B0 ))
129
- dev .hrscSetDAC1 (hr , uint32 (asics [hr ].B1 ))
130
- dev .hrscSetDAC2 (hr , uint32 (asics [hr ].B2 ))
128
+ dev .brd . hrscSetDAC0 (hr , uint32 (asics [hr ].B0 ))
129
+ dev .brd . hrscSetDAC1 (hr , uint32 (asics [hr ].B1 ))
130
+ dev .brd . hrscSetDAC2 (hr , uint32 (asics [hr ].B2 ))
131
131
132
132
for ch := uint32 (0 ); ch < nChans ; ch ++ {
133
133
v , err := strconv .ParseUint (string (asics [hr ].PreAmpGain [2 * ch :2 * ch + 2 ]), 16 , 8 )
@@ -136,7 +136,7 @@ func testCfgWithDB(dev *Device, asics []conddb.ASIC, rshaper uint32, rfms []int)
136
136
}
137
137
gain := uint32 (v )
138
138
dev .cfg .preamp .gains [nChans * (nHR * rfm + hr )+ ch ] = gain
139
- dev .hrscSetPreAmp (hr , ch , gain )
139
+ dev .brd . hrscSetPreAmp (hr , ch , gain )
140
140
}
141
141
}
142
142
}
@@ -149,10 +149,10 @@ func testCfgWithCSV(dev *Device, thresh, rshaper uint32, rfms []int) error {
149
149
WithRShaper (rshaper )(& dev .cfg )
150
150
dev .cfg .hr .db = newDbConfig ()
151
151
dev .cfg .hr .cshaper = 3
152
- dev .cfg .hr .data = dev .cfg .hr .buf [4 :]
153
152
dev .rfms = rfms
153
+ dev .brd = newBoard (dev .msg )
154
154
155
- err := dev .hrscReadConf (dev .cfg .hr .fname , 0 )
155
+ err := dev .brd . hrscReadConf (dev .cfg .hr .fname , 0 )
156
156
if err != nil {
157
157
return fmt .Errorf ("eda: could load single-HR configuration file: %w" , err )
158
158
}
@@ -173,22 +173,22 @@ func testCfgWithCSV(dev *Device, thresh, rshaper uint32, rfms []int) error {
173
173
}
174
174
175
175
// disable trig_out output pin (RFM v1 coupling problem)
176
- dev .hrscSetBit (0 , 854 , 0 )
176
+ dev .brd . hrscSetBit (0 , 854 , 0 )
177
177
178
- dev .hrscSetRShaper (0 , dev .cfg .hr .rshaper )
179
- dev .hrscSetCShaper (0 , dev .cfg .hr .cshaper )
178
+ dev .brd . hrscSetRShaper (0 , dev .cfg .hr .rshaper )
179
+ dev .brd . hrscSetCShaper (0 , dev .cfg .hr .cshaper )
180
180
181
- dev .hrscCopyConf (1 , 0 )
182
- dev .hrscCopyConf (2 , 0 )
183
- dev .hrscCopyConf (3 , 0 )
184
- dev .hrscCopyConf (4 , 0 )
185
- dev .hrscCopyConf (5 , 0 )
186
- dev .hrscCopyConf (6 , 0 )
187
- dev .hrscCopyConf (7 , 0 )
181
+ dev .brd . hrscCopyConf (1 , 0 )
182
+ dev .brd . hrscCopyConf (2 , 0 )
183
+ dev .brd . hrscCopyConf (3 , 0 )
184
+ dev .brd . hrscCopyConf (4 , 0 )
185
+ dev .brd . hrscCopyConf (5 , 0 )
186
+ dev .brd . hrscCopyConf (6 , 0 )
187
+ dev .brd . hrscCopyConf (7 , 0 )
188
188
189
189
// set chip IDs
190
190
for hr := uint32 (0 ); hr < nHR ; hr ++ {
191
- dev .hrscSetChipID (hr , hr + 1 )
191
+ dev .brd . hrscSetChipID (hr , hr + 1 )
192
192
}
193
193
194
194
// for each active RFM, tune the configuration and send it.
@@ -197,7 +197,7 @@ func testCfgWithCSV(dev *Device, thresh, rshaper uint32, rfms []int) error {
197
197
for hr := uint32 (0 ); hr < nHR ; hr ++ {
198
198
for ch := uint32 (0 ); ch < nChans ; ch ++ {
199
199
mask := dev .cfg .mask .table [nChans * (nHR * uint32 (rfm )+ hr )+ ch ]
200
- dev .hrscSetMask (hr , ch , mask )
200
+ dev .brd . hrscSetMask (hr , ch , mask )
201
201
}
202
202
}
203
203
@@ -210,15 +210,15 @@ func testCfgWithCSV(dev *Device, thresh, rshaper uint32, rfms []int) error {
210
210
th0 := dev .cfg .daq .floor [3 * (nHR * uint32 (rfm )+ hr )+ 0 ]
211
211
th1 := dev .cfg .daq .floor [3 * (nHR * uint32 (rfm )+ hr )+ 1 ]
212
212
th2 := dev .cfg .daq .floor [3 * (nHR * uint32 (rfm )+ hr )+ 2 ]
213
- dev .hrscSetDAC0 (hr , th0 )
214
- dev .hrscSetDAC1 (hr , th1 )
215
- dev .hrscSetDAC2 (hr , th2 )
213
+ dev .brd . hrscSetDAC0 (hr , th0 )
214
+ dev .brd . hrscSetDAC1 (hr , th1 )
215
+ dev .brd . hrscSetDAC2 (hr , th2 )
216
216
}
217
217
218
218
for hr := uint32 (0 ); hr < nHR ; hr ++ {
219
219
for ch := uint32 (0 ); ch < nChans ; ch ++ {
220
220
gain := dev .cfg .preamp .gains [nChans * hr + ch ]
221
- dev .hrscSetPreAmp (hr , ch , gain )
221
+ dev .brd . hrscSetPreAmp (hr , ch , gain )
222
222
}
223
223
}
224
224
0 commit comments