Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New model as7312 54x #1339

Merged
merged 27 commits into from
Feb 15, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
909a7e9
Update sonic-platform-modules-accton to lastest
roylee123 Dec 22, 2017
87eed23
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Dec 22, 2017
64529e5
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Dec 28, 2017
2464e45
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Jan 8, 2018
6810dd4
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Jan 9, 2018
5e436b4
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Jan 12, 2018
ce362e4
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Jan 19, 2018
0d14c1c
Merge branch 'master' of https://github.com/roylee123/sonic-buildimage
roylee123 Jan 19, 2018
a40d2d9
Install sonic-platform-common package in platform-monitor docker for …
jleveque Jan 22, 2018
beb2097
[7312_54x] Add plug-in files.
roylee123 Jan 23, 2018
f8e98dd
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
roylee123 Jan 24, 2018
7ec29c0
[as7312-54x] Update i2c related drivers after tested on R0B model.
roylee123 Jan 24, 2018
8b65b03
Merge branch 'master' of https://github.com/roylee123/sonic-buildimag…
roylee123 Jan 24, 2018
004b4ef
Add as7312-54x driver package.
roylee123 Jan 24, 2018
511022b
[as7312-54x] Add index to port_config.ini for mmaping port with singl…
roylee123 Jan 25, 2018
a66f02b
[as7312-54x] Change for R01 HW board.
roylee123 Jan 26, 2018
7a7a6d3
[as7312-54x] recovered for the lint corrected not suitable for python.
roylee123 Jan 26, 2018
ae4e650
Remove debug printing.
roylee123 Jan 26, 2018
dc44175
[platform] as7312-32x, update for util.py recovered.
roylee123 Feb 8, 2018
7824684
Merge branch 'new_model_as7312_54x' of https://github.com/roylee123/s…
roylee123 Feb 8, 2018
aa2468e
Merge branch 'master' of https://github.com/Azure/sonic-buildimage in…
roylee123 Feb 12, 2018
5f943a5
[platform] Accton: merged the commit by Polly Hsu.
roylee123 Feb 12, 2018
7e62ef9
Merge branch 'master' of https://github.com/Azure/sonic-buildimage in…
roylee123 Feb 13, 2018
182e45a
[Device] As7312-54x, update for correct I2C addresses for sfp and psu.
roylee123 Feb 14, 2018
941a59f
[Platform] as7312-54x, pushed submodule to new i2c drivers and script.
roylee123 Feb 14, 2018
32ff803
Merge branch 'master' of https://github.com/Azure/sonic-buildimage in…
roylee123 Feb 14, 2018
4696048
resolved PR New model as7312 54x #1339 merge conflicts on sfputil.py.
roylee123 Feb 14, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,55 +1,55 @@
# name lanes alias
Ethernet0 41 twentyfiveGigE1
Ethernet1 42 twentyfiveGigE2
Ethernet2 43 twentyfiveGigE3
Ethernet3 44 twentyfiveGigE4
Ethernet4 49 twentyfiveGigE5
Ethernet5 50 twentyfiveGigE6
Ethernet6 51 twentyfiveGigE7
Ethernet7 52 twentyfiveGigE8
Ethernet8 53 twentyfiveGigE9
Ethernet9 54 twentyfiveGigE10
Ethernet10 55 twentyfiveGigE11
Ethernet11 56 twentyfiveGigE12
Ethernet12 65 twentyfiveGigE13
Ethernet13 66 twentyfiveGigE14
Ethernet14 67 twentyfiveGigE15
Ethernet15 68 twentyfiveGigE16
Ethernet16 33 twentyfiveGigE17
Ethernet17 34 twentyfiveGigE18
Ethernet18 35 twentyfiveGigE19
Ethernet19 36 twentyfiveGigE20
Ethernet20 37 twentyfiveGigE21
Ethernet21 38 twentyfiveGigE22
Ethernet22 39 twentyfiveGigE23
Ethernet23 40 twentyfiveGigE24
Ethernet24 69 twentyfiveGigE25
Ethernet25 70 twentyfiveGigE26
Ethernet26 71 twentyfiveGigE27
Ethernet27 72 twentyfiveGigE28
Ethernet28 81 twentyfiveGigE29
Ethernet29 82 twentyfiveGigE30
Ethernet30 83 twentyfiveGigE31
Ethernet31 84 twentyfiveGigE32
Ethernet32 85 twentyfiveGigE33
Ethernet33 86 twentyfiveGigE34
Ethernet34 87 twentyfiveGigE35
Ethernet35 88 twentyfiveGigE36
Ethernet36 97 twentyfiveGigE37
Ethernet37 98 twentyfiveGigE38
Ethernet38 99 twentyfiveGigE39
Ethernet39 100 twentyfiveGigE40
Ethernet40 101 twentyfiveGigE41
Ethernet41 102 twentyfiveGigE42
Ethernet42 103 twentyfiveGigE43
Ethernet43 104 twentyfiveGigE44
Ethernet44 105 twentyfiveGigE45
Ethernet45 106 twentyfiveGigE46
Ethernet46 107 twentyfiveGigE47
Ethernet47 108 twentyfiveGigE48
Ethernet48 5,6,7,8 hundredGigE49
Ethernet52 1,2,3,4 hundredGigE50
Ethernet56 109,110,111,112 hundredGigE51
Ethernet60 21,22,23,24 hundredGigE52
Ethernet64 9,10,11,12 hundredGigE53
Ethernet68 117,118,119,120 hundredGigE54
# name lanes alias index
Ethernet0 41 twentyfiveGigE1 0
Ethernet1 42 twentyfiveGigE2 1
Ethernet2 43 twentyfiveGigE3 2
Ethernet3 44 twentyfiveGigE4 3
Ethernet4 49 twentyfiveGigE5 4
Ethernet5 50 twentyfiveGigE6 5
Ethernet6 51 twentyfiveGigE7 6
Ethernet7 52 twentyfiveGigE8 7
Ethernet8 53 twentyfiveGigE9 8
Ethernet9 54 twentyfiveGigE10 9
Ethernet10 55 twentyfiveGigE11 10
Ethernet11 56 twentyfiveGigE12 11
Ethernet12 65 twentyfiveGigE13 12
Ethernet13 66 twentyfiveGigE14 13
Ethernet14 67 twentyfiveGigE15 14
Ethernet15 68 twentyfiveGigE16 15
Ethernet16 33 twentyfiveGigE17 16
Ethernet17 34 twentyfiveGigE18 17
Ethernet18 35 twentyfiveGigE19 18
Ethernet19 36 twentyfiveGigE20 19
Ethernet20 37 twentyfiveGigE21 20
Ethernet21 38 twentyfiveGigE22 21
Ethernet22 39 twentyfiveGigE23 22
Ethernet23 40 twentyfiveGigE24 23
Ethernet24 69 twentyfiveGigE25 24
Ethernet25 70 twentyfiveGigE26 25
Ethernet26 71 twentyfiveGigE27 26
Ethernet27 72 twentyfiveGigE28 27
Ethernet28 81 twentyfiveGigE29 28
Ethernet29 82 twentyfiveGigE30 29
Ethernet30 83 twentyfiveGigE31 30
Ethernet31 84 twentyfiveGigE32 31
Ethernet32 85 twentyfiveGigE33 32
Ethernet33 86 twentyfiveGigE34 33
Ethernet34 87 twentyfiveGigE35 34
Ethernet35 88 twentyfiveGigE36 35
Ethernet36 97 twentyfiveGigE37 36
Ethernet37 98 twentyfiveGigE38 37
Ethernet38 99 twentyfiveGigE39 38
Ethernet39 100 twentyfiveGigE40 39
Ethernet40 101 twentyfiveGigE41 40
Ethernet41 102 twentyfiveGigE42 41
Ethernet42 103 twentyfiveGigE43 42
Ethernet43 104 twentyfiveGigE44 43
Ethernet44 105 twentyfiveGigE45 44
Ethernet45 106 twentyfiveGigE46 45
Ethernet46 107 twentyfiveGigE47 46
Ethernet47 108 twentyfiveGigE48 47
Ethernet48 5,6,7,8 hundredGigE49 48
Ethernet52 1,2,3,4 hundredGigE50 52
Ethernet56 109,110,111,112 hundredGigE51 56
Ethernet60 21,22,23,24 hundredGigE52 60
Ethernet64 9,10,11,12 hundredGigE53 64
Ethernet68 117,118,119,120 hundredGigE54 68
24 changes: 24 additions & 0 deletions device/accton/x86_64-accton_as7312_54x-r0/plugins/eeprom.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/usr/bin/env python

try:
import exceptions
import binascii
import time
import optparse
import warnings
import os
import sys
from sonic_eeprom import eeprom_base
from sonic_eeprom import eeprom_tlvinfo
import subprocess
except ImportError, e:
raise ImportError (str(e) + "- required module not found")

class board(eeprom_tlvinfo.TlvInfoDecoder):
_TLV_INFO_MAX_LEN = 256
def __init__(self, name, path, cpld_root, ro):
self.eeprom_path = "/sys/bus/i2c/devices/1-0057/eeprom"
#Two i2c buses might get flipped order, check them both.
if not os.path.exists(self.eeprom_path):
self.eeprom_path = "/sys/bus/i2c/devices/0-0057/eeprom"
super(board, self).__init__(self.eeprom_path, 0, '', True)
61 changes: 61 additions & 0 deletions device/accton/x86_64-accton_as7312_54x-r0/plugins/psuutil.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
#!/usr/bin/env python

#############################################################################
# Accton
#
# Module contains an implementation of SONiC PSU Base API and
# provides the PSUs status which are available in the platform
#
#############################################################################

import os.path

try:
from sonic_psu.psu_base import PsuBase
except ImportError as e:
raise ImportError (str(e) + "- required module not found")

class PsuUtil(PsuBase):
"""Platform-specific PSUutil class"""

def __init__(self):
PsuBase.__init__(self)

self.psu_path = "/sys/bus/i2c/devices/"
self.psu_presence = "/psu_present"
self.psu_oper_status = "/psu_power_good"
self.psu_mapping = {
2: "11-0053",
1: "10-0050",
}

def get_num_psus(self):
return len(self.psu_mapping)

def get_psu_status(self, index):
if index is None:
return False

status = 0
node = self.psu_path + self.psu_mapping[index]+self.psu_oper_status
try:
with open(node, 'r') as power_status:
status = int(power_status.read())
except IOError:
return False

return status == 1

def get_psu_presence(self, index):
if index is None:
return False

status = 0
node = self.psu_path + self.psu_mapping[index] + self.psu_presence
try:
with open(node, 'r') as presence_status:
status = int(presence_status.read())
except IOError:
return False

return status == 1
Loading