Hi, What is the best git-way to add a new board? Thinking about testing/review.
The following ways occurred to me: 1/ how RISC-V boards got merged Add devices individually, finally add the board and default-configs/Makefile rules at once. PRO: commits are easier to cherry-pick/rebase CON: you can not test a single patch until applying the whole series harder (less interest) to write qtests 1bis/ example of the Smartfusion2 board Variant of 1/, but also modify the default-configs/Makefile to build each device. PRO: single patch can be test without much troubles, unit/acceptance tests can be run without applying the whole series, different people can work in parallel. CON: no integration test until the last 'board' commit 2/ Reverse Polish testing Add a board stub (all devices as UnimplementedDevice) and Makefile rule, then for each new device, replace the unimp board entry, modify the default-configs/Makefile, add unit/acceptance tests PRO: you can add an integration test since the first board commit :) (enforcing Test Driven Development), allow unpaid contributor to slowly push his work upstream instead of painful rebases or his work lost by change of interest or worth issues. CON: not acceptable by upstream except with good integration test integration test might not be upstream-able due to license incompatibilities (JTAG-extracted firmwares...) The use of UnimplementedDevice is now a bit enforced by the ignore_memory_transaction_failures flag. Regards, Phil.
signature.asc
Description: OpenPGP digital signature