summaryrefslogtreecommitdiffstats
path: root/platforms
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.vnet.ibm.com>2015-02-05 17:49:50 +1100
committerStewart Smith <stewart@linux.vnet.ibm.com>2015-02-05 17:49:50 +1100
commit16c80346ddf9ec6baf583b610cf1449f25962d34 (patch)
tree9bca5221defa3fa784b0e6675748b9a4c074d093 /platforms
parent64a5f776e1c82e707a7126ad4b1f70f8a2d419fd (diff)
downloadblackbird-skiboot-16c80346ddf9ec6baf583b610cf1449f25962d34.tar.gz
blackbird-skiboot-16c80346ddf9ec6baf583b610cf1449f25962d34.zip
Add OPAL_INVALID_CALL explicitly in opal.h and docs
Was mentioned in linux as possibly being used by some external test modules. It's harmless to make this official behaviour. Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'platforms')
-rw-r--r--platforms/astbmc/astbmc.h1
-rw-r--r--platforms/astbmc/habanero.c1
-rw-r--r--platforms/astbmc/palmetto.c1
-rw-r--r--platforms/astbmc/pnor.c56
4 files changed, 1 insertions, 58 deletions
diff --git a/platforms/astbmc/astbmc.h b/platforms/astbmc/astbmc.h
index 7e33f617..cee475a9 100644
--- a/platforms/astbmc/astbmc.h
+++ b/platforms/astbmc/astbmc.h
@@ -24,6 +24,5 @@ extern int64_t astbmc_ipmi_power_down(uint64_t request);
extern void astbmc_init(void);
extern void astbmc_ext_irq(unsigned int chip_id);
extern int pnor_init(void);
-extern bool pnor_load_resource(enum resource_id id, void *buf, size_t *len);
#endif /* __ASTBMC_H */
diff --git a/platforms/astbmc/habanero.c b/platforms/astbmc/habanero.c
index a19aafd7..d442d1f0 100644
--- a/platforms/astbmc/habanero.c
+++ b/platforms/astbmc/habanero.c
@@ -49,5 +49,4 @@ DECLARE_PLATFORM(habanero) = {
.external_irq = astbmc_ext_irq,
.cec_power_down = astbmc_ipmi_power_down,
.cec_reboot = astbmc_ipmi_reboot,
- .load_resource = pnor_load_resource,
};
diff --git a/platforms/astbmc/palmetto.c b/platforms/astbmc/palmetto.c
index cfa72360..a0030e80 100644
--- a/platforms/astbmc/palmetto.c
+++ b/platforms/astbmc/palmetto.c
@@ -51,5 +51,4 @@ DECLARE_PLATFORM(palmetto) = {
.cec_power_down = astbmc_ipmi_power_down,
.cec_reboot = astbmc_ipmi_reboot,
.elog_commit = ipmi_elog_commit,
- .load_resource = pnor_load_resource,
};
diff --git a/platforms/astbmc/pnor.c b/platforms/astbmc/pnor.c
index 2cdb29b2..f6e7a5dd 100644
--- a/platforms/astbmc/pnor.c
+++ b/platforms/astbmc/pnor.c
@@ -14,6 +14,7 @@
* limitations under the License.
*/
+
#include <skiboot.h>
#include <device.h>
#include <console.h>
@@ -84,58 +85,3 @@ int pnor_init(void)
return rc;
}
-static const struct {
- enum resource_id id;
- char name[PART_NAME_MAX+1];
-} part_name_map[] = {
- { RESOURCE_ID_KERNEL, "KERNEL" },
- { RESOURCE_ID_INITRAMFS, "ROOTFS" },
-};
-
-bool pnor_load_resource(enum resource_id id, void *buf, size_t *len)
-{
- int i, rc, part_num, part_size, part_start;
- const char *name;
-
- if (!pnor_ffs || !pnor_chip)
- return false;
-
- for (i = 0, name = NULL; i < ARRAY_SIZE(part_name_map); i++) {
- if (part_name_map[i].id == id) {
- name = part_name_map[i].name;
- break;
- }
- }
- if (!name) {
- prerror("PLAT: Couldn't find partition for id %d\n", id);
- return false;
- }
-
- rc = ffs_lookup_part(pnor_ffs, name, &part_num);
- if (rc) {
- prerror("PLAT: No %s partition in PNOR\n", name);
- return false;
- }
- rc = ffs_part_info(pnor_ffs, part_num, NULL,
- &part_start, &part_size, NULL);
- if (rc) {
- prerror("PLAT: Failed to get %s partition info\n", name);
- return false;
- }
-
- if (part_size > *len) {
- prerror("PLAT: %s image too large (%d > %zd)\n", name,
- part_size, *len);
- return false;
- }
-
- rc = flash_read(pnor_chip, part_start, buf, part_size);
- if (rc) {
- prerror("PLAT: failed to read %s partition\n", name);
- return false;
- }
-
- *len = part_size;
-
- return true;
-}
OpenPOWER on IntegriCloud