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

parent 7a80fc4c
...@@ -225,14 +225,13 @@ xmon_map_scc(void) ...@@ -225,14 +225,13 @@ xmon_map_scc(void)
static int scc_initialized = 0; static int scc_initialized = 0;
void xmon_init_scc(void); void xmon_init_scc(void);
extern void pmu_poll(void);
extern void cuda_poll(void); extern void cuda_poll(void);
static inline void do_poll_adb(void) static inline void do_poll_adb(void)
{ {
#ifdef CONFIG_ADB_PMU #ifdef CONFIG_ADB_PMU
if (sys_ctrler == SYS_CTRLER_PMU) if (sys_ctrler == SYS_CTRLER_PMU)
pmu_poll(); pmu_poll_adb();
#endif /* CONFIG_ADB_PMU */ #endif /* CONFIG_ADB_PMU */
#ifdef CONFIG_ADB_CUDA #ifdef CONFIG_ADB_CUDA
if (sys_ctrler == SYS_CTRLER_CUDA) if (sys_ctrler == SYS_CTRLER_CUDA)
......
...@@ -222,8 +222,6 @@ static int proc_write_options(struct file *file, const char __user *buffer, ...@@ -222,8 +222,6 @@ static int proc_write_options(struct file *file, const char __user *buffer,
unsigned long count, void *data); unsigned long count, void *data);
#ifdef CONFIG_ADB #ifdef CONFIG_ADB
static void pmu_poll_adb(void);
struct adb_driver via_pmu_driver = { struct adb_driver via_pmu_driver = {
"PMU", "PMU",
pmu_probe, pmu_probe,
...@@ -1187,7 +1185,6 @@ pmu_poll(void) ...@@ -1187,7 +1185,6 @@ pmu_poll(void)
via_pmu_interrupt(0, 0, 0); via_pmu_interrupt(0, 0, 0);
} }
#ifdef CONFIG_ADB
void __openfirmware void __openfirmware
pmu_poll_adb(void) pmu_poll_adb(void)
{ {
...@@ -1202,7 +1199,6 @@ pmu_poll_adb(void) ...@@ -1202,7 +1199,6 @@ pmu_poll_adb(void)
} while (pmu_suspended && (adb_int_pending || pmu_state != idle } while (pmu_suspended && (adb_int_pending || pmu_state != idle
|| req_awaiting_reply)); || req_awaiting_reply));
} }
#endif /* CONFIG_ADB */
void __openfirmware void __openfirmware
pmu_wait_complete(struct adb_request *req) pmu_wait_complete(struct adb_request *req)
...@@ -2777,6 +2773,7 @@ pmu_polled_request(struct adb_request *req) ...@@ -2777,6 +2773,7 @@ pmu_polled_request(struct adb_request *req)
EXPORT_SYMBOL(pmu_request); EXPORT_SYMBOL(pmu_request);
EXPORT_SYMBOL(pmu_poll); EXPORT_SYMBOL(pmu_poll);
EXPORT_SYMBOL(pmu_poll_adb);
EXPORT_SYMBOL(pmu_wait_complete); EXPORT_SYMBOL(pmu_wait_complete);
EXPORT_SYMBOL(pmu_suspend); EXPORT_SYMBOL(pmu_suspend);
EXPORT_SYMBOL(pmu_resume); EXPORT_SYMBOL(pmu_resume);
......
...@@ -127,6 +127,7 @@ extern int pmu_request(struct adb_request *req, ...@@ -127,6 +127,7 @@ extern int pmu_request(struct adb_request *req,
void (*done)(struct adb_request *), int nbytes, ...); void (*done)(struct adb_request *), int nbytes, ...);
extern void pmu_poll(void); extern void pmu_poll(void);
extern void pmu_poll_adb(void); /* For use by xmon */
extern void pmu_wait_complete(struct adb_request *req); extern void pmu_wait_complete(struct adb_request *req);
/* For use before switching interrupts off for a long time; /* 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