Welcome to the Rockbox Technical Forums!
Regarding the issue of using the power button to boot the device, there is a good reason why it is not the caseThe long answer is that the power button (contrary to all other buttons) sends a special signal to the soc. When the soc is powered off, this signal means "enter recovery mode". So if you press if from power off, the device will boot straight to recovery mode instead of our bootloader. If USB is not plugged then the recovery mode will timeout after 2 or 3 seconds and eventually boot rockbox. So you would need to hold the power button for 3 to 4 seconds to boot: that's a VERY long time. Now you might wonder how the OF does it. The answer is that the OF never powers off, it merely goes to deep sleep and thus avoids this problem.
static int boot_decision(int context){ setup_lradc(0); // setup LRADC channel 0 to read keys#ifdef SONY_NWZE360 HW_PINCTRL_PULLn_SET(0) = 1 << 9; // enable pullup on hold key (B0P09)#endif /* make a decision */ int decision = local_decision(); /* in USB or alarm context, stick to it */ if(context == CONTEXT_USB || context == CONTEXT_RTC) { /* never power down so replace power off decision by rockbox */ return decision == BOOT_STOP ? BOOT_ROCK : decision; } /* otherwise start a 1 second timeout. Any decision change * will result in power down */ uint32_t tmo = HW_DIGCTL_MICROSECONDS + 1000000; while(HW_DIGCTL_MICROSECONDS < tmo) { int new_dec = local_decision(); if(new_dec != decision) return BOOT_STOP; } /*My addition to code. Should wait short "left" within 1 sec timeout. In theory...*/ if (decision == BOOT_OF) { tmo = HW_DIGCTL_MICROSECONDS + 1000000; while(HW_DIGCTL_MICROSECONDS < tmo) { int val = read_lradc(0); if(val >= 2210 && val < 2310) return BOOT_OF; } return BOOT_STOP; } return decision;}
if(val >= 2150 && val < 2250)
make -C /path/to/rbutil/mkimxboot/dualboot clean && make -C /path/to/rbutil/mkimxboot/dualboot
make -C /path/to/rbutil/mkimxboot clean && make -C /path/to/rbutil/mkimxboot
/path/to/rbutil/mkimxboot/mkimxboot -i /path/to/firmware.sb -b /path/to/bootloader-nwze370.sony -o firmware.sb
[I_VDDIO] = IMX233_BUTTON_(VDDIO, VDDIO(3630), "vddio"), /* we need VDDIO for relative */
if(val >= 1420 && val < 1520)
First of all, thank you for making this port available. I could have posted this a few hours earlier if the Wiki (https://www.rockbox.org/wiki/ImxInstall#Prebuilt_bootloaders) didn't claim that the bootloader for my NWZ-E384 was the same as that for the 370 series SonyNWZE380Same as SonyNWZE370Could this be changed, perhaps? Eventually I ended up in this thread and successfully used the bootloader from the second post.Things seem to work fine with the exception of the FM Radio (known issue, I reckon). Finally my daughter can see the 40 tracks of her favorite audiobook in the correct order!
Hi,install instruction for the bootloader are here: http://www.rockbox.org/wiki/SonyNWZE370Port and to install the main binary, download http://build.rockbox.org/data/rockbox-sonynwze370.zip and extract it at the root of the device. The bootloader has working USB mode so you can always upload the firmware once you have installed the bootloader.
Page created in 0.144 seconds with 21 queries.