1f86e5ed8SJunfeng Guo /* SPDX-License-Identifier: MIT 2f86e5ed8SJunfeng Guo * Google Virtual Ethernet (gve) driver 3f86e5ed8SJunfeng Guo * Copyright (C) 2015-2022 Google, Inc. 4f86e5ed8SJunfeng Guo */ 5f86e5ed8SJunfeng Guo 6f86e5ed8SJunfeng Guo #ifndef _GVE_REGISTER_H_ 7f86e5ed8SJunfeng Guo #define _GVE_REGISTER_H_ 8f86e5ed8SJunfeng Guo 9*c9ba2cafSJunfeng Guo #include "gve_osdep.h" 10*c9ba2cafSJunfeng Guo 11f86e5ed8SJunfeng Guo /* Fixed Configuration Registers */ 12f86e5ed8SJunfeng Guo struct gve_registers { 13f86e5ed8SJunfeng Guo __be32 device_status; 14f86e5ed8SJunfeng Guo __be32 driver_status; 15f86e5ed8SJunfeng Guo __be32 max_tx_queues; 16f86e5ed8SJunfeng Guo __be32 max_rx_queues; 17f86e5ed8SJunfeng Guo __be32 adminq_pfn; 18f86e5ed8SJunfeng Guo __be32 adminq_doorbell; 19f86e5ed8SJunfeng Guo __be32 adminq_event_counter; 20f86e5ed8SJunfeng Guo u8 reserved[3]; 21f86e5ed8SJunfeng Guo u8 driver_version; 22f86e5ed8SJunfeng Guo }; 23f86e5ed8SJunfeng Guo 24f86e5ed8SJunfeng Guo enum gve_device_status_flags { 25f86e5ed8SJunfeng Guo GVE_DEVICE_STATUS_RESET_MASK = BIT(1), 26f86e5ed8SJunfeng Guo GVE_DEVICE_STATUS_LINK_STATUS_MASK = BIT(2), 27f86e5ed8SJunfeng Guo GVE_DEVICE_STATUS_REPORT_STATS_MASK = BIT(3), 28f86e5ed8SJunfeng Guo }; 29f86e5ed8SJunfeng Guo #endif /* _GVE_REGISTER_H_ */ 30