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

cpu/board: Initial import of samr21-xpro #1701

Merged
merged 1 commit into from
Sep 25, 2014

Conversation

thomaseichinger
Copy link
Member

This PR provides basic support for the samr21-xpro board including

  • UART I/O
  • hwtimer
  • GPIO/EXIT

This PR is meant to provide a basic implementation for this board int RIOT's main repository to speed up distributed development and make the progress more visible. Development is coordinated via #1646 and documentation can be found in the wiki

Caution: Code will most certainly contain bugs.

This code also contains contributions of @Troels51.

@thomaseichinger thomaseichinger added Platform: ARM Platform: This PR/issue effects ARM-based platforms Impact: major The PR changes a significant part of the code base. It should be reviewed carefully Type: new feature The issue requests / The PR implemements a new feature for RIOT labels Sep 24, 2014
@thomaseichinger thomaseichinger added this to the Release NEXT MAJOR milestone Sep 24, 2014
@thomaseichinger thomaseichinger added the CI: needs squashing Commits in this PR need to be squashed; If set, CI systems will mark this PR as unmergable label Sep 24, 2014
@haukepetersen
Copy link
Contributor

Travis fails for some test, can you blacklist them:

  • net_if, pnet
  • posix_semaphore
  • pthread_rwlock
  • queue_fairness
  • thread_cooperation
  • vtimer_msg_diff

MODULE = $(BOARD)_base

# add a list of board specific subdirectories that should also be built
DIRS =
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could throw out these two lines

@haukepetersen
Copy link
Contributor

Looking good, there are some minor things I see in some files, but I can't comment on them because github is not able to display them for too many changes in this PR... How about we merge this PR and I just create another one with some fixes?

So ACK when the comments above are addressed.

@haukepetersen
Copy link
Contributor

still one unread varialbe problem in the uart driver says Travis, can you address this?

@thomaseichinger
Copy link
Member Author

it is actually used, but inside the #ifdef UART_0_EN...

@haukepetersen
Copy link
Contributor

ok. Then I guess we don't have to care about that one -> ACK

@N8Fear
Copy link

N8Fear commented Sep 24, 2014

Travis fails because of unknown license headers: therefore NACK.

I'm not sure why cppcheck doesn't realize that the variable is used (it occurs for other boards at the same place, too). Maybe we should just suppress the warning at this place.

@Kijewski
Copy link
Contributor

+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.

These sections are not GPL conforming. We decided to ignore this fact for header files, or didn't we?

@OlegHahm
Copy link
Member

Only noticed now: Congrats to the PR's nice number. ;)

@thomaseichinger
Copy link
Member Author

updated license pattern and reenabled some tests because of RAM savings due to reduction of stack sizes.

@thomaseichinger
Copy link
Member Author

ok, rebased squashed and Travis is happy.
@N8Fear any further objections?
@OlegHahm stack sizes are fine with you?

@N8Fear
Copy link

N8Fear commented Sep 25, 2014

@thomaseichinger: Travis isn't happy anymore (qemu-i386 fails, don't know how that relates to this PR).

@thomaseichinger
Copy link
Member Author

Download server for qemu-i386 toolchain was down. Kicked Travis again.

@thomaseichinger
Copy link
Member Author

ok Travis failure fixed with #1710 and #1711. Last run.

@N8Fear
Copy link

N8Fear commented Sep 25, 2014

Yeah - just seen that. Maybe you can try to look what causes:
cpu/samd21/periph/uart.c:88: style (unreadVariable): Variable 'baud_calculated' is assigned a value that is never used.
and either fix or supress the warning.
Otherwise there are no further objections from me: ACK.

@thomaseichinger
Copy link
Member Author

@N8Fear This implementation will see a major refactory with a more generic implementation soon while this PR should provide the a starting point to simplify contributions by various people. If your are ok with it, I'd leave it as is for now since the variable is actually used. Getting it bug free and beautiful is the job of upcoming PRs.

@N8Fear
Copy link

N8Fear commented Sep 25, 2014

I don't see it as a show stopper... ;-)
I just like to reduce the warnings cppcheck throws with the goal to be able to enable it in a way that causes hard fails instead of the current "warnings" (exitcode 0 -> 1).

@OlegHahm
Copy link
Member

Works for me with default and ipc_pingpong. I updated the Wiki page.

ACK

@thomaseichinger
Copy link
Member Author

So let's do this.

thomaseichinger added a commit that referenced this pull request Sep 25, 2014
cpu/board: Initial import of samr21-xpro
@thomaseichinger thomaseichinger merged commit 1c150ce into RIOT-OS:master Sep 25, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI: needs squashing Commits in this PR need to be squashed; If set, CI systems will mark this PR as unmergable Impact: major The PR changes a significant part of the code base. It should be reviewed carefully Platform: ARM Platform: This PR/issue effects ARM-based platforms Type: new feature The issue requests / The PR implemements a new feature for RIOT
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants