Hi

init 6 works same like rebooting from remote or "reboot -f" from terminal.

Code:
Sending all processes the KILL signal...done.Deactivating swap...umount: tmpfs busy - remounted read-only
done.
Unmounting local filesystems...umount: tmpfs busy - remounted read-only
done.
Rebooting...
Anyway I fixed it. I updated arch/sh/kernel/process_32.c with changes that were included in 211 kernel around 2011 by user freebox, that adopted tdt sources for ADB 5800S/X boxes:

Code:
diff linux-sh4-2.6.32.59_stm24_0211/arch/sh/kernel/process_32.c ~/git/Audioniek/buildsystem/build_tmp/linux-sh4-2.6.32.71_stm24_0217/arch/sh/kernel/process_32.c 27a28
> #include <linux/list.h>
36a38
> #include <asm/restart.h>
45,50d46
< static void watchdog_trigger_immediate(void)
< {
< 	sh_wdt_write_cnt(0xFF);
< 	sh_wdt_write_csr(0xC2);
< }
< 
53,59c49,55
< 	local_irq_disable();
< 
< 	/* Use watchdog timer to trigger reset */
< 	watchdog_trigger_immediate();
< 
< 	while (1)
< 		cpu_sleep();
---
> 	/* Taken from stlinux22 because stlinux24
> 	 * handling does not work on ufs910.
> 	 */
> 	
> 	/* SR.BL=1 and invoke address error to let CPU reset (manual reset) */
> 	asm volatile ("ldc %0, sr\n\t"
> 		      "mov.l @%1, %0"::"r" (0x10000000), "r"(0x80000001));
111c107,113
< 	show_trace(NULL, (unsigned long *)regs->regs[15], regs);
---
> 	show_trace(current, (unsigned long *)regs->regs[15],
> #ifdef CONFIG_FRAME_POINTER
> 	       (unsigned long *)regs->regs[14],
> #else
> 	       0,
> #endif
> 	       regs->pc, regs);
Now after reboot from remote or init 6:

Code:
adb_box:~# init 6
INIT: Switching to runlevel: 6
INIT: Sending processes the TESending all processes the TERM signal...lircd-0.9.0[615]: caught signal
done.
Sending all processes the KILL signal...done.
Deactivating swap...umount: tmpfs busy - remounted read-only
done.
Unmounting local filesystems...umount: tmpfs busy - remounted read-only
done.
Rebooting... 


Board: Nbox [29-bit mode] by FREEBOX




U-Boot 1.3.1 (Jun 18 2011 - 13:44:44) - stm23_0053


DRAM:  128 MiB
NOR:     4 MiB
NAND:   64 MiB
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0 


Warning: MAC addresses don't match:
        HW MAC address:  00:00:91:91:01:01
        "ethaddr" value: 00:03:91:85:01:01
Using MAC Address 00:03:91:85:01:01
File transfer via NFS from server 10.1.1.5; our IP address is 10.1.1.39
Filename '/opt/NBOX/release/boot/uImage'.
Load address: 0xa5000000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #######################################
done
Bytes transferred = 1862028 (1c698c hex)
## Booting image at a5000000 ...
   Image Name:   Linux-2.6.32.71_stm24_0217
   Image Type:   SuperH Linux Kernel Image (gzip compressed)
   Data Size:    1861964 Bytes =   1.8 MiB
   Load Address: 84001000
   Entry Point:  84002000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK


Starting kernel console=ttyAS0,115200 root=/dev/nfs nfsroot=/opt/NBOX/release,tcp rw ip=10.1.1.39:10.1.1.5:10.1.1.1:255.255.255.0:nbox:eth0:off mem=128m coprocessor_mem=4m@0x10000000,4m@0x10400000 nwhwconf=device:eth0,hwaddr:00:03:91:85:01:01 init=/bin/devinit - 0x00000000 - 0 ...
I also updated several files that allow to see mtd partitions via /proc/mtd etc. Many crucial changes were in mach.c/setup.c in mach-mb442 You can see them here

tdt_211-freebox_211.png

This is original kernel source:
https://www.dropbox.com/s/0loxurdlrr...14.tar.gz?dl=1