cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

uart_base.c (998B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 * Copyright (C) 2009 Lemote Inc.
      4 * Author: Wu Zhangjin, wuzhangjin@gmail.com
      5 */
      6
      7#include <linux/export.h>
      8#include <asm/bootinfo.h>
      9#include <asm/setup.h>
     10
     11#include <loongson.h>
     12
     13/* raw */
     14unsigned long loongson_uart_base;
     15/* ioremapped */
     16unsigned long _loongson_uart_base;
     17
     18EXPORT_SYMBOL(loongson_uart_base);
     19EXPORT_SYMBOL(_loongson_uart_base);
     20
     21void prom_init_loongson_uart_base(void)
     22{
     23	switch (mips_machtype) {
     24	case MACH_LEMOTE_FL2E:
     25		loongson_uart_base = LOONGSON_PCIIO_BASE + 0x3f8;
     26		break;
     27	case MACH_LEMOTE_FL2F:
     28	case MACH_LEMOTE_LL2F:
     29		loongson_uart_base = LOONGSON_PCIIO_BASE + 0x2f8;
     30		break;
     31	case MACH_LEMOTE_ML2F7:
     32	case MACH_LEMOTE_YL2F89:
     33	case MACH_DEXXON_GDIUM2F10:
     34	case MACH_LEMOTE_NAS:
     35	default:
     36		/* The CPU provided serial port (LPC) */
     37		loongson_uart_base = LOONGSON_LIO1_BASE + 0x3f8;
     38		break;
     39	}
     40
     41	_loongson_uart_base = TO_UNCAC(loongson_uart_base);
     42	setup_8250_early_printk_port(_loongson_uart_base, 0, 1024);
     43}