|
@@ -606,3 +606,14 @@ static int __init iop13xx_init_adma_setup(char *str)
|
|
|
__setup("iop13xx_init_adma", iop13xx_init_adma_setup);
|
|
|
__setup("iop13xx_init_uart", iop13xx_init_uart_setup);
|
|
|
__setup("iop13xx_init_i2c", iop13xx_init_i2c_setup);
|
|
|
+
|
|
|
+void iop13xx_restart(char mode, const char *cmd)
|
|
|
+{
|
|
|
+ /*
|
|
|
+ * Reset the internal bus (warning both cores are reset)
|
|
|
+ */
|
|
|
+ write_wdtcr(IOP_WDTCR_EN_ARM);
|
|
|
+ write_wdtcr(IOP_WDTCR_EN);
|
|
|
+ write_wdtsr(IOP13XX_WDTSR_WRITE_EN | IOP13XX_WDTCR_IB_RESET);
|
|
|
+ write_wdtcr(0x1000);
|
|
|
+}
|