2017-06-22 6 views
0

Ich möchte einige Pins in meinem RPi-Projekt deaktivieren und aktivieren. Das sind GPIO 6, GPIO 5 und GPIO 26. Ich benutze diese PINs gerne in meinem eigenen Kernel-Treiber.Wie kann man einen eigenen Gerätebaum für ein RaspberryPI in yocto einrichten?

Für dieses Projekt verbinde ich ein einfaches elektrisches Board über die GPIOs. Das Minimalsystem wird über YoCto aufgebaut. Ich möchte die Gerätebaumdatei ändern, um GPIOs zu aktivieren/deaktivieren.

Ich muss ändern oder meine eigene dts-Datei erstellen. Dafür denke ich, ich werde müssen:

  1. des Original RPi dts es
  2. Patch finden oder schaffen sie meine selbst dts
  3. fügen Sie es dem layer.conf
  4. Datei zum Kernel Rezept hinzufügen über anhängen

Wie kann ich das tun? oder wo finde ich die Quellen?

Eigentlich habe ich Mühe, die dts-Dateien für die RPi2 zu finden, die ich verwende. Ich habe die "raspberrypi2-poky-linux-gnueabi" Rezeptergebnisse überprüft (und finde keine Dateien).

Ich finde kein Tutorial, wie yocto + meta-raspberrypi + eigene dts einzurichten. Es wäre großartig, wenn wir die notwendigen Schritte finden könnten.

Antwort

2

Zuerst müssen Sie den Kernel finden, der auf Ihrem yocto Projekt verwendet wird, das Rezept ist linux-raspberry.bb oder etwas wie linux - *. Bb. Der bevorzugte Kernel ist wahrscheinlich in Ihremoder machine.conf: PREFERRED_PROVIDER_virtual/kernel ?= "linux-raspberry" gesetzt. Dies wird indirekt über "Meta-raspberrypi/conf/machine/include/rpi-default-providers.inc" festgelegt, die über "rpi-base.inc"

enthalten ist

Sobald gefunden, werfen Sie einen Blick auf das Rezept, klonen Sie das Git-Repository des Kernels, auf der rechten Seite, und setzen Sie auf der rechten Seite SRCREV zurückgesetzt.

Nach dem Download befinden sich die dts-Dateien in . Sie können den Namen der Datei devicetree im Kernel Rezepte verwendet finden, local.conf oder machine.conf, mit den variablen KERNEL_DEVICETREE = "..."

Für die Meta-Himbeere und rpi2 ausgewählt, können die dts-Dateien in <path to build dir>/linux-raspberrypi2-standard-build/source/arch/arm/boot/dts/ finden. Das Quellverzeichnis ist ein Link zu den Quellquellen.

Sie können ein neues dtb hinzufügen, indem Sie dtsi/dts-Dateien erstellen (vergessen Sie nicht, es in das Makefile einzufügen).

einen Patch erstellen, fügen Sie es dem Kernel Rezept:

SRC_URI += "file://0001-mypatch.patch" 

und die Patch-Datei wie dies in Ihrer Meta

├── files 
│   └── 0001-mypatch.patch 
└── linux-raspberry.bb 

Ändern der KERNEL_DEVICETREE Variable Ihr neues dtb hinzuzufügen.

Jetzt können Sie Ihr Kernel/Image bitbake, Ihr neues dtb wird erstellt.

Verwandte Themen