Adds the atmega1284p CPU and the first version of the INGA board to RIOT#7604
Adds the atmega1284p CPU and the first version of the INGA board to RIOT#7604roberthartung wants to merge 9 commits intoRIOT-OS:masterfrom
Conversation
577de27 to
b562d9a
Compare
lebrush
left a comment
There was a problem hiding this comment.
Looks good. Of course I don't have the hardware to test it. I suggest the following actions:
- run uncrustify (many things not RIOTish, like 2 space identation)
- separate in 3 PR (CPU, Board and Tool) for easier review
Is this board available to the public? In the sense can someone buy it somewhere?
boards/inga_common/board.c
Outdated
| * General Public License v2.1. See the file LICENSE in the top level | ||
| * directory for more details. | ||
| */ | ||
|
|
There was a problem hiding this comment.
Missing doxygen tags (also in other files)
|
It's a public, open source platform ( see https://www.ibr.cs.tu-bs.de/projects/inga/ ). Some bought them off of us and some are spread around some other universities as well. |
|
@lebrush Thanks for the review. Most changes are done. I am about to add the other versions of INGA as well. Should I will further split the inga-comm/inga-red platform commit into one for each inga-common, inga-red, ... |
|
Personally I would not mind to have all the boards in a PR, but the philosophy so far is to split PR into independent groups :-) |
|
@lebrush was talking about commits here, not PRs ;-) What do you mean by "independent groups"? |
|
I don't know... guess I was thinking about something else at the same time of writing. What I meant is 1 PR per feature/fix and being a board a new feature. |
b562d9a to
c662004
Compare
|
This should be merged after #7610 |
kYc0o
left a comment
There was a problem hiding this comment.
I have some minor comments.
I see also that some periph_conf.h files are empty, are they really needed?
boards/inga_green/include/board.h
Outdated
| #include "periph_conf.h" | ||
| /* For GPIO_IN */ | ||
| #include "periph/gpio.h" | ||
| /* from inga_common */ |
There was a problem hiding this comment.
This comments can be removed.
boards/inga_white/include/board.h
Outdated
| #include "periph_conf.h" | ||
| /* For GPIO_IN */ | ||
| #include "periph/gpio.h" | ||
| /* from inga_common */ |
|
@kYc0o done. We still need to wait for the pcint implementation to be merged before! |
74cee76 to
7cfe6a3
Compare
f5cb1d6 to
fb13ba1
Compare
boards: adds INGA
fb13ba1 to
ad50e08
Compare
|
Without checking any details: Is this PR still waiting for others? |
|
The ATmega1284P CPU is supported by RIOT by now and seems to work, as it is used by the Mega1284P-Xplained board. I think this PR could (and should) be updated to add support for the INGA board by using the ATmege1284P implementation merged into RIOT in the meantime. (Are there any missing features in the ATmega1284P? If so, I would suggest to tackle them as separate PR(s). Also: The RTC support seems to be on the right track for merging right now #8842) |
|
@roberthartung: Thanks for pointing that out. I started to read the threads and decided to dive into it tomorrow with a fresh mind... However: It seems to me that support for the INGA could be added without the AVR implementation of |
|
@maribu The PRs are not about having support for GPIO_BOTH. It is about a general support for pin change interrupts, which simply does not exist by now! INGA needs this for the radio to work. I will create a PR for our pin change solution and give you a mention to hopefully finally have a simple and good solution to make it work. |
|
By "pin changed interrupt" you mean an interrupt is generated when any pin of a port is changed, in contrast to |
|
@maribu There are two types of interrupts on atmel MCUs: External Interrupts and Pin Change Interrupts. External Interrupts are only available on very few pins and have dedicated interrupts (ISRs). Pin Change Interrupts can occur on any GPIO, but share one interrupt per port. GPIO_BOTH simply sets the flank (rising or falling). |
|
Once #11122 is merged, we can rebase this on the latest master. Finally! |
|
Well, #11122 is merged now |
|
Adding new Atmega boards should be easier now, maybe give this another try? |
| rtt_cb_t rtt_next_cb; | ||
| volatile int cnt = 0; | ||
|
|
||
| void rtt_init(void) { |
There was a problem hiding this comment.
You could split out periph/rtt as its own PR. Without having looked into it closely, I guess this should also be possible to add to cpu/atmega_common instead.
Definitely! The CPU is now there anyway and you could reuse a lot in I'm not quite convinced that the RIOT repo however is the right place to add the source of the |
|
@roberthartung shouldn't we progress here? |
|
@tcschmidt @maribu absolutely! As soon as there is some freetime due to the current situation, I will work on that. I am also visiting the institute today, so I might could bring some hardware home. In addition my student is already working on splitting the power management for |
@maribu The |
|
You can just download the tool on-demand like |
Is a tool for that really needed? E.g. the MSB-A2 board also has an FTDI chip and uses the DTR pin to reset the board. This can be handled by just passing the right flags to the terminal. |
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want me to ignore this issue, please mark it with the "State: don't stale" label. Thank you for your contributions. |
No description provided.