Commit c347941c authored by José Luis  Gutiérrez's avatar José Luis Gutiérrez

HSR: adding 1 level to the Ring

We need to know whether a WRS is conected to a master outside the ring
to start the backup<->backup synchronization
parent 6a5e05c2
......@@ -17,11 +17,11 @@ static int wr_init(struct pp_instance *ppi, unsigned char *pkt, int plen)
wp->calibrated = !WR_DEFAULT_PHY_CALIBRATION_REQUIRED;
/* GUTI BAD HACK */
if(WR_DSCUR(ppi)->primarySlavePortNumber == ppi->port_idx) {
wp->ops->enable_timing_output(ppi, 1);
}else{
wp->ops->enable_timing_output(ppi, 0);
}
//if(ppi->port_idx == GLBS(ppi)->active_backup_port) {
//wp->ops->enable_timing_output(ppi, 1);
//}else{
//wp->ops->enable_timing_output(ppi, 0);
//}
/* For any reason, when new linkUp, PPS output is disabled although
* it is the correct port... */
......
......@@ -14,9 +14,10 @@ int pp_listening(struct pp_instance *ppi, unsigned char *pkt, int plen)
int e = 0; /* error var, to check errors in msg handling */
struct wr_dsport *wrp_hsr0 = WR_DSPOR(INST(ppi->glbs, 0));
struct wr_dsport *wrp_hsr1= WR_DSPOR(INST(ppi->glbs, 1));
struct wr_dsport *wrp_hsr1 = WR_DSPOR(INST(ppi->glbs, 1));
struct wr_dsport *wrp_hsr2 = WR_DSPOR(INST(ppi->glbs, 2));
if(wrp_hsr0->wrModeOn) {
if(wrp_hsr0->wrModeOn || wrp_hsr1->wrModeOn || wrp_hsr2->wrModeOn) {
ppi->master_only = 1;
ppi->slave_only = 0;
ppi->backup_only = 0;
......
......@@ -17,8 +17,9 @@ int pp_pmaster(struct pp_instance *ppi, unsigned char *pkt, int plen)
struct wr_dsport *wrp_hsr0 = WR_DSPOR(INST(ppi->glbs, 0));
struct wr_dsport *wrp_hsr1 = WR_DSPOR(INST(ppi->glbs, 1));
struct wr_dsport *wrp_hsr2 = WR_DSPOR(INST(ppi->glbs, 2));
if(wrp_hsr0->wrModeOn || wrp_hsr1->wrModeOn){
if(wrp_hsr0->wrModeOn || wrp_hsr1->wrModeOn || wrp_hsr2->wrModeOn){
ppi->master_only = 0;
ppi->slave_only = 0;
ppi->backup_only = 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment