// TODO: add copyright
//
//

#include <stdint.h>

#include "config.h"

typedef struct {
    uint32_t period1;
    uint32_t delay1;
    uint32_t duty2;
    uint32_t delay2;
    uint32_t duty3;
    uint32_t delay3;
    uint32_t npuls3;
    uint32_t odd_train_flag;
    uint32_t ena_odd_out3;
    uint64_t reserved;
} three_signal_regs_t __attribute__((packed,aligned(4)));

typedef struct {
    union {
        uint32_t data[16];
        three_signal_regs_t regs;
    };
} wb_mailbox_regs_t __attribute__((packed,aligned(4)));

static volatile wb_mailbox_regs_t * const mailbox_regs = (void*)(MAILBOX_BASE);
