[Letux-kernel] jz4730
H. Nikolaus Schaller
hns at goldelico.com
Tue Jun 30 22:51:15 CEST 2020
Hi,
> Am 30.06.2020 um 22:36 schrieb Paul Boddie <paul at boddie.org.uk>:
>
> On Tuesday, 30 June 2020 08:04:09 CEST H. Nikolaus Schaller wrote:
>>
>>> Am 30.06.2020 um 00:22 schrieb Paul Boddie <paul at boddie.org.uk>:
>>>
>>> You may have to remind me what I should be checking out and pulling from
>>> since I don't remember and couldn't find it readily in my mails. I have
>>> cloned the letux-kernel repository but the origin/master branch seems to
>>> be tracking Linux 4.19.
>>
>> Yes, the "master" branch follows the latest good enough "stable" tree and is
>> not related to the latest work in progress.
>
> OK.
>
>>> I did think that since I was going to review everything, I should start
>>> with a very recent kernel, hence the decision to choose something in
>>> torvalds/linux instead of continuing with the origin/letux/jz4730-v2
>>> branch in letux-kernel.
>> There are latest branches as e.g. letux-5.8-rc1 or letux-5.8-rc3 but they
>> are composed like linux-next from components (ca. 50 feature/topic branches
>> to get patch sets for single topics).
>>
>> This is done by a script Letux/scripts/merge and its associated
>> Letux/scripts/mergefile.
>>
>> I did have a nice picture some years ago but could not find it quickly.
>>
>> What is missing is a fix to make letux/jz4730 part of that.
>
> It sounds quite complicated, really. I think I would be most efficient working
> with a complete set of patches that can then be split into topics if
> appropriate. Of course, if JZ4730 support is just one topic,
Yes, the jz4730 is one of many topics.
The scheme used for LetuxOS kernel has developed over the years and is the
best compromise I know to handle all the LetuxOS targets in parallel.
The key is IMHO to have small topics that are easy to understand and
"git format-patch letux-base..letux/topic-branch" for submission as a patch
set. Doing it this way allows to continuously integrate and test and use
feedbacks by the review process. E.g. if maintainers suggest something
for [PATCH v3 4/7] it is simply integrated into the patch set and merged
for the next LetuxOS kernel release for testing.
> then there would
> be only one patchset to work on and to submit, but I think that even device
> tree definitions end up going down a different channel, necessitating the
> independent stewardship of different collections of changes.
>
> [...]
>
>>> As communicated in other messages, I did update and test recent Linux
>>> kernel code in order to try and get the CI20 HDMI to work, but the last
>>> mysterious piece of the puzzle (specific to Linux since it works in L4Re)
>>> needs to be found and applied.
>> Well, I wasn't able to pick or compile your latest code - and worse, the
>> CI20 doesn't boot any more with v5.8-rc1 or letux-5.8-rc1 (even without
>> your latest patches).
>
> I neglected to include the device tree files, which would be an obstacle, but
> the patches I made are applied against this changeset in torvalds/linux:
>
> commit b3a9e3b9622ae10064826dccb4f7a52bd88c7407 (tag: v5.8-rc1)
> Author: Linus Torvalds <torvalds at linux-foundation.org>
> Date: Sun Jun 14 12:45:04 2020 -0700
>
> Linux 5.8-rc1
>
> If they don't apply then maybe I did something wrong again.
>
>>> So, I am sorry not to have made any progress as such, but I thought that I
>>> should communicate an intent to resume the review of the JZ4730 code when
>>> time and energy permit.
>>
>> Letux feature branches are merged into letux-5.8. They must be (re)based on
>> v5.8-rc1 (or later) to be valid patch sets for upstream submission.
>
> Right. This is probably a good idea.
>
>> Unfortunately I could not rebase
>> https://git.goldelico.com/?p=letux-kernel.git;a=shortlog;h=refs/heads/letux/
>> jz4730-v2 to v5.8-rc1 and make it compile. So it is still based on v5.7.
>>
>> And I had to drop letux/jz4730-v2 from the merge process to not stop other
>> architectures. The trick was to create a letux/jz4730-v3 which is (almost)
>> identical to what Linus provides upstream. Sort of "add 0".
>> You can also see it like removing some staging repo from integration into
>> linux-next.
>>
>> So the task we should discuss is:
>>
>> git checkout -b letux/jz4730-v4 letux/jz4730-v2
>> git rebase v5.8-rc1 # or -rc3
>> this fails with a lot of rebase conflicts
>> fix issues (I do not understand the jz4730 well enough to do it myself)
>> git checkout -B temp
>> git merge letux-5.8-rc3 # this should now work and build w/o issues
>
> I think that the best way forward for JZ4730 is to rework the patches
> entirely. Several things are now rather different in the kernel, and there
> will be things in our old patches that are now superfluous.
Yes. Basically it is quite irrelevant how a new letux/jz4730-v4 is derived
from the old one. Either by massaging the existing patches by fixing
merge conflicts or squashing the old patches into a single one, then
rebase and split. Or type new code...
BR,
Nikolaus
More information about the Letux-kernel
mailing list