summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2008-08-14 09:30:08 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2008-08-14 09:30:08 +0200
commit939e05e372178eae080b1faa5ad290f29f7a8118 (patch)
treefa6b10b334ff616e61ba33633b809c1e2f11bc2d
parent65778b63d2f0b6d5b3405010eedc72271bce20e0 (diff)
downloadbarebox-939e05e372178eae080b1faa5ad290f29f7a8118.tar.gz
barebox-939e05e372178eae080b1faa5ad290f29f7a8118.tar.xz
pcm038: check for errors
Make the pcm038 startup a bit more robust against errors. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--board/pcm038/pcm038.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/board/pcm038/pcm038.c b/board/pcm038/pcm038.c
index b0da1ace9e..c2c9cc2e95 100644
--- a/board/pcm038/pcm038.c
+++ b/board/pcm038/pcm038.c
@@ -97,7 +97,7 @@ static int pcm038_devices_init(void)
{
int i;
struct device_d *nand, *dev;
- char *envdev;
+ char *envdev = "no";
unsigned int mode[] = {
PD0_AIN_FEC_TXD0,
@@ -156,10 +156,16 @@ static int pcm038_devices_init(void)
case GPCR_BOOT_16BIT_NAND_512:
case GPCR_BOOT_8BIT_NAND_512:
nand = get_device_by_path("/dev/nand0");
+ if (!nand)
+ break;
dev = dev_add_partition(nand, 0x00000, 0x40000, PARTITION_FIXED, "self_raw");
+ if (!dev)
+ break;
dev_add_bb_dev(dev, "self0");
dev = dev_add_partition(nand, 0x40000, 0x20000, PARTITION_FIXED, "env_raw");
+ if (!dev)
+ break;
dev_add_bb_dev(dev, "env0");
envdev = "NAND";
break;