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

treeboot-bamboo.c (877B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * Copyright IBM Corporation, 2007
      4 * Josh Boyer <jwboyer@linux.vnet.ibm.com>
      5 *
      6 * Based on ebony wrapper:
      7 * Copyright 2007 David Gibson, IBM Corporation.
      8 */
      9#include "ops.h"
     10#include "stdio.h"
     11#include "44x.h"
     12#include "stdlib.h"
     13
     14BSS_STACK(4096);
     15
     16#define PIBS_MAC0 0xfffc0400
     17#define PIBS_MAC1 0xfffc0500
     18char pibs_mac0[6];
     19char pibs_mac1[6];
     20
     21static void read_pibs_mac(void)
     22{
     23	unsigned long long mac64;
     24
     25	mac64 = strtoull((char *)PIBS_MAC0, 0, 16);
     26	memcpy(&pibs_mac0, (char *)&mac64+2, 6);
     27
     28	mac64 = strtoull((char *)PIBS_MAC1, 0, 16);
     29	memcpy(&pibs_mac1, (char *)&mac64+2, 6);
     30}
     31
     32void platform_init(void)
     33{
     34	unsigned long end_of_ram = 0x8000000;
     35	unsigned long avail_ram = end_of_ram - (unsigned long)_end;
     36
     37	simple_alloc_init(_end, avail_ram, 32, 64);
     38	read_pibs_mac();
     39	bamboo_init((u8 *)&pibs_mac0, (u8 *)&pibs_mac1);
     40}