12345678910111213141516171819202122232425262728293031323334353637383940 |
- /*
- Copyright (c) 2023 Victor Suarez Rovere <suarezvictor@gmail.com>
- SPDX-License-Identifier: AGPL-3.0-only
- This program is free software: you can redistribute it and/or modify it under the terms of the
- GNU Affero General Public License as published by the Free Software Foundation, version 3.
- This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
- without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the GNU Affero General Public License for more details.
- You should have received a copy of the GNU Affero General Public License along with this program.
- If not, see <https://www.gnu.org/licenses/>.
- This file uses portions from LiteX and MiSoC projects under BSD 2-Clause license
- Unless otherwise noted, LiteX is copyright (C) 2012-2022 Enjoy-Digital & LiteX developers.
- Unless otherwise noted, MiSoC is copyright (C) 2012-2015 Enjoy-Digital.
- Unless otherwise noted, MiSoC is copyright (C) 2007-2015 M-Labs Ltd.
- See LITEX-CONTRIBUTORS file for additional authors that may have written code used in this file
- */
- typedef struct {
- volatile uint32_t run; //offset 0x0
- volatile uint32_t done; //offset 0x4
- volatile uint32_t x0; //offset 0x8
- volatile uint32_t y0; //offset 0xc
- volatile uint32_t x1; //offset 0x10
- volatile uint32_t y1; //offset 0x14
- volatile uint32_t rgba; //offset 0x18
- volatile uint32_t base; //offset 0x1c
- volatile uint32_t xstride; //offset 0x20
- volatile uint32_t ystride; //offset 0x24
- } accel_ellipse_fill32_layout_t;
- #ifndef DISABLE_HARDWARE_ACCEL
- #define ACCEL_ELLIPSE_FILL32_CSR_PAGE_SIZE 0x28
- #define ACCEL_ELLIPSE_FILL32_CSR_PAGE_OFFSET 0x0
- ACCEL_STATIC_ASSERT(sizeof(accel_ellipse_fill32_layout_t)==ACCEL_ELLIPSE_FILL32_CSR_PAGE_SIZE, non_matching_struct_size)
- #endif
|