gowin: Proper use of the C++ mechanisms

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
This commit is contained in:
YRabbit 2023-01-30 18:59:09 +10:00
parent 6a1212a1e1
commit 2829a7d70a
2 changed files with 8 additions and 10 deletions

View File

@ -2108,7 +2108,7 @@ bool Arch::is_GCLKT_iob(const CellInfo *cell)
return false; return false;
} }
void Arch::bind_pll_to_bel(CellInfo *ci, int loc) void Arch::bind_pll_to_bel(CellInfo *ci, PLL loc)
{ {
BelId bel; BelId bel;
switch (ci->type.hash()) { switch (ci->type.hash()) {

View File

@ -283,6 +283,12 @@ struct ArchRanges : BaseArchRanges
using GroupGroupsRangeT = const std::vector<GroupId> &; using GroupGroupsRangeT = const std::vector<GroupId> &;
}; };
enum class PLL // fixed PLL locations
{
left,
right
};
struct Arch : BaseArch<ArchRanges> struct Arch : BaseArch<ArchRanges>
{ {
std::string family; std::string family;
@ -482,7 +488,7 @@ struct Arch : BaseArch<ArchRanges>
void add_rpll_ports(DatabasePOD const *db, BelsPOD const *bel, IdString belname, int row, int col); void add_rpll_ports(DatabasePOD const *db, BelsPOD const *bel, IdString belname, int row, int col);
void fix_pll_nets(Context *ctx); void fix_pll_nets(Context *ctx);
bool is_GCLKT_iob(const CellInfo *cell); bool is_GCLKT_iob(const CellInfo *cell);
void bind_pll_to_bel(CellInfo *ci, int loc); void bind_pll_to_bel(CellInfo *ci, PLL loc);
GowinGlobalRouter globals_router; GowinGlobalRouter globals_router;
void mark_gowin_globals(Context *ctx); void mark_gowin_globals(Context *ctx);
@ -531,14 +537,6 @@ enum
}; };
} }
namespace PLL { // fixed PLL locations
enum
{
left = 0,
right = 1
};
}
NEXTPNR_NAMESPACE_END NEXTPNR_NAMESPACE_END
#endif /* GOWIN_ARCH_H */ #endif /* GOWIN_ARCH_H */