blob: 597899ad5438e3b551a0b190555546e3a0e5b218 [file] [log] [blame]
Gabor Juhosd4a67d92011-01-04 21:28:14 +01001/*
2 * Atheros AR71XX/AR724X/AR913X specific prom routines
3 *
Laurent Fasnacht556b6622015-05-27 19:50:00 +02004 * Copyright (C) 2015 Laurent Fasnacht <l@libres.ch>
Gabor Juhosd4a67d92011-01-04 21:28:14 +01005 * Copyright (C) 2008-2010 Gabor Juhos <juhosg@openwrt.org>
6 * Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org>
7 *
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU General Public License version 2 as published
10 * by the Free Software Foundation.
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15#include <linux/io.h>
16#include <linux/string.h>
Alban Bedelebf71ec2014-11-07 12:44:36 +010017#include <linux/initrd.h>
Gabor Juhosd4a67d92011-01-04 21:28:14 +010018
19#include <asm/bootinfo.h>
20#include <asm/addrspace.h>
Alban Bedel11a0f402014-11-07 12:44:35 +010021#include <asm/fw/fw.h>
Gabor Juhosd4a67d92011-01-04 21:28:14 +010022
23#include "common.h"
24
Gabor Juhosd4a67d92011-01-04 21:28:14 +010025void __init prom_init(void)
26{
Alban Bedel11a0f402014-11-07 12:44:35 +010027 fw_init_cmdline();
Alban Bedelebf71ec2014-11-07 12:44:36 +010028
Laurent Fasnacht556b6622015-05-27 19:50:00 +020029#ifdef CONFIG_BLK_DEV_INITRD
Alban Bedelebf71ec2014-11-07 12:44:36 +010030 /* Read the initrd address from the firmware environment */
31 initrd_start = fw_getenvl("initrd_start");
32 if (initrd_start) {
33 initrd_start = KSEG0ADDR(initrd_start);
34 initrd_end = initrd_start + fw_getenvl("initrd_size");
35 }
Laurent Fasnacht556b6622015-05-27 19:50:00 +020036#endif
Gabor Juhosd4a67d92011-01-04 21:28:14 +010037}
38
39void __init prom_free_prom_memory(void)
40{
41 /* We do not have to prom memory to free */
42}