fixup xmon ADB polling so that it works before ADB core is loaded

parent 7a80fc4c
......@@ -225,14 +225,13 @@ xmon_map_scc(void)
static int scc_initialized = 0;
void xmon_init_scc(void);
extern void pmu_poll(void);
extern void cuda_poll(void);
static inline void do_poll_adb(void)
{
#ifdef CONFIG_ADB_PMU
if (sys_ctrler == SYS_CTRLER_PMU)
pmu_poll();
pmu_poll_adb();
#endif /* CONFIG_ADB_PMU */
#ifdef CONFIG_ADB_CUDA
if (sys_ctrler == SYS_CTRLER_CUDA)
......
......@@ -222,8 +222,6 @@ static int proc_write_options(struct file *file, const char __user *buffer,
unsigned long count, void *data);
#ifdef CONFIG_ADB
static void pmu_poll_adb(void);
struct adb_driver via_pmu_driver = {
"PMU",
pmu_probe,
......@@ -1187,7 +1185,6 @@ pmu_poll(void)
via_pmu_interrupt(0, 0, 0);
}
#ifdef CONFIG_ADB
void __openfirmware
pmu_poll_adb(void)
{
......@@ -1202,7 +1199,6 @@ pmu_poll_adb(void)
} while (pmu_suspended && (adb_int_pending || pmu_state != idle
|| req_awaiting_reply));
}
#endif /* CONFIG_ADB */
void __openfirmware
pmu_wait_complete(struct adb_request *req)
......@@ -2777,6 +2773,7 @@ pmu_polled_request(struct adb_request *req)
EXPORT_SYMBOL(pmu_request);
EXPORT_SYMBOL(pmu_poll);
EXPORT_SYMBOL(pmu_poll_adb);
EXPORT_SYMBOL(pmu_wait_complete);
EXPORT_SYMBOL(pmu_suspend);
EXPORT_SYMBOL(pmu_resume);
......
......@@ -127,6 +127,7 @@ extern int pmu_request(struct adb_request *req,
void (*done)(struct adb_request *), int nbytes, ...);
extern void pmu_poll(void);
extern void pmu_poll_adb(void); /* For use by xmon */
extern void pmu_wait_complete(struct adb_request *req);
/* For use before switching interrupts off for a long time;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment