ConfigFS expects idVendor and idProduct values to be prefixed with 0x.
Without this change, google-crosshatch shows as a device with 0:0 as the
idVendor/idProduct in lsusb:
Bus 001 Device 004: ID 0000:0000
This confuses VirtualBox: it has trouble detaching this device from
a virtual machine, so one must manually use ifconfig to bring down the
old USB network connection before reattaching.
With this change, the idVendor/idProduct is correct:
Bus 001 Device 004: ID 18d1:d001 Google Inc.
This issue also seems to affect other devices with ConfigFS, such as the
Nexus 5:
https://matrix.to/#/!clcCCNrLZYwdfNqkkR:disroot.org/$15487159511194991apGpy:matrix.org
Add firmware required to make WiFi work. Patch the kernel so the ramoops
dmesgs can be read properly without having to remove that header every
time.
[skip ci]: already built successfully in CI
USB host mode is useful (essential?) on the devkit for adding a
keyboard/mouse to interact with the desktop since the onboard display
and touchscreen are very much in flux.
[skip ci]: already built successfully in CI
The LineageOS kernel integrates the Wi-Fi driver, so reconfigure with
the Lineage defconfig and copy the Wi-Fi options over to our defconfig.
This doesn't get Wi-Fi working yet, but it gives a good starting point.
Do not replace compiler-gcc.h. This is necessary now, as we are
replacing compiler-gcc.h by default again, as it is needed for most
kernels. Not increasing the pkgrel to avoid unnecessary rebuild, I have
verified that this works.
NOTE: in the last commit message, I wrote about OVERWRITE_GCC=0. But
the variable is called REPLACE_GCC, as I've decided to rename it before
submitting. I forgot to change it in the commit message.
[skip ci]: this kernel takes more than one hour to build, so it won't
finish in CI.
Instead of never overwriting compiler-gcc.h if it exists, overwrite it
by default except if OVERWRITE_GCCH=0 is set in the environment.
Most kernels *do* need this file replaced and won't build without this
patch.
This modernizes the APKBUILD that was based from outdated one (still
needs GCC6) as requested in !165 (comment 133993271). Also adds a fix
to allow Xorg booting, osk-sdl doesn't work yet as it throws some ugly
faults in kernel related to fbcon.
[skip ci]: already built successfully in CI
The 5.0 kernel now includes -Werror= parameters in the makefile, this
changes downstreamkernel_prepare.sh to support them. Without this, the
script will replace, for example, -Werror=blah with =blah, which causes
the kernel compilation to fail.
More information and screenshots in the GitLab project:
https://gitlab.com/cubocore
[skip ci]: ollieparanoid made sure this builds for x86_64, armhf,
aarch64, armv7.
Finally got display working, but it's based on MoKee kernel which is
also hosted on GitHub by community. So what works:
* USB Networking
* Flashing
* Touchscreen
* Display
* Weston with Xwayland
The device boots and shows the splash screen properly, after about 3
sec the screen went black. I had to
"echo 127 > /sys/devices/i2c-0/0-0038/leds/lm3530-backlight/brightness"
to make the backlight work, even though the value of it was already
127.
[skip ci]: this was built successfully in CI already
I have tested this on xfce4 and weston. Also plasma-mobile "works"! The
performance isn't any better than on armhf, it's still less than one
frame per second and llvmpipe still doesn't work.
After switching to armv7, this kernel fails to compile with the
following error unless CONFIG_CRYPTO_AES_ARM_BS is disabled:
arch/arm/crypto/aesbs-core.S:449: Error: thumb conditional instruction should be in IT block -- `addeq r6,r6,#0x10'
arch/arm/crypto/aesbs-core.S:904: Error: thumb conditional instruction should be in IT block -- `addeq r6,r6,#0x10'
arch/arm/crypto/aesbs-core.S:2100: Error: thumb conditional instruction should be in IT block -- `subne r9,#0x10'
We had 2 music players included which doesn't make sense, and vvave is
actually made with a focus on mobile.
[skip ci]: do not try to build this merge request, ollieparanoid made
sure that it builds for x86_64, armhf, aarch64.
Quite a few Nexus 5X devices have the tendency to bootloop after a while
of being on, iirc because it overheats. This has been a known issue for
quite some time, and most Android ROM's for it have measures in place to
prevent this, in the form of disabling some CPU cores (iirc "Big cores"
or something like that). My Nexus 5X is also subject to this issue.
According to craftyguy, resolving this is as easy as changing the boot
command to not use those CPU cores. This commit does exactly that. It
should probably be made optional for people with this device without
that issue, but since I have no clue how to do that atm, this is the
safest for now.
Initial support for Xiaomi A1 aka xiaomi-tissot using LineageOS 15.1
kernel, has similar board to Xiaomi Redmi 4 aka xiaomi-mido with some
differences that had to be patched such as reversing skip_initramfs and
ignoring dm param. 16.0 kernel boots but display fb init doesn't work.
Weston boots with touch support, SSH via USB RNDIS works.
[skip ci]: this built once in CI already, good to go.
When we bump the version in pmaports.cfg and the min. required pmaports
version in the pmbootstrap code, then forks of pmaports.git must be
rebased on pmaports.git master. Otherwise "pmbootstrap init" fails, and
because we have it set to quiet (so the output does not distract from
the interesting output if everything goes fine), there was no meaningful
error message yet.
Wrap the "pmbootstrap init" call and display a helpful message that
tells the user to rebase.