Commit 4cb29d18129fb425c6202ab535c3fc1856391b99

Authored by David S. Miller
1 parent 13edad7a5c

[SPARC64]: Kill arch/sparc64/prom/memory.c

No longer used.

Signed-off-by: David S. Miller <davem@davemloft.net>

Showing 4 changed files with 1 additions and 170 deletions Side-by-side Diff

arch/sparc64/prom/Makefile
... ... @@ -6,6 +6,6 @@
6 6 EXTRA_AFLAGS := -ansi
7 7 EXTRA_CFLAGS := -Werror
8 8  
9   -lib-y := bootstr.o devops.o init.o memory.o misc.o \
  9 +lib-y := bootstr.o devops.o init.o misc.o \
10 10 tree.o console.o printf.o p1275.o cif.o
arch/sparc64/prom/init.c
... ... @@ -27,7 +27,6 @@
27 27 * failure. It gets passed the pointer to the PROM vector.
28 28 */
29 29  
30   -extern void prom_meminit(void);
31 30 extern void prom_cif_init(void *, void *);
32 31  
33 32 void __init prom_init(void *cif_handler, void *cif_stack)
... ... @@ -89,8 +88,6 @@
89 88 prom_prev = (ints[0] << 16) | (ints[1] << 8) | ints[2];
90 89  
91 90 printk ("PROMLIB: Sun IEEE Boot Prom %s\n", buffer + bufadjust);
92   -
93   - prom_meminit();
94 91  
95 92 /* Initialization successful. */
96 93 return;
arch/sparc64/prom/memory.c
1   -/* $Id: memory.c,v 1.5 1999/08/31 06:55:04 davem Exp $
2   - * memory.c: Prom routine for acquiring various bits of information
3   - * about RAM on the machine, both virtual and physical.
4   - *
5   - * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
6   - * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
7   - */
8   -
9   -#include <linux/kernel.h>
10   -#include <linux/init.h>
11   -
12   -#include <asm/openprom.h>
13   -#include <asm/oplib.h>
14   -
15   -/* This routine, for consistency, returns the ram parameters in the
16   - * V0 prom memory descriptor format. I choose this format because I
17   - * think it was the easiest to work with. I feel the religious
18   - * arguments now... ;) Also, I return the linked lists sorted to
19   - * prevent paging_init() upset stomach as I have not yet written
20   - * the pepto-bismol kernel module yet.
21   - */
22   -
23   -struct linux_prom64_registers prom_reg_memlist[64];
24   -struct linux_prom64_registers prom_reg_tmp[64];
25   -
26   -struct linux_mlist_p1275 prom_phys_total[64];
27   -struct linux_mlist_p1275 prom_prom_taken[64];
28   -struct linux_mlist_p1275 prom_phys_avail[64];
29   -
30   -struct linux_mlist_p1275 *prom_ptot_ptr = prom_phys_total;
31   -struct linux_mlist_p1275 *prom_ptak_ptr = prom_prom_taken;
32   -struct linux_mlist_p1275 *prom_pavl_ptr = prom_phys_avail;
33   -
34   -struct linux_mem_p1275 prom_memlist;
35   -
36   -
37   -/* Internal Prom library routine to sort a linux_mlist_p1275 memory
38   - * list. Used below in initialization.
39   - */
40   -static void __init
41   -prom_sortmemlist(struct linux_mlist_p1275 *thislist)
42   -{
43   - int swapi = 0;
44   - int i, mitr;
45   - unsigned long tmpaddr, tmpsize;
46   - unsigned long lowest;
47   -
48   - for(i=0; thislist[i].theres_more; i++) {
49   - lowest = thislist[i].start_adr;
50   - for(mitr = i+1; thislist[mitr-1].theres_more; mitr++)
51   - if(thislist[mitr].start_adr < lowest) {
52   - lowest = thislist[mitr].start_adr;
53   - swapi = mitr;
54   - }
55   - if(lowest == thislist[i].start_adr) continue;
56   - tmpaddr = thislist[swapi].start_adr;
57   - tmpsize = thislist[swapi].num_bytes;
58   - for(mitr = swapi; mitr > i; mitr--) {
59   - thislist[mitr].start_adr = thislist[mitr-1].start_adr;
60   - thislist[mitr].num_bytes = thislist[mitr-1].num_bytes;
61   - }
62   - thislist[i].start_adr = tmpaddr;
63   - thislist[i].num_bytes = tmpsize;
64   - }
65   -}
66   -
67   -/* Initialize the memory lists based upon the prom version. */
68   -void __init prom_meminit(void)
69   -{
70   - int node = 0;
71   - unsigned int iter, num_regs;
72   -
73   - node = prom_finddevice("/memory");
74   - num_regs = prom_getproperty(node, "available",
75   - (char *) prom_reg_memlist,
76   - sizeof(prom_reg_memlist));
77   - num_regs = (num_regs/sizeof(struct linux_prom64_registers));
78   - for(iter=0; iter<num_regs; iter++) {
79   - prom_phys_avail[iter].start_adr =
80   - prom_reg_memlist[iter].phys_addr;
81   - prom_phys_avail[iter].num_bytes =
82   - prom_reg_memlist[iter].reg_size;
83   - prom_phys_avail[iter].theres_more =
84   - &prom_phys_avail[iter+1];
85   - }
86   - prom_phys_avail[iter-1].theres_more = NULL;
87   -
88   - num_regs = prom_getproperty(node, "reg",
89   - (char *) prom_reg_memlist,
90   - sizeof(prom_reg_memlist));
91   - num_regs = (num_regs/sizeof(struct linux_prom64_registers));
92   - for(iter=0; iter<num_regs; iter++) {
93   - prom_phys_total[iter].start_adr =
94   - prom_reg_memlist[iter].phys_addr;
95   - prom_phys_total[iter].num_bytes =
96   - prom_reg_memlist[iter].reg_size;
97   - prom_phys_total[iter].theres_more =
98   - &prom_phys_total[iter+1];
99   - }
100   - prom_phys_total[iter-1].theres_more = NULL;
101   -
102   - node = prom_finddevice("/virtual-memory");
103   - num_regs = prom_getproperty(node, "available",
104   - (char *) prom_reg_memlist,
105   - sizeof(prom_reg_memlist));
106   - num_regs = (num_regs/sizeof(struct linux_prom64_registers));
107   -
108   - /* Convert available virtual areas to taken virtual
109   - * areas. First sort, then convert.
110   - */
111   - for(iter=0; iter<num_regs; iter++) {
112   - prom_prom_taken[iter].start_adr =
113   - prom_reg_memlist[iter].phys_addr;
114   - prom_prom_taken[iter].num_bytes =
115   - prom_reg_memlist[iter].reg_size;
116   - prom_prom_taken[iter].theres_more =
117   - &prom_prom_taken[iter+1];
118   - }
119   - prom_prom_taken[iter-1].theres_more = NULL;
120   -
121   - prom_sortmemlist(prom_prom_taken);
122   -
123   - /* Finally, convert. */
124   - for(iter=0; iter<num_regs; iter++) {
125   - prom_prom_taken[iter].start_adr =
126   - prom_prom_taken[iter].start_adr +
127   - prom_prom_taken[iter].num_bytes;
128   - prom_prom_taken[iter].num_bytes =
129   - prom_prom_taken[iter+1].start_adr -
130   - prom_prom_taken[iter].start_adr;
131   - }
132   - prom_prom_taken[iter-1].num_bytes =
133   - -1UL - prom_prom_taken[iter-1].start_adr;
134   -
135   - /* Sort the other two lists. */
136   - prom_sortmemlist(prom_phys_total);
137   - prom_sortmemlist(prom_phys_avail);
138   -
139   - /* Link all the lists into the top-level descriptor. */
140   - prom_memlist.p1275_totphys=&prom_ptot_ptr;
141   - prom_memlist.p1275_prommap=&prom_ptak_ptr;
142   - prom_memlist.p1275_available=&prom_pavl_ptr;
143   -}
144   -
145   -/* This returns a pointer to our libraries internal p1275 format
146   - * memory descriptor.
147   - */
148   -struct linux_mem_p1275 *
149   -prom_meminfo(void)
150   -{
151   - return &prom_memlist;
152   -}
include/asm-sparc64/oplib.h
... ... @@ -95,20 +95,6 @@
95 95 extern void prom_seek(int device_handle, unsigned int seek_hival,
96 96 unsigned int seek_lowval);
97 97  
98   -/* Machine memory configuration routine. */
99   -
100   -/* This function returns a V0 format memory descriptor table, it has three
101   - * entries. One for the total amount of physical ram on the machine, one
102   - * for the amount of physical ram available, and one describing the virtual
103   - * areas which are allocated by the prom. So, in a sense the physical
104   - * available is a calculation of the total physical minus the physical mapped
105   - * by the prom with virtual mappings.
106   - *
107   - * These lists are returned pre-sorted, this should make your life easier
108   - * since the prom itself is way too lazy to do such nice things.
109   - */
110   -extern struct linux_mem_p1275 *prom_meminfo(void);
111   -
112 98 /* Miscellaneous routines, don't really fit in any category per se. */
113 99  
114 100 /* Reboot the machine with the command line passed. */