Skip to content

Fhss timer dev #8478

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

Merged
merged 5 commits into from
Oct 24, 2018
Merged

Fhss timer dev #8478

merged 5 commits into from
Oct 24, 2018

Conversation

JarkkoPaso
Copy link

Description

Implemented FHSS timer driver for mbed-os targets.

Tested locally with K64F and Nucleo-F429.

Pull request type

[ ] Fix
[ ] Refactor
[ ] Target update
[x] Functionality change
[ ] Docs update
[ ] Test update
[ ] Breaking change

@JarkkoPaso
Copy link
Author

@mikter @juhhei01 @SeppoTakalo @kjbracey-arm please review

Copy link
Contributor

@juhhei01 juhhei01 left a comment

Choose a reason for hiding this comment

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

LGTM

@cmonr
Copy link
Contributor

cmonr commented Oct 23, 2018

/morph build

Copy link
Contributor

@cmonr cmonr left a comment

Choose a reason for hiding this comment

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

LGTM, just a non-blocking question.


static int platform_fhss_timer_stop(void (*callback)(const fhss_api_t *api, uint16_t), const fhss_api_t *api)
{
(void)api;
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this only to prevent compiler warnings?

Copy link
Author

Choose a reason for hiding this comment

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

Yes.

@cmonr
Copy link
Contributor

cmonr commented Oct 23, 2018

Also, what does FHSS stand for?

@mbed-ci
Copy link

mbed-ci commented Oct 23, 2018

@cmonr
Copy link
Contributor

cmonr commented Oct 23, 2018

Strange. @JarkkoPaso would you mind reproducing the IAR error locally? I'm actually kinda surprised that this appears to be causing a linker failure.

@SeppoTakalo
Copy link
Contributor

Wikipedia: FHSS

@JarkkoPaso
Copy link
Author

It seems that LPC4088/LPC4088_DM RAM region is too small in IAR build. RAM region is 64k and IAR linker is setting cstack size to 8k and heap size to 16k. Should we reduce the cstack and/or heap size or remove this target? @SeppoTakalo any comments?

@0xc0170
Copy link
Contributor

0xc0170 commented Oct 23, 2018

cstack should be set to 1K, that should help

@0xc0170
Copy link
Contributor

0xc0170 commented Oct 23, 2018

/morph build

@SeppoTakalo
Copy link
Contributor

So this is kind of pending #7238 but that does not seem to progress very well.
So I'm fine with LPC stack changes, but those are unrelated.

@mbed-ci
Copy link

mbed-ci commented Oct 23, 2018

Build : SUCCESS

Build number : 3440
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/8478/

Triggering tests

/morph test
/morph export-build
/morph mbed2-build

@mbed-ci
Copy link

mbed-ci commented Oct 23, 2018

@mbed-ci
Copy link

mbed-ci commented Oct 23, 2018

@cmonr
Copy link
Contributor

cmonr commented Oct 23, 2018

That's frustrating. A 1GB error log (that could only reasonably be navigated through with Linux tools), and there are no good details on why mbed-os-example-blockdevice was unable to build.

Going to restart in the hopes that this was a fluke.
/morph export-build

@mbed-ci
Copy link

mbed-ci commented Oct 24, 2018

Exporter Build : SUCCESS

Build number : 3067
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/exporter/8478/

@0xc0170 0xc0170 merged commit 5b25b66 into ARMmbed:master Oct 24, 2018
return read_current_time();
}

fhss_timer_t fhss_functions = {
Copy link
Contributor

Choose a reason for hiding this comment

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

This should be const to save RAM. But not seeing where this is declared, so where else you'd need to change.

#define NUMBER_OF_SIMULTANEOUS_TIMEOUTS 2
#endif //NUMBER_OF_SIMULTANEOUS_TIMEOUTS

static Timer timer;
Copy link
Contributor

Choose a reason for hiding this comment

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

Follow-up job, as I failed to review earlier:

I would expect that timer and fhss_timeout would need to use SingletonPtr to avoid increasing static RAM size for people not using Nanostack. Otherwise they'll always be pulled in just to run the constructors.

Although SingletonPtr can't really handle an array :( Might end up having to just new fhss_timeout.

(Is there a CI job monitoring size increases for blinky or something?)

Copy link
Contributor

Choose a reason for hiding this comment

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

I don't think so. I think the other @kegilbert, @studavekar, or @SenRamakri should know tho.

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

Successfully merging this pull request may close these issues.

8 participants