Skip to contentSkip to conversation

Linux kernel module for Waveshare 3.2inch RPi LCD (B) V3 touch controller

PATCH New Peter Seiderer 2 participants 2 messages Jan 10, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Linux kernel module for Waveshare 3.2inch RPi LCD (B) V3 touch controller

Hello Yann,

Quoted 15 lines · Yann E. MORIN

Peter, All,

On 2015-01-10 02:13 +0100, Peter Seiderer spake thusly:
[--SNIP--]

Quoted 1 line

Thanks, great work. My RaspberryPi B+ booted with the new linux-kernel/DT support.

Thanks for the report. Great! :-)

Quoted 4 lines

The only thing I had to change is the kernel compression standard (in the kernel config file) from CONFIG_KERNEL_XZ=y to CONFIG_KERNEL_GZIP=y because otherweise the script mkknlimg failed with:
"* Is this a valid kernel? In pass-through mode."

Weird, it is working for me...

Quoted 8 lines
Quoted 1 line

Maybe some uncompress tool is missing or is to old on my host?

My xz is:

    $ xz --version
    xz (XZ Utils) 5.1.0alpha
    liblzma 5.1.0alpha
$  xz --version
xz (XZ Utils) 5.0.7
liblzma 5.0.7
Quoted 2 lines

Can you check that your xz supports the --single-stream option?

$ unxz --single-stream
unxz: unrecognized option '--single-stream'
unxz: Try `unxz --help' for more information.

Seems xz package on openSUSE 13.2 is not up to date....

Quoted 8 lines
Quoted 4 lines

Is
it possible to run mkknlimg automatically (with buildroot host/usr/bin path) to avoid such errors (and avoid someone installing zImage without running mkknlimg)?

OK, so it seems you do not have xz on your host, and that you rely on the one built by Buildroot, right?

Quoted 8 lines

And no, it is not possible to do it in the current Buildroot infrastructure:

- there's no way a package can declare hook (whichever) for another package,

- we do not want to add anything platform-specific to the kernel.

But for other tools buildroot provides host support packages?

Would something like the following be feasible with buildroot (host-xz has to be done, totally untested):

package/rpi-firmware/rpi-firmware.mk +2 -1
@@ -12,7 +12,7 @@ RPI_FIRMWARE_INSTALL_TARGET = NO
 RPI_FIRMWARE_INSTALL_IMAGES = YES
 
 ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y)
-RPI_FIRMWARE_DEPENDENCIES += host-rpi-firmware
+RPI_FIRMWARE_DEPENDENCIES += host-rpi-firmware host-xz linux
 # Override the version in this case.
 RPI_FIRMWARE_VERSION = e42ddc0b04353cc292ce5215eea81484d72c5d09
 define RPI_FIRMWARE_INSTALL_DTB
@@ -40,6 +40,7 @@ HOST_RPI_FIRMWARE_DEPENDENCIES =
 
 define HOST_RPI_FIRMWARE_INSTALL_CMDS
        $(INSTALL) -D -m 0755 package/rpi-firmware/mkknlimg $(HOST_DIR)/usr/bin/mkknlimg
+       $(HOST_DIR)/usr/bin/mkknlimg $(BINARIES_DIR)/zImage $(BINARIES_DIR)/rpi_zImage
 endef
 
 $(eval $(generic-package))

Regards,
Peter

Quoted 10 lines

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#1 lore raw

PATCH 1/1 Linux kernel module for Waveshare 3.2inch RPi LCD (B) V3 touch controller

Peter, All,

On 2015-01-10 21:36 +0100, Peter Seiderer spake thusly:

Quoted 8 lines · Yann E. MORIN
Quoted 3 lines
    $ xz --version
    xz (XZ Utils) 5.1.0alpha
    liblzma 5.1.0alpha
$  xz --version
xz (XZ Utils) 5.0.7
liblzma 5.0.7
Quoted 5 lines
$ unxz --single-stream
unxz: unrecognized option '--single-stream'
unxz: Try `unxz --help' for more information.

Seems xz package on openSUSE 13.2 is not up to date....

Damn, then you need to build host-xz in Buidroot.

Quoted 13 lines
Quoted 13 lines
Quoted 3 lines

it possible to run mkknlimg automatically (with buildroot host/usr/bin path) to avoid such errors (and avoid someone installing zImage without running mkknlimg)?

OK, so it seems you do not have xz on your host, and that you rely on the one built by Buildroot, right?

And no, it is not possible to do it in the current Buildroot infrastructure:

- there's no way a package can declare hook (whichever) for another package,

Quoted 7 lines
Quoted 2 lines

- we do not want to add anything platform-specific to the kernel.

But for other tools buildroot provides host support packages?

Would something like the following be feasible with buildroot (host-xz has to be done, totally untested):

Well, we already have host-xz.

Quoted 12 lines
package/rpi-firmware/rpi-firmware.mk +1 -1
@@ -12,7 +12,7 @@ RPI_FIRMWARE_INSTALL_TARGET = NO
 RPI_FIRMWARE_INSTALL_IMAGES = YES
 
 ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y)
-RPI_FIRMWARE_DEPENDENCIES += host-rpi-firmware
+RPI_FIRMWARE_DEPENDENCIES += host-rpi-firmware host-xz linux
 # Override the version in this case.
 RPI_FIRMWARE_VERSION = e42ddc0b04353cc292ce5215eea81484d72c5d09
 define RPI_FIRMWARE_INSTALL_DTB

package/rpi-firmware/rpi-firmware.mk HOST_RPI_FIRMWARE_DEPENDENCIES = · line 44

Quoted 5 lines
package/rpi-firmware/rpi-firmware.mk +1 -0
@@ -40,6 +40,7 @@ HOST_RPI_FIRMWARE_DEPENDENCIES =
 
 define HOST_RPI_FIRMWARE_INSTALL_CMDS
        $(INSTALL) -D -m 0755 package/rpi-firmware/mkknlimg $(HOST_DIR)/usr/bin/mkknlimg
+       $(HOST_DIR)/usr/bin/mkknlimg $(BINARIES_DIR)/zImage $(BINARIES_DIR)/rpi_zImage
 endef

That does not work, because the kernel may well be built outside of Buildroot, in which case the user would have to do it all by himself anyway.

So, I'd prefer we do not dwelve too much on the side of what can easily be done in a post-build script.

Script which we could provide, of course. ;-) I'll propose something shortly...

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'