Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4be48fd5 authored by Afzal Mohammed's avatar Afzal Mohammed Committed by Paul Walmsley
Browse files

ARM: OMAP2+: gpmc: Adapt to HWMOD



Create API for platforms to adapt GPMC to HWMOD

Signed-off-by: default avatarAfzal Mohammed <afzal@ti.com>
Reviewed-by: default avatarJon Hunter <jon-hunter@ti.com>
Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
parent 49484a60
Loading
Loading
Loading
Loading
+22 −0
Original line number Diff line number Diff line
@@ -31,10 +31,13 @@
#include <plat/cpu.h>
#include <plat/gpmc.h>
#include <plat/sdrc.h>
#include <plat/omap_device.h>

#include "soc.h"
#include "common.h"

#define	DEVICE_NAME		"omap-gpmc"

/* GPMC register offsets */
#define GPMC_REVISION		0x00
#define GPMC_SYSCONFIG		0x10
@@ -898,6 +901,25 @@ static int __init gpmc_init(void)
}
postcore_initcall(gpmc_init);

static int __init omap_gpmc_init(void)
{
	struct omap_hwmod *oh;
	struct platform_device *pdev;
	char *oh_name = "gpmc";

	oh = omap_hwmod_lookup(oh_name);
	if (!oh) {
		pr_err("Could not look up %s\n", oh_name);
		return -ENODEV;
	}

	pdev = omap_device_build(DEVICE_NAME, -1, oh, NULL, 0, NULL, 0, 0);
	WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name);

	return IS_ERR(pdev) ? PTR_ERR(pdev) : 0;
}
postcore_initcall(omap_gpmc_init);

static irqreturn_t gpmc_handle_irq(int irq, void *dev)
{
	int i;