{"action":"created","issue":{"url":"https://api.github.com/repos/contiki-os/contiki/issues/1432","labels_url":"https://api.github.com/repos/contiki-os/contiki/issues/1432/labels{/name}","comments_url":"https://api.github.com/repos/contiki-os/contiki/issues/1432/comments","events_url":"https://api.github.com/repos/contiki-os/contiki/issues/1432/events","html_url":"https://github.com/contiki-os/contiki/pull/1432","id":123352375,"number":1432,"title":"ARM Cortex-M3 specific implementation of contiki's mt-architecture","user":{"login":"drandreas","id":8958160,"avatar_url":"https://avatars.githubusercontent.com/u/8958160?v=3","gravatar_id":"","url":"https://api.github.com/users/drandreas","html_url":"https://github.com/drandreas","followers_url":"https://api.github.com/users/drandreas/followers","following_url":"https://api.github.com/users/drandreas/following{/other_user}","gists_url":"https://api.github.com/users/drandreas/gists{/gist_id}","starred_url":"https://api.github.com/users/drandreas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drandreas/subscriptions","organizations_url":"https://api.github.com/users/drandreas/orgs","repos_url":"https://api.github.com/users/drandreas/repos","events_url":"https://api.github.com/users/drandreas/events{/privacy}","received_events_url":"https://api.github.com/users/drandreas/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/contiki-os/contiki/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/contiki-os/contiki/labels/Platform%20/%20CPU%20/%20ARM","name":"Platform / CPU / ARM","color":"fbca04"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-12-21T20:35:00Z","updated_at":"2016-01-17T22:11:12Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/contiki-os/contiki/pulls/1432","html_url":"https://github.com/contiki-os/contiki/pull/1432","diff_url":"https://github.com/contiki-os/contiki/pull/1432.diff","patch_url":"https://github.com/contiki-os/contiki/pull/1432.patch"},"body":"This pull request adds platform specific functions for the CC2538 CPU. I've verified the compatibility and stability using ```examples/multi-threading```. The pull request features all functions as specified in https://github.com/contiki-os/contiki/wiki/Multithreading#architecture-support. I assume the code is compatibly with any ARM Cortex-M3 based platform.\r\n\r\nNote: Currently mt.c does not expose  ```current``` for this reason mtarch.c holds a second variable with similar meaning. Both variables ought to be in sync in all cases.\r\n\r\nI could also provide code for preemptive-multi-threading. However this requires repurposing the SysTick handler ```clock_isr()``` as far as I understand the CPU specification."},"comment":{"url":"https://api.github.com/repos/contiki-os/contiki/issues/comments/172389346","html_url":"https://github.com/contiki-os/contiki/pull/1432#issuecomment-172389346","issue_url":"https://api.github.com/repos/contiki-os/contiki/issues/1432","id":172389346,"user":{"login":"drandreas","id":8958160,"avatar_url":"https://avatars.githubusercontent.com/u/8958160?v=3","gravatar_id":"","url":"https://api.github.com/users/drandreas","html_url":"https://github.com/drandreas","followers_url":"https://api.github.com/users/drandreas/followers","following_url":"https://api.github.com/users/drandreas/following{/other_user}","gists_url":"https://api.github.com/users/drandreas/gists{/gist_id}","starred_url":"https://api.github.com/users/drandreas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drandreas/subscriptions","organizations_url":"https://api.github.com/users/drandreas/orgs","repos_url":"https://api.github.com/users/drandreas/repos","events_url":"https://api.github.com/users/drandreas/events{/privacy}","received_events_url":"https://api.github.com/users/drandreas/received_events","type":"User","site_admin":false},"created_at":"2016-01-17T22:11:12Z","updated_at":"2016-01-17T22:11:12Z","body":"should I rename ```current```in `mt.h/.c```to ```mt_current```and define it as extern?"}}