gpu_nomali.hh (11349:9e46b77e5e56) | gpu_nomali.hh (11350:ef6e57ac0d70) |
---|---|
1/* 2 * Copyright (c) 2014-2016 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 40 unchanged lines hidden (view full) --- 49class RealView; 50 51class NoMaliGpu : public PioDevice 52{ 53 public: 54 NoMaliGpu(const NoMaliGpuParams *p); 55 virtual ~NoMaliGpu(); 56 | 1/* 2 * Copyright (c) 2014-2016 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 40 unchanged lines hidden (view full) --- 49class RealView; 50 51class NoMaliGpu : public PioDevice 52{ 53 public: 54 NoMaliGpu(const NoMaliGpuParams *p); 55 virtual ~NoMaliGpu(); 56 |
57 void init() override; 58 |
|
57 public: /* Checkpointing */ 58 void serialize(CheckpointOut &cp) const override; 59 void unserialize(CheckpointIn &cp) override; 60 61 public: /* IO device interfaces */ 62 Tick read(PacketPtr pkt) override; 63 Tick write(PacketPtr pkt) override; 64 AddrRangeList getAddrRanges() const override; --- 56 unchanged lines hidden (view full) --- 121 * 122 * This method is called whenever there is an interrupt state change. 123 * 124 * @param intno Interrupt number 125 * @param set True is the interrupt is being asserted, false otherwise. 126 */ 127 virtual void onInterrupt(nomali_int_t intno, bool set); 128 | 59 public: /* Checkpointing */ 60 void serialize(CheckpointOut &cp) const override; 61 void unserialize(CheckpointIn &cp) override; 62 63 public: /* IO device interfaces */ 64 Tick read(PacketPtr pkt) override; 65 Tick write(PacketPtr pkt) override; 66 AddrRangeList getAddrRanges() const override; --- 56 unchanged lines hidden (view full) --- 123 * 124 * This method is called whenever there is an interrupt state change. 125 * 126 * @param intno Interrupt number 127 * @param set True is the interrupt is being asserted, false otherwise. 128 */ 129 virtual void onInterrupt(nomali_int_t intno, bool set); 130 |
131 /** 132 * Reset callback from the NoMali library 133 * 134 * This method is called whenever the GPU is reset through the 135 * register interface or the API (reset() or nomali_reset()). 136 */ 137 virtual void onReset(); 138 |
|
129 /** @} */ 130 131 private: /* Callback helpers */ 132 /** Wrapper around nomali_set_callback() */ 133 void setCallback(const nomali_callback_t &callback); 134 135 /** 136 * Interrupt callback from the NoMali library. 137 * 138 * This method calls onInterrupt() on the NoMaliGpu owning this 139 * device. 140 * 141 * @param h NoMali library handle. 142 * @param usr Pointer to an instance of the NoMaliGpu 143 * @param intno GPU interrupt type 144 * @param set Was the interrupt raised (1) or lowered (0)? 145 */ 146 static void _interrupt(nomali_handle_t h, void *usr, 147 nomali_int_t intno, int set); | 139 /** @} */ 140 141 private: /* Callback helpers */ 142 /** Wrapper around nomali_set_callback() */ 143 void setCallback(const nomali_callback_t &callback); 144 145 /** 146 * Interrupt callback from the NoMali library. 147 * 148 * This method calls onInterrupt() on the NoMaliGpu owning this 149 * device. 150 * 151 * @param h NoMali library handle. 152 * @param usr Pointer to an instance of the NoMaliGpu 153 * @param intno GPU interrupt type 154 * @param set Was the interrupt raised (1) or lowered (0)? 155 */ 156 static void _interrupt(nomali_handle_t h, void *usr, 157 nomali_int_t intno, int set); |
158 159 /** 160 * Reset callback from the NoMali library. 161 * 162 * This method calls onReset() on the NoMaliGpu owning this 163 * device. 164 * 165 * @param h NoMali library handle. 166 * @param usr Pointer to an instance of the NoMaliGpu 167 */ 168 static void _reset(nomali_handle_t h, void *usr); 169 |
|
148 protected: 149 /** Device base address */ 150 const Addr pioAddr; 151 152 /** Platform, used to discover GIC */ 153 RealView *const platform; 154 155 /** Map between NoMali interrupt types and actual GIC --- 12 unchanged lines hidden --- | 170 protected: 171 /** Device base address */ 172 const Addr pioAddr; 173 174 /** Platform, used to discover GIC */ 175 RealView *const platform; 176 177 /** Map between NoMali interrupt types and actual GIC --- 12 unchanged lines hidden --- |