base.hh (10559:62f5f7363197) base.hh (10905:a6ca6831e775)
1/*
2 * Copyright (c) 2014 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

--- 298 unchanged lines hidden (view full) ---

307 * Base wrapper around a virtqueue.
308 *
309 * VirtIO device models typically need to extend this class to
310 * implement their own device queues.
311 *
312 * @note Queues must be registered with
313 * VirtIODeviceBase::registerQueue() to be active.
314 */
1/*
2 * Copyright (c) 2014 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

--- 298 unchanged lines hidden (view full) ---

307 * Base wrapper around a virtqueue.
308 *
309 * VirtIO device models typically need to extend this class to
310 * implement their own device queues.
311 *
312 * @note Queues must be registered with
313 * VirtIODeviceBase::registerQueue() to be active.
314 */
315class VirtQueue {
315class VirtQueue : public Serializable {
316public:
317 virtual ~VirtQueue() {};
318
319 /** @{
320 * @name Checkpointing Interface
321 */
316public:
317 virtual ~VirtQueue() {};
318
319 /** @{
320 * @name Checkpointing Interface
321 */
322 virtual void serialize(std::ostream &os);
323 virtual void unserialize(Checkpoint *cp, const std::string &section);
324 /** @} */
322 void serialize(CheckpointOut &cp) const M5_ATTR_OVERRIDE;
323 void unserialize(CheckpointIn &cp) M5_ATTR_OVERRIDE;
325
326 /** @{
327 * @name Low-level Device Interface
328 */
329 /**
330 * Set the base address of this queue.
331 *
332 * @param address Guest physical base address of the queue.

--- 258 unchanged lines hidden (view full) ---

591 VirtIODeviceBase(Params *params, DeviceId id, size_t config_size,
592 FeatureBits features);
593 virtual ~VirtIODeviceBase();
594
595 public:
596 /** @{
597 * @name SimObject Interfaces
598 */
324
325 /** @{
326 * @name Low-level Device Interface
327 */
328 /**
329 * Set the base address of this queue.
330 *
331 * @param address Guest physical base address of the queue.

--- 258 unchanged lines hidden (view full) ---

590 VirtIODeviceBase(Params *params, DeviceId id, size_t config_size,
591 FeatureBits features);
592 virtual ~VirtIODeviceBase();
593
594 public:
595 /** @{
596 * @name SimObject Interfaces
597 */
599
600 void serialize(std::ostream &os);
601 void unserialize(Checkpoint *cp, const std::string &section);
602
598 void serialize(CheckpointOut &cp) const M5_ATTR_OVERRIDE;
599 void unserialize(CheckpointIn &cp) M5_ATTR_OVERRIDE;
603 /** @} */
604
605
606 protected:
607 /** @{
608 * @name Device Model Interfaces
609 */
610

--- 271 unchanged lines hidden ---
600 /** @} */
601
602
603 protected:
604 /** @{
605 * @name Device Model Interfaces
606 */
607

--- 271 unchanged lines hidden ---