[opensuse-arm] armv6hl excluded for Kernel:stable?
Hi, since OBS revision 407 of Kernel:stable [1] no kernel is built for armv6hl (it is no longer in ExclusiveArch:). Whats the reasoning behind this? Resources should not be the issue, as kernel-docs, which is a) noarch b) a real resource hog is still built for armv6hl Kind regards, Stefan [1] https://build.opensuse.org/package/rdiff/Kernel:stable/kernel-source?linkrev=base&rev=407 -- Stefan Brüns / Bergstraße 21 / 52062 Aachen home: +49 241 53809034 mobile: +49 151 50412019 work: +49 2405 49936-424 -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
Hi Stefan, Am 04.10.2015 um 04:12 schrieb Stefan Bruens:
since OBS revision 407 of Kernel:stable [1] no kernel is built for armv6hl (it is no longer in ExclusiveArch:). Whats the reasoning behind this?
ARM kernels don't get updated by magic. Some volunteer needs to submit patches, making decisions on which drivers are relevant or not. Otherwise the build would just fail and therefore gets disabled. Matwey has been a great help in keeping the armv7hl configs updated, but when I recently applied his patch for master (v4.3-rc1) and then also updated armv6hl, I noticed that no one had done the work for 4.2 while it was in Kernel:HEAD, and now you notice that in Kernel:stable: http://kernel.opensuse.org/cgit/kernel-source/tree/config.conf?h=stable That's the overall problem we have with armv6hl: Many people complain, but too few people help updating, investigating and fixing things... So, welcome to the openSUSE community - here's what you can do: git clone git://kernel.opensuse.org/kernel-source.git -b stable cd kernel-source # Edit config.conf, removing the "-!needs-updating". # Next, update the default flavor. ./scripts/sequence-patch.sh --config=armv6hl-default # The first time this will error out, telling you to either # a) extract a kernel tarball, or # b) point it to a git kernel checkout. # Re-run it appropriately. cd tmp/current make ARCH=arm oldconfig # Optionally `make ARCH=arm menuconfig` for further changes cd ../.. cp tmp/current/.config config/armv6hl/default # Now repeat the same for the vanilla flavor. ./scripts/sequence-patch.sh --config=armv6hl-vanilla --vanilla cd tmp/current make ARCH=arm oldconfig cd ../.. cp tmp/current/.config config/armv6hl/vanilla # And then commit your changes and submit them for review. # Use "config: armv6hl: Update for v4.2" or so as first line. git commit -a -s git send-email -1 --to=opensuse-kernel@opensuse.org \ --cc=afaerber@suse.de \ --subject-prefix="PATCH stable" The policy is to enable all drivers for generic things like USB devices or sensors as module (m) and to disable (n) any drivers for ARMv7 or ARMv8 SoCs. Serial and RTC drivers are the only things to build in (y) when you are offered a choice, but they'd be unlikely for Raspberry Pi. Regards, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
On Sunday 04 October 2015 12:45:41 Andreas Färber wrote:
Hi Stefan,
Am 04.10.2015 um 04:12 schrieb Stefan Bruens:
since OBS revision 407 of Kernel:stable [1] no kernel is built for armv6hl (it is no longer in ExclusiveArch:). Whats the reasoning behind this?
ARM kernels don't get updated by magic. Some volunteer needs to submit patches, making decisions on which drivers are relevant or not. Otherwise the build would just fail and therefore gets disabled.
Matwey has been a great help in keeping the armv7hl configs updated, but when I recently applied his patch for master (v4.3-rc1) and then also updated armv6hl, I noticed that no one had done the work for 4.2 while it was in Kernel:HEAD, and now you notice that in Kernel:stable:
http://kernel.opensuse.org/cgit/kernel-source/tree/config.conf?h=stable
That's the overall problem we have with armv6hl: Many people complain, but too few people help updating, investigating and fixing things...
So, welcome to the openSUSE community - here's what you can do:
Thanks for the welcome, but I am already here since 1999 ;-)
[...]
Thanks for the walkthrough, that was very useful. Your "tutorial" is somewhat similar to https://en.opensuse.org/openSUSE:Kernel_git , although it targets source changes/patches. Maybe you could add an section about config changes?
The policy is to enable all drivers for generic things like USB devices or sensors as module (m) and to disable (n) any drivers for ARMv7 or ARMv8 SoCs. Serial and RTC drivers are the only things to build in (y) when you are offered a choice, but they'd be unlikely for Raspberry Pi.
Yes, will do. Some clarifications would be useful: ARMv8/7 are likely to deal with a whole range of boards, configured in detail by device tree blobs, so there is a range of SoCs and pheripherals (PMICs, GPUs, ...) covered by these architectures. ARMv6 is mostly/only? targeted at Raspberries. So no PMIC, VC4 GPU, BCM2835 SoC. Is this assumption valid? Also, the ARMv7 default config has e.g. CONFIG_SERIAL_BCM63XX=y and CONFIG_LEDS_BCM6328=m, but BCM63xx is MIPS. Configuration error? Pheripherals connected via I2C and SPI (TFTs, touchscreens, ambient light sensors, magnetometers ...) should be configured as modules? The RPI has no RTC onboard, but these can be easily added and configured with device tree overlays or (as uboot lacks dtbo support) patched device trees. Module or builtin? Kind regards, Stefan -- Stefan Brüns / Bergstraße 21 / 52062 Aachen home: +49 241 53809034 mobile: +49 151 50412019 work: +49 2405 49936-424 -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
Hi Stefan,
ARMv8/7 are likely to deal with a whole range of boards, configured in detail by device tree blobs, so there is a range of SoCs and pheripherals (PMICs, GPUs, ...) covered by these architectures.
Correct.
ARMv6 is mostly/only? targeted at Raspberries. So no PMIC, VC4 GPU, BCM2835 SoC. Is this assumption valid?
Yes, thats fully correct. the non-arch specific options should be inherited from i386/x86_64 configs, all arch specific options should be disabled unless they're needed for this one SoC.
Also, the ARMv7 default config has e.g. CONFIG_SERIAL_BCM63XX=y and CONFIG_LEDS_BCM6328=m, but BCM63xx is MIPS. Configuration error?
Unfortunately CONFIG_SERIAL_BCM63XX says: Depends on: TTY [=y] && HAS_IOMEM [=y] && (MIPS || ARM [=y] || COMPILE_TEST [=n]) which means there seem to be ARM variants of that Serial component. you're right about the LED part though, I'll disable it.
Pheripherals connected via I2C and SPI (TFTs, touchscreens, ambient light sensors, magnetometers ...) should be configured as modules?
Yes.
The RPI has no RTC onboard, but these can be easily added and configured with device tree overlays or (as uboot lacks dtbo support) patched device trees. Module or builtin?
if module works, then module is preferred. sicne as you mentioned its optional per user. Greetings, Dirk -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
participants (3)
-
Andreas Färber
-
Dirk Müller
-
Stefan Bruens