| // Copyright lowRISC contributors. |
| // Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| // SPDX-License-Identifier: Apache-2.0 |
| |
| <% |
| clks_attr = cfg['clocks'] |
| grps = clks_attr['groups'] |
| num_hints = len(hint_clks) |
| %> |
| |
| package clkmgr_pkg; |
| |
| typedef struct packed { |
| logic test_en; |
| } clk_dft_t; |
| |
| parameter clk_dft_t CLK_DFT_DEFAULT = '{ |
| test_en: 1'b0 |
| }; |
| |
| typedef struct packed { |
| % for clk in {**ft_clks, **hint_clks, **rg_clks, **sw_clks}: |
| logic ${clk}; |
| % endfor |
| |
| } clkmgr_out_t; |
| |
| typedef struct packed { |
| logic [${num_hints}-1:0] idle; |
| } clk_hint_status_t; |
| |
| parameter clk_hint_status_t CLK_HINT_STATUS_DEFAULT = '{ |
| idle: {${num_hints}{1'b1}} |
| }; |
| |
| |
| endpackage // clkmgr_pkg |