aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/lib/dboards/magnesium_manager.cpp
blob: c9f9a93b6935c55013a6022b484dc909c2e7c145 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//
// Copyright 2017 Ettus Research, a National Instruments Company
//
// SPDX-License-Identifier: GPL-3.0-or-later
//

#include <mpm/ad937x/ad937x_spi_iface.hpp>
#include <mpm/dboards/magnesium_manager.hpp>

using namespace mpm::dboards;
using namespace mpm::chips;

magnesium_manager::magnesium_manager(
    const std::string& mykonos_spidev, const size_t deserializer_lane_xbar)
    : _spi_mutex(std::make_shared<std::mutex>())
    , _spi_lock(mpm::types::lockable::make(_spi_mutex))
    , _mykonos_ctrl(ad937x_ctrl::make(_spi_mutex,
          deserializer_lane_xbar,
          make_ad937x_iface(mykonos_spidev),
          mpm::ad937x::gpio::gain_pins_t()))
{
}