@@ -5250,9 +5250,9 @@ def make_name(bname,bnum):
52505250 elif not "5i25" in board1 and not '7i90' in board1 :
52515251 firmstring1 = "firmware=hm2/%s/%s.BIT " % (directory1 , firm1 )
52525252
5253- # TODO fix this hardcoded hack: only one serialport
5254- ssconfig0 = ssconfig1 = resolver0 = resolver1 = temp = ""
5255- if self . d . mesa0_numof_sserialports :
5253+ ssport0 = ssport1 = resolver0 = resolver1 = ""
5254+ for p in range ( 0 , self . d . mesa0_numof_sserialports ):
5255+ temp = ""
52565256 for i in range (1 ,_PD ._NUM_CHANNELS + 1 ):
52575257 if i <= self .d .mesa0_numof_sserialchannels :
52585258 # m number in the name signifies the required sserial mode
@@ -5263,19 +5263,22 @@ def make_name(bname,bnum):
52635263 else : temp = temp + "0" # default case
52645264 else :
52655265 temp = temp + "x"
5266- ssconfig0 = " sserial_port_0=%s" % temp
5267- if self .d .number_mesa == 2 and self .d .mesa1_numof_sserialports :
5268- for i in range (1 ,_PD ._NUM_CHANNELS + 1 ):
5269- if i <= self .d .mesa1_numof_sserialchannels :
5270- # m number in the name signifies the required sserial mode
5271- for j in ("123456789" ):
5272- if ("m" + j ) in self .d ["mesa1sserial0_%dsubboard" % (i - 1 )]:
5273- temp = temp + j
5274- break
5275- else : temp = temp + "0" # default case
5276- else :
5277- temp = temp + "x"
5278- ssconfig1 = " sserial_port_0=%s" % temp
5266+ ssport0 += " sserial_port_{}={}" .format (p , temp )
5267+
5268+ if self .d .number_mesa == 2 :
5269+ for p in range (0 , self .d .mesa01numof_sserialports ):
5270+ for i in range (1 ,_PD ._NUM_CHANNELS + 1 ):
5271+ if i <= self .d .mesa1_numof_sserialchannels :
5272+ # m number in the name signifies the required sserial mode
5273+ for j in ("123456789" ):
5274+ if ("m" + j ) in self .d ["mesa1sserial0_%dsubboard" % (i - 1 )]:
5275+ temp = temp + j
5276+ break
5277+ else : temp = temp + "0" # default case
5278+ else :
5279+ temp = temp + "x"
5280+ ssport1 += " sserial_port_{}={}" .format (p , temp )
5281+
52795282 if self .d .mesa0_numof_resolvers :
52805283 resolver0 = " num_resolvers=%d" % self .d .mesa0_numof_resolvers
52815284 if self .d .mesa1_numof_resolvers :
@@ -5289,25 +5292,25 @@ def make_name(bname,bnum):
52895292 load_cmnds .append ( """loadrt%s%s%s config="%snum_encoders=%d num_pwmgens=%d%s num_stepgens=%d%s%s" """ % (
52905293 driver0 , board0_ip , mesa0_ioaddr ,
52915294 firmstring0 , self .d .mesa0_numof_encodergens , self .d .mesa0_numof_pwmgens , mesa0_3pwm , self .d .mesa0_numof_stepgens ,
5292- ssconfig0 , resolver0 ))
5295+ ssport0 , resolver0 ))
52935296 elif self .d .number_mesa == 2 and (driver0 == driver1 ):
52945297 loadstring = """loadrt%s%s%s%s%s config="%snum_encoders=%d num_pwmgens=%d%s num_stepgens=%d%s%s,""" % (
52955298 driver0 , board0_ip , board1_ip , mesa0_ioaddr , mesa1_ioaddr ,
52965299 firmstring0 , self .d .mesa0_numof_encodergens , self .d .mesa0_numof_pwmgens , mesa0_3pwm , self .d .mesa0_numof_stepgens ,
5297- ssconfig0 , resolver0 )
5300+ ssport0 , resolver0 )
52985301 loadstring += """ %snum_encoders=%d num_pwmgens=%d%s num_stepgens=%d%s%s" """ % (
52995302 firmstring1 , self .d .mesa1_numof_encodergens , self .d .mesa1_numof_pwmgens , mesa1_3pwm , self .d .mesa1_numof_stepgens ,
5300- ssconfig1 , resolver1 )
5303+ ssport1 , resolver1 )
53015304 load_cmnds .append (loadstring )
53025305 elif self .d .number_mesa == 2 :
53035306 load_cmnds .append ( """loadrt%s%s%s config="%snum_encoders=%d num_pwmgens=%d%s num_stepgens=%d%s%s" """ % (
53045307 driver0 , board0_ip , mesa0_ioaddr ,
53055308 firmstring0 , self .d .mesa0_numof_encodergens , self .d .mesa0_numof_pwmgens , mesa0_3pwm , self .d .mesa0_numof_stepgens ,
5306- ssconfig0 , resolver0 ))
5309+ ssport0 , resolver0 ))
53075310 load_cmnds .append ( """loadrt%s%s%s config="%snum_encoders=%d num_pwmgens=%d%s num_stepgens=%d%s%s" """ % (
53085311 driver1 , board1_ip , mesa1_ioaddr ,
53095312 firmstring1 , self .d .mesa1_numof_encodergens , self .d .mesa1_numof_pwmgens , mesa1_3pwm , self .d .mesa1_numof_stepgens ,
5310- ssconfig1 , resolver1 ))
5313+ ssport1 , resolver1 ))
53115314 for boardnum in range (0 ,int (self .d .number_mesa )):
53125315 if boardnum == 1 and (board0 == board1 ):
53135316 halnum = 1
0 commit comments