treeboot-bamboo.c 877 B

12345678910111213141516171819202122232425262728293031323334353637383940
  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. BSS_STACK(4096);
  14. #define PIBS_MAC0 0xfffc0400
  15. #define PIBS_MAC1 0xfffc0500
  16. char pibs_mac0[6];
  17. char pibs_mac1[6];
  18. static void read_pibs_mac(void)
  19. {
  20. unsigned long long mac64;
  21. mac64 = strtoull((char *)PIBS_MAC0, 0, 16);
  22. memcpy(&pibs_mac0, (char *)&mac64+2, 6);
  23. mac64 = strtoull((char *)PIBS_MAC1, 0, 16);
  24. memcpy(&pibs_mac1, (char *)&mac64+2, 6);
  25. }
  26. void platform_init(void)
  27. {
  28. unsigned long end_of_ram = 0x8000000;
  29. unsigned long avail_ram = end_of_ram - (unsigned long)_end;
  30. simple_alloc_init(_end, avail_ram, 32, 64);
  31. read_pibs_mac();
  32. bamboo_init((u8 *)&pibs_mac0, (u8 *)&pibs_mac1);
  33. }