PicoScenes API Docs
 
Loading...
Searching...
No Matches
QCA9300FrontEnd.hxx
Go to the documentation of this file.
1//
2// Created by Zhiping Jiang on 9/15/21.
3//
4
5#ifndef PICOSCENES_PLATFORM_QCA9300FRONTEND_HXX
6#define PICOSCENES_PLATFORM_QCA9300FRONTEND_HXX
7
9
11
12public:
13
14 static std::shared_ptr<QCA9300FrontEnd> getInstance(const std::string &referredInterfaceName);
15
16 explicit QCA9300FrontEnd(const std::string &referredInterfaceName);
17
18 virtual uint32_t getChansel() = 0;
19
20 virtual uint8_t getBMode() = 0;
21
22 virtual uint8_t getTxNess() = 0;
23
24 virtual uint32_t getTSF() = 0;
25
26 virtual uint32_t getPLLRate() = 0;
27
28 virtual uint16_t getPLLMultiplier() = 0;
29
30 virtual uint8_t getPLLRefDiv() = 0;
31
32 virtual uint8_t getPLLClockSelect() = 0;
33
34 virtual bool getTxNotSounding() = 0;
35
36 virtual AtherosCFTuningPolicy getTuningPolicy() = 0;
37
38 virtual void setCarrierFrequency(double freq, enum AtherosCFTuningPolicy policy) = 0;
39
40 virtual void setChansel(uint32_t chansel) = 0;
41
42 virtual void setBMode(uint8_t bmode) = 0;
43
44 virtual void setTuningPolicy(enum AtherosCFTuningPolicy policy) = 0;
45
46 virtual void setTxNess(uint8_t tx_Ness) = 0;
47
48 virtual void setPLLValues(uint32_t multipler, uint8_t refDiv, uint8_t clockSelect) = 0;
49
50 virtual void setPLLMultiplier(uint32_t multipler) = 0;
51
52 virtual void setPLLRefDiv(uint8_t refDiv) = 0;
53
54 virtual void setPLLClockSelect(uint8_t clockSelect) = 0;
55
56 virtual void setTxNotSounding(bool not_sounding) = 0;
57
58 virtual void setRxPA(uint8_t channel, bool manualMode, uint8_t LNA, uint8_t VGA, uint8_t MXR) = 0;
59
60 virtual void setRxAGC(bool enabled) = 0;
61
62 virtual uint32_t getRegisterValue(const uint32_t &address, const uint32_t mask = 0xffffffff) = 0;
63
64 virtual void setRegisterValue(const uint32_t &address, const uint32_t value, const uint32_t mask) = 0;
65};
66
67
68#endif //PICOSCENES_PLATFORM_QCA9300FRONTEND_HXX
std::string referredInterfaceName
the user specified frontend name
QCA9300FrontEnd(const std::string &referredInterfaceName)
virtual void setPLLMultiplier(uint32_t multipler)=0
virtual void setPLLRefDiv(uint8_t refDiv)=0
virtual uint32_t getTSF()=0
virtual void setChansel(uint32_t chansel)=0
static std::shared_ptr< QCA9300FrontEnd > getInstance(const std::string &referredInterfaceName)
virtual void setTuningPolicy(enum AtherosCFTuningPolicy policy)=0
virtual void setTxNotSounding(bool not_sounding)=0
virtual uint16_t getPLLMultiplier()=0
virtual uint32_t getPLLRate()=0
virtual void setCarrierFrequency(double freq, enum AtherosCFTuningPolicy policy)=0
virtual void setRxAGC(bool enabled)=0
virtual AtherosCFTuningPolicy getTuningPolicy()=0
virtual uint8_t getPLLClockSelect()=0
virtual uint32_t getChansel()=0
virtual uint8_t getPLLRefDiv()=0
virtual void setPLLClockSelect(uint8_t clockSelect)=0
virtual bool getTxNotSounding()=0
virtual void setRxPA(uint8_t channel, bool manualMode, uint8_t LNA, uint8_t VGA, uint8_t MXR)=0
virtual void setPLLValues(uint32_t multipler, uint8_t refDiv, uint8_t clockSelect)=0
virtual void setRegisterValue(const uint32_t &address, const uint32_t value, const uint32_t mask)=0
virtual uint8_t getTxNess()=0
virtual void setTxNess(uint8_t tx_Ness)=0
virtual uint8_t getBMode()=0
virtual void setBMode(uint8_t bmode)=0
virtual uint32_t getRegisterValue(const uint32_t &address, const uint32_t mask=0xffffffff)=0