Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
W
White Rabbit core collection
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
30
Issues
30
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Schedules
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
White Rabbit core collection
Commits
4af29218
Commit
4af29218
authored
Jul 04, 2017
by
Grzegorz Daniluk
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'greg-snmp' into proposed_master
parents
8d6bdffd
2d3c99a5
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
82 additions
and
62 deletions
+82
-62
Kconfig
Kconfig
+0
-5
devel_build_test_defconfig
configs/devel_build_test_defconfig
+0
-1
spec_defconfig
configs/spec_defconfig
+0
-1
syscon.c
dev/syscon.c
+12
-0
wrc_syscon_regs.h
include/hw/wrc_syscon_regs.h
+61
-51
syscon.h
include/syscon.h
+4
-0
snmp.c
lib/snmp.c
+3
-3
wrpc_test_config
test/snmp/wrpc_test_config
+0
-1
wrc_main.c
wrc_main.c
+2
-0
No files found.
Kconfig
View file @
4af29218
...
...
@@ -183,11 +183,6 @@ config SNMP_AUX_DIAG
help
This option adds branch wrpcAuxDiag to the SNMP
config SNMP_HW_TYPE
depends on SNMP
default "spec"
string "Hardware type reported by SNMP"
config BUILD_INIT
depends on WR_NODE
default n
...
...
configs/devel_build_test_defconfig
View file @
4af29218
...
...
@@ -32,7 +32,6 @@ CONFIG_CMD_CONFIG=y
CONFIG_SYSLOG=y
CONFIG_SNMP=y
CONFIG_SNMP_SET=y
CONFIG_SNMP_HW_TYPE="spec"
CONFIG_BUILD_INIT=y
CONFIG_INIT_COMMAND="help"
CONFIG_HAS_BUILD_INIT=1
...
...
configs/spec_defconfig
View file @
4af29218
...
...
@@ -30,7 +30,6 @@ CONFIG_IP=y
CONFIG_SNMP=y
CONFIG_SNMP_SET=y
CONFIG_SNMP_AUX_DIAG=y
CONFIG_SNMP_HW_TYPE="spec"
CONFIG_BUILD_INIT=y
CONFIG_INIT_COMMAND="vlan off; ptp stop; sfp match; mode slave; ptp start"
CONFIG_HAS_BUILD_INIT=1
...
...
dev/syscon.c
View file @
4af29218
...
...
@@ -8,6 +8,7 @@
*/
#include "syscon.h"
#include <errno.h>
#include <string.h>
struct
s_i2c_if
i2c_if
[
2
]
=
{
{
SYSC_GPSR_FMC_SCL
,
SYSC_GPSR_FMC_SDA
},
...
...
@@ -16,6 +17,17 @@ struct s_i2c_if i2c_if[2] = {
volatile
struct
SYSCON_WB
*
syscon
;
/****************************
* BOARD NAME
***************************/
void
get_hw_name
(
char
*
str
)
{
uint32_t
val
;
val
=
syscon
->
HWIR
;
memcpy
(
str
,
&
val
,
HW_NAME_LENGTH
-
1
);
}
/****************************
* TIMER
***************************/
...
...
include/hw/wrc_syscon_regs.h
View file @
4af29218
...
...
@@ -3,7 +3,7 @@
* File : wrc_syscon_regs.h
* Author : auto-generated by wbgen2 from wrc_syscon_wb.wb
* Created : Mon
Apr 24 17:41:5
8 2017
* Created : Mon
Jul 3 13:40:0
8 2017
* Standard : ANSI C
THIS FILE WAS GENERATED BY wbgen2 FROM SOURCE FILE wrc_syscon_wb.wb
...
...
@@ -127,6 +127,14 @@
#define SYSC_HWFR_MEMSIZE_W(value) WBGEN2_GEN_WRITE(value, 0, 4)
#define SYSC_HWFR_MEMSIZE_R(reg) WBGEN2_GEN_READ(reg, 0, 4)
/* definitions for register: Hardware Info Register */
/* definitions for field: Board name in reg: Hardware Info Register */
#define SYSC_HWIR_NAME_MASK WBGEN2_GEN_MASK(0, 32)
#define SYSC_HWIR_NAME_SHIFT 0
#define SYSC_HWIR_NAME_W(value) WBGEN2_GEN_WRITE(value, 0, 32)
#define SYSC_HWIR_NAME_R(reg) WBGEN2_GEN_READ(reg, 0, 32)
/* definitions for register: Timer Control Register */
/* definitions for field: Timer Divider in reg: Timer Control Register */
...
...
@@ -259,54 +267,56 @@
#define SYSC_REG_GPCR 0x00000008
/* [0xc]: REG Hardware Feature Register */
#define SYSC_REG_HWFR 0x0000000c
/* [0x10]: REG Timer Control Register */
#define SYSC_REG_TCR 0x00000010
/* [0x14]: REG Timer Counter Value Register */
#define SYSC_REG_TVR 0x00000014
/* [0x18]: REG User Diag: version register */
#define SYSC_REG_DIAG_INFO 0x00000018
/* [0x1c]: REG User Diag: number of words */
#define SYSC_REG_DIAG_NW 0x0000001c
/* [0x20]: REG User Diag: Control Register */
#define SYSC_REG_DIAG_CR 0x00000020
/* [0x24]: REG User Diag: data to read/write */
#define SYSC_REG_DIAG_DAT 0x00000024
/* [0x28]: REG WRPC Diag: ctrl */
#define SYSC_REG_WDIAG_CTRL 0x00000028
/* [0x2c]: REG WRPC Diag: servo status */
#define SYSC_REG_WDIAG_SSTAT 0x0000002c
/* [0x30]: REG WRPC Diag: Port status */
#define SYSC_REG_WDIAG_PSTAT 0x00000030
/* [0x34]: REG WRPC Diag: PTP state */
#define SYSC_REG_WDIAG_PTPSTAT 0x00000034
/* [0x38]: REG WRPC Diag: AUX state */
#define SYSC_REG_WDIAG_ASTAT 0x00000038
/* [0x3c]: REG WRPC Diag: Tx PTP Frame cnts */
#define SYSC_REG_WDIAG_TXFCNT 0x0000003c
/* [0x40]: REG WRPC Diag: Rx PTP Frame cnts */
#define SYSC_REG_WDIAG_RXFCNT 0x00000040
/* [0x44]: REG WRPC Diag:local time [msb of s] */
#define SYSC_REG_WDIAG_SEC_MSB 0x00000044
/* [0x48]: REG WRPC Diag: local time [lsb of s] */
#define SYSC_REG_WDIAG_SEC_LSB 0x00000048
/* [0x4c]: REG WRPC Diag: local time [ns] */
#define SYSC_REG_WDIAG_NS 0x0000004c
/* [0x50]: REG WRPC Diag: Round trip (mu) [msb of ps] */
#define SYSC_REG_WDIAG_MU_MSB 0x00000050
/* [0x54]: REG WRPC Diag: Round trip (mu) [lsb of ps] */
#define SYSC_REG_WDIAG_MU_LSB 0x00000054
/* [0x58]: REG WRPC Diag: Master-slave delay (dms) [msb of ps] */
#define SYSC_REG_WDIAG_DMS_MSB 0x00000058
/* [0x5c]: REG WRPC Diag: Master-slave delay (dms) [lsb of ps] */
#define SYSC_REG_WDIAG_DMS_LSB 0x0000005c
/* [0x60]: REG WRPC Diag: Total link asymmetry [ps] */
#define SYSC_REG_WDIAG_ASYM 0x00000060
/* [0x64]: REG WRPC Diag: Clock offset (cko) [ps] */
#define SYSC_REG_WDIAG_CKO 0x00000064
/* [0x68]: REG WRPC Diag: Phase setpoint (setp) [ps] */
#define SYSC_REG_WDIAG_SETP 0x00000068
/* [0x6c]: REG WRPC Diag: Update counter (ucnt) */
#define SYSC_REG_WDIAG_UCNT 0x0000006c
/* [0x70]: REG WRPC Diag: Board temperature [C degree] */
#define SYSC_REG_WDIAG_TEMP 0x00000070
/* [0x10]: REG Hardware Info Register */
#define SYSC_REG_HWIR 0x00000010
/* [0x14]: REG Timer Control Register */
#define SYSC_REG_TCR 0x00000014
/* [0x18]: REG Timer Counter Value Register */
#define SYSC_REG_TVR 0x00000018
/* [0x1c]: REG User Diag: version register */
#define SYSC_REG_DIAG_INFO 0x0000001c
/* [0x20]: REG User Diag: number of words */
#define SYSC_REG_DIAG_NW 0x00000020
/* [0x24]: REG User Diag: Control Register */
#define SYSC_REG_DIAG_CR 0x00000024
/* [0x28]: REG User Diag: data to read/write */
#define SYSC_REG_DIAG_DAT 0x00000028
/* [0x2c]: REG WRPC Diag: ctrl */
#define SYSC_REG_WDIAG_CTRL 0x0000002c
/* [0x30]: REG WRPC Diag: servo status */
#define SYSC_REG_WDIAG_SSTAT 0x00000030
/* [0x34]: REG WRPC Diag: Port status */
#define SYSC_REG_WDIAG_PSTAT 0x00000034
/* [0x38]: REG WRPC Diag: PTP state */
#define SYSC_REG_WDIAG_PTPSTAT 0x00000038
/* [0x3c]: REG WRPC Diag: AUX state */
#define SYSC_REG_WDIAG_ASTAT 0x0000003c
/* [0x40]: REG WRPC Diag: Tx PTP Frame cnts */
#define SYSC_REG_WDIAG_TXFCNT 0x00000040
/* [0x44]: REG WRPC Diag: Rx PTP Frame cnts */
#define SYSC_REG_WDIAG_RXFCNT 0x00000044
/* [0x48]: REG WRPC Diag:local time [msb of s] */
#define SYSC_REG_WDIAG_SEC_MSB 0x00000048
/* [0x4c]: REG WRPC Diag: local time [lsb of s] */
#define SYSC_REG_WDIAG_SEC_LSB 0x0000004c
/* [0x50]: REG WRPC Diag: local time [ns] */
#define SYSC_REG_WDIAG_NS 0x00000050
/* [0x54]: REG WRPC Diag: Round trip (mu) [msb of ps] */
#define SYSC_REG_WDIAG_MU_MSB 0x00000054
/* [0x58]: REG WRPC Diag: Round trip (mu) [lsb of ps] */
#define SYSC_REG_WDIAG_MU_LSB 0x00000058
/* [0x5c]: REG WRPC Diag: Master-slave delay (dms) [msb of ps] */
#define SYSC_REG_WDIAG_DMS_MSB 0x0000005c
/* [0x60]: REG WRPC Diag: Master-slave delay (dms) [lsb of ps] */
#define SYSC_REG_WDIAG_DMS_LSB 0x00000060
/* [0x64]: REG WRPC Diag: Total link asymmetry [ps] */
#define SYSC_REG_WDIAG_ASYM 0x00000064
/* [0x68]: REG WRPC Diag: Clock offset (cko) [ps] */
#define SYSC_REG_WDIAG_CKO 0x00000068
/* [0x6c]: REG WRPC Diag: Phase setpoint (setp) [ps] */
#define SYSC_REG_WDIAG_SETP 0x0000006c
/* [0x70]: REG WRPC Diag: Update counter (ucnt) */
#define SYSC_REG_WDIAG_UCNT 0x00000070
/* [0x74]: REG WRPC Diag: Board temperature [C degree] */
#define SYSC_REG_WDIAG_TEMP 0x00000074
#endif
include/syscon.h
View file @
4af29218
...
...
@@ -49,6 +49,7 @@ struct SYSCON_WB {
uint32_t
GPSR
;
/*GPIO Set/Readback Register */
uint32_t
GPCR
;
/*GPIO Clear Register */
uint32_t
HWFR
;
/*Hardware Feature Register */
uint32_t
HWIR
;
/*Hardware Info Register */
uint32_t
TCR
;
/*Timer Control Register */
uint32_t
TVR
;
/*Timer Counter Value Register */
uint32_t
DIAG_INFO
;
...
...
@@ -124,6 +125,9 @@ static inline int sysc_get_memsize(void)
return
(
SYSC_HWFR_MEMSIZE_R
(
syscon
->
HWFR
)
+
1
)
*
16
;
}
#define HW_NAME_LENGTH 5
/* 4 letters + '\0' */
void
get_hw_name
(
char
*
str
);
#define DIAG_RW_BANK 0
#define DIAG_RO_BANK 1
void
diag_read_info
(
uint32_t
*
id
,
uint32_t
*
ver
,
uint32_t
*
nrw
,
uint32_t
*
nro
);
...
...
lib/snmp.c
View file @
4af29218
...
...
@@ -28,6 +28,7 @@
#include "softpll_ng.h"
#include "temperature.h"
#include "sfp.h"
#include "syscon.h"
#include "storage.h"
...
...
@@ -220,8 +221,7 @@ static uint32_t aux_diag_reg_rw_num;
extern
struct
pp_instance
ppi_static
;
static
struct
wr_servo_state
*
wr_s_state
;
#define SNMP_HW_TYPE_LEN 32
char
snmp_hw_type
[
SNMP_HW_TYPE_LEN
]
=
CONFIG_SNMP_HW_TYPE
;
extern
char
wrc_hw_name
[
HW_NAME_LENGTH
];
/* __DATE__ and __TIME__ is already stored in struct spll_stats stats, but
* redefining it here makes code smaller than concatenate existing one */
static
char
*
snmp_build_date
=
__DATE__
" "
__TIME__
;
...
...
@@ -351,7 +351,7 @@ static uint8_t oid_wrpcSfpAlpha[] = {5};
OIDs */
/* wrpcVersionGroup */
static
struct
snmp_oid
oid_array_wrpcVersionGroup
[]
=
{
OID_FIELD_VAR
(
oid_wrpcVersionHwType
,
get_p
,
NO_SET
,
ASN_OCTET_STR
,
&
snmp_hw_typ
e
),
OID_FIELD_VAR
(
oid_wrpcVersionHwType
,
get_p
,
NO_SET
,
ASN_OCTET_STR
,
&
wrc_hw_nam
e
),
OID_FIELD_VAR
(
oid_wrpcVersionSwVersion
,
get_pp
,
NO_SET
,
ASN_OCTET_STR
,
&
build_revision
),
OID_FIELD_VAR
(
oid_wrpcVersionSwBuildBy
,
get_pp
,
NO_SET
,
ASN_OCTET_STR
,
&
build_by
),
OID_FIELD_VAR
(
oid_wrpcVersionSwBuildDate
,
get_pp
,
NO_SET
,
ASN_OCTET_STR
,
&
snmp_build_date
),
...
...
test/snmp/wrpc_test_config
View file @
4af29218
...
...
@@ -31,7 +31,6 @@ CONFIG_CMD_CONFIG=y
CONFIG_SYSLOG=y
CONFIG_SNMP=y
CONFIG_SNMP_SET=y
CONFIG_SNMP_HW_TYPE="spec"
CONFIG_BUILD_INIT=y
CONFIG_INIT_COMMAND="ptp stop"
CONFIG_HAS_BUILD_INIT=1
...
...
wrc_main.c
View file @
4af29218
...
...
@@ -37,6 +37,7 @@
int
wrc_ui_mode
=
UI_SHELL_MODE
;
int
wrc_ui_refperiod
=
TICS_PER_SECOND
;
/* 1 sec */
int
wrc_phase_tracking
=
1
;
char
wrc_hw_name
[
HW_NAME_LENGTH
];
uint32_t
cal_phase_transition
=
2389
;
...
...
@@ -54,6 +55,7 @@ static void wrc_initialize(void)
pp_printf
(
"WR Core: starting up...
\n
"
);
timer_init
(
1
);
get_hw_name
(
wrc_hw_name
);
wrpc_w1_init
();
wrpc_w1_bus
.
detail
=
ONEWIRE_PORT
;
w1_scan_bus
(
&
wrpc_w1_bus
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment