Kernel Board Information

  • Hallo Leute,
    Ich bin dabei einen Kernel zu machen,
    Ich muss einer "Board Definition" Informationen hinzufügen.
    Dies geschieht im Tutorial mit dem Editor Vi, wovon ich aber überhaupt keine Ahnung habe.
    Momentan bearbeite ich die Datei am Windows Pc, ich habe aber noch Fragen zum Code.
    Die Datei wird mit dem Befehl

    Code
    vi arch/arm/mach-bcm2708/bcm2708.c
     #apply patch


    aufgerufen, aber was ich nicht verstehen wieso wird das #apply patch verwendet?
    Bedeutet der Befehl das #apply patch gesucht werden soll?
    Hier der Code ohne Hinzufügen:

    Und hier der Code der hinzugefügt werden soll:


    Ich gehe davon aus das die Pluszeichen nur zur Hilfe der Einrückungen gedacht sind oder?
    Und am Anfang ist dies Nur die Pfadangabe und somit unwichtig?
    Vielen Dank im voraus :helpnew:

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

    Einmal editiert, zuletzt von petit_miner (23. September 2014 um 16:44)

    • Offizieller Beitrag

    Hast du mal einen Link zum Tutorial. Die + und - sind Ergebnisse des Diffs welches in der ersten Zeile deines hinzuzufügenden Quellcodes steht.

    Diff vergleicht 2 Dateien in dem Fall a/arch/arm/mach-bcm2708/bcm2708.c und b/arch/arm/mach-bcm2708/bcm2708.c. Die pluszeichen bedeuten Hinzugefügte, die minuszeichen zu löschende Zeilen.

    Code
    -        .modalias = "spidev",
    -        .max_speed_hz = 500000,
    +        .modalias = "mcp2515",
    +        .max_speed_hz = 10000000,

    die ersten beiden Zeilen = alter zustand, die letzten beiden =neuer Zustand. Aber mit dem Tut sollte das klarer werden.

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.

    Einmal editiert, zuletzt von dbv (23. September 2014 um 18:47)

  • Moin moin,

    das Ergebnis dieses diff ist ein patch, den man mit z.B.

    Code
    patch < [patchfile.name]


    automatisiert anwenden kann. Näheres dazu mit:

    Code
    man patch


    Was der vi da zu suchen hat, weiss ich nicht ... ist aber Käse weil kein Softi auf der Welt (zumindest keiner den ich kenne) eine patch-Datei analysiert und mit vi die Änderungen nachfährt ... wär auch ganz schön bescheuert ;) ...

    cheers,
    -ds-


  • Hast du mal einen Link zum Tutorial. Die + und - sind Ergebnisse des Diffs welches in der ersten Zeile deines hinzuzufügenden Quellcodes steht.

    Diff vergleicht 2 Dateien in dem Fall a/arch/arm/mach-bcm2708/bcm2708.c und b/arch/arm/mach-bcm2708/bcm2708.c. Die pluszeichen bedeuten Hinzugefügte, die minuszeichen zu löschende Zeilen.

    Code
    -        .modalias = "spidev",
    -        .max_speed_hz = 500000,
    +        .modalias = "mcp2515",
    +        .max_speed_hz = 10000000,

    die ersten beiden Zeilen = alter zustand, die letzten beiden =neuer Zustand. Aber mit dem Tut sollte das klarer werden.


    Aber es gibt die Pfadangabe a/arch/arm/mach-bcm2708/bcm2708.c nicht,
    wenn ich das a entferne ist alles wieder okay, woran liegt das? :s
    Aber was würde denn das bringen 2 gleiche Dateien miteinander zu vergleichen?
    In diesem Ordner gibt es 2 Dateien einmal bcm2708.h und bcm2708.c
    würde es nicht mehr Sinn machen die zu vergleichen?
    Hier das Tutorial: http://elinux.org/RPi_CANBus
    Von hier habe ich den Kernel geladen: git clone --depth=1 https://github.com/raspberrypi/linux
    Edit: Ich habe hier auch noch von einem anderem Tutorial eine Patch Datei wie könnte ich die in den Kernel einbauen?
    Ich habe die Patch Datei mit dem Editor geöffnet und der Text den ich zum anderen hinzufügen sollte ist gleich.

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

    Einmal editiert, zuletzt von petit_miner (24. September 2014 um 15:04)


  • In diesem Ordner gibt es 2 Dateien einmal bcm2708.h und bcm2708.c

    Die H Datei ist in dem Fall eine Header Datei wo alle Funktionen, Include´s usw definiert worden. Das hat nicht so extrem mit der eigentlich c Datei zutun. Aus dem Grund wäre ein Vergleich unsinnig. Da beide Dateien ein unterschiedlichen Sin haben.
    Wenn du dabei schon Probleme hast, würde ich dir eher Empfehlen erst einmal andere Sachen zulernen.
    Wenn es dir nur darum geht ein eigenes Linux auf die Beine zustellen(Mit den Kernel ist das doch ein recht große Sache). Kann ich dir nur Buildroot empfehlen, bei dem alle wichtigen Sachen schon zusammengefasst sind. Damit sind die ersten Schritte recht leicht. Auch wenn es eine riesige Dokumentation dazu gibt.

    http://cellux.github.io/articles/diy-l…ildroot-part-1/

    http://buildroot.uclibc.org/downloads/manual/manual.html

    ein Traum ist unerlässlich wenn man die Zukunft gestalten will

  • Ein eigenes Betriebsystem zu schreiben hatte ich eigentlich nicht vor ;)
    Ich wollte den Kernel nur so verändern das ich ein Erweiterungsmodul verwenden kann,
    es geht mir nur um den Kernel.

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

  • Ich muss es ja so hin kriegen das mein Modul als Can0 erkannt wird,
    mit dem Programm menuconfig muss ich das Can Protokoll aktivieren, aber wenn ich nicht definiere was da an den GPIOS hängt geht es nicht. Ich MUSS in die Header Datei die Informationen eintragen sonst funktioniert es nicht.(Ich vermute daran liegt es da ich den Kernel mal ohne Änderung in der Header Datei gemacht habe und es nicht funktioniert hat.)

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

    Einmal editiert, zuletzt von petit_miner (24. September 2014 um 15:51)

  • Die .config Datei hat gerade rpi-build selbst erstellt und es wird gerade schon kompilimiert.
    Ich bin momentan skeptisch das es funktionieren wird, da ich keine einzige Konfiguration vorgenommen habe.

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

  • Toter Link
    Ich werde mal Heute Abend ein anderes Tutorial ausprobieren aber vorher werde ich den Kernel der gerade gemacht wird ausprobieren.

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

    Einmal editiert, zuletzt von petit_miner (25. September 2014 um 07:09)

  • Hallo Petit_Miner,

    dann nimm den

    https://github.com/notro/rpi-build/wiki

    dreamshader: :danke_ATDE: für den Link im anderen Thread!


    Beste Grüsse

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (25. September 2014 um 07:16)

  • Alles nach Anleitung gemacht nachdem ich den Kernel nach /boot kopiert habe bootete er nicht mehr und zeigte in der Konsole "Kernel modul BCM2708 unable to load"
    Aus Gründen der Zeit wollte ich die Kernel Kompilation auf meinem Ubuntu System durchführen, nun kann ich noch nicht mal irgendein Paket runterladen. Ein Update der Paketliste schlägt auch fehl, "Unable to fetch....."
    Verbindung zum Internet besteht.
    Edit: Problem gelöst indem ich die Paketquellen ausgetauscht habe.

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

    Einmal editiert, zuletzt von petit_miner (25. September 2014 um 17:45)

  • Hallo Petit_miner,


    1. Hast Du eine Sicherung der alten Dateien vor dem Kopieren angefertigt? Wenn ja, dann kannst Du die fehlerhaften durch die alten ersetzen - dann läuft das System wenigstens wieder.

    2. Beliebter Fehler: SD-Karte herausgenommen bevor alle Daten gespeichert sind.

    3. Beinhaltet Dein Tutorial den Befehl

    Code
    sync

    nach Aufspielen der neuen Dateien?

    4. Trennst Du die SD-Karte sauber vom System, bevor Du sie entnimmst? Wenn nein, besteht die Gefahr von Datenverlust / fehlerhaften Dateien.

    Beste Grüsse

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!