Compare commits
2 Commits
d9f241f304
...
119674f0ac
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
119674f0ac | ||
|
|
51ac993792 |
@@ -350,15 +350,6 @@ func indockerMain() {
|
|||||||
if err := copyFile("/tmp/buildresult/vmlinuz.config", ".config"); err != nil {
|
if err := copyFile("/tmp/buildresult/vmlinuz.config", ".config"); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
dtbs, err := filepath.Glob("arch/arm64/boot/dts/*/*.dtb")
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
for _, fn := range dtbs {
|
|
||||||
if err := copyFile(filepath.Join("/tmp/buildresult/", filepath.Base(fn)), fn); err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
dtbos, err := filepath.Glob("arch/arm64/boot/dts/overlays/*.dtbo")
|
dtbos, err := filepath.Glob("arch/arm64/boot/dts/overlays/*.dtbo")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -165,17 +165,16 @@ func rebuildKernel() error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
kernelPath, err := find("../vmlinuz")
|
kernelPath, err := filepath.Abs("../vmlinuz")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
libPath, err := find("../lib")
|
libPath, err := filepath.Abs("../lib")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: just ensure the file exists, i.e. we are in _build
|
|
||||||
if _, err := find("config.addendum.txt"); err != nil {
|
if _, err := find("config.addendum.txt"); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -246,8 +245,12 @@ func rebuildKernel() error {
|
|||||||
dockerArgs = append(dockerArgs, "--volume", absKernelName+":/usr/src/"+kernelName)
|
dockerArgs = append(dockerArgs, "--volume", absKernelName+":/usr/src/"+kernelName)
|
||||||
}
|
}
|
||||||
if *persistent {
|
if *persistent {
|
||||||
os.MkdirAll("./src_build", 0o777)
|
err = os.MkdirAll("./src_build", 0o777)
|
||||||
dockerArgs = append(dockerArgs, "-v", "./src_build:/usr/src")
|
srcBuild, _ := filepath.Abs("./src_build")
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal("Failed to create ./src_build", err)
|
||||||
|
}
|
||||||
|
dockerArgs = append(dockerArgs, "-v", srcBuild+":/usr/src")
|
||||||
} else {
|
} else {
|
||||||
dockerArgs = append(dockerArgs, fmt.Sprintf("--mount=type=tmpfs,tmpfs-size=%d%s,destination=%s,U", 5, "G", "/usr/src")) // Ramfs for faster build.... maybe
|
dockerArgs = append(dockerArgs, fmt.Sprintf("--mount=type=tmpfs,tmpfs-size=%d%s,destination=%s,U", 5, "G", "/usr/src")) // Ramfs for faster build.... maybe
|
||||||
}
|
}
|
||||||
@@ -313,25 +316,6 @@ func rebuildKernel() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if *cross == "arm64" {
|
if *cross == "arm64" {
|
||||||
// downloadFirmware()
|
|
||||||
if *dtbs != "" {
|
|
||||||
// replace device tree files
|
|
||||||
rm = exec.Command("sh", "-c", "rm -f ../*.dtb")
|
|
||||||
rm.Stdout = os.Stdout
|
|
||||||
rm.Stderr = os.Stderr
|
|
||||||
log.Printf("%v", rm.Args)
|
|
||||||
if err := rm.Run(); err != nil {
|
|
||||||
log.Printf("%v: %v", rm.Args, err)
|
|
||||||
}
|
|
||||||
cp = exec.Command("sh", "-c", "cp *.dtb ..")
|
|
||||||
cp.Stdout = os.Stdout
|
|
||||||
cp.Stderr = os.Stderr
|
|
||||||
log.Printf("%v", cp.Args)
|
|
||||||
if err := cp.Run(); err != nil {
|
|
||||||
return fmt.Errorf("%v: %v", cp.Args, err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if *flavor == "raspberrypi" {
|
if *flavor == "raspberrypi" {
|
||||||
// replace overlays directory
|
// replace overlays directory
|
||||||
overlaysPath, err := find("../overlays")
|
overlaysPath, err := find("../overlays")
|
||||||
@@ -358,71 +342,6 @@ func rebuildKernel() error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// func _downloadFirmware() (*os.File, int64, error) {
|
|
||||||
// latest := "https://gitlab.com/freedesktop-sdk/mirrors/kernel/linux/kernel/git/firmware/linux-firmware/-/raw/main/arm/mali/arch10.8/mali_csffw.bin"
|
|
||||||
// if st, err := os.Stat(filepath.Base(latest)); err == nil {
|
|
||||||
// out, err := os.Open(filepath.Base(latest))
|
|
||||||
// if err != nil {
|
|
||||||
// return nil, 0, nil
|
|
||||||
// }
|
|
||||||
// return out, st.Size(), nil
|
|
||||||
// }
|
|
||||||
// out, err := os.Create(filepath.Base(latest))
|
|
||||||
// if err != nil {
|
|
||||||
// return nil, 0, err
|
|
||||||
// }
|
|
||||||
// resp, err := http.Get(latest)
|
|
||||||
// if err != nil {
|
|
||||||
// out.Close()
|
|
||||||
// return out, 0, err
|
|
||||||
// }
|
|
||||||
// defer resp.Body.Close()
|
|
||||||
// if got, want := resp.StatusCode, http.StatusOK; got != want {
|
|
||||||
// out.Close()
|
|
||||||
// return out, 0, fmt.Errorf("unexpected HTTP status code for %s: got %d, want %d", latest, got, want)
|
|
||||||
// }
|
|
||||||
// size, err := io.Copy(out, resp.Body)
|
|
||||||
// if err != nil {
|
|
||||||
// out.Close()
|
|
||||||
// return out, 0, err
|
|
||||||
// }
|
|
||||||
// if _, err := out.Seek(0, os.SEEK_SET); err != nil {
|
|
||||||
// out.Close()
|
|
||||||
// return out, 0, err
|
|
||||||
// }
|
|
||||||
// return out, size, nil
|
|
||||||
// }
|
|
||||||
|
|
||||||
// func downloadFirmware() error {
|
|
||||||
// firmwareFile, size, err := _downloadFirmware()
|
|
||||||
// if err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// defer firmwareFile.Close()
|
|
||||||
// err = os.MkdirAll("../_gokrazy", os.ModePerm)
|
|
||||||
// if err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// f, err := os.Create("../_gokrazy/extrafiles.tar")
|
|
||||||
// if err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// defer f.Close()
|
|
||||||
// t := tar.NewWriter(f)
|
|
||||||
// if err := t.WriteHeader(&tar.Header{
|
|
||||||
// Name: "/lib/firmware/arm/mali/arch10.8/mali_csffw.bin",
|
|
||||||
// Typeflag: tar.TypeReg,
|
|
||||||
// Mode: 0o755,
|
|
||||||
// Size: size,
|
|
||||||
// }); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// if _, err := io.Copy(t, firmwareFile); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// return t.Close()
|
|
||||||
// }
|
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
if os.Getenv("GOKRAZY_IN_DOCKER") == "1" {
|
if os.Getenv("GOKRAZY_IN_DOCKER") == "1" {
|
||||||
indockerMain()
|
indockerMain()
|
||||||
|
|||||||
@@ -235,13 +235,12 @@ func rebuildUboot() {
|
|||||||
log.Fatalf("%s run: %v (cmd: %v)", execName, err, dockerRun.Args)
|
log.Fatalf("%s run: %v (cmd: %v)", execName, err, dockerRun.Args)
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, filename := range []string{
|
if err := copyFile("../boot.scr", "boot.scr"); err != nil {
|
||||||
"boot.scr",
|
|
||||||
"u-boot-rockchip.bin",
|
|
||||||
} {
|
|
||||||
if err := copyFile(filename, filepath.Join(tmp, filename)); err != nil {
|
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if err := copyFile("../u-boot-rockchip.bin", "u-boot-rockchip.bin"); err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
console=ttyS2,1500000 earlycon root=/dev/mmcblk0p2 rootwait panic=10 oops=panic init=/gokrazy/init sdhci.debug_quirks=0x40 sdhci.debug_quirks2=0x04
|
console=ttyS2,1500000 earlycon root=/dev/mmcblk0p2 rootwait panic=10 oops=panic init=/gokrazy/init
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user