diff options
Diffstat (limited to 'src/dev/arm/rv_ctrl.hh')
-rw-r--r-- | src/dev/arm/rv_ctrl.hh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/dev/arm/rv_ctrl.hh b/src/dev/arm/rv_ctrl.hh index 1a55025a8..b325c4b16 100644 --- a/src/dev/arm/rv_ctrl.hh +++ b/src/dev/arm/rv_ctrl.hh @@ -44,6 +44,7 @@ #include "dev/io_device.hh" #include "params/RealViewCtrl.hh" #include "params/RealViewOsc.hh" +#include "params/RealViewTemperatureSensor.hh" /** @file * This implements the simple real view registers on a PBXA9 @@ -219,5 +220,32 @@ class RealViewOsc void clockPeriod(Tick clock_period); }; +/** + * This device implements the temperature sensor used in the + * RealView/Versatile Express platform. + * + * See ARM DUI 0447J (ARM Motherboard Express uATX -- V2M-P1). + */ +class RealViewTemperatureSensor + : public SimObject, RealViewCtrl::Device +{ + public: + RealViewTemperatureSensor(RealViewTemperatureSensorParams *p) + : SimObject(p), + RealViewCtrl::Device(*p->parent, RealViewCtrl::FUNC_TEMP, + p->site, p->position, p->dcc, p->device), + system(p->system) + {} + virtual ~RealViewTemperatureSensor() {}; + + public: // RealViewCtrl::Device interface + uint32_t read() const override; + void write(uint32_t temp) override {} + + protected: + /** The system this RV device belongs to */ + System * system; +}; + #endif // __DEV_ARM_RV_HH__ |