unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#55348] [PATCH] gnu: Add embedded-controller-hx20.
@ 2022-05-10 10:28 phodina via Guix-patches via
  2022-05-10 12:52 ` Maxime Devos
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: phodina via Guix-patches via @ 2022-05-10 10:28 UTC (permalink / raw)
  To: 55348


[-- Attachment #1.1: Type: text/plain, Size: 864 bytes --]

Hi,

here's a patch that brings firmware for the Embedded Controller on Framework laptops.

I wanted to put this package into gnu/packages/firmware.scm but due to arm-none-eabi toolchain and the usage of embedded.scm module the build generates only errors due to inclusion. Therefore I temporarily placed the package to gnu/packages/embedded.scm.

I'm unfortunately not an owner of Framework laptop so I can't test the built firmware. I also don't want to ask people to reflash the EC as incorrectly built binary can result in a bricked computer.

Therefore I'd like to open the discussion what should be the steps to include EC [1][2] in general into Guix so that more parts of the firmware will be open source where possible.

[1] https://chromium.googlesource.com/chromiumos/platform/ec/https://github.com/system76/ec[2] https://github.com/system76/ec
----
Petr

[-- Attachment #1.2: Type: text/html, Size: 1311 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-embedded-controller-hx20.patch --]
[-- Type: text/x-patch; name=0001-gnu-Add-embedded-controller-hx20.patch, Size: 2353 bytes --]

From eb4dcfad9ad9126941acc0ba9522bbaa9d856fdf Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 28 Jan 2022 19:29:56 +0100
Subject: [PATCH] gnu: Add embedded-controller-hx20.

* gnu/packages/embedded.scm (embedded-controller-hx20): New variable.

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index de8d2944bc..8b5dd99dc8 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -70,6 +70,42 @@ (define-module (gnu packages embedded)
   #:use-module (gnu packages xorg)
   #:use-module (srfi srfi-1))
 
+
+(define-public embedded-controller-hx20
+(let ((commit "8109392adb17a2cd7d30a74eee8613a0cb72ee7d")
+      (revision "1"))
+  (package
+    (name "embedded-controller-hx20")
+    (version (git-version "0.1" revision commit))
+    (source
+	(origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/FrameworkComputer/EmbeddedController")
+                    (commit commit)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "16y6v886ci97yxn8q54iwm9clx0kgvszrxp5vjh0hdldc9pamaij"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+	   #:make-flags '("BOARD=hx20" "CROSS_COMPILE=arm-none-eabi-")
+	   #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (delete 'install))))
+    (native-inputs (list arm-none-eabi-toolchain-7-2018-q2-update
+	base:coreutils
+	perl pkg-config python python-2))
+    (inputs (list libftdi inetutils inetutils libusb))
+    (synopsis "Embedded Controller firmware for the Framework Laptop")
+    (description "The Embedded Controller on your Framework Laptop handles low
+level functions, including power sequencing the system.  Modifying the EC code
+can cause your system to not power on or boot or cause damage to the mainboard,
+battery, or other parts of the system or devices attached to the system.")
+    (home-page "https://github.com/FrameworkComputer/EmbeddedController")
+    (license license:bsd-3))))
 ;; We must not use the released GCC sources here, because the cross-compiler
 ;; does not produce working binaries.  Instead we take the very same SVN
 ;; revision from the branch that is used for a release of the "GCC ARM
-- 
2.34.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#55348] [PATCH] gnu: Add embedded-controller-hx20.
  2022-05-10 10:28 [bug#55348] [PATCH] gnu: Add embedded-controller-hx20 phodina via Guix-patches via
@ 2022-05-10 12:52 ` Maxime Devos
  2022-05-10 12:54 ` Maxime Devos
  2022-06-17 20:38 ` Ludovic Courtès
  2 siblings, 0 replies; 5+ messages in thread
From: Maxime Devos @ 2022-05-10 12:52 UTC (permalink / raw)
  To: phodina, 55348

[-- Attachment #1: Type: text/plain, Size: 880 bytes --]

phodina via Guix-patches via schreef op di 10-05-2022 om 10:28 [+0000]:
> +	   #:make-flags '("BOARD=hx20" "CROSS_COMPILE=arm-none-eabi-
> ")
> +	   #:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure)
> +         (delete 'install))))
> +    (native-inputs (list arm-none-eabi-toolchain-7-2018-q2-update

Maybe we can use Guix cross-compilation mechanism here:

(arguments
  (list #:target "arm-none-eabi"
        #:cross-implicit-inputs? #false ; custom gcc required because
        [...]))
(native-inputs (list ...)

Also, why are 'libftdi, inetutils, ...' in inputs?  Do they end up in
the firmware somehow?  Or does embedded-controller-hx20 not only
contain firmware but also some kind of binaries to control the firmware
or such?  If the latter, I don't think #:target can be used here.

Gree

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#55348] [PATCH] gnu: Add embedded-controller-hx20.
  2022-05-10 10:28 [bug#55348] [PATCH] gnu: Add embedded-controller-hx20 phodina via Guix-patches via
  2022-05-10 12:52 ` Maxime Devos
@ 2022-05-10 12:54 ` Maxime Devos
  2022-06-17 20:38 ` Ludovic Courtès
  2 siblings, 0 replies; 5+ messages in thread
From: Maxime Devos @ 2022-05-10 12:54 UTC (permalink / raw)
  To: phodina, 55348

[-- Attachment #1: Type: text/plain, Size: 329 bytes --]

phodina via Guix-patches via schreef op di 10-05-2022 om 10:28 [+0000]:
> Modifying the EC code
> +can cause your system to not power on or boot or cause damage to the
> mainboard,

Maybe a qualifier ‘Modifying the EC code incorrectly’?  Also maybe the
loss of warranty mentioned in the README?

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#55348] [PATCH] gnu: Add embedded-controller-hx20.
  2022-05-10 10:28 [bug#55348] [PATCH] gnu: Add embedded-controller-hx20 phodina via Guix-patches via
  2022-05-10 12:52 ` Maxime Devos
  2022-05-10 12:54 ` Maxime Devos
@ 2022-06-17 20:38 ` Ludovic Courtès
  2022-06-18  4:49   ` phodina via Guix-patches via
  2 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2022-06-17 20:38 UTC (permalink / raw)
  To: phodina; +Cc: 55348

Hi phodina,

phodina <phodina@protonmail.com> skribis:

> From eb4dcfad9ad9126941acc0ba9522bbaa9d856fdf Mon Sep 17 00:00:00 2001
> From: Petr Hodina <phodina@protonmail.com>
> Date: Fri, 28 Jan 2022 19:29:56 +0100
> Subject: [PATCH] gnu: Add embedded-controller-hx20.
>
> * gnu/packages/embedded.scm (embedded-controller-hx20): New variable.

Did you have a chance to look into addressing Maxime’s comments?

  https://issues.guix.gnu.org/55348

TIA,
Ludo’.




^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#55348] [PATCH] gnu: Add embedded-controller-hx20.
  2022-06-17 20:38 ` Ludovic Courtès
@ 2022-06-18  4:49   ` phodina via Guix-patches via
  0 siblings, 0 replies; 5+ messages in thread
From: phodina via Guix-patches via @ 2022-06-18  4:49 UTC (permalink / raw)
  To: ludo; +Cc: 55348

[-- Attachment #1: Type: text/plain, Size: 169 bytes --]

Hi Ludo’,

> Did you have a chance to look into addressing Maxime’s comments?
> https://issues.guix.gnu.org/55348

not yet, but I plan to do so next week.

----
Petr

[-- Attachment #2: Type: text/html, Size: 251 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-06-18  4:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-10 10:28 [bug#55348] [PATCH] gnu: Add embedded-controller-hx20 phodina via Guix-patches via
2022-05-10 12:52 ` Maxime Devos
2022-05-10 12:54 ` Maxime Devos
2022-06-17 20:38 ` Ludovic Courtès
2022-06-18  4:49   ` phodina via Guix-patches via

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).