From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 15434 invoked from network); 26 Apr 2021 09:53:08 -0000 Received: from 1ess.inri.net (216.126.196.35) by inbox.vuxu.org with ESMTPUTF8; 26 Apr 2021 09:53:08 -0000 Received: from mout02.posteo.de ([185.67.36.66]) by 1ess; Sun Apr 25 10:17:57 -0400 2021 Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 192DB2400FD for <9front@9front.org>; Sun, 25 Apr 2021 16:17:40 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1619360261; bh=5nhD0KnfDUe6DTlVJBFvPydAgCDGq8ir05N1Jfku4Hw=; h=To:Subject:From:Date:From; b=LVbbk3YG9+cW3fMDHVPv5GD2+FJZEIUAB7yQzmQ6zU/QmpYSH4ewwSbcbyA7NX6// Vp42ms9LSWFXxUYYNfFwvPmv7r2XNilZ6qKiFmmlkwX1zSjzhNFKGLbYm941tPARjk Z8BSL/diM7GFmx8NGOZE5D9WDVT5SCIGlMY35EjW5bIB8ZSKTMNk3XxCOaNVSB6r1z 12oG5DxtwgnLEIsMuPU6cWNe/EQvGIES4HeLCGV3mreqoe7t5CUJG4WweuR5SPjRWI 4mX+L8/DBJa3pPrmtu96zhdKL6CyP0Ul2tBpIwztAGOK8QLE8oeklfS0Y6T+KY/mNA O4SP49DJX5qfA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4FSqqS2CnFz6tmH for <9front@9front.org>; Sun, 25 Apr 2021 16:17:40 +0200 (CEST) Message-ID: Content-Type: text/plain; charset="UTF-8" To: 9front@9front.org From: "chötrin." Date: Sun, 25 Apr 2021 14:15:37 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: anonymous structured WEB2.0 over ACPI strategy base Subject: [9front] Getting Started with Kernel Development? Reply-To: 9front@9front.org Precedence: bulk Hi y'all! I'm running 9front on a RPi 3B+, and it looks like there's no audio device support here. I think I'd like to try my hand at implementing that, but hacking at the Plan 9 kernel is new to me. uramekus pointed me to nemo's "Notes on the Plan 9 3rd edition Kernel Source," which I'm currently perusing to try to grok what's going on. It's been really helpful so far. I've also got the "BCM2835 ARM Peripherals" spec, which specifies how to interact with the chip's I2S audio interface. I *think*, at least upon cursory inspection, I'm going to be implementing the bcm64 end of /sys/src/9/port/audioif.h to speak with /sys/src/9/port/devaudio.c. I can use the /sys/src/9/pc tree as an example to follow, assuming I can figure out how the boot code is calling, say, audiosb16link(). I have plenty of homework ahead of me, to say the least. My question to you is this: where do I get started actually making changes to the 9front kernel and testing them out? What does, or should, the development flow look like for me? Ideally, I'd be able to go back and forth between a known good kernel and whatever I'm hacking at. I don't want to be backing up my SD card and restoring it over and over again, if at all possible. If there's some handy writeups, documentation, or tips y'all have for getting started with this, I'd be much obliged! Thanks for reading, and be well. :) ch=C3=B6trin.