trigger = mall_entry->ingress ? MLXSW_SP_SPAN_TRIGGER_INGRESS :
                                        MLXSW_SP_SPAN_TRIGGER_EGRESS;
        parms.span_id = mall_entry->mirror.span_id;
+       parms.probability_rate = 1;
        err = mlxsw_sp_span_agent_bind(mlxsw_sp, trigger, mlxsw_sp_port,
                                       &parms);
        if (err)
 
                goto err_analyzed_port_get;
 
        trigger_parms.span_id = span_id;
+       trigger_parms.probability_rate = 1;
        err = mlxsw_sp_span_agent_bind(mlxsw_sp, qevent_binding->span_trigger, mlxsw_sp_port,
                                       &trigger_parms);
        if (err)
 
                return -EINVAL;
        }
 
+       if (trigger_entry->parms.probability_rate > MLXSW_REG_MPAR_RATE_MAX)
+               return -EINVAL;
+
        mlxsw_reg_mpar_pack(mpar_pl, trigger_entry->local_port, i_e, enable,
-                           trigger_entry->parms.span_id, 1);
+                           trigger_entry->parms.span_id,
+                           trigger_entry->parms.probability_rate);
        return mlxsw_reg_write(span->mlxsw_sp->core, MLXSW_REG(mpar), mpar_pl);
 }
 
                return -EINVAL;
        }
 
+       if (trigger_entry->parms.probability_rate > MLXSW_REG_MPAGR_RATE_MAX)
+               return -EINVAL;
+
        mlxsw_reg_mpagr_pack(mpagr_pl, trigger, trigger_entry->parms.span_id,
-                            1);
+                            trigger_entry->parms.probability_rate);
        return mlxsw_reg_write(mlxsw_sp->core, MLXSW_REG(mpagr), mpagr_pl);
 }
 
                                                         trigger,
                                                         mlxsw_sp_port);
        if (trigger_entry) {
-               if (trigger_entry->parms.span_id != parms->span_id)
+               if (trigger_entry->parms.span_id != parms->span_id ||
+                   trigger_entry->parms.probability_rate !=
+                   parms->probability_rate)
                        return -EINVAL;
                refcount_inc(&trigger_entry->ref_count);
                goto out;