1
0
Fork 0
forked from len0rd/rockbox
Commit graph

37868 commits

Author SHA1 Message Date
Solomon Peachy
7ea64a315b Revert "storage: Disk Cache buffer size may need to be larger than SECTOR_SIZE"
This reverts commit dcec6828a3.

This did not solve the reported problem, and it turns out that the original
code did the right thing with respect to the device's logical sector size.

Change-Id: I5bed2520ba8f5ca01df0ddd71588d3ed69c1d77c
2024-11-24 00:57:57 -05:00
Solomon Peachy
dcec6828a3 storage: Disk Cache buffer size may need to be larger than SECTOR_SIZE
The file I/O code operates in terms of the FILESYSTEM sector size, which
may be much larger than the underlying device's logical sector size. So
the disk cache buffers need to be the the larger of:

 * Max allowed filesystem sector size (MAX_VIRT_SECTOR_SIZE) (if defined)
 * Max allowed logical sector size (MAX_VARIABLE_LOG_SECTOR) (if defined)
 * Fixed logical size (SECTOR_SIZE)

Change-Id: Ica0ec36d113406f24c12c696317a8d3520e7852c
2024-11-24 00:00:04 -05:00
Solomon Peachy
7df324b819 sdmmc: the tCardInfo.initialized field needs to be an integer, not bool
Some drivers (Notably the PP SD driver) uses negative values to indicate
errors.

Change-Id: I9dbb065cbe90a62cde8a1d89bf6b450f40721790
2024-11-23 23:07:12 -05:00
Solomon Peachy
f24bae5baf ...This time, fix the non-multidrive+non-multivolume builds.
I swear, this is getting old.

Change-Id: If810a6559eaebbed0a0f0c6a0891b09101783be6
2024-11-23 23:07:12 -05:00
Solomon Peachy
fb2316b9b0 Hopfully fix up the remaining warnings
Change-Id: Iba1facabf4980b491d80842ef91e92d6bc374cfa
2024-11-23 22:39:35 -05:00
William Wilgus
1bf19eaaff tag_table use unsigned short rather than enum
we have 190 tags

mips padded with extra 2 bytes * 2

saves ~768 bytes

Change-Id: I1d9bd8bf435bc1e3bc4564356c290c883c4724de
2024-11-23 21:44:04 -05:00
Solomon Peachy
21ebfd574a fix more red in hosted targets that don't share the generic system implementation
Change-Id: I38f59005e75fb7326e655f22bbe63048f31573a3
2024-11-23 21:20:17 -05:00
Solomon Peachy
57cd8cd712 fix warnings and errors in a41a001258
* volume_partition() wasn't defined for hosted targets
 * wrap the "special" volume stuff in HAVE_MULTIDRIVE

Change-Id: Icbea256ab6438e1f7e45d361ed61724feec7ef0b
2024-11-23 20:59:32 -05:00
Solomon Peachy
a41a001258 info_menu: Don't print a line for volumes that don't exist
This is an example of what could happen:

 HD1: Not present
 ouping Not present
 ouping Not present
 ouping Not present

We have up to 4 fixed volume slots (==partitions) per drive, but
shouldn't display an entry if the slot isn't used, ie the normal case.
Instead, we _were_ displaying a partially-unitialized entry!

There is a special case for targets that support multiple *drives*, in
that we want to show 'not present' for the first volume slot of the
2nd drive.

Change-Id: I717edd305cd654ff4e13ba9ffb57e7a4c9935c17
2024-11-23 20:33:26 -05:00
William Wilgus
213686b55c [Fix Yellow] skin_parser.c const correctness
Change-Id: Ibc3696d807649c649db68cbdfab19b20391eab71
2024-11-23 20:20:13 -05:00
William Wilgus
75a4937568 skin_tags save space in tag_table
skin_tags have name and sometimes valid parameters

storing a pointer results in a lot of wasted space
instead record size of name and write the parameter string just after

Change-Id: Ied32f9e820deec9092dc6b97a93e2660d7abc8b2
2024-11-23 19:41:29 -05:00
Christian Soffke
237c83852a Fix: read_color_theme_file needed beyond init
Change-Id: Icb1e2bf42149b1b27ed11046ec79e9faf105f289
2024-11-24 00:42:50 +01:00
Vencislav Atanasov
1535a42b68 Add include guard to s5l8700.h
Change-Id: I246a626c788bc0173cb7709fb5b004bdaac97883
2024-11-23 17:19:18 -05:00
Vencislav Atanasov
f4bbddb044 ipod6g: Fix config
- NOR flash size is 1MB, not 10MB
- BOOTFILE_EXT2 is not used, the Rockbox binary is always unencrypted on iPod 6G. This looks like a leftover from ipodnano2g config

Change-Id: Iea76c1e87f27e25b3d59924ef02e22d91448e39d
2024-11-23 17:19:18 -05:00
Christian Soffke
46a4361bf1 playlist viewer: move on-disk playlist struct to playlist.c
Change-Id: I40281142f2fa930f0c68b9612c12fca14885ac37
2024-11-23 09:05:39 -05:00
William Wilgus
2591f6ad02 filetypes.c small cleanup
no functional changes

Change-Id: I9c27689920ba89abf5ba16d84ed0dad8747be74a
2024-11-22 23:20:32 -05:00
Dana Conrad
253eb79db3 erosqnative: hw4 support
Support hw4 units with AXP2101 PMU

Bootloader successfully compiles and loads onto device.
The LCD appears to be identical to hw3 units.
Scroll wheel and buttons work
Audio output works, including volume.
HP/LO detect works
Rockbox build is generic
GPIO gating logic seems to be working as intended now.

 - Added new GPIO definitions - some significant overlaps with pins
    from previous hardware revisions...
 - Added some GPIO definitions for older players we didn't know about
 - Add register definitions for AXP2101 from datasheet
    (these are very different from AXP192!)
 - Add AXP2101 regulator definitions, need to support multiple step
    sizes per regulator.
 - Verify AXP2101 voltage set multi-range logic
 - Verify AXP2101 voltage get multi-range logic
 - Make AXP2101 its own driver
 - AXP2101 driver should be "minimally viable", though I think
    there is some extra functionality that could be implemented.
 - Disabling the coulomb counter stuff - we could maybe make
   the E-Gauge work for the same purpose, but it only appears to
   be used on the debug screen at the moment so it doesn't seem
   like it's worth the effort.
 - Found new button GPIOs
 - Found error in my GPIO setting logic, blue light works now!
 - Set LDO/DCDC output voltages to OF's settings, as far as
   I can tell.
 - Determined we probably want TCS1421_CFG1:0 to be 0x00,
   for UFP behavior
 - Tested this rb build with both old and new bootloaders on hw1.5,
   hw2, hw4 in as many configurations as I can think of, works across
   the board.
 - Bootloader can install itself on hw4, so nand chip isn't novel
 - Uninstallation file can be made by patcher script, works on hw4
 - Installation file can be made by patcher script, works on hw4
 - Added HW4 to rbutil, manual

Change-Id: I5b75782273e81c2c6f2b9c79501c8b7cbf88391f
2024-11-22 17:01:39 -05:00
Vencislav Atanasov
d7b57e33d9 Add support for S5L8720 in various places
Due to its similarity with S5L8702, clickwheel support and sleep can be used as-is on S5L8720. DRAM and IRAM are also configured.

Change-Id: I52f8a3417e6a25c7360b1cae2fb5eed621e2e0db
2024-11-22 16:45:29 -05:00
Vencislav Atanasov
6691214e51 Rename iPod 6G bootloader from ipod6g.c to ipod-s5l87xx.c
This is part of the preparation to introduce support for iPod Nano 3G and iPod Nano 4G.

Change-Id: I0f07f26a00a0b880507418d712a386377bc71c06
2024-11-22 16:45:29 -05:00
Solomon Peachy
98259cd55c FS#13521: Corrections for Korean translation (Hoseok Seo)
Change-Id: I3308e9bb210f950d368ece7cd6b0f8e7face0012
2024-11-22 10:21:28 -05:00
Solomon Peachy
dfa7d43b43 FS#13520: Updated Spanish translation (Lianela Sky)
This _should_ bring us up to 100% completion!

Change-Id: I5fd829aa5d1816659cf61e935dc0a34256be951e
2024-11-22 08:25:40 -05:00
William Wilgus
56378cb38e [FixRed] main_menu.c typo CONFIG_CHARGING == CHARGING_SIMPLE
Change-Id: I5422a566459336727bf9189130b2c02d7c1b40e2
2024-11-22 02:37:16 -05:00
William Wilgus
b73fc15f1f [FixRed] Info menu Devices without HAVE_RECORDING
Change-Id: I61ffcfdf81ed286e620adddf5801c8eaa08b2a4c
2024-11-22 02:07:56 -05:00
William Wilgus
4340f33b63 main_menu.c convert system>info menu to static simplelist
Change-Id: Iec9f7f4b6def905abdfe281c7b71a8bf2506a3f7
2024-11-22 01:40:56 -05:00
Vencislav Atanasov
fb134c9533 Rename UC870x to UC87xx
This is a driver for the UART controller on the S5L87xx series of SoCs, which is named after the SoC family.
Since S5L8720 is confirmed to have the same interface and the newer models probably also have it, the driver is renamed to reflect this.

Change-Id: I974c002924372e860db0e49235d108dab87f8831
2024-11-21 20:07:50 -05:00
Vencislav Atanasov
39f8101d60 Enable UC870x "auto baud" and "fine tune" features based on the SoC capabilities
This makes it easier to add support for the remaining SoCs of the S5L87xx series.

Change-Id: I563aa55eed385b5f8e1c52edb866b08176ea116e
2024-11-21 20:05:18 -05:00
Vencislav Atanasov
1c7fddad5b Add the remaining iPod Nano SoCs to config
Currently only S5L8701 (Nano 2G) and S5L8702 (Classic/6G, Nano 3G) are defined. This change adds the remaining to CONFIG_CPU, as a preparation for porting to these platforms. It also defines the RTC types for Nano 3G and Nano 4G.

New CONFIG_CPU options:
S5L8720 - iPod Nano 4G
S5L8730 - iPod Nano 5G
S5L8723 - iPod Nano 6G
S5L8760 - iPod Nano 7G

Change-Id: I4e9e00163c0d0d5a5303f9eee428f9be47a48359
2024-11-21 20:03:32 -05:00
William Wilgus
e6f49e47e3 menu.c remove the check for valid menu_callback
instead of checking for menu callback use an empty callback instead

this code is a bit strange in that a prior valid callback might be returned
so I left the behavior but I question if thats really needed..

Change-Id: Id0c4eb208b33a6fffdbdffc63ea9cc928bba1a6d
2024-11-21 19:56:03 -05:00
William Wilgus
d1a4903afb [BugFix] lib/printcell_helper.c vp buffer ovfl
vp->width may exceed the actual available screen area which
prevents the sim from clipping properly
'

Change-Id: I487761b3e656d4a066960fb8dc7477cceb30aa57
2024-11-21 19:50:57 -05:00
William Wilgus
00906647b4 Simplelist remove simplelist_set_line_count(n)
replace with simplelist_reset_lines(void)
there was one user saving one short string
remove the feature to simplify list code

fix scrolling in dircache debug item

Change-Id: I71f933f224c2de5f7a68feab904a2fe0b81e1362
2024-11-21 12:14:17 -05:00
William Wilgus
d6e3514c0d [BugFix] gui/list.c simplelist_set_line_count > 1 list buffer corruption
when line was > 0 static item might not be in buffer after 35a913473e

Change-Id: I6fefb16d05d132f8f0e4bbbbfcf471342a434072
2024-11-21 10:46:27 -05:00
William Wilgus
35a913473e list.c small cleanup, add simplelist_setline()
add simplelist_setline() to allow literal strings or owner buffer
to be shown in the simplelist

this makes simplelist more versatile by allowing static strings
to be added directly instead of copying into the simplelist buffer
(ie not consuming the simplelist text buffer)

add bounds checking to simplelist_setline/addline
No one has more than SIMPLELIST_MAX_LINES..  right?
-- there are actually a few places this isn't checked..

use new setline function in debug menu

share the simplelist buffer with the list_draw fn for gui_synclist
since they shouldn't be in-use simultaneously we can save some stack

Change-Id: I4a1e64d3a621d326ff094241da55452c0ff746ba
2024-11-21 08:49:18 -05:00
Solomon Peachy
505bbcaff5 voice: Correct piper voice name for es_MX
Change-Id: I39c78e5067c049b8b269138d7d26273a141deae2
2024-11-21 07:43:09 -05:00
Solomon Peachy
587cf2fca0 lang: Add VOICE_LANG_NAME for espanol
Change-Id: Ia7cd70ee73808c7bef2130480fd1eba838783c1c
2024-11-21 07:33:07 -05:00
Solomon Peachy
9b725a9fad voice: Add Spanish (Mexican) to the nightly voice sets.
This uses the piper engine.

Peninsular Spanish sounds markedly different from Central/South American
Spanish, so it seems prudent to offer both.

...We'll see how the masses feel.

Change-Id: Idfd3edd92c2dde7f9288afd99f474e59984689c9
2024-11-20 20:46:09 -05:00
Solomon Peachy
beb7c829da lang: Minor mechanical corrections in the Spanish translation
Change-Id: I7ff260b4e168830fc5ae05e5384be97398b39130
2024-11-20 10:58:48 -05:00
Vencislav Atanasov
f040c4c9ec Rename CPU_S5L870X to CPU_S5L87XX
This is a preparation to introduce support for the following SoC models: S5L8720 (iPod Nano 4G, iPod Touch 2G), S5L8730 (iPod Nano 5G), S5L8723 (iPod Nano 6G) and S5L8740 (iPod Nano 7G)

The whole family consists of SoCs which are similar, running ARMv6 and Thumb2 instructions, but some peripherals are located at a different address.

No functional change is to be expected so far.

Change-Id: If1f7669c49cf110ccc52c5234cc42ffd6f2b4e80
2024-11-20 10:58:32 -05:00
Solomon Peachy
64d94889a2 voice: Enable nightly generation of a Spanish voice.
This uses Piper with a Peninsular Spanish voice.

I'd like to add Mexican Spanish as well, but then we'd have to use a
different TTS engine.  Espeak is relatively crappy, and gtts relies on a
remote service.

Change-Id: I5099f5cc4db5cc037efb5a77c023d4da4c73e813
2024-11-20 08:54:00 -05:00
Solomon Peachy
fdce5c05ef FS#13517: Major update for Spanish translation (Lianela Sky)
Change-Id: I91e4dafe6b1667b7df742aff529caebaf3322eda
2024-11-20 08:14:51 -05:00
Vencislav Atanasov
5c6d463cc3 Simplify libgme define
Change-Id: I3e66f57b3640246bde9fc1c5d75b094553f8598c
2024-11-20 12:31:09 +02:00
William Wilgus
8bf6dc521f filetypes.c compress builtin filetypes
the builtin audio filetypes all use an int to signal (FILE_ATTR_AUDIO)
it takes less space to give them their own array and apply the attrib at runtime

bit of const correctness and some other small cleanup

Change-Id: I1cc3de9fe4ec1d5e49c8154cffdef3f05cf0b235
2024-11-19 07:12:41 -05:00
Christian Soffke
75282a1683 Playlist Viewer: Remove forward declarations
Change-Id: I16faf5e43001e139fc8affc942ee8dbf49f99bb1
2024-11-18 06:15:18 +01:00
Vencislav Atanasov
38df1ff311 Fix target order and formatting in case block
Added Creative Zen V (95) to the list, since it was missing.

Change-Id: I2f0115835db82d1bedba3ccc97bcb405af3d1dd9
2024-11-16 22:12:22 -05:00
Vencislav Atanasov
1451fa2cbb Reorder targets by number
Change-Id: I9c437fbb0949c18251b2b9cfea04e9e82ebecdb4
2024-11-16 21:48:15 -05:00
Christian Soffke
78bea2a7ac playlist: Remove playlist_get_required_bufsz
Change-Id: I00cf26a2502f1b31cab8d896bf8eb1ae2626020a
2024-11-16 12:18:03 -05:00
Christian Soffke
953fcef05e gui: Fix unsuccesful attempt at loading default viewer iconset
The default viewer icons file seems to have
been removed in the rewrite of buildzip.pl
(see commit 66b6fdb).

So, this only worked accidentally, once some
theme put a viewers.bmp file in the icons folder,
potentially leading to confusing behavior.

Deactivating viewer icons (instead of reverting
to some default file) when they are set to "-"
is probably expected behavior at this point.

Change-Id: I5010764676c67592bf20abfb3d0780edb1d555d4
2024-11-16 12:14:00 -05:00
Christian Soffke
ff2f9123f6 gui: splash(-progress): use theme colors, +1px spacing
Change-Id: I5867b1fd3086bda2973f75a3ad1c1223e22dc0ae
2024-11-16 18:10:37 +01:00
Solomon Peachy
15a4eb0422 debug: Correct most of the sector_t printf()s
The 'll' printf modifier is currently broken.  Fortunately all but
one of the uses is printing MB instead of bytes, which means we can
cast the value to a 'unsigned long' without risk of overflow/wraps.

...There's one remaining use ('%llx') which still needs to be sorted
out.

Change-Id: I89f406f6c085be153531d1ec1f2a314ae172b129
2024-11-15 07:28:55 -05:00
Solomon Peachy
9bf033dd66 ata: Prefer using "virtual" sector size where possible
Normally, if a device uses larger physical sector size than the logical
size and supports so-called "512e" mode, we let the device deal with
partial sector reads/writes.

However, if MAX_VIRT_SECTOR_SIZE is defined, we support
partitioning/filesystems that use a larger "virtual" sector than the
logical sector.  typically this matches the physical sector size of the
drive, which means that despite a small logical sector size, all I/O
is done in terms of the physical sector size.

Therefore, when MAX_VIRT_SECTOR_SIZE and MAX_PHYS_SECTOR_SIZE are
enabled (currently only ipod5g and ipod6g), prefer software-based
partial sector I/O.

Change-Id: I0815ad0a2f987b89bb2debfbf3d0ed64cdf85525
2024-11-15 07:24:08 -05:00
Solomon Peachy
120906dc8b ata: Ensure that the bounce buffer is minimum 32-bit aligned
Basically, if STORAGE_ALIGN_ATTR isn't defined, define it to be
sizeof(uint32_t) in the ATA code.

Change-Id: I13de61788cb71e3e8d3a956ab5f2e251471ce76d
2024-11-15 07:24:08 -05:00