Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion for bsg_set_tile_x_y completion #634

Open
dpetrisko opened this issue Mar 16, 2022 · 0 comments
Open

Assertion for bsg_set_tile_x_y completion #634

dpetrisko opened this issue Mar 16, 2022 · 0 comments
Labels
question Further information is requested

Comments

@dpetrisko
Copy link
Contributor

If it's possible in some way, it would be nice if there was a warning / error for not calling and letting bsg_set_tile_x_y complete before calling other bsg_ functions. The issue that I've seen is basically trying to debug code, it's natural to do

int main() {
bsg_printf("Starting main");
bsg_set_tile_x_y();
bsg_printf("Tile set");
}

This is broken, because the endpoint locking relies on bsg_x_y being set. But it breaks in a really unintuitive way, since packets get returned to the wrong cores. Perhaps bsg_set_tile_x_y could set a software bit which is checked by bsg_functions? Or there could be a hardware info assertion that x_y has not been written at least once before packets start sending. Thoughts?

As an aside, is this requirement documented anywhere?

@dpetrisko dpetrisko added the question Further information is requested label Mar 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

1 participant