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

AT91SAM9G45 boot hang / bricked #161

Open
Happytec opened this issue Mar 29, 2023 · 0 comments
Open

AT91SAM9G45 boot hang / bricked #161

Happytec opened this issue Mar 29, 2023 · 0 comments

Comments

@Happytec
Copy link

Hi,

We are using an AT91SAM9G45 processor in one of our products. We have a lot of problems with this product being bricked, which we can fix pretty easily in house by disconnecting the backup battery. This seems to be a known issue on said processor.

Now we have started to research this problem and we have found a way to reproduce something that looks like the same behaviour by switching the unit off while still in the AT91Bootstrap phase (say 1 out of 3 reboots) and to a lesser extent while booted further than AT91Bootstrap (say 1 out of 100 times). Also we noticed that the problem does not occur with the older version of the bootloader, 1.16 (the version showing this problem is 3.8.7). Some of the differences we found between these versions are:

  • The old version leaves the internal RC running even though it switches to the crystal oscillator as slow clock

  • The old version does not enable external reset, which the new version does.

Seems unrelated, but the old version does not enable the PIT timer

  • So far we tried reproducing the issue under the following conditions:

Leaving the internal RC running: improves the rate of bricked units from 1 out of 3 into about 1 out of 5, not such a huge improvement

Leaving the external reset disabled: improves the rate of bricked units from 1 out of 3 into about 1 out of 25, a significant improvement but still not near as good as the old AT91bootstrap version

A combination of both aforementioned changes: rate of bricked units remains at 1 out of 3, very strange.

Enabling the internal RC and leaving the external oscillator disabled: rate of bricked units improves to 1 out of 1150, a immense improvement, but we are reluctant to actually use this as we want to use the RTC if possible. Also, the problem still isn't solved completely.

We introduced the new bootstrap version to our products to enable ECC, but so far it seems to have caused more issues than it has solved. Is there a known issue with version 3.8.7 that we need to know about? If so, which version or patch might fix this? Could anybody point me into the right direction?

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant