make: enable selection of periph drivers via USEMODULE#3420
make: enable selection of periph drivers via USEMODULE#3420haukepetersen wants to merge 16 commits intoRIOT-OS:masterfrom
Conversation
drivers/Makefile.dep
Outdated
There was a problem hiding this comment.
don't the cc*** use any periph stuff?
There was a problem hiding this comment.
nope, these are old (deprecated) drivers. The SPI/GPIO stuff of this drivers is implemented in a board specific part of the driver for some of the boards... These drivers are anyway subject to cleanup soon and will be removed.
There was a problem hiding this comment.
kick the line out anyways, there's no cc110x in master anymore. :)
|
I think Mulle would need |
|
The thing is, that all Freescale CPUs do still build all the peripherals anyway, as the structure for these boards differs from the structure of the other CPUs. I would actually touch them in a follow-up PR... |
bd77b3d to
e16e501
Compare
|
rebased. |
|
@kaspar030 did you already start your review? For #3538 it would be cool to have this one merged soon. At the first glance the PR looks ok to me, but I didn't read the changes that detailed. |
e16e501 to
5a5a210
Compare
|
@kaspar030 @PeterKietzmann could you review this? Would be nice to have it off the table. Also rebased. |
|
Looking at it now, is there a need for all "periph" *_MODULEs to also be _FEATURES? |
|
Don't know if I understand the questions correctly: do you mean if we still need the features_provided declarations? Then the answer is yes. |
boards/saml21-xpro/Makefile.features
Outdated
There was a problem hiding this comment.
timer in there two times
|
hm, the new |
|
Do you want to rename that to "common_periph"? |
5a5a210 to
3fb5436
Compare
|
just did. |
|
Can you look over the changes once more? I will squash once you give me your ok. |
3b8cb23 to
eeacfc9
Compare
|
fixed obvious errors and look into travis bugs now. |
|
Travis things seemed unrelated to me, let's see what the current run tells us. |
There was a problem hiding this comment.
This driver is based on i2c. Don't you need to add the USEMODULE += periph_i2c line here?
|
I don't know where this comes from, but some applications don't compile because it seems that a USEMODULE is missing. E.g. now you can't compile |
@haukepetersen am I mistaken somewhere? For me, the build fails really don't seem unrelated to the PR. Please adapt some of my proposed changes. I hope the number of fails will decrease and then I'll have a look at your PR again. Ok? |
|
I think you are right, I mussed have messed up something in the build system... I look into it as soon as I find the time... |
|
remove the hack'n'ack label, as this PR still needs work |
|
ok won't get this working anytime soon (or ever?), so I will close this PR for now and open a new one whenever (if ever) I make progress... |
So far, we are compiling all available peripheral drivers for a CPU, independent if they are really used or not. This PR enables us to treat peripheral drivers just as ordinary modules (e.g. select them via
USEMODULE += periph_gpio, etc.).I re-ordered some includes in the main
Makefile.include, would be nice if somebody could re-check this change! @gebart, @Kijewski maybe?This PR brings some advantages:
Outlook: Next step is to look at the test application and scripts and remove the explicit
FEATURES_REQUIREDdefinitions from their Makefiles...