Skip to content
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

Sm8250 6.9 #6727

Merged
merged 4 commits into from
Jun 18, 2024
Merged

Sm8250 6.9 #6727

merged 4 commits into from
Jun 18, 2024

Conversation

amazingfate
Copy link
Contributor

Description

Bump sm8250 current to 6.9 based on postmarketos's branch: https://gitlab.com/sm8250-mainline/linux/-/tree/sm8250/v6.9?ref_type=heads.
Panel and touch screen patches from 6.7 are dropped because they are never enabled in kernel config.
In 6.9 bluetooth of qca6390 won't work with default address hardcoded in driver, and setting a new address of bluetooth can make it work again, so I add a service to generate bluetooth address based on /etc/machine-id,

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Please also note any relevant details for your test configuration.

  • ./compile.sh kernel BOARD=xiaomi-elish BRANCH=current DEB_COMPRESS=xz
  • Tested with xiaomi-elish, panel, gpu, vpu, sound works. Note: noble gnome's pipewire will make speaker sound very low, pulseaudio can make it work sometimes.

Checklist:

Please delete options that are not relevant.

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules

@amazingfate amazingfate requested review from a team and igorpecovnik as code owners June 11, 2024 15:56
@github-actions github-actions bot added the size/large PR with 250 lines or more label Jun 11, 2024
@github-actions github-actions bot added the Hardware Hardware related like kernel, U-Boot, ... label Jun 11, 2024
Copy link
Collaborator

@ColorfulRhino ColorfulRhino left a comment

Choose a reason for hiding this comment

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

Let's move the kernel patch folder 6.8 -> 6.9 instead of duplicating to prevent decluttering (this method was discussed a while ago). I think sm8250-6.7 is also an unused leftover folder? Can be deleted if nothing is using it.

@amazingfate
Copy link
Contributor Author

sm8250-edge is 6.8 and it is only for test usage. I think we can just remove archive/sm8250-6.8 and use sm8250-edge for edge's pathes, and make edge tracking latest kernel like other families. @FantasyGmm

@FantasyGmm
Copy link
Contributor

sm8250-edge is 6.8 and it is only for test usage. I think we can just remove archive/sm8250-6.8 and use sm8250-edge for edge's pathes, and make edge tracking latest kernel like other families. @FantasyGmm

yeah.it's great.

@ColorfulRhino
Copy link
Collaborator

ColorfulRhino commented Jun 12, 2024

sm8250-edge is 6.8 and it is only for test usage. I think we can just remove archive/sm8250-6.8 and use sm8250-edge for edge's pathes, and make edge tracking latest kernel like other families

Ah I see now. config/sources/families/sm8250.conf is a bit strange and inconsistent with other families. Imo to avoid confusion, edge should never be lower kernel version than current.

So this would mean:

current)
		declare -g KERNEL_MAJOR_MINOR="6.8"   # Major and minor versions of this kernel.
		declare -g KERNELBRANCH='branch:linux-6.8.y'
		declare -g KERNELPATCHDIR='archive/sm8250-6.8'
		declare -g -i KERNEL_GIT_CACHE_TTL=120 # 2 minutes; this is a high-traffic repo
		;;

edge)
		declare -g KERNEL_MAJOR_MINOR="6.9"   # Major and minor versions of this kernel.
		declare -g KERNELBRANCH='branch:linux-6.9.y'
		declare -g KERNELPATCHDIR='archive/sm8250-6.9'
		;;

And then keep current on next LTS once released. What's your opinion?

In this case, please do all the kernel patch folder stuff (remove 6.7, add 6.9) in one commit so git can recognize renames/moves.

Or did I misunderstand?

As for the folder naming archive/sm8250-6.8 vs archive/sm8250-edge, I believe there is an effor to get rid of *-edge stuff and only rely on kernel numbers so it would be counterproductive to change it here. @rpardini

@amazingfate
Copy link
Contributor Author

sm8250 is a bit different from other families. We are tracking postmarketos's kernel to get stable working kernel as current. And edge is for developers who have the ability to debug qcom devices. I recommand bump edge to 6.10.

@ColorfulRhino
Copy link
Collaborator

We are tracking postmarketos's kernel to get stable working kernel as current.

Is KERNELSOURCE= missing with link to this vendor kernel source? I can't see it anywhere.

Honestly if it's not mainline I would not call it current, but vendor. Even though I spent quite some time with the Armbian project, this is still confusing for me. I can only image how it would be for someone who's only looking for an image or is a newcomer 😄

I think naming should be Armbian-wide consistent:

  • legacy/vendor: Built from a kernel source that is not kernel.org
  • current: Built from an LTS mainline kernel source
  • edge: Built from a mainline kernel source (same or higher version than current

What are your opinions?

@amazingfate
Copy link
Contributor Author

It is mainline kernel. Sm8250 is a soc lack of developers, so keep current same as pmos will give user stable experience.

@FantasyGmm
Copy link
Contributor

linaro also provides a sm8250 kernel, but the version is quite outdated, currently 6.6

@ColorfulRhino
Copy link
Collaborator

ColorfulRhino commented Jun 12, 2024

It is mainline kernel. Sm8250 is a soc lack of developers, so keep current same as pmos will give user stable experience.

Ah okay, that's why I don't see KERNELSOURCE=. Sorry for misunderstanding.

The from my understanding of this PR:

current 6.7 should go to 6.9
edge 6.8 should go to 6.10?

I can help with the commits so it shows the folders as renamed if you like :)

@amazingfate
Copy link
Contributor Author

Now edge is bumped to 6.10 and 6.7 patches are deleted.

@ColorfulRhino
Copy link
Collaborator

ColorfulRhino commented Jun 13, 2024

Nice! If the deletion of 6.7 folder and the creation of 6.9 folder was on the same commit, you'd see a nice overview in the commit itself which patches were reused (renamed), which were added and which were deleted. Like in this commit for rockchip64 69ca249
It reduces the diff saved in git and helps if you like to go back to it after a while to see, but it's just a minor thing 😄

(I know you can see it also in the PR, but that info is lost when e.g. mirroring to Gitlab, Codeberg or another Git service)

@amazingfate
Copy link
Contributor Author

Nice! If the deletion of 6.7 folder and the creation of 6.9 folder was on the same commit, you'd see a nice overview in the commit itself which patches were reused (renamed), which were added and which were deleted. Like in this commit for rockchip64 69ca249 It reduces the diff saved in git and helps if you like to go back to it after a while to see, but it's just a minor thing 😄

(I know you can see it also in the PR, but that info is lost when e.g. mirroring to Gitlab, Codeberg or another Git service)

Delete of 6.7 and add of 6.9 are in one commit now.

@ColorfulRhino
Copy link
Collaborator

Delete of 6.7 and add of 6.9 are in one commit now.

Looks great, thanks!

I believe 6.5 and 6.6 folders for sm8250 can also be deleted? I have added a commit for simplicity to this PR, pls let me know if you prefer this PR without this commit :)

ColorfulRhino
ColorfulRhino previously approved these changes Jun 16, 2024
Copy link
Collaborator

@ColorfulRhino ColorfulRhino left a comment

Choose a reason for hiding this comment

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

But other than that, looks good if it builds 👍

@amazingfate
Copy link
Contributor Author

v6.9.4 has broken the current patch. I will fix it later.

amazingfate and others added 3 commits June 17, 2024 12:32
….9 default mac bluetooth address of QCA6390 "00:00:00:00:5a:ad" is no longer usable. So we have to generate a new one.
@amazingfate
Copy link
Contributor Author

Build for 6.9.5 is fixed and patches are also rewritten.

@amazingfate amazingfate merged commit 4819b81 into armbian:main Jun 18, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Hardware Hardware related like kernel, U-Boot, ... size/large PR with 250 lines or more
Development

Successfully merging this pull request may close these issues.

3 participants