Skip to content

Commit

Permalink
MIPS: TXx9: Add prom_getenv
Browse files Browse the repository at this point in the history
Add prom_getenv() which can be used for YAMON.  This assumes other
firmware should pass NULL for fw_arg2.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Atsushi Nemoto authored and Ralf Baechle committed Oct 11, 2008
1 parent e0dfb20 commit 265b89d
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
15 changes: 15 additions & 0 deletions arch/mips/txx9/generic/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,21 @@ char * __init prom_getcmdline(void)
return &(arcs_cmdline[0]);
}

const char *__init prom_getenv(const char *name)
{
const s32 *str = (const s32 *)fw_arg2;

if (!str)
return NULL;
/* YAMON style ("name", "value" pairs) */
while (str[0] && str[1]) {
if (!strcmp((const char *)(unsigned long)str[0], name))
return (const char *)(unsigned long)str[1];
str += 2;
}
return NULL;
}

static void __noreturn txx9_machine_halt(void)
{
local_irq_disable();
Expand Down
1 change: 1 addition & 0 deletions include/asm-mips/txx9/generic.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ struct txx9_board_vec {
extern struct txx9_board_vec *txx9_board_vec;
extern int (*txx9_irq_dispatch)(int pending);
char *prom_getcmdline(void);
const char *prom_getenv(const char *name);
void txx9_wdt_init(unsigned long base);
void txx9_spi_init(int busid, unsigned long base, int irq);
void txx9_ethaddr_init(unsigned int id, unsigned char *ethaddr);
Expand Down

0 comments on commit 265b89d

Please sign in to comment.