Move omci to omci-sim lib
Change-Id: I67ebaea57d5cccde3fbc7c531bc537cc812929c9
diff --git a/core/core_server.go b/core/core_server.go
index 667a900..2fc494b 100644
--- a/core/core_server.go
+++ b/core/core_server.go
@@ -22,6 +22,10 @@
"strconv"
"sync"
+ omci "github.com/opencord/omci-sim"
+
+ "reflect"
+
"gerrit.opencord.org/voltha-bbsim/common/logger"
"gerrit.opencord.org/voltha-bbsim/common/utils"
"gerrit.opencord.org/voltha-bbsim/device"
@@ -30,9 +34,8 @@
"github.com/google/gopacket/layers"
"github.com/google/gopacket/pcap"
log "github.com/sirupsen/logrus"
- "google.golang.org/grpc"
"golang.org/x/sync/errgroup"
- "reflect"
+ "google.golang.org/grpc"
)
const (
@@ -68,9 +71,9 @@
}
type stateReport struct {
- device device.Device
+ device device.Device
current device.DeviceState
- next device.DeviceState
+ next device.DeviceState
}
func NewCore(opt *option) *Server {
@@ -88,7 +91,7 @@
IndInterval: opt.intvl,
Processes: []string{},
EnableServer: nil,
- stateRepCh : make(chan stateReport, 8),
+ stateRepCh: make(chan stateReport, 8),
omciIn: make(chan openolt.OmciIndication, 1024),
omciOut: make(chan openolt.OmciMsg, 1024),
}
@@ -115,7 +118,7 @@
s.wg = &sync.WaitGroup{}
logger.Debug("Start() Start")
defer func() {
- close(s.stateRepCh )
+ close(s.stateRepCh)
logger.Debug("Start() Done")
}()
addressport := s.gRPCAddress + ":" + strconv.Itoa(int(s.gRPCPort))
@@ -187,10 +190,10 @@
func (s *Server) updateDevIntState(dev device.Device, state device.DeviceState) {
current := dev.GetIntState()
dev.UpdateIntState(state)
- s.stateRepCh <- stateReport{device: dev, current:current, next: state}
- if reflect.TypeOf(dev) == reflect.TypeOf(&device.Olt{}){
+ s.stateRepCh <- stateReport{device: dev, current: current, next: state}
+ if reflect.TypeOf(dev) == reflect.TypeOf(&device.Olt{}) {
logger.Debug("OLT State updated to:%d", state)
- } else if reflect.TypeOf(dev) == reflect.TypeOf(&device.Onu{}){
+ } else if reflect.TypeOf(dev) == reflect.TypeOf(&device.Onu{}) {
logger.Debug("ONU State updated to:%d", state)
} else {
logger.Error("UpdateDevIntState () doesn't support this device: %s", reflect.TypeOf(dev))
@@ -331,24 +334,24 @@
eg, child := errgroup.WithContext(ctx)
child, cancel := context.WithCancel(child)
- eg.Go (func() error {
+ eg.Go(func() error {
logger.Debug("runOMCIResponder Start")
defer logger.Debug("runOMCIResponder Done")
- select{
- case v, ok := <- errch: // Wait for OmciInitialization
- if ok { //Error
+ select {
+ case v, ok := <-errch: // Wait for OmciInitialization
+ if ok { //Error
logger.Error("Error happend in Omci:%s", v)
return v
- } else { //Close
+ } else { //Close
s.updateDevIntState(s.Olt, device.OLT_ACTIVE)
}
- case <- child.Done():
+ case <-child.Done():
return nil
}
return nil
})
- eg.Go (func () error {
+ eg.Go(func() error {
err := s.runMainPktLoop(child, stream)
return err
})
@@ -385,7 +388,7 @@
}
nhandler, nnichannel := ioinfo.handler, make(chan Packet, 32)
go RecvWorker(ioinfo, nhandler, nnichannel)
- defer func(){
+ defer func() {
close(nnichannel)
}()
@@ -541,15 +544,8 @@
}
func getGemPortID(intfid uint32, onuid uint32) (uint32, error) {
- key := OnuKey{intfid, onuid}
- if onuState, ok := OnuOmciStateMap[key]; !ok {
- idx := uint32(0)
- // Backwards compatible with bbsim_olt adapter
- return 1024 + (((MAX_ONUS_PER_PON*intfid + onuid - 1) * 7) + idx), nil
- } else {
- // FIXME - Gem Port ID is 2 bytes - fix openolt.proto
- return uint32(onuState.gemPortId), nil
- }
+ // FIXME - check for errors
+ return uint32(omci.GetGemPortId(intfid, onuid)), nil
}
func getOnuBySN(onumap map[uint32][]*device.Onu, sn *openolt.SerialNumber) (*device.Onu, error) {