Thread (90 messages) flat view 90 messages, 11 authors, 2021-03-02

Re: [PATCH v2 23/25] tty: serial: samsung_tty: Add earlycon support for Apple UARTs

From: Arnd Bergmann <arnd@kernel.org>
Date: 2021-02-16 10:20:06
Also in: linux-devicetree, lkml

On Mon, Feb 15, 2021 at 8:19 PM Krzysztof Kozlowski [off-list ref] wrote:
On Mon, Feb 15, 2021 at 09:17:11PM +0900, Hector Martin wrote:
quoted
+
+/* Apple S5L */
+static int __init apple_s5l_early_console_setup(struct earlycon_device *device,
+                                             const char *opt)
+{
+     /* Close enough to S3C2410 for earlycon... */
+     device->port.private_data = &s3c2410_early_console_data;
+
+#ifdef CONFIG_ARM64
if IS_ENABLED()
(unless it cannot be used due to missing symbol?)
quoted
+     /* ... but we need to override the existing fixmap entry as nGnRnE */
+     __set_fixmap(FIX_EARLYCON_MEM_BASE, device->port.mapbase,
+                  __pgprot(PROT_DEVICE_nGnRnE));
+#endif
It has to be a preprocessor conditional because PROT_DEVICE_nGnRnE
is only defined on arm64. We could add a FIXMAP_PAGE_NONPOSTED
alias for it that defaults to FIXMAP_PAGE_IO, but in the end this is
really an architecture specific thing and I think leaving it guarded by
the architecture is appropriate.
quoted
+     return samsung_early_console_setup(device, opt);
Don't you need to handle the error code - set PROT_DEFAULT() or whatever
was there before?
__set_fixmap() has no return value, it just writes a page table entry and
does not fail.

      Arnd

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help