public inbox for newlib-cvs@sourceware.org help / color / mirror / Atom feed
From: Jeff Johnston <jjohnstn@sourceware.org> To: newlib-cvs@sourceware.org Subject: [newlib-cygwin/main] arc: libgloss: Add support of IoT Development Kit board Date: Wed, 22 May 2024 18:28:21 +0000 (GMT) [thread overview] Message-ID: <20240522182821.19B323845BC3@sourceware.org> (raw) https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=4f50d9d6204987f84b3d1912a543f21ba1378f41 commit 4f50d9d6204987f84b3d1912a543f21ba1378f41 Author: Yuriy Kolerov <kolerov93@gmail.com> Date: Tue May 21 10:56:54 2024 +0100 arc: libgloss: Add support of IoT Development Kit board An example of building an application: $ arc-elf32-gcc -mcpu=em -specs=iotdk.specs main.c -o main Signed-off-by: Vladimir Isaev <vvisaev@gmail.com> Signed-off-by: Yuriy Kolerov <kolerov93@gmail.com> Diff: --- libgloss/arc/iotdk-uart-setup.c | 36 ++++++++++++++++++++++++++++++++++++ libgloss/arc/iotdk.ld | 14 ++++++++++++++ libgloss/arc/iotdk.specs | 18 ++++++++++++++++++ 3 files changed, 68 insertions(+) diff --git a/libgloss/arc/iotdk-uart-setup.c b/libgloss/arc/iotdk-uart-setup.c new file mode 100644 index 000000000..e6d2ac887 --- /dev/null +++ b/libgloss/arc/iotdk-uart-setup.c @@ -0,0 +1,36 @@ +/* + * iotdk-setup.c -- provide _setup_low_level() to initialize UART. + * + * Copyright (c) 2024 Synopsys Inc. + * + * The authors hereby grant permission to use, copy, modify, distribute, + * and license this software and its documentation for any purpose, provided + * that existing copyright notices are retained in all copies and that this + * notice is included verbatim in any distributions. No written agreement, + * license, or royalty fee is required for any of the authorized uses. + * Modifications to this software may be copyrighted by their authors + * and need not follow the licensing terms described here, provided that + * the new terms are clearly indicated on the first page of each file where + * they apply. + * + */ + +#include "uart-8250.h" + +/* Setup UART parameters. */ +int +_setup_low_level (void) +{ + void * const uart_base = (void *) 0x80014000; + const uint32_t uart_clk_ena = 0xC0; + const int uart_aux_mapped = 1; + const uint32_t uart_clock = 16000000; + const uint32_t uart_baud = 115200; + + /* For this platform we have to enable UART clock before configuring it. */ + __builtin_arc_sr (0x01, (uint32_t) uart_base + uart_clk_ena); + + _uart_8250_setup (uart_base, uart_aux_mapped, uart_clock, uart_baud); + + return 0; +} diff --git a/libgloss/arc/iotdk.ld b/libgloss/arc/iotdk.ld new file mode 100644 index 000000000..18874e819 --- /dev/null +++ b/libgloss/arc/iotdk.ld @@ -0,0 +1,14 @@ +/* Memory map for ARC IoT DK - EM9D */ + +MEMORY +{ + ICCM : ORIGIN = 0x20000000, LENGTH = 256K + DCCM : ORIGIN = 0x80000000, LENGTH = 128K +} + +REGION_ALIAS("startup", ICCM) +REGION_ALIAS("text", ICCM) +REGION_ALIAS("data", DCCM) +REGION_ALIAS("sdata", DCCM) + +INCLUDE arcv2elf-common.ld diff --git a/libgloss/arc/iotdk.specs b/libgloss/arc/iotdk.specs new file mode 100644 index 000000000..9f9ba433f --- /dev/null +++ b/libgloss/arc/iotdk.specs @@ -0,0 +1,18 @@ +%rename link iotdk_link +%rename link_gcc_c_sequence iotdk_link_gcc_c_sequence +%rename startfile iotdk_startfile + +*link: +%(iotdk_link) -T iotdk.ld%s + +*iotdk_libgloss: +-luart_8250 -liotdk_uart + +*iotdk_libc: +%{!specs=nano.specs:-lc} %{specs=nano.specs:-lc_nano} + +*link_gcc_c_sequence: +%(iotdk_link_gcc_c_sequence) --start-group %G %(iotdk_libc) %(iotdk_libgloss) --end-group + +*startfile: +%(iotdk_startfile) arc-main-helper%O%s
reply other threads:[~2024-05-22 18:28 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20240522182821.19B323845BC3@sourceware.org \ --to=jjohnstn@sourceware.org \ --cc=newlib-cvs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).