define common constants in separate header

This has the purpose of making some definitions
public without having to pull in the entire contents of board-state.h
and all the myriad .h files this would #include
parent 66a18461
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#if defined(CONFIG_TARGET_ERTM14) #if defined(CONFIG_TARGET_ERTM14)
#include "hw/wrc_diags_regs.h" #include "hw/wrc_diags_regs.h"
#include "ertm15_rf_distr.h" #include "ertm15_rf_distr.h"
#include "ertm-common.h"
#endif #endif
/* OK, I'm committing an evil thing below, but wbgen and its way of defining packed structures is to blame. /* OK, I'm committing an evil thing below, but wbgen and its way of defining packed structures is to blame.
...@@ -32,17 +33,17 @@ ...@@ -32,17 +33,17 @@
#endif #endif
#endif #endif
#define ERTM14_RF_OUT_MIN_ID 4 #define ERTM14_RF_OUT_MIN_ID ERTM_COMMON_RF_OUT_MIN_ID
#define ERTM14_RF_OUT_MAX_ID 12 #define ERTM14_RF_OUT_MAX_ID ERTM_COMMON_RF_OUT_MAX_ID
#define ERTM14_CLKAB_OUT_MIN_ID 4 #define ERTM14_CLKAB_OUT_MIN_ID ERTM_COMMON_CLKAB_OUT_MIN_ID
#define ERTM14_CLKAB_OUT_MAX_ID 15 #define ERTM14_CLKAB_OUT_MAX_ID ERTM_COMMON_CLKAB_OUT_MAX_ID
#define ERTM14_MAX_SENSORS_COUNT 21 #define ERTM14_MAX_SENSORS_COUNT 21
#define ERTM14_SYNC_SOURCE_NONE 0 #define ERTM14_SYNC_SOURCE_NONE ERTM_COMMON_SYNC_SOURCE_NONE
#define ERTM14_SYNC_SOURCE_PPS 1 #define ERTM14_SYNC_SOURCE_PPS ERTM_COMMON_SYNC_SOURCE_PPS
#define ERTM14_SYNC_SOURCE_RF_TRIGGER 2 #define ERTM14_SYNC_SOURCE_RF_TRIGGER ERTM_COMMON_SYNC_SOURCE_RF_TRIGGER
// sync unit channels // sync unit channels
// SYNC_IN(+/-) of AD9910 // SYNC_IN(+/-) of AD9910
...@@ -100,19 +101,22 @@ ...@@ -100,19 +101,22 @@
/* Clock output sync procedure restarted. This can happen when /* Clock output sync procedure restarted. This can happen when
the output frequency or amplitude is changed by the user */ the output frequency or amplitude is changed by the user */
#define ERTM14_CLK_SYNC_STATE_RESTART 0 #define ERTM14_CLK_SYNC_STATE_RESTART ERTM_COMMON_CLK_SYNC_STATE_RESTART
/* The clock sync state machine is waiting for the WR timing to become available */ /* The clock sync state machine is waiting for the WR timing to become available */
#define ERTM14_CLK_SYNC_STATE_WAIT_TIMING 1 #define ERTM14_CLK_SYNC_STATE_WAIT_TIMING ERTM_COMMON_CLK_SYNC_STATE_WAIT_TIMING
/* The clock sync state machine is configuring the sync pulse generator */ /* The clock sync state machine is configuring the sync pulse generator */
#define ERTM14_CLK_SYNC_STATE_CONFIGURE 2 #define ERTM14_CLK_SYNC_STATE_CONFIGURE ERTM_COMMON_CLK_SYNC_STATE_CONFIGURE
/* The clock sync state machine is waiting for the sycn pulse to be triggered */ /* The clock sync state machine is waiting for the sycn pulse to be triggered */
#define ERTM14_CLK_SYNC_STATE_WAIT_TRIGGER 3 #define ERTM14_CLK_SYNC_STATE_WAIT_TRIGGER ERTM_COMMON_CLK_SYNC_STATE_WAIT_TRIGGER
/* Resync done, output clock is ready */ /* Resync done, output clock is ready */
#define ERTM14_CLK_SYNC_STATE_READY 4 #define ERTM14_CLK_SYNC_STATE_READY ERTM_COMMON_CLK_SYNC_STATE_READY
/* streamer default latency and timeout */ /* streamer default latency and timeout */
#define ERTM14_NCO_RESET_DEFAULT_LATENCY (16000/16) #define ERTM14_NCO_RESET_DEFAULT_LATENCY (16000/16)
......
...@@ -105,14 +105,14 @@ extern unsigned char *BASE_EP; ...@@ -105,14 +105,14 @@ extern unsigned char *BASE_EP;
#define BASE_ERTM14_DEBUG_UART (BASE_AUXWB + 0x800) #define BASE_ERTM14_DEBUG_UART (BASE_AUXWB + 0x800)
#define BASE_ERTM14_BUILD_INFO (BASE_AUXWB + 0x900) #define BASE_ERTM14_BUILD_INFO (BASE_AUXWB + 0x900)
#define ERTM14_RF_OUT_MIN_ID 4 #define ERTM14_RF_OUT_MIN_ID ERTM_COMMON_RF_OUT_MIN_ID
#define ERTM14_RF_OUT_MAX_ID 12 #define ERTM14_RF_OUT_MAX_ID ERTM_COMMON_RF_OUT_MAX_ID
#define ERTM14_OUT_CLKA 0 #define ERTM14_OUT_CLKA 0
#define ERTM14_OUT_CLKB 1 #define ERTM14_OUT_CLKB 1
#define ERTM14_CLKAB_OUT_MIN_ID 4 #define ERTM14_CLKAB_OUT_MIN_ID ERTM_COMMON_CLKAB_OUT_MIN_ID
#define ERTM14_CLKAB_OUT_MAX_ID 15 #define ERTM14_CLKAB_OUT_MAX_ID ERTM_COMMON_CLKAB_OUT_MAX_ID
#define ERTM14_CLKAB_OUT_FRONT_PANEL 15 #define ERTM14_CLKAB_OUT_FRONT_PANEL 15
......
/*
* SPDX-License-Identifier: GPL-3.0-or-later
*
* Copyright 2020-2021 CERN
* Author: Juan David Gonzalez Cobas
*
*/
#ifndef _ERTM_COMMON_H_
#define _ERTM_COMMON_H_
#ifdef __cplusplus
extern "C" {
#endif
#define ERTM_COMMON_RF_OUT_ON 0
#define ERTM_COMMON_RF_OUT_MONITOR 1
#define ERTM_COMMON_RF_OUT_OFF 2
#define ERTM_COMMON_CLKAB_OUT_MIN_ID 4
#define ERTM_COMMON_CLKAB_OUT_MAX_ID 15
#define ERTM_COMMON_RF_OUT_MIN_ID 4
#define ERTM_COMMON_RF_OUT_MAX_ID 12
#define ERTM_COMMON_SYNC_SOURCE_NONE 0
#define ERTM_COMMON_SYNC_SOURCE_PPS 1
#define ERTM_COMMON_SYNC_SOURCE_RF_TRIGGER 2
#define ERTM_COMMON_CLK_SYNC_STATE_RESTART 0
#define ERTM_COMMON_CLK_SYNC_STATE_WAIT_TIMING 1
#define ERTM_COMMON_CLK_SYNC_STATE_CONFIGURE 2
#define ERTM_COMMON_CLK_SYNC_STATE_WAIT_TRIGGER 3
#define ERTM_COMMON_CLK_SYNC_STATE_READY 4
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* _ERTM_COMMON_H_ */
...@@ -22,11 +22,11 @@ ...@@ -22,11 +22,11 @@
#define __ERTM15_RF_DISTR_H #define __ERTM15_RF_DISTR_H
#include <stdint.h> #include <stdint.h>
#include "ertm-common.h"
#define ERTM15_RF_OUT_ON ERTM_COMMON_RF_OUT_ON
#define ERTM15_RF_OUT_ON 0 #define ERTM15_RF_OUT_MONITOR ERTM_COMMON_RF_OUT_MONITOR
#define ERTM15_RF_OUT_MONITOR 1 #define ERTM15_RF_OUT_OFF ERTM_COMMON_RF_OUT_OFF
#define ERTM15_RF_OUT_OFF 2
#define ERTM15_RF_LO 0 #define ERTM15_RF_LO 0
#define ERTM15_RF_REF 1 #define ERTM15_RF_REF 1
......
...@@ -15,6 +15,7 @@ extern "C" { ...@@ -15,6 +15,7 @@ extern "C" {
#endif #endif
#include <stdint.h> #include <stdint.h>
#include "ertm-common.h"
struct ertm_lib_version { struct ertm_lib_version {
char *lib_version; char *lib_version;
...@@ -62,28 +63,28 @@ enum ertm_connector { ...@@ -62,28 +63,28 @@ enum ertm_connector {
}; };
/* MONITOR is OFF to all effects and purposes */ /* MONITOR is OFF to all effects and purposes */
#define ERTM_RF_OUT_ON ERTM15_RF_OUT_ON #define ERTM_RF_OUT_ON ERTM_COMMON_RF_OUT_ON
#define ERTM_RF_OUT_OFF ERTM15_RF_OUT_OFF #define ERTM_RF_OUT_OFF ERTM_COMMON_RF_OUT_OFF
#define ERTM_RF_OUT_MONITOR ERTM15_RF_OUT_MONITOR #define ERTM_RF_OUT_MONITOR ERTM_COMMON_RF_OUT_MONITOR
/* real available channels in connectors */ /* real available channels in connectors */
#define ERTM_CLKAB_MIN_CH ERTM14_CLKAB_OUT_MIN_ID #define ERTM_CLKAB_MIN_CH ERTM_COMMON_CLKAB_OUT_MIN_ID
#define ERTM_CLKAB_MAX_CH ERTM14_CLKAB_OUT_MAX_ID #define ERTM_CLKAB_MAX_CH ERTM_COMMON_CLKAB_OUT_MAX_ID
#define ERTM_LOREF_MIN_CH ERTM14_RF_OUT_MIN_ID #define ERTM_LOREF_MIN_CH ERTM_COMMON_RF_OUT_MIN_ID
#define ERTM_LOREF_MAX_CH ERTM14_RF_OUT_MAX_ID #define ERTM_LOREF_MAX_CH ERTM_COMMON_RF_OUT_MAX_ID
/* sync states of DDS and CLKA/B channels */ /* sync states of DDS and CLKA/B channels */
#define ERTM_SYNC_STATE_RESTART ERTM14_CLK_SYNC_STATE_RESTART #define ERTM_SYNC_STATE_RESTART ERTM_COMMON_CLK_SYNC_STATE_RESTART
#define ERTM_SYNC_STATE_WAIT_TIMING ERTM14_CLK_SYNC_STATE_WAIT_TIMING #define ERTM_SYNC_STATE_WAIT_TIMING ERTM_COMMON_CLK_SYNC_STATE_WAIT_TIMING
#define ERTM_SYNC_STATE_CONFIGURE ERTM14_CLK_SYNC_STATE_CONFIGURE #define ERTM_SYNC_STATE_CONFIGURE ERTM_COMMON_CLK_SYNC_STATE_CONFIGURE
#define ERTM_SYNC_STATE_WAIT_TRIGGER ERTM14_CLK_SYNC_STATE_WAIT_TRIGGER #define ERTM_SYNC_STATE_WAIT_TRIGGER ERTM_COMMON_CLK_SYNC_STATE_WAIT_TRIGGER
#define ERTM_SYNC_STATE_READY ERTM14_CLK_SYNC_STATE_READY #define ERTM_SYNC_STATE_READY ERTM_COMMON_CLK_SYNC_STATE_READY
/* sync modes */ /* sync modes */
#define ERTM_SYNC_SOURCE_NONE ERTM14_SYNC_SOURCE_NONE #define ERTM_SYNC_SOURCE_NONE ERTM_COMMON_SYNC_SOURCE_NONE
#define ERTM_SYNC_SOURCE_PPS ERTM14_SYNC_SOURCE_PPS #define ERTM_SYNC_SOURCE_PPS ERTM_COMMON_SYNC_SOURCE_PPS
#define ERTM_SYNC_SOURCE_RF_TRIGGER ERTM14_SYNC_SOURCE_RF_TRIGGER #define ERTM_SYNC_SOURCE_RF_TRIGGER ERTM_COMMON_SYNC_SOURCE_RF_TRIGGER
struct ertm_sync_states { struct ertm_sync_states {
int sync_state; int sync_state;
......
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