fw: Update the helpers in misc.{c,h} for the new tick measurement hw
Signed-off-by: Sylvain Munaut <tnt@246tNt.com> Change-Id: Ia881fead7a40f773969a016db05bea0a1fa1604f
This commit is contained in:
parent
be4564a224
commit
95a72df387
|
@ -15,10 +15,11 @@
|
|||
struct misc {
|
||||
uint32_t warmboot;
|
||||
uint32_t _rsvd0[3];;
|
||||
struct {
|
||||
uint16_t rx;
|
||||
uint16_t _rsvd1;
|
||||
} e1_tick[2];
|
||||
union {
|
||||
uint32_t e1_tick_sel;
|
||||
uint16_t e1_tick[2];
|
||||
};
|
||||
uint32_t _rsvd1;
|
||||
struct {
|
||||
uint32_t _rsvd2;
|
||||
uint32_t now;
|
||||
|
@ -29,10 +30,15 @@ static volatile struct misc * const misc_regs = (void*)(MISC_BASE);
|
|||
|
||||
|
||||
void
|
||||
e1_tick_read(uint16_t *ticks)
|
||||
e1_tick_sel(int type)
|
||||
{
|
||||
ticks[0] = misc_regs->e1_tick[0].rx;
|
||||
ticks[1] = misc_regs->e1_tick[1].rx;
|
||||
misc_regs->e1_tick_sel = (type << 16) | type;
|
||||
}
|
||||
|
||||
uint16_t
|
||||
e1_tick_read(int port)
|
||||
{
|
||||
return misc_regs->e1_tick[port];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -10,6 +10,14 @@
|
|||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
|
||||
void e1_tick_read(uint16_t *ticks);
|
||||
enum e1_tick_type {
|
||||
TICK_TX = 0,
|
||||
TICK_RX_PULSE = 1,
|
||||
TICK_RX_SAMPLE = 2,
|
||||
TICK_RX_ONE = 3,
|
||||
};
|
||||
|
||||
void e1_tick_sel(int type);
|
||||
uint16_t e1_tick_read(int port);
|
||||
|
||||
void reboot(int fw);
|
||||
|
|
|
@ -21,11 +21,12 @@ struct misc {
|
|||
uint8_t _rsvd;
|
||||
} gpio;
|
||||
uint32_t e1_led;
|
||||
uint32_t _rsvd;
|
||||
struct {
|
||||
uint16_t rx;
|
||||
uint16_t tx;
|
||||
} e1_tick[2];
|
||||
uint32_t _rsvd0;
|
||||
union {
|
||||
uint32_t e1_tick_sel;
|
||||
uint16_t e1_tick[2];
|
||||
};
|
||||
uint32_t _rsvd1;
|
||||
struct {
|
||||
uint32_t pps;
|
||||
uint32_t now;
|
||||
|
@ -116,10 +117,16 @@ e1_platform_led_set(int port, enum e1_platform_led led,
|
|||
}
|
||||
|
||||
|
||||
void
|
||||
e1_tick_sel(int type)
|
||||
{
|
||||
misc_regs->e1_tick_sel = (type << 16) | type;
|
||||
}
|
||||
|
||||
uint16_t
|
||||
e1_tick_read(int port)
|
||||
{
|
||||
return misc_regs->e1_tick[port].tx;
|
||||
return misc_regs->e1_tick[port];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -34,6 +34,14 @@ void e1_led_run(void);
|
|||
void e1_led_pause(void);
|
||||
void e1_led_set(bool enable, uint8_t cfg);
|
||||
|
||||
enum e1_tick_type {
|
||||
TICK_TX = 0,
|
||||
TICK_RX_PULSE = 1,
|
||||
TICK_RX_SAMPLE = 2,
|
||||
TICK_RX_ONE = 3,
|
||||
};
|
||||
|
||||
void e1_tick_sel(int type);
|
||||
uint16_t e1_tick_read(int port);
|
||||
|
||||
bool time_elapsed(uint32_t ref, unsigned int tick);
|
||||
|
|
Loading…
Reference in New Issue