2012-01-18 07:19:14 +00:00
|
|
|
#undef unix /* causes problems with some files */
|
|
|
|
#undef linux
|
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
ata_idle_notify.c
|
2008-03-16 13:55:16 +00:00
|
|
|
events.c
|
2004-10-04 13:03:33 +00:00
|
|
|
backlight.c
|
2023-01-02 19:49:56 +00:00
|
|
|
#if CONFIG_BUFLIB_BACKEND == BUFLIB_BACKEND_MEMPOOL
|
2023-01-02 19:45:59 +00:00
|
|
|
buflib_mempool.c
|
2023-01-02 22:48:07 +00:00
|
|
|
#elif CONFIG_BUFLIB_BACKEND == BUFLIB_BACKEND_MALLOC
|
|
|
|
buflib_malloc.c
|
2023-01-02 19:49:56 +00:00
|
|
|
#endif
|
2011-08-30 14:01:33 +00:00
|
|
|
core_alloc.c
|
2009-02-10 23:43:37 +00:00
|
|
|
general.c
|
2006-11-08 16:13:04 +00:00
|
|
|
powermgmt.c
|
2011-03-02 19:12:55 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_HOSTED)
|
2011-12-19 15:42:04 +00:00
|
|
|
|
|
|
|
#ifdef __linux__
|
|
|
|
target/hosted/cpuinfo-linux.c
|
2015-01-21 19:35:03 +00:00
|
|
|
target/hosted/cpufreq-linux.c
|
2011-12-19 15:42:04 +00:00
|
|
|
#endif
|
|
|
|
|
2013-09-15 22:02:28 +00:00
|
|
|
#if !defined(SAMSUNG_YPR0) || defined(SIMULATOR) /* uses as3514 rtc */
|
2011-03-08 20:54:42 +00:00
|
|
|
target/hosted/rtc.c
|
2011-03-02 19:12:55 +00:00
|
|
|
#endif
|
2012-01-17 06:55:20 +00:00
|
|
|
|
2012-01-20 18:21:20 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_ANDROID) == 0 && \
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
!defined(DX50) && !defined(DX90) && \
|
2012-01-20 18:21:20 +00:00
|
|
|
(defined(DEBUG) || defined(SIMULATOR)) /* sim should define DEBUG instead */
|
2012-01-17 06:55:20 +00:00
|
|
|
target/hosted/debug-hosted.c
|
|
|
|
#endif
|
|
|
|
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#endif
|
2006-11-08 16:13:04 +00:00
|
|
|
system.c
|
|
|
|
usb.c
|
2012-07-04 01:45:29 +00:00
|
|
|
#if defined(ROCKBOX_HAS_LOGF) || defined(ROCKBOX_HAS_LOGDISKF)
|
2006-11-08 16:13:04 +00:00
|
|
|
logf.c
|
|
|
|
#endif /* ROCKBOX_HAS_LOGF */
|
2010-06-21 16:53:00 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2012-05-26 20:46:56 +00:00
|
|
|
load_code.c
|
2022-02-21 17:52:58 +00:00
|
|
|
linuxboot.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#ifdef RB_PROFILE
|
|
|
|
profile.c
|
|
|
|
#endif /* RB_PROFILE */
|
2012-03-04 14:34:29 +00:00
|
|
|
#if !defined(RKW_FORMAT) && !defined(MI4_FORMAT) && defined(MODEL_NUMBER)
|
|
|
|
common/rb-loader.c
|
|
|
|
#endif
|
2020-07-15 23:40:55 +00:00
|
|
|
#if !defined(BOOTLOADER)
|
2006-11-08 16:13:04 +00:00
|
|
|
rolo.c
|
2020-07-15 23:40:55 +00:00
|
|
|
#endif /* !defined(BOOTLOADER) */
|
2006-11-08 16:13:04 +00:00
|
|
|
timer.c
|
2010-09-20 17:38:47 +00:00
|
|
|
debug.c
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2010-09-20 17:38:47 +00:00
|
|
|
panic.c
|
2020-10-11 13:30:41 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_HOSTED) && defined(BOOTFILE)
|
|
|
|
target/hosted/rolo.c
|
|
|
|
#endif
|
|
|
|
|
2022-03-07 11:53:40 +00:00
|
|
|
#if defined(HAVE_BOOTDATA) || defined(HAVE_MULTIBOOT)
|
|
|
|
common/multiboot.c
|
|
|
|
#endif
|
|
|
|
|
2010-05-15 21:02:47 +00:00
|
|
|
#ifdef HAVE_SDL
|
|
|
|
target/hosted/sdl/button-sdl.c
|
|
|
|
target/hosted/sdl/kernel-sdl.c
|
|
|
|
target/hosted/sdl/lcd-bitmap.c
|
|
|
|
#ifdef HAVE_REMOTE_LCD
|
|
|
|
target/hosted/sdl/lcd-remote-bitmap.c
|
|
|
|
#endif
|
|
|
|
target/hosted/sdl/lcd-sdl.c
|
|
|
|
target/hosted/sdl/system-sdl.c
|
2011-02-18 22:46:01 +00:00
|
|
|
#ifdef HAVE_SDL_THREADS
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
target/hosted/sdl/filesystem-sdl.c
|
2011-02-18 22:46:01 +00:00
|
|
|
#endif
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
target/hosted/sdl/load_code-sdl.c
|
2010-05-15 21:02:47 +00:00
|
|
|
target/hosted/sdl/timer-sdl.c
|
2010-07-06 15:11:56 +00:00
|
|
|
#ifdef HAVE_TOUCHSCREEN
|
|
|
|
target/hosted/sdl/key_to_touch-sdl.c
|
|
|
|
#endif
|
|
|
|
#ifdef APPLICATION
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
target/hosted/sdl/app/load_code-sdl-app.c
|
2010-07-06 15:11:56 +00:00
|
|
|
target/hosted/sdl/app/button-application.c
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
#ifdef WIN32
|
|
|
|
target/hosted/filesystem-win32.c
|
|
|
|
#else /* !WIN32 */
|
|
|
|
target/hosted/filesystem-unix.c
|
|
|
|
#endif /* WIN32 */
|
|
|
|
#endif /* APPLICATION */
|
|
|
|
#endif /* HAVE_SDL */
|
|
|
|
|
|
|
|
#ifdef APPLICATION
|
|
|
|
target/hosted/filesystem-app.c
|
|
|
|
#endif /* APPLICATION */
|
2006-11-08 16:13:04 +00:00
|
|
|
|
2013-12-28 18:00:57 +00:00
|
|
|
#if defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1)
|
|
|
|
target/hosted/kernel-unix.c
|
|
|
|
target/hosted/filesystem-unix.c
|
2017-04-25 09:55:16 +00:00
|
|
|
#ifndef SIMULATOR
|
2013-12-28 18:00:57 +00:00
|
|
|
target/hosted/lc-unix.c
|
|
|
|
drivers/lcd-memframe.c
|
|
|
|
target/hosted/samsungypr/lcd-ypr.c
|
2017-04-25 09:55:16 +00:00
|
|
|
#endif
|
2013-12-28 18:00:57 +00:00
|
|
|
target/hosted/samsungypr/gpio-ypr.c
|
|
|
|
#if CONFIG_TUNER
|
|
|
|
target/hosted/samsungypr/radio-ypr.c
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2017-09-16 21:29:50 +00:00
|
|
|
#if defined(SONY_NWZ_LINUX) && !defined(SIMULATOR)
|
2018-06-12 10:50:09 +00:00
|
|
|
target/hosted/backtrace-glibc.c
|
|
|
|
target/hosted/kernel-unix.c
|
|
|
|
target/hosted/filesystem-unix.c
|
|
|
|
target/hosted/lc-unix.c
|
2017-02-23 10:33:19 +00:00
|
|
|
target/hosted/sonynwz/lcd-nwz.c
|
|
|
|
target/hosted/sonynwz/button-nwz.c
|
|
|
|
target/hosted/sonynwz/system-nwz.c
|
|
|
|
target/hosted/sonynwz/powermgmt-nwz.c
|
|
|
|
target/hosted/sonynwz/power-nwz.c
|
|
|
|
target/hosted/sonynwz/adc-nwz.c
|
2017-11-03 19:14:01 +00:00
|
|
|
target/hosted/sonynwz/radio-nwz.c
|
|
|
|
target/hosted/sonynwz/audio-nwz.c
|
2017-02-23 10:33:19 +00:00
|
|
|
target/hosted/sonynwz/debug-nwz.c
|
|
|
|
target/hosted/sonynwz/nvp-nwz.c
|
|
|
|
target/hosted/sonynwz/nwz-db.c
|
|
|
|
#endif
|
|
|
|
|
2021-02-27 22:07:37 +00:00
|
|
|
#if ((defined(HIBY_LINUX) || defined(FIIO_M3K_LINUX)) && !defined(SIMULATOR))
|
2018-06-14 08:03:07 +00:00
|
|
|
drivers/lcd-memframe.c
|
2018-11-05 12:01:55 +00:00
|
|
|
target/hosted/alsa-controls.c
|
|
|
|
target/hosted/pcm-alsa.c
|
2017-04-27 09:36:40 +00:00
|
|
|
target/hosted/backtrace-glibc.c
|
|
|
|
target/hosted/filesystem-unix.c
|
2018-11-05 12:01:55 +00:00
|
|
|
target/hosted/kernel-unix.c
|
2017-04-27 09:36:40 +00:00
|
|
|
target/hosted/lc-unix.c
|
2018-11-05 12:01:55 +00:00
|
|
|
target/hosted/sysfs.c
|
|
|
|
target/hosted/backlight-unix.c
|
|
|
|
target/hosted/system-hosted.c
|
2020-04-08 13:53:13 +00:00
|
|
|
target/hosted/lcd-linuxfb.c
|
2021-03-10 23:10:00 +00:00
|
|
|
target/hosted/power-linux.c
|
2018-11-05 12:01:55 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(AGPTEK_ROCKER) && !defined(SIMULATOR)
|
2017-04-27 09:36:40 +00:00
|
|
|
target/hosted/agptek/button-agptek.c
|
|
|
|
target/hosted/agptek/debug-agptek.c
|
|
|
|
target/hosted/agptek/power-agptek.c
|
|
|
|
target/hosted/agptek/powermgmt-agptek.c
|
|
|
|
#endif
|
|
|
|
|
2020-10-03 22:17:11 +00:00
|
|
|
#if (defined(XDUOO_X3II) || defined(XDUOO_X20)) && !defined(SIMULATOR)
|
2018-11-05 12:01:55 +00:00
|
|
|
target/hosted/xduoo/button-xduoo.c
|
|
|
|
target/hosted/xduoo/debug-xduoo.c
|
|
|
|
target/hosted/xduoo/power-xduoo.c
|
|
|
|
target/hosted/xduoo/powermgmt-xduoo.c
|
2020-10-15 14:18:16 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(HIBY_LINUX) && !defined(SIMULATOR)
|
|
|
|
target/hosted/usb-hiby.c
|
2020-10-29 13:37:57 +00:00
|
|
|
target/hosted/button-devinput.c
|
2018-11-05 12:01:55 +00:00
|
|
|
#endif
|
|
|
|
|
2021-02-27 22:07:37 +00:00
|
|
|
#if (defined(FIIO_M3K_LINUX)) && !defined(SIMULATOR)
|
2020-10-03 22:17:11 +00:00
|
|
|
target/hosted/fiio/buttonlight-fiio.c
|
|
|
|
target/hosted/fiio/button-fiio.c
|
|
|
|
target/hosted/fiio/debug-fiio.c
|
|
|
|
target/hosted/fiio/power-fiio.c
|
|
|
|
target/hosted/fiio/powermgmt-fiio.c
|
|
|
|
target/hosted/fiio/system-fiio.c
|
|
|
|
target/hosted/fiio/usb-fiio.c
|
|
|
|
#endif
|
|
|
|
|
2020-10-08 13:47:40 +00:00
|
|
|
#if (defined(EROS_Q)) && !defined(SIMULATOR)
|
|
|
|
target/hosted/aigo/button-erosq.c
|
|
|
|
target/hosted/aigo/debug-erosq.c
|
|
|
|
target/hosted/aigo/power-erosq.c
|
|
|
|
target/hosted/aigo/powermgmt-erosq.c
|
|
|
|
#endif
|
|
|
|
|
2013-09-15 22:02:28 +00:00
|
|
|
#if defined(SAMSUNG_YPR0) && !defined(SIMULATOR)
|
2012-01-08 02:33:43 +00:00
|
|
|
drivers/adc-as3514.c
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#if (CONFIG_RTC == RTC_AS3514)
|
|
|
|
drivers/rtc/rtc_as3514.c
|
|
|
|
#else
|
|
|
|
target/hosted/rtc.c
|
|
|
|
#endif
|
2013-02-23 15:59:49 +00:00
|
|
|
target/hosted/samsungypr/ypr0/button-ypr0.c
|
|
|
|
target/hosted/samsungypr/ypr0/system-ypr0.c
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#ifdef HAVE_BACKLIGHT
|
2013-02-23 15:59:49 +00:00
|
|
|
target/hosted/samsungypr/ypr0/backlight-ypr0.c
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#endif
|
2013-02-23 15:59:49 +00:00
|
|
|
target/hosted/samsungypr/ypr0/ascodec-ypr0.c
|
|
|
|
target/hosted/samsungypr/ypr0/powermgmt-ypr0.c
|
|
|
|
target/hosted/samsungypr/ypr0/audio-ypr0.c
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#endif
|
|
|
|
|
2013-12-28 18:00:57 +00:00
|
|
|
#if defined(SAMSUNG_YPR1) && !defined(SIMULATOR)
|
2013-09-10 20:48:34 +00:00
|
|
|
target/hosted/samsungypr/ypr1/mcs5000-ypr1.c
|
|
|
|
target/hosted/samsungypr/ypr1/button-ypr1.c
|
|
|
|
target/hosted/samsungypr/ypr1/system-ypr1.c
|
|
|
|
#ifdef HAVE_BACKLIGHT
|
|
|
|
target/hosted/samsungypr/ypr1/backlight-ypr1.c
|
|
|
|
#endif
|
|
|
|
target/hosted/samsungypr/ypr1/powermgmt-ypr1.c
|
|
|
|
target/hosted/samsungypr/ypr1/audio-ypr1.c
|
|
|
|
target/hosted/samsungypr/ypr1/pmu-ypr1.c
|
|
|
|
target/hosted/samsungypr/ypr1/wmcodec-ypr1.c
|
|
|
|
#endif
|
|
|
|
|
2011-02-08 20:05:25 +00:00
|
|
|
/* Maemo specific files */
|
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
|
|
|
|
target/hosted/maemo/maemo-thread.c
|
|
|
|
#endif
|
|
|
|
|
2010-05-14 12:37:05 +00:00
|
|
|
/* Common */
|
2018-01-06 12:17:04 +00:00
|
|
|
#ifndef BOOTLOADER
|
2023-01-08 06:42:27 +00:00
|
|
|
chunk_alloc.c
|
2022-11-10 14:38:50 +00:00
|
|
|
common/strptokspn.c
|
2018-01-06 12:17:04 +00:00
|
|
|
common/ap_int.c
|
|
|
|
#endif
|
2010-06-21 00:18:29 +00:00
|
|
|
common/version.c
|
2010-05-06 21:04:40 +00:00
|
|
|
common/config.c
|
2006-04-18 18:56:56 +00:00
|
|
|
common/crc32.c
|
2012-03-04 14:34:29 +00:00
|
|
|
#ifdef MODEL_NUMBER
|
|
|
|
common/loader_strerror.c
|
|
|
|
#endif
|
2012-03-02 15:29:42 +00:00
|
|
|
#ifdef RKW_FORMAT
|
|
|
|
common/crc32-rkw.c
|
|
|
|
#endif
|
2010-06-21 16:53:00 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
common/dir.c
|
|
|
|
common/disk_cache.c
|
2005-02-18 13:47:17 +00:00
|
|
|
common/file.c
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
common/file_internal.c
|
2010-06-06 13:40:40 +00:00
|
|
|
common/disk.c
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
common/fileobj_mgr.c
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2005-10-08 18:41:11 +00:00
|
|
|
#ifdef HAVE_DIRCACHE
|
2005-10-07 17:38:05 +00:00
|
|
|
common/dircache.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* HAVE_DIRCACHE */
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
common/pathfuncs.c
|
Implement a much more capable vuprintf()
New support as well as some buggy support fixed.
Still no floating point support if ever that would be desired.
Support (*):
* Flags: '-', '+', ' ', '#', '0'
* Width and precision: 'n', '.n', '*' and '.*'
* Length modifiers: 'hh', 'h', 'j', 'l', 'll', 't', 'z'
* Radix: 'c', 'd', 'i', 'n', 'o', 'p/P', 's', 'u', 'x/X'
(*) Provision exists to switch lesser-used stuff on or off or when
certain functionality isn't desired (bootloader?). The compulsory
radixes are everything but 'o', 'n', 'p/P' and 'x/X' with length
modifiers being optional. The default setup is 'l', 'z', 'c', 'd',
'p/P', 's', 'u', 'x/X'.
* Move fdprintf() to its own file. It was in a strange place.
* Make callers compatible and fix a couple snprintf() bugs while
at it.
Could smush it down in size but I'm gonna get over the binsize
neurosis and just the let optimizer do its thing.
Change-Id: Ibdc613a9b6775802c188b29b9dd46c568c94f7c3
2017-09-08 23:28:02 +00:00
|
|
|
common/fdprintf.c
|
2014-04-28 14:17:38 +00:00
|
|
|
common/linked_list.c
|
2022-03-03 12:37:03 +00:00
|
|
|
common/rb_namespace.c
|
2022-09-26 14:39:28 +00:00
|
|
|
common/rectangle.c
|
2004-10-04 13:03:33 +00:00
|
|
|
common/strcasecmp.c
|
2005-01-27 22:21:08 +00:00
|
|
|
common/strcasestr.c
|
2009-03-01 17:55:59 +00:00
|
|
|
common/strnatcmp.c
|
2010-01-02 13:31:46 +00:00
|
|
|
common/strlcat.c
|
2009-07-14 13:57:45 +00:00
|
|
|
common/strlcpy.c
|
2022-11-14 16:32:34 +00:00
|
|
|
common/strmemccpy.c
|
2007-02-13 21:51:18 +00:00
|
|
|
common/structec.c
|
2004-10-04 13:03:33 +00:00
|
|
|
common/timefuncs.c
|
2006-11-08 16:13:04 +00:00
|
|
|
common/unicode.c
|
Implement a much more capable vuprintf()
New support as well as some buggy support fixed.
Still no floating point support if ever that would be desired.
Support (*):
* Flags: '-', '+', ' ', '#', '0'
* Width and precision: 'n', '.n', '*' and '.*'
* Length modifiers: 'hh', 'h', 'j', 'l', 'll', 't', 'z'
* Radix: 'c', 'd', 'i', 'n', 'o', 'p/P', 's', 'u', 'x/X'
(*) Provision exists to switch lesser-used stuff on or off or when
certain functionality isn't desired (bootloader?). The compulsory
radixes are everything but 'o', 'n', 'p/P' and 'x/X' with length
modifiers being optional. The default setup is 'l', 'z', 'c', 'd',
'p/P', 's', 'u', 'x/X'.
* Move fdprintf() to its own file. It was in a strange place.
* Make callers compatible and fix a couple snprintf() bugs while
at it.
Could smush it down in size but I'm gonna get over the binsize
neurosis and just the let optimizer do its thing.
Change-Id: Ibdc613a9b6775802c188b29b9dd46c568c94f7c3
2017-09-08 23:28:02 +00:00
|
|
|
common/vuprintf.c
|
2021-07-05 17:08:55 +00:00
|
|
|
common/zip.c
|
2021-07-30 23:11:49 +00:00
|
|
|
common/adler32.c
|
2021-08-05 15:57:07 +00:00
|
|
|
common/inflate.c
|
2006-07-25 11:16:03 +00:00
|
|
|
|
2022-11-10 14:38:50 +00:00
|
|
|
/* Standard library */
|
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE) || defined(HAVE_ROCKBOX_C_LIBRARY)
|
|
|
|
libc/atoi.c
|
|
|
|
libc/errno.c
|
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
|
|
|
/* our ctype.[ch] comes from newlib and is incompitble with most desktop's ctype */
|
|
|
|
libc/ctype.c
|
|
|
|
/* alsa on linux requires a more advanced sprintf, i.e. not ours */
|
|
|
|
libc/sprintf.c
|
|
|
|
#endif
|
|
|
|
|
2022-11-14 15:01:14 +00:00
|
|
|
libc/memccpy.c
|
2022-11-10 14:38:50 +00:00
|
|
|
libc/memchr.c
|
|
|
|
libc/memcmp.c
|
|
|
|
|
|
|
|
libc/qsort.c
|
|
|
|
libc/random.c
|
|
|
|
libc/strcat.c
|
|
|
|
libc/strchr.c
|
|
|
|
libc/strcmp.c
|
|
|
|
libc/strcpy.c
|
2022-11-13 05:43:43 +00:00
|
|
|
libc/strcspn.c
|
2022-11-10 14:38:50 +00:00
|
|
|
libc/strncmp.c
|
|
|
|
libc/strrchr.c
|
|
|
|
libc/strstr.c
|
|
|
|
libc/mktime.c
|
|
|
|
libc/gmtime.c
|
|
|
|
#endif /* CONFIG_PLATFORM || HAVE_ROCKBOX_C_LIBRARY */
|
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
/* Display */
|
2007-07-28 08:12:05 +00:00
|
|
|
scroll_engine.c
|
|
|
|
|
2005-12-06 15:04:48 +00:00
|
|
|
arabjoin.c
|
2005-08-08 19:23:28 +00:00
|
|
|
bidi.c
|
2006-11-08 16:13:04 +00:00
|
|
|
font_cache.c
|
|
|
|
font.c
|
2006-03-29 16:21:42 +00:00
|
|
|
hangul.c
|
2006-11-08 16:13:04 +00:00
|
|
|
lru.c
|
2022-03-20 13:00:10 +00:00
|
|
|
#ifdef HAVE_SCREENDUMP
|
2009-02-10 23:43:37 +00:00
|
|
|
screendump.c
|
|
|
|
#endif
|
2006-02-05 17:34:49 +00:00
|
|
|
#if LCD_DEPTH == 1
|
2006-11-12 13:22:59 +00:00
|
|
|
drivers/lcd-1bit-vert.c
|
2006-02-05 17:34:49 +00:00
|
|
|
#elif LCD_DEPTH == 2
|
2006-11-08 16:13:04 +00:00
|
|
|
#if LCD_PIXELFORMAT == HORIZONTAL_PACKING
|
2006-02-09 00:48:53 +00:00
|
|
|
drivers/lcd-2bit-horz.c
|
2006-11-10 00:02:28 +00:00
|
|
|
#elif LCD_PIXELFORMAT == VERTICAL_PACKING
|
|
|
|
drivers/lcd-2bit-vert.c
|
2008-03-12 20:35:42 +00:00
|
|
|
#elif LCD_PIXELFORMAT == VERTICAL_INTERLEAVED
|
|
|
|
drivers/lcd-2bit-vi.c
|
2006-11-10 00:02:28 +00:00
|
|
|
#endif /* LCD_PIXELFORMAT */
|
2005-11-07 23:07:19 +00:00
|
|
|
#elif LCD_DEPTH == 16
|
2022-09-30 09:25:28 +00:00
|
|
|
#if LCD_STRIDEFORMAT == VERTICAL_STRIDE
|
2009-09-01 00:57:47 +00:00
|
|
|
drivers/lcd-16bit-vert.c
|
|
|
|
#else
|
2005-11-07 23:07:19 +00:00
|
|
|
drivers/lcd-16bit.c
|
2009-09-01 00:57:47 +00:00
|
|
|
#endif
|
2017-04-27 09:36:40 +00:00
|
|
|
#elif (LCD_DEPTH == 24) || (LCD_PIXELFORMAT == XRGB8888)
|
2014-06-18 05:15:00 +00:00
|
|
|
drivers/lcd-24bit.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* LCD_DEPTH */
|
2010-04-07 20:41:18 +00:00
|
|
|
common/diacritic.c
|
2006-11-08 16:13:04 +00:00
|
|
|
|
2006-07-28 07:35:45 +00:00
|
|
|
#ifdef HAVE_REMOTE_LCD
|
|
|
|
#if LCD_REMOTE_DEPTH == 1
|
2007-02-25 22:09:14 +00:00
|
|
|
drivers/lcd-remote-1bit-v.c
|
2006-07-28 07:35:45 +00:00
|
|
|
#elif LCD_REMOTE_DEPTH == 2
|
|
|
|
drivers/lcd-remote-2bit-vi.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* LCD_REMOTE_DEPTH */
|
|
|
|
#endif /* HAVE_REMOTE_LCD */
|
|
|
|
|
2009-01-26 23:21:49 +00:00
|
|
|
#if (CONFIG_BACKLIGHT_FADING == BACKLIGHT_FADING_SW_SETTING) \
|
|
|
|
|| (CONFIG_BACKLIGHT_FADING == BACKLIGHT_FADING_SW_HW_REG)
|
2009-01-22 10:50:11 +00:00
|
|
|
backlight-sw-fading.c
|
2009-01-26 23:21:49 +00:00
|
|
|
#endif /* CONFIG_BACKLIGHT_FADING */
|
2008-11-26 08:26:13 +00:00
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
/* Misc. */
|
2005-02-18 13:47:17 +00:00
|
|
|
drivers/led.c
|
2007-08-12 19:49:03 +00:00
|
|
|
drivers/button.c
|
2010-06-21 16:53:00 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2008-05-03 13:43:26 +00:00
|
|
|
#ifdef HAVE_DAC3550A
|
2010-10-31 21:09:34 +00:00
|
|
|
drivers/audio/dac3550a.c
|
2008-05-03 13:43:26 +00:00
|
|
|
#endif
|
2009-02-07 11:15:30 +00:00
|
|
|
#ifdef HAVE_SERIAL
|
2006-11-08 16:13:04 +00:00
|
|
|
drivers/serial.c
|
2009-02-07 11:15:30 +00:00
|
|
|
#endif
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2009-02-19 22:33:55 +00:00
|
|
|
#ifdef HAVE_TOUCHSCREEN
|
|
|
|
drivers/touchscreen.c
|
|
|
|
#endif
|
2006-11-08 16:13:04 +00:00
|
|
|
|
2007-08-27 16:04:32 +00:00
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
/* Storage */
|
2010-06-21 16:53:00 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2009-07-17 22:28:49 +00:00
|
|
|
#if (CONFIG_STORAGE & STORAGE_NAND) && (CONFIG_NAND == NAND_TCC)
|
2008-10-31 21:25:04 +00:00
|
|
|
target/arm/ata-nand-telechips.c
|
2009-07-17 22:28:49 +00:00
|
|
|
#endif
|
|
|
|
#if (CONFIG_STORAGE & STORAGE_NAND) && (CONFIG_NAND == NAND_SAMSUNG)
|
2008-11-11 14:11:49 +00:00
|
|
|
target/arm/s5l8700/ata-nand-s5l8700.c
|
2009-07-17 22:28:49 +00:00
|
|
|
#endif
|
2011-05-30 21:10:37 +00:00
|
|
|
#if (CONFIG_STORAGE & STORAGE_NAND) && (CONFIG_NAND == NAND_RK27XX)
|
|
|
|
target/arm/rk27xx/ata-nand-rk27xx.c
|
|
|
|
#endif
|
2011-02-27 22:47:55 +00:00
|
|
|
#if (CONFIG_STORAGE & STORAGE_ATA) && !defined(IPOD_6G)
|
2004-10-05 08:11:11 +00:00
|
|
|
drivers/ata.c
|
2009-07-17 22:28:49 +00:00
|
|
|
#endif
|
|
|
|
#if (CONFIG_STORAGE & STORAGE_SD)
|
2009-07-01 21:49:13 +00:00
|
|
|
drivers/sd.c
|
2009-07-17 22:28:49 +00:00
|
|
|
#endif
|
|
|
|
#if (CONFIG_STORAGE & STORAGE_RAMDISK)
|
2008-11-03 20:52:27 +00:00
|
|
|
drivers/ramdisk.c
|
2009-07-17 22:28:49 +00:00
|
|
|
#endif
|
|
|
|
storage.c
|
2004-10-04 13:03:33 +00:00
|
|
|
drivers/fat.c
|
2008-10-31 21:25:04 +00:00
|
|
|
#if (CONFIG_STORAGE & STORAGE_MMC) || (CONFIG_STORAGE & STORAGE_SD)
|
2010-06-05 21:12:16 +00:00
|
|
|
sdmmc.c
|
2007-06-30 02:08:27 +00:00
|
|
|
#endif
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2006-11-08 16:13:04 +00:00
|
|
|
|
|
|
|
/* EEPROM */
|
|
|
|
#ifdef HAVE_EEPROM
|
|
|
|
drivers/eeprom_24cxx.c
|
|
|
|
#ifdef HAVE_EEPROM_SETTINGS
|
|
|
|
eeprom_settings.c
|
|
|
|
#endif /* HAVE_EEPROM_SETTINGS */
|
|
|
|
#endif /* HAVE_EEPROM */
|
|
|
|
|
|
|
|
/* RTC */
|
2010-06-21 16:53:00 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2020-07-15 23:40:55 +00:00
|
|
|
#if (CONFIG_RTC == RTC_PCF50606)
|
2006-11-27 09:44:56 +00:00
|
|
|
drivers/rtc/rtc_pcf50606.c
|
|
|
|
#elif (CONFIG_RTC == RTC_PCF50605)
|
|
|
|
drivers/rtc/rtc_pcf50605.c
|
|
|
|
#elif (CONFIG_RTC == RTC_E8564)
|
|
|
|
drivers/rtc/rtc_e8564.c
|
2007-02-28 13:20:36 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_DS1339_DS3231)
|
|
|
|
drivers/rtc/rtc_ds1339_ds3231.c
|
2006-12-29 02:49:12 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_S3C2440)
|
|
|
|
drivers/rtc/rtc_s3c2440.c
|
2007-02-03 13:10:17 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_AS3514)
|
|
|
|
drivers/rtc/rtc_as3514.c
|
2007-10-01 05:27:43 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_RX5X348AB)
|
|
|
|
drivers/rtc/rtc_rx5x348ab.c
|
2008-02-03 18:15:39 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_MR100)
|
|
|
|
drivers/rtc/rtc_mr100.c
|
2008-04-24 09:22:39 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_MC13783)
|
|
|
|
drivers/rtc/rtc_mc13783.c
|
2018-06-28 10:24:26 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_JZ4740)
|
2008-07-15 17:17:01 +00:00
|
|
|
drivers/rtc/rtc_jz4740.c
|
2018-06-28 10:24:26 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_JZ4760)
|
|
|
|
drivers/rtc/rtc_jz4760.c
|
2021-02-27 22:08:58 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_X1000)
|
|
|
|
drivers/rtc/rtc_x1000.c
|
2009-06-28 09:58:05 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_S35390A)
|
|
|
|
drivers/rtc/rtc_s35390a.c
|
2010-11-28 22:51:14 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_S35380A)
|
|
|
|
drivers/rtc/rtc_s35380a.c
|
2009-10-11 17:56:00 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_D2)
|
|
|
|
drivers/rtc/rtc_d2.c
|
2011-07-23 11:45:22 +00:00
|
|
|
#elif (CONFIG_RTC == RTC_IMX233)
|
|
|
|
drivers/rtc/rtc_imx233.c
|
2006-11-27 09:44:56 +00:00
|
|
|
#endif /* (CONFIG_RTC == RTC_) */
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2006-11-08 16:13:04 +00:00
|
|
|
|
2009-12-01 17:54:40 +00:00
|
|
|
#ifndef BOOTLOADER
|
2006-11-08 16:13:04 +00:00
|
|
|
/* Tuner */
|
2007-02-18 02:04:47 +00:00
|
|
|
#if CONFIG_TUNER
|
2007-07-14 11:20:31 +00:00
|
|
|
tuner.c
|
2017-11-03 19:14:01 +00:00
|
|
|
#if ((CONFIG_PLATFORM & PLATFORM_NATIVE) || defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || defined(SONY_NWZ_LINUX))
|
2007-07-14 11:20:31 +00:00
|
|
|
#if (CONFIG_TUNER & LV24020LP)
|
|
|
|
drivers/tuner/lv24020lp.c
|
|
|
|
#endif /* (CONFIG_TUNER & LV24020LP) */
|
2009-07-29 20:42:02 +00:00
|
|
|
#if (CONFIG_TUNER & TEA5760)
|
|
|
|
drivers/tuner/tea5760uk.c
|
|
|
|
#endif
|
2004-10-15 21:41:46 +00:00
|
|
|
#if (CONFIG_TUNER & TEA5767)
|
2007-07-14 11:20:31 +00:00
|
|
|
drivers/tuner/tea5767.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* (CONFIG_TUNER & TEA5767) */
|
2008-11-11 14:46:13 +00:00
|
|
|
#if (CONFIG_TUNER & SI4700)
|
|
|
|
drivers/tuner/si4700.c
|
|
|
|
#endif /* (CONFIG_TUNER & SI4700) */
|
2009-12-01 17:54:40 +00:00
|
|
|
#if (CONFIG_TUNER & IPOD_REMOTE_TUNER)
|
|
|
|
drivers/tuner/ipod_remote_tuner.c
|
|
|
|
#endif /* (CONFIG_TUNER & IPOD_REMOTE_TUNER) */
|
2010-06-16 20:29:08 +00:00
|
|
|
#if (CONFIG_TUNER & RDA5802)
|
|
|
|
drivers/tuner/rda5802.c
|
|
|
|
#endif /* (CONFIG_TUNER & RDA5802) */
|
2012-05-19 14:09:46 +00:00
|
|
|
#if (CONFIG_TUNER & STFM1000)
|
|
|
|
drivers/tuner/stfm1000.c
|
|
|
|
#endif /* (CONFIG_TUNER & STFM1000) */
|
2011-12-17 20:24:19 +00:00
|
|
|
#if defined(HAVE_RDS_CAP)
|
|
|
|
drivers/rds.c
|
|
|
|
#endif /* HAVE_RDS_CAP */
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* CONFIG_TUNER */
|
2009-12-01 17:54:40 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2006-11-08 16:13:04 +00:00
|
|
|
|
|
|
|
/* Sound */
|
|
|
|
sound.c
|
|
|
|
|
|
|
|
#ifndef BOOTLOADER
|
2006-11-06 18:07:30 +00:00
|
|
|
pcm_sampr.c
|
2007-10-06 22:27:27 +00:00
|
|
|
pcm.c
|
2011-06-29 06:37:04 +00:00
|
|
|
pcm_mixer.c
|
2013-04-05 08:36:05 +00:00
|
|
|
#ifdef HAVE_SW_VOLUME_CONTROL
|
|
|
|
pcm_sw_volume.c
|
|
|
|
#endif /* HAVE_SW_VOLUME_CONTROL */
|
2006-11-06 18:07:30 +00:00
|
|
|
#ifdef HAVE_RECORDING
|
|
|
|
enc_base.c
|
|
|
|
#endif /* HAVE_RECORDING */
|
2013-04-13 03:35:47 +00:00
|
|
|
|
|
|
|
drivers/audio/audiohw-swcodec.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
|
|
|
|
/* Audio codec */
|
2020-10-08 21:22:06 +00:00
|
|
|
#if !defined(BOOTLOADER)
|
|
|
|
|
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2006-11-08 16:13:04 +00:00
|
|
|
#if defined(HAVE_UDA1380)
|
2007-04-19 10:46:50 +00:00
|
|
|
drivers/audio/uda1380.c
|
2018-06-29 20:09:28 +00:00
|
|
|
#elif defined(HAVE_WM8740)
|
|
|
|
drivers/audio/wm8740.c
|
2010-04-26 21:40:00 +00:00
|
|
|
#elif defined(HAVE_WM8751) \
|
|
|
|
|| defined(HAVE_WM8750)
|
2007-05-02 22:33:24 +00:00
|
|
|
drivers/audio/wm8751.c
|
2008-04-27 10:30:54 +00:00
|
|
|
#elif defined(HAVE_WM8978)
|
|
|
|
drivers/audio/wm8978.c
|
|
|
|
#elif defined(HAVE_WM8975)
|
2007-04-19 10:46:50 +00:00
|
|
|
drivers/audio/wm8975.c
|
2008-01-14 22:04:48 +00:00
|
|
|
#elif defined(HAVE_WM8985)
|
|
|
|
drivers/audio/wm8985.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#elif defined(HAVE_WM8758)
|
2007-04-19 10:46:50 +00:00
|
|
|
drivers/audio/wm8758.c
|
2008-12-08 21:09:56 +00:00
|
|
|
#elif defined(HAVE_WM8711) \
|
|
|
|
|| defined(HAVE_WM8721) \
|
|
|
|
|| defined(HAVE_WM8731)
|
2007-10-02 07:48:50 +00:00
|
|
|
drivers/audio/wm8731.c
|
2007-03-11 17:38:08 +00:00
|
|
|
#elif defined(HAVE_AS3514)
|
2007-04-19 10:46:50 +00:00
|
|
|
drivers/audio/as3514.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#elif defined(HAVE_TLV320)
|
2007-04-19 10:46:50 +00:00
|
|
|
drivers/audio/tlv320.c
|
2009-05-25 21:10:45 +00:00
|
|
|
#elif defined(HAVE_AK4537)
|
|
|
|
drivers/audio/ak4537.c
|
2021-02-27 22:08:58 +00:00
|
|
|
#elif defined(HAVE_AK4376)
|
|
|
|
drivers/audio/ak4376.c
|
2009-10-19 18:14:27 +00:00
|
|
|
#elif defined(HAVE_UDA1341)
|
|
|
|
drivers/audio/uda1341.c
|
2011-01-02 23:16:27 +00:00
|
|
|
#elif defined(HAVE_CS42L55)
|
|
|
|
drivers/audio/cs42l55.c
|
2011-09-06 12:39:37 +00:00
|
|
|
#elif defined (HAVE_RK27XX_CODEC)
|
|
|
|
drivers/audio/rk27xx_codec.c
|
2011-11-16 14:08:01 +00:00
|
|
|
#elif defined(HAVE_AIC3X)
|
|
|
|
drivers/audio/aic3x.c
|
2011-11-03 11:53:02 +00:00
|
|
|
#elif defined (HAVE_DUMMY_CODEC)
|
|
|
|
drivers/audio/dummy_codec.c
|
2013-04-15 05:51:22 +00:00
|
|
|
#elif defined (HAVE_DF1704_CODEC)
|
|
|
|
drivers/audio/df1704.c
|
2013-06-02 19:03:26 +00:00
|
|
|
#elif defined (HAVE_PCM1792_CODEC)
|
|
|
|
drivers/audio/pcm1792.c
|
2018-06-28 10:24:26 +00:00
|
|
|
#elif defined (HAVE_CS4398)
|
|
|
|
drivers/audio/cs4398.c
|
2018-06-29 20:09:28 +00:00
|
|
|
#elif defined (HAVE_ES9018)
|
|
|
|
drivers/audio/es9018.c
|
2021-05-23 16:30:58 +00:00
|
|
|
#elif defined (HAVE_ES9218)
|
|
|
|
drivers/audio/es9218.c
|
2021-06-26 17:07:11 +00:00
|
|
|
#elif defined (HAVE_EROS_QN_CODEC)
|
|
|
|
drivers/audio/eros_qn_codec.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* defined(HAVE_*) */
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#else /* PLATFORM_HOSTED */
|
|
|
|
#if defined(SAMSUNG_YPR0) && defined(HAVE_AS3514)
|
|
|
|
drivers/audio/as3514.c
|
|
|
|
target/hosted/pcm-alsa.c
|
2013-09-10 20:48:34 +00:00
|
|
|
#elif defined(SAMSUNG_YPR1) && defined(HAVE_WM8978)
|
|
|
|
drivers/audio/wm8978.c
|
|
|
|
target/hosted/pcm-alsa.c
|
2017-02-23 10:33:19 +00:00
|
|
|
#elif defined(HAVE_NWZ_LINUX_CODEC)
|
|
|
|
drivers/audio/nwzlinux-codec.c
|
|
|
|
target/hosted/alsa-controls.c
|
2017-09-16 21:29:50 +00:00
|
|
|
target/hosted/pcm-alsa.c
|
2018-03-04 19:50:08 +00:00
|
|
|
#elif defined(HAVE_ROCKER_CODEC) && !defined(SIMULATOR)
|
2017-04-27 09:36:40 +00:00
|
|
|
drivers/audio/rocker_codec.c
|
2018-11-05 12:01:55 +00:00
|
|
|
#elif defined(HAVE_XDUOO_LINUX_CODEC) && !defined(SIMULATOR)
|
|
|
|
drivers/audio/xduoolinux_codec.c
|
2020-10-03 22:17:11 +00:00
|
|
|
#elif defined(HAVE_FIIO_LINUX_CODEC) && !defined(SIMULATOR)
|
|
|
|
drivers/audio/fiiolinux_codec.c
|
2020-10-08 13:47:40 +00:00
|
|
|
#elif defined(HAVE_EROSQ_LINUX_CODEC) && !defined(SIMULATOR)
|
|
|
|
drivers/audio/erosqlinux_codec.c
|
2010-05-15 21:02:47 +00:00
|
|
|
#elif defined(HAVE_SDL_AUDIO)
|
|
|
|
drivers/audio/sdl.c
|
2020-07-17 04:01:32 +00:00
|
|
|
|
2011-02-08 20:05:25 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_MAEMO5)
|
|
|
|
target/hosted/maemo/pcm-gstreamer.c
|
|
|
|
#else
|
2010-05-15 21:02:47 +00:00
|
|
|
target/hosted/sdl/pcm-sdl.c
|
2011-02-08 20:05:25 +00:00
|
|
|
#endif /* (CONFIG_PLATFORM & PLATFORM_MAEMO) */
|
2020-07-17 04:01:32 +00:00
|
|
|
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
#endif
|
2020-10-08 21:22:06 +00:00
|
|
|
#endif /* (CONFIG_PLATFORM & PLATFORM_NATIVE) */
|
|
|
|
|
|
|
|
#endif /* !defined(BOOTLOADER) */
|
2006-11-08 16:13:04 +00:00
|
|
|
|
2021-07-02 10:02:26 +00:00
|
|
|
/* WiFi */
|
|
|
|
#if !defined(BOOTLOADER)
|
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
|
|
|
#if defined(HAVE_W8686_SPI)
|
|
|
|
drivers/libertas/if_spi.c
|
|
|
|
#endif
|
|
|
|
#endif /* (CONFIG_PLATFORM & PLATFORM_NATIVE) */
|
|
|
|
#endif /* !defined(BOOTLOADER) */
|
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
/* CPU Specific - By class then particular chip if applicable */
|
2020-07-15 23:40:55 +00:00
|
|
|
#if defined(CPU_COLDFIRE)
|
2006-11-08 16:13:04 +00:00
|
|
|
|
|
|
|
target/coldfire/crt0.S
|
2008-10-29 10:26:46 +00:00
|
|
|
target/coldfire/kernel-coldfire.c
|
2006-11-08 16:13:04 +00:00
|
|
|
target/coldfire/system-coldfire.c
|
2009-06-29 14:29:06 +00:00
|
|
|
target/coldfire/timer-coldfire.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/coldfire/pcm-coldfire.c
|
2010-11-06 14:24:25 +00:00
|
|
|
target/coldfire/debug-coldfire.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#if CONFIG_I2C == I2C_COLDFIRE
|
|
|
|
target/coldfire/i2c-coldfire.c
|
|
|
|
#endif /* CONFIG_I2C == I2C_COLDFIRE */
|
2011-12-15 20:48:15 +00:00
|
|
|
#if CONFIG_STORAGE & STORAGE_ATA
|
|
|
|
target/coldfire/ata-as-coldfire.S
|
|
|
|
#endif
|
2006-11-08 16:13:04 +00:00
|
|
|
|
2012-01-25 08:57:59 +00:00
|
|
|
#elif defined(CPU_PP) || (defined(CPU_ARM) && (CONFIG_PLATFORM & PLATFORM_NATIVE))
|
2006-11-08 16:13:04 +00:00
|
|
|
/* CPU_PP => CPU_ARM, CPU_ARM !=> CPU_PP */
|
2011-12-15 23:29:11 +00:00
|
|
|
|
2011-12-15 23:55:54 +00:00
|
|
|
# if ARM_ARCH < 6
|
|
|
|
target/arm/bits-armv4.S
|
2011-12-15 23:56:07 +00:00
|
|
|
# if CONFIG_CPU == IMX233 || CONFIG_CPU == DM320 \
|
|
|
|
|| CONFIG_CPU == AS3525 || CONFIG_CPU == AS3525v2 \
|
2011-12-16 00:03:20 +00:00
|
|
|
|| CONFIG_CPU == S3C2440 || CONFIG_CPU == TCC7801 \
|
|
|
|
|| defined(CPU_S5L870X)
|
2011-12-15 23:56:07 +00:00
|
|
|
target/arm/mmu-arm.S
|
|
|
|
# endif
|
2011-12-15 23:55:54 +00:00
|
|
|
# endif
|
2009-01-08 10:15:32 +00:00
|
|
|
target/arm/system-arm.c
|
2011-12-15 23:29:11 +00:00
|
|
|
|
|
|
|
#if CONFIG_STORAGE & STORAGE_ATA
|
|
|
|
# ifdef CPU_PP502x
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/ata-pp5020.c
|
2011-12-15 23:29:11 +00:00
|
|
|
# endif
|
|
|
|
# if CONFIG_CPU == DM320 || defined(CPU_PP502x)
|
|
|
|
target/arm/ata-as-arm.S
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
2011-12-16 00:21:12 +00:00
|
|
|
#if defined(CPU_PP) && defined(IPOD_ARCH)
|
|
|
|
target/arm/ipod/power-ipod.c
|
|
|
|
# if LCD_DEPTH == 2
|
|
|
|
target/arm/ipod/lcd-as-gray.S
|
|
|
|
# endif
|
|
|
|
# ifndef IPOD_1G2G
|
|
|
|
# ifndef IPOD_3G
|
|
|
|
target/arm/ipod/piezo.c
|
|
|
|
# endif /* IPOD_3G */
|
|
|
|
drivers/pcf50605.c
|
|
|
|
target/arm/ipod/powermgmt-ipod-pcf.c
|
|
|
|
# endif /* IPOD_1G2G */
|
|
|
|
#endif /* CPU_PP && IPOD_ARCH */
|
|
|
|
|
2007-05-17 22:49:27 +00:00
|
|
|
#if CONFIG_I2C == I2C_PP5024 || CONFIG_I2C == I2C_PP5020 || CONFIG_I2C == I2C_PP5002
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/i2c-pp.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#elif CONFIG_I2C == I2C_PNX0101
|
2007-04-19 10:20:54 +00:00
|
|
|
target/arm/pnx0101/i2c-pnx0101.c
|
2021-04-23 15:09:49 +00:00
|
|
|
#elif CONFIG_I2C == I2C_TCC780X
|
2008-01-14 22:04:48 +00:00
|
|
|
target/arm/i2c-telechips.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#elif CONFIG_I2C == I2C_S3C2440
|
2012-05-30 19:52:23 +00:00
|
|
|
target/arm/s3c2440/i2c-s3c2440.c
|
2009-06-27 20:11:11 +00:00
|
|
|
#elif CONFIG_I2C == I2C_S5L8700
|
|
|
|
target/arm/s5l8700/i2c-s5l8700.c
|
2011-01-02 23:16:27 +00:00
|
|
|
#elif CONFIG_I2C == I2C_S5L8702
|
|
|
|
target/arm/s5l8702/i2c-s5l8702.c
|
2011-05-30 21:10:37 +00:00
|
|
|
#elif CONFIG_I2C == I2C_RK27XX
|
|
|
|
target/arm/rk27xx/i2c-rk27xx.c
|
2011-07-09 17:14:05 +00:00
|
|
|
#elif CONFIG_I2C == I2C_IMX233
|
|
|
|
target/arm/imx233/i2c-imx233.c
|
2006-07-13 07:40:30 +00:00
|
|
|
#endif
|
2008-07-14 15:03:10 +00:00
|
|
|
|
2007-03-24 19:26:13 +00:00
|
|
|
#if CONFIG_CPU == PNX0101
|
2008-10-29 10:26:46 +00:00
|
|
|
target/arm/pnx0101/kernel-pnx0101.c
|
2007-04-19 10:14:55 +00:00
|
|
|
target/arm/pnx0101/system-pnx0101.c
|
2009-06-29 14:29:02 +00:00
|
|
|
target/arm/pnx0101/timer-pnx0101.c
|
2007-03-24 19:26:13 +00:00
|
|
|
#endif
|
2008-07-14 15:03:10 +00:00
|
|
|
|
2011-05-01 13:02:46 +00:00
|
|
|
#if CONFIG_CPU == IMX233
|
2011-07-03 15:18:41 +00:00
|
|
|
target/arm/imx233/lcdif-imx233.c
|
2011-05-01 13:02:46 +00:00
|
|
|
target/arm/imx233/clkctrl-imx233.c
|
|
|
|
target/arm/imx233/system-imx233.c
|
|
|
|
target/arm/imx233/timrot-imx233.c
|
|
|
|
target/arm/imx233/kernel-imx233.c
|
2012-08-18 16:24:42 +00:00
|
|
|
# if (CONFIG_STORAGE & (STORAGE_SD | STORAGE_MMC))
|
|
|
|
target/arm/imx233/sdmmc-imx233.c
|
2012-05-19 14:09:46 +00:00
|
|
|
# endif
|
2013-06-18 14:39:11 +00:00
|
|
|
# if (CONFIG_STORAGE & (STORAGE_ATA))
|
|
|
|
target/arm/imx233/ata-imx233.c
|
|
|
|
# endif
|
2012-05-19 11:33:45 +00:00
|
|
|
target/arm/imx233/partitions-imx233.c
|
2011-06-17 22:30:58 +00:00
|
|
|
target/arm/imx233/ssp-imx233.c
|
|
|
|
target/arm/imx233/dma-imx233.c
|
2012-05-19 11:23:17 +00:00
|
|
|
target/arm/imx233/icoll-imx233.c
|
2011-07-22 15:45:50 +00:00
|
|
|
target/arm/imx233/pinctrl-imx233.c
|
2011-07-23 11:45:22 +00:00
|
|
|
target/arm/imx233/power-imx233.c
|
|
|
|
target/arm/imx233/powermgmt-imx233.c
|
|
|
|
target/arm/imx233/adc-imx233.c
|
2011-09-13 23:40:12 +00:00
|
|
|
target/arm/imx233/lradc-imx233.c
|
2012-05-19 11:40:34 +00:00
|
|
|
target/arm/imx233/pwm-imx233.c
|
2011-12-31 13:35:45 +00:00
|
|
|
target/arm/imx233/rtc-imx233.c
|
2016-09-26 20:22:21 +00:00
|
|
|
target/arm/imx233/dualboot-imx233.c
|
2014-02-22 19:28:51 +00:00
|
|
|
target/arm/imx233/button-imx233.c
|
2013-06-18 14:41:23 +00:00
|
|
|
#if IMX233_SUBTARGET >= 3700
|
2012-01-15 00:38:41 +00:00
|
|
|
target/arm/imx233/dcp-imx233.c
|
2013-06-18 14:41:23 +00:00
|
|
|
#endif
|
2013-01-10 00:43:08 +00:00
|
|
|
target/arm/imx233/emi-imx233.c
|
2013-06-18 14:24:28 +00:00
|
|
|
target/arm/imx233/uartdbg-imx233.c
|
2013-06-18 14:41:23 +00:00
|
|
|
# if defined(HAVE_TOUCHSCREEN) || defined(HAVE_TOUCHPAD_IMX233)
|
2012-05-19 11:42:49 +00:00
|
|
|
target/arm/imx233/touchscreen-imx233.c
|
|
|
|
# endif
|
2011-11-06 13:30:09 +00:00
|
|
|
#ifndef BOOTLOADER
|
2011-07-23 11:45:22 +00:00
|
|
|
target/arm/imx233/debug-imx233.c
|
2011-11-06 13:30:09 +00:00
|
|
|
#endif
|
2011-07-23 11:45:22 +00:00
|
|
|
#if !defined(BOOTLOADER) || defined(HAVE_BOOTLOADER_USB_MODE)
|
|
|
|
target/arm/imx233/usb-imx233.c
|
2017-01-11 15:58:30 +00:00
|
|
|
target/arm/imx233/led-imx233.c
|
2011-07-23 11:45:22 +00:00
|
|
|
#endif
|
2011-09-06 00:27:38 +00:00
|
|
|
#ifndef BOOTLOADER
|
2011-09-13 23:40:12 +00:00
|
|
|
#ifdef HAVE_IMX233_CODEC
|
2011-10-18 22:08:41 +00:00
|
|
|
target/arm/imx233/audioout-imx233.c
|
|
|
|
target/arm/imx233/audioin-imx233.c
|
2013-06-18 14:15:07 +00:00
|
|
|
target/arm/imx233/audio-imx233.c
|
2011-09-06 00:27:38 +00:00
|
|
|
target/arm/imx233/pcm-imx233.c
|
2011-10-18 22:08:41 +00:00
|
|
|
drivers/audio/imx233-codec.c
|
2011-09-13 23:40:12 +00:00
|
|
|
#endif
|
2011-09-06 00:27:38 +00:00
|
|
|
target/arm/imx233/timer-imx233.c
|
|
|
|
#endif
|
2011-05-01 13:02:46 +00:00
|
|
|
#endif /* IMX233 */
|
|
|
|
|
2009-12-31 19:15:20 +00:00
|
|
|
#if CONFIG_CPU == AS3525 || CONFIG_CPU == AS3525v2
|
2008-10-12 16:46:01 +00:00
|
|
|
target/arm/as3525/system-as3525.c
|
2010-06-18 17:33:51 +00:00
|
|
|
target/arm/as3525/memory-init.S
|
2008-11-06 02:31:40 +00:00
|
|
|
target/arm/as3525/kernel-as3525.c
|
2009-06-29 14:28:49 +00:00
|
|
|
target/arm/as3525/timer-as3525.c
|
2010-01-13 06:44:45 +00:00
|
|
|
#if CONFIG_CPU == AS3525
|
2010-01-15 14:03:41 +00:00
|
|
|
target/arm/as3525/sd-as3525.c
|
2010-04-27 10:11:52 +00:00
|
|
|
#ifdef HAVE_SCROLLWHEEL
|
|
|
|
target/arm/as3525/scrollwheel-as3525.c
|
|
|
|
#endif /* HAVE_SCROLLWHEEL */
|
2010-01-13 06:44:45 +00:00
|
|
|
#else /* AS3535v2 */
|
2011-12-15 19:38:11 +00:00
|
|
|
target/arm/as3525/tuner-as3525v2.c
|
2010-01-15 14:03:41 +00:00
|
|
|
target/arm/as3525/sd-as3525v2.c
|
2009-12-31 19:15:20 +00:00
|
|
|
#endif
|
2008-11-10 11:04:43 +00:00
|
|
|
target/arm/as3525/power-as3525.c
|
|
|
|
target/arm/as3525/usb-as3525.c
|
2008-11-25 13:38:32 +00:00
|
|
|
target/arm/as3525/dma-pl081.c
|
2008-12-17 20:16:20 +00:00
|
|
|
target/arm/as3525/ascodec-as3525.c
|
2010-06-18 17:33:51 +00:00
|
|
|
#ifndef BOOTLOADER
|
2009-01-04 15:48:33 +00:00
|
|
|
drivers/generic_i2c.c
|
2008-11-10 11:04:43 +00:00
|
|
|
target/arm/as3525/audio-as3525.c
|
|
|
|
target/arm/as3525/debug-as3525.c
|
2010-02-22 02:42:58 +00:00
|
|
|
#if CONFIG_TUNER
|
2009-01-04 15:48:33 +00:00
|
|
|
target/arm/as3525/fmradio-i2c-as3525.c
|
2010-02-22 02:42:58 +00:00
|
|
|
#endif /* CONFIG_TUNER */
|
2009-01-04 15:48:33 +00:00
|
|
|
target/arm/as3525/pcm-as3525.c
|
2008-11-10 11:04:43 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif /* CONFIG_CPU == AS3525 */
|
2008-10-12 16:46:01 +00:00
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
#if defined(CPU_PP)
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/i2s-pp.c
|
|
|
|
target/arm/pp/kernel-pp.c
|
|
|
|
target/arm/pp/timer-pp.c
|
2012-03-04 14:34:29 +00:00
|
|
|
target/arm/pp/mi4-loader.c
|
2011-12-15 23:29:11 +00:00
|
|
|
# if CONFIG_STORAGE & STORAGE_SD
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/ata-sd-pp.c
|
2011-12-15 23:29:11 +00:00
|
|
|
# endif
|
|
|
|
# if !defined(HAVE_AS3514) && !defined(HAVE_AK4537)
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/wmcodec-pp.c
|
2011-12-15 23:29:11 +00:00
|
|
|
# endif
|
2007-04-22 12:03:17 +00:00
|
|
|
#if CONFIG_CPU == PP5002
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/system-pp5002.c
|
|
|
|
target/arm/pp/usb-fw-pp5002.c
|
|
|
|
target/arm/pp/ata-pp5002.c
|
2013-04-15 19:09:39 +00:00
|
|
|
# ifdef HAVE_SERIAL
|
|
|
|
target/arm/pp/uart-pp.c
|
|
|
|
# endif /* HAVE_SERIAL */
|
2007-07-02 05:33:06 +00:00
|
|
|
#elif defined CPU_PP502x
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/usb-fw-pp502x.c
|
|
|
|
target/arm/pp/system-pp502x.c
|
2013-04-15 19:09:39 +00:00
|
|
|
# ifdef HAVE_SERIAL
|
|
|
|
target/arm/pp/uart-pp.c
|
|
|
|
# endif /* HAVE_SERIAL */
|
|
|
|
#endif /* (CONFIG_CPU==PP5002) || CPU_PP502x */
|
2006-12-19 11:33:53 +00:00
|
|
|
#ifdef BOOTLOADER
|
2011-01-15 08:19:30 +00:00
|
|
|
#ifdef HAVE_BOOTLOADER_USB_MODE
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/crt0-pp502x-bl-usb.S
|
2006-12-19 11:33:53 +00:00
|
|
|
#else
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/crt0-pp-bl.S
|
2011-01-15 08:19:30 +00:00
|
|
|
#endif /* HAVE_BOOTLOADER_USB_MODE */
|
|
|
|
#else /* !BOOTLOADER */
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/pcm-pp.c
|
|
|
|
target/arm/pp/debug-pp.c
|
2007-09-06 03:28:58 +00:00
|
|
|
#if !defined(SANSA_E200) && !defined(SANSA_C200)
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/audio-pp.c
|
2007-06-05 07:03:30 +00:00
|
|
|
#endif /* SANSA_E200 */
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/crt0-pp.S
|
2006-12-19 11:33:53 +00:00
|
|
|
#endif
|
2007-03-24 19:26:13 +00:00
|
|
|
#elif CONFIG_CPU == PNX0101
|
2007-04-19 10:14:55 +00:00
|
|
|
target/arm/pnx0101/crt0-pnx0101.S
|
2007-11-11 17:58:13 +00:00
|
|
|
#elif CONFIG_CPU==DM320
|
2007-09-30 16:29:21 +00:00
|
|
|
target/arm/tms320dm320/crt0.S
|
2007-11-11 17:58:13 +00:00
|
|
|
#elif CONFIG_CPU==S3C2440
|
|
|
|
target/arm/s3c2440/crt0.S
|
2008-01-14 22:04:48 +00:00
|
|
|
#elif defined(CPU_TCC780X)
|
|
|
|
target/arm/tcc780x/crt0.S
|
2007-12-23 12:19:40 +00:00
|
|
|
#elif CONFIG_CPU==IMX31L
|
|
|
|
target/arm/imx31/crt0.S
|
2011-01-02 23:16:27 +00:00
|
|
|
#elif CONFIG_CPU==S5L8700 || CONFIG_CPU==S5L8701
|
2008-10-18 22:28:59 +00:00
|
|
|
target/arm/s5l8700/crt0.S
|
2011-01-02 23:16:27 +00:00
|
|
|
#elif CONFIG_CPU==S5L8702
|
|
|
|
target/arm/s5l8702/crt0.S
|
2011-05-01 13:02:46 +00:00
|
|
|
#elif CONFIG_CPU==IMX233
|
|
|
|
target/arm/imx233/crt0.S
|
2011-05-30 21:10:37 +00:00
|
|
|
#elif CONFIG_CPU==RK27XX
|
|
|
|
target/arm/rk27xx/crt0.S
|
2006-11-08 16:13:04 +00:00
|
|
|
#elif defined(CPU_ARM)
|
|
|
|
target/arm/crt0.S
|
|
|
|
#endif /* defined(CPU_*) */
|
|
|
|
|
2012-06-11 20:06:34 +00:00
|
|
|
#elif defined(CPU_MIPS) && (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2022-05-17 13:48:01 +00:00
|
|
|
target/mips/exception-mips.S
|
2009-01-21 20:58:33 +00:00
|
|
|
target/mips/mmu-mips.c
|
2022-05-17 13:48:01 +00:00
|
|
|
target/mips/system-mips.c
|
2018-06-28 10:24:26 +00:00
|
|
|
#if CONFIG_CPU==JZ4732 || CONFIG_CPU==JZ4760B
|
2008-07-14 15:03:10 +00:00
|
|
|
target/mips/ingenic_jz47xx/crt0.S
|
2022-05-17 13:48:01 +00:00
|
|
|
#elif CONFIG_CPU==X1000
|
|
|
|
target/mips/ingenic_x1000/crt0.S
|
|
|
|
#endif
|
2008-07-14 15:03:10 +00:00
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
#else
|
|
|
|
|
2010-06-21 16:53:00 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
|
2006-11-08 16:13:04 +00:00
|
|
|
crt0.S
|
|
|
|
drivers/i2c.c
|
2010-06-21 16:53:00 +00:00
|
|
|
#endif /* PLATFORM_NATIVE */
|
2006-11-08 16:13:04 +00:00
|
|
|
|
|
|
|
#endif /* defined(CPU_*) */
|
2006-02-23 15:26:43 +00:00
|
|
|
|
2011-12-15 18:05:15 +00:00
|
|
|
#if !defined(SIMULATOR)
|
|
|
|
|
|
|
|
/* target code */
|
|
|
|
|
2011-12-15 19:38:29 +00:00
|
|
|
/* LCD driver */
|
|
|
|
#if CONFIG_LCD == LCD_SSD1303
|
|
|
|
target/arm/as3525/lcd-ssd1303.c
|
|
|
|
#elif CONFIG_LCD == LCD_SSD1815
|
|
|
|
target/arm/lcd-ssd1815.c
|
|
|
|
#elif CONFIG_LCD == LCD_HX8340B
|
|
|
|
target/arm/rk27xx/lcd-hifiman.c
|
|
|
|
#elif CONFIG_LCD == LCD_C200
|
|
|
|
target/arm/lcd-c200_c200v2.c
|
|
|
|
#elif CONFIG_LCD == LCD_FUZE
|
|
|
|
target/arm/as3525/lcd-fuze.c
|
|
|
|
#elif CONFIG_LCD == LCD_IPODCOLOR || CONFIG_LCD == LCD_IPODNANO
|
|
|
|
target/arm/ipod/lcd-color_nano.c
|
|
|
|
#elif CONFIG_LCD == LCD_IPODMINI || CONFIG_LCD == LCD_IPOD2BPP
|
|
|
|
target/arm/ipod/lcd-gray.c
|
2011-12-15 20:16:05 +00:00
|
|
|
#elif CONFIG_LCD == LCD_GIGABEATS
|
2011-12-15 19:38:29 +00:00
|
|
|
target/arm/imx31/gigabeat-s/lcd-gigabeat-s.c
|
2012-10-17 07:33:31 +00:00
|
|
|
#elif CONFIG_LCD == LCD_GIGABEAT || CONFIG_LCD == LCD_MINI2440
|
2011-12-15 19:38:29 +00:00
|
|
|
target/arm/s3c2440/lcd-s3c2440.c
|
2013-10-27 18:34:24 +00:00
|
|
|
#elif CONFIG_LCD == LCD_ILI9342 || CONFIG_LCD == LCD_ILI9342C
|
2013-04-15 05:51:22 +00:00
|
|
|
target/arm/rk27xx/ma/lcd-ma.c
|
2013-11-16 14:21:00 +00:00
|
|
|
#elif CONFIG_LCD == LCD_IHIFI
|
|
|
|
target/arm/rk27xx/ihifi/lcd-ihifi.c
|
2018-06-29 20:09:28 +00:00
|
|
|
#elif CONFIG_LCD == LCD_IHIFI770
|
|
|
|
target/arm/rk27xx/ihifi2/lcd-ihifi770.c
|
|
|
|
#elif CONFIG_LCD == LCD_IHIFI770C
|
|
|
|
target/arm/rk27xx/ihifi2/lcd-ihifi770c.c
|
|
|
|
#elif CONFIG_LCD == LCD_IHIFI800
|
|
|
|
target/arm/rk27xx/ihifi2/lcd-ihifi800.c
|
2011-12-15 19:38:29 +00:00
|
|
|
#endif
|
|
|
|
|
2011-12-15 18:05:15 +00:00
|
|
|
/* USB Stack */
|
|
|
|
#ifdef HAVE_USBSTACK
|
|
|
|
usbstack/usb_core.c
|
|
|
|
#ifdef USB_ENABLE_STORAGE
|
|
|
|
usbstack/usb_storage.c
|
|
|
|
#endif
|
|
|
|
#ifdef USB_ENABLE_SERIAL
|
|
|
|
usbstack/usb_serial.c
|
|
|
|
#endif
|
|
|
|
#ifdef USB_ENABLE_CHARGING_ONLY
|
|
|
|
usbstack/usb_charging_only.c
|
|
|
|
#endif
|
|
|
|
#ifdef USB_ENABLE_HID
|
|
|
|
usbstack/usb_hid.c
|
|
|
|
#endif
|
|
|
|
#if CONFIG_USBOTG == USBOTG_M66591
|
|
|
|
drivers/m66591.c
|
|
|
|
#elif CONFIG_USBOTG == USBOTG_ARC
|
|
|
|
target/arm/usb-drv-arc.c
|
|
|
|
#elif CONFIG_USBOTG == USBOTG_AS3525
|
|
|
|
target/arm/as3525/usb-drv-as3525.c
|
2011-12-15 21:46:46 +00:00
|
|
|
#elif CONFIG_USBOTG == USBOTG_S3C6400X
|
|
|
|
target/arm/usb-s3c6400x.c
|
2016-07-31 01:00:43 +00:00
|
|
|
#elif CONFIG_USBOTG == USBOTG_DESIGNWARE
|
2021-04-18 17:45:10 +00:00
|
|
|
drivers/usb-designware.c
|
2011-12-15 18:05:15 +00:00
|
|
|
#elif CONFIG_USBOTG == USBOTG_ISP1583
|
|
|
|
drivers/isp1583.c
|
|
|
|
#elif CONFIG_USBOTG == USBOTG_RK27XX
|
|
|
|
target/arm/rk27xx/usb-drv-rk27xx.c
|
|
|
|
#endif
|
|
|
|
#else /* !defined(HAVE_USBSTACK) */
|
2018-11-05 12:01:55 +00:00
|
|
|
#if CONFIG_USBOTG == USBOTG_ISP1362
|
2011-12-15 18:05:15 +00:00
|
|
|
drivers/isp1362.c
|
2018-11-05 12:01:55 +00:00
|
|
|
#elif CONFIG_USBOTG == USBOTG_M5636
|
2011-12-15 18:05:15 +00:00
|
|
|
drivers/m5636.c
|
|
|
|
#endif
|
|
|
|
#endif /* !defined(HAVE_USBSTACK) */
|
|
|
|
|
|
|
|
/* Other Random Hardware */
|
|
|
|
#ifdef HAVE_TSC2100
|
|
|
|
drivers/tsc2100.c
|
|
|
|
drivers/audio/tsc2100.c
|
|
|
|
#endif
|
|
|
|
|
2011-12-15 19:48:55 +00:00
|
|
|
#ifdef HAVE_AS3514
|
2011-12-15 20:34:16 +00:00
|
|
|
# ifdef CPU_PP
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/ascodec-pp.c
|
2011-12-15 20:34:16 +00:00
|
|
|
# endif
|
2011-12-15 19:48:55 +00:00
|
|
|
# if !defined(BOOTLOADER) || defined(CPU_PP)
|
2012-01-08 02:33:43 +00:00
|
|
|
drivers/adc-as3514.c
|
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.
The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).
Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.
This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.
Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.
Flyspray: FS#12348
Author: Lorenzo Miori, myself
Merry christmas to ypr0 owners! :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
|
|
|
# if !defined(SANSA_M200V4) && !defined(SAMSUNG_YPR0)
|
2011-12-15 20:34:16 +00:00
|
|
|
target/arm/powermgmt-ascodec.c
|
|
|
|
# endif
|
2011-12-15 19:48:55 +00:00
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
2011-12-15 20:15:54 +00:00
|
|
|
#if CONFIG_I2C == I2C_PP5020
|
|
|
|
# ifdef IPOD_ARCH
|
|
|
|
target/arm/ipod/adc-ipod-pcf.c
|
|
|
|
# else
|
2012-01-03 04:39:56 +00:00
|
|
|
target/arm/pp/adc-pp5020.c
|
2011-12-15 20:15:54 +00:00
|
|
|
# endif /* IPOD_ARCH */
|
|
|
|
|
|
|
|
#elif CONFIG_I2C == I2C_PP5002
|
|
|
|
# ifdef IPOD_1G2G
|
|
|
|
target/arm/ipod/1g2g/adc-ipod-1g2g.c
|
|
|
|
# else
|
|
|
|
target/arm/ipod/adc-ipod-pcf.c
|
|
|
|
# endif /* IPOD_1G2G */
|
|
|
|
|
|
|
|
#elif CONFIG_I2C == I2C_S3C2440
|
|
|
|
target/arm/s3c2440/adc-s3c2440.c
|
|
|
|
|
|
|
|
#elif CONFIG_I2C == I2C_S5L8700
|
|
|
|
# ifdef IPOD_NANO2G
|
|
|
|
target/arm/s5l8700/ipodnano2g/adc-nano2g.c
|
|
|
|
# else
|
|
|
|
target/arm/s5l8700/adc-s5l8700.c
|
|
|
|
# endif
|
|
|
|
|
|
|
|
#endif /* CONFIG_I2C */
|
|
|
|
|
2011-12-15 22:27:28 +00:00
|
|
|
#if CONFIG_CPU == S5L8700 || CONFIG_CPU == S5L8701
|
|
|
|
target/arm/s5l8700/kernel-s5l8700.c
|
|
|
|
target/arm/s5l8700/system-s5l8700.c
|
|
|
|
target/arm/s5l8700/dma-s5l8700.c
|
|
|
|
# ifndef BOOTLOADER
|
|
|
|
target/arm/s5l8700/wmcodec-s5l8700.c
|
|
|
|
target/arm/s5l8700/timer-s5l8700.c
|
|
|
|
target/arm/s5l8700/pcm-s5l8700.c
|
|
|
|
target/arm/s5l8700/debug-s5l8700.c
|
|
|
|
# endif
|
|
|
|
#endif /* S5L8700 || S5L8701 */
|
|
|
|
|
2011-12-15 22:01:30 +00:00
|
|
|
#if CONFIG_CPU == S3C2440
|
|
|
|
target/arm/s3c2440/debug-s3c2440.c
|
|
|
|
target/arm/s3c2440/kernel-s3c2440.c
|
|
|
|
target/arm/s3c2440/system-s3c2440.c
|
|
|
|
# ifndef BOOTLOADER
|
|
|
|
target/arm/s3c2440/gigabeat-fx/timer-meg-fx.c
|
|
|
|
# endif
|
|
|
|
#endif /* CONFIG_CPU == S3C2440 */
|
2011-12-15 21:26:03 +00:00
|
|
|
|
2011-12-15 21:54:06 +00:00
|
|
|
#if defined(SANSA_E200) || defined(SANSA_C200)
|
2009-01-11 10:07:22 +00:00
|
|
|
target/arm/sandisk/backlight-c200_e200.c
|
2007-09-06 03:01:41 +00:00
|
|
|
target/arm/sandisk/power-c200_e200.c
|
2007-06-05 07:03:30 +00:00
|
|
|
#ifndef BOOTLOADER
|
2007-09-06 03:01:41 +00:00
|
|
|
target/arm/sandisk/audio-c200_e200.c
|
2007-06-05 07:03:30 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2011-12-15 21:54:06 +00:00
|
|
|
#endif /* SANSA_E200 || SANSA_C200 */
|
|
|
|
|
|
|
|
#ifdef SANSA_E200
|
2011-12-15 23:24:35 +00:00
|
|
|
drivers/lcd-memframe.c
|
2011-12-15 21:54:06 +00:00
|
|
|
target/arm/sandisk/sansa-e200/lcd-e200.c
|
|
|
|
target/arm/sandisk/sansa-e200/button-e200.c
|
|
|
|
target/arm/sandisk/sansa-e200/powermgmt-e200.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* SANSA_E200 */
|
2006-08-01 22:28:14 +00:00
|
|
|
|
2007-09-06 03:28:58 +00:00
|
|
|
#ifdef SANSA_C200
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/sandisk/sansa-c200/lcd-as-c200.S
|
2009-01-11 10:07:22 +00:00
|
|
|
target/arm/sandisk/sansa-c200/button-c200.c
|
2007-09-06 03:28:58 +00:00
|
|
|
target/arm/sandisk/sansa-c200/powermgmt-c200.c
|
|
|
|
#endif /* SANSA_C200 */
|
|
|
|
|
2009-07-13 21:09:39 +00:00
|
|
|
#ifdef SANSA_VIEW
|
|
|
|
target/arm/sandisk/sansa-view/backlight-view.c
|
|
|
|
target/arm/sandisk/sansa-view/adc-view.c
|
|
|
|
target/arm/sandisk/sansa-view/power-view.c
|
|
|
|
target/arm/sandisk/sansa-view/lcd-view.c
|
|
|
|
target/arm/sandisk/sansa-view/button-view.c
|
|
|
|
target/arm/sandisk/sansa-view/powermgmt-view.c
|
|
|
|
#ifndef BOOTLOADER
|
|
|
|
/* target/arm/sandisk/audio-view.c */
|
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif /* SANSA_VIEW */
|
|
|
|
|
2008-05-21 03:55:17 +00:00
|
|
|
#ifdef PHILIPS_SA9200
|
2009-06-19 03:23:38 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
drivers/synaptics-mep.c
|
2014-11-08 20:12:24 +00:00
|
|
|
target/arm/philips/piezo.c
|
2009-06-19 03:23:38 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2009-03-07 04:41:37 +00:00
|
|
|
target/arm/philips/sa9200/backlight-sa9200.c
|
2008-05-21 03:55:17 +00:00
|
|
|
target/arm/philips/sa9200/button-sa9200.c
|
2009-03-07 04:41:37 +00:00
|
|
|
target/arm/philips/sa9200/lcd-sa9200.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/philips/sa9200/lcd-as-sa9200.S
|
2008-05-21 03:55:17 +00:00
|
|
|
target/arm/philips/sa9200/power-sa9200.c
|
|
|
|
target/arm/philips/sa9200/powermgmt-sa9200.c
|
|
|
|
#endif /* PHILIPS_SA9200 */
|
|
|
|
|
2011-12-15 21:47:22 +00:00
|
|
|
#if defined(PHILIPS_HDD1630) || defined(PHILIPS_HDD6330)
|
2008-12-19 03:31:26 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
drivers/synaptics-mep.c
|
2014-11-08 20:12:24 +00:00
|
|
|
target/arm/philips/piezo.c
|
2008-12-19 03:31:26 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2009-12-25 04:05:01 +00:00
|
|
|
target/arm/philips/power-hdd.c
|
|
|
|
target/arm/philips/fmradio_i2c-hdd.c
|
2011-12-15 21:47:22 +00:00
|
|
|
#endif /* PHILIPS_HDD1630 || PHILIPS_HDD6330 */
|
|
|
|
|
|
|
|
#ifdef PHILIPS_HDD1630
|
2010-10-21 21:03:17 +00:00
|
|
|
target/arm/philips/hdd1630/backlight-hdd1630.c
|
2008-06-27 18:40:25 +00:00
|
|
|
target/arm/philips/hdd1630/button-hdd1630.c
|
|
|
|
target/arm/philips/hdd1630/lcd-hdd1630.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/philips/hdd1630/lcd-as-hdd1630.S
|
2008-06-27 18:40:25 +00:00
|
|
|
target/arm/philips/hdd1630/powermgmt-hdd1630.c
|
|
|
|
#endif /* PHILIPS_HDD1630 */
|
|
|
|
|
2009-12-25 04:05:01 +00:00
|
|
|
#ifdef PHILIPS_HDD6330
|
2010-10-21 21:03:17 +00:00
|
|
|
target/arm/philips/hdd6330/backlight-hdd6330.c
|
2009-12-25 04:05:01 +00:00
|
|
|
target/arm/philips/hdd6330/button-hdd6330.c
|
|
|
|
target/arm/philips/hdd6330/lcd-hdd6330.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/philips/hdd6330/lcd-as-hdd6330.S
|
2009-12-25 04:05:01 +00:00
|
|
|
target/arm/philips/hdd6330/powermgmt-hdd6330.c
|
|
|
|
#endif /* PHILIPS_HDD6330 */
|
|
|
|
|
2011-12-15 21:03:32 +00:00
|
|
|
#if defined(IAUDIO_X5) || defined(IAUDIO_M5)
|
2006-11-08 16:13:04 +00:00
|
|
|
target/coldfire/pcf50606-coldfire.c
|
2007-03-05 00:04:00 +00:00
|
|
|
target/coldfire/iaudio/adc-iaudio.c
|
|
|
|
target/coldfire/iaudio/ata-iaudio.c
|
2011-12-15 21:03:32 +00:00
|
|
|
#ifdef HAVE_FMRADIO_IN
|
2009-06-12 18:53:44 +00:00
|
|
|
target/coldfire/iaudio/fmradio_i2c-iaudio.c
|
2011-12-15 21:03:32 +00:00
|
|
|
#endif
|
2008-03-26 00:38:40 +00:00
|
|
|
target/coldfire/iaudio/lcd-remote-as-iaudio.S
|
2007-03-05 00:04:00 +00:00
|
|
|
target/coldfire/iaudio/lcd-remote-iaudio.c
|
|
|
|
target/coldfire/iaudio/pcf50606-iaudio.c
|
2009-06-12 18:53:44 +00:00
|
|
|
target/coldfire/iaudio/power-x5m5.c
|
2007-08-17 06:45:18 +00:00
|
|
|
target/coldfire/iaudio/powermgmt-iaudio.c
|
2007-03-05 00:04:00 +00:00
|
|
|
target/coldfire/iaudio/system-iaudio.c
|
|
|
|
target/coldfire/iaudio/usb-iaudio.c
|
2011-12-15 21:03:32 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/coldfire/iaudio/audio-iaudio.c
|
|
|
|
#endif
|
|
|
|
#endif /* IAUDIO_X5 || IAUDIO_M5 */
|
|
|
|
|
|
|
|
#ifdef IAUDIO_X5
|
2006-11-08 16:13:04 +00:00
|
|
|
target/coldfire/iaudio/x5/backlight-x5.c
|
2006-07-27 13:27:31 +00:00
|
|
|
target/coldfire/iaudio/x5/button-x5.c
|
2007-03-11 13:59:31 +00:00
|
|
|
target/coldfire/iaudio/x5/ds2411-x5.c
|
2006-08-13 21:28:22 +00:00
|
|
|
target/coldfire/iaudio/x5/lcd-as-x5.S
|
2006-02-23 15:26:43 +00:00
|
|
|
target/coldfire/iaudio/x5/lcd-x5.c
|
2006-11-08 16:13:04 +00:00
|
|
|
target/coldfire/iaudio/x5/m5636-x5.c
|
|
|
|
#endif /* IAUDIO_X5 */
|
|
|
|
|
2007-03-04 14:09:21 +00:00
|
|
|
#ifdef IAUDIO_M5
|
2007-03-05 00:04:00 +00:00
|
|
|
target/coldfire/iaudio/m5/backlight-m5.c
|
|
|
|
target/coldfire/iaudio/m5/button-m5.c
|
|
|
|
target/coldfire/iaudio/m5/lcd-as-m5.S
|
|
|
|
target/coldfire/iaudio/m5/lcd-m5.c
|
2007-03-04 14:09:21 +00:00
|
|
|
#endif /* IAUDIO_M5 */
|
|
|
|
|
2008-03-12 20:35:42 +00:00
|
|
|
#ifdef IAUDIO_M3
|
2009-06-12 18:53:44 +00:00
|
|
|
target/coldfire/iaudio/fmradio_i2c-iaudio.c
|
2008-03-14 08:54:54 +00:00
|
|
|
target/coldfire/iaudio/m3/adc-m3.c
|
2008-03-12 23:36:05 +00:00
|
|
|
target/coldfire/iaudio/m3/ata-m3.c
|
2008-03-12 20:35:42 +00:00
|
|
|
target/coldfire/iaudio/m3/backlight-m3.c
|
|
|
|
target/coldfire/iaudio/m3/button-m3.c
|
|
|
|
target/coldfire/iaudio/m3/lcd-m3.c
|
2008-03-25 23:21:36 +00:00
|
|
|
target/coldfire/iaudio/m3/lcd-as-m3.S
|
2008-03-12 20:35:42 +00:00
|
|
|
target/coldfire/iaudio/m3/power-m3.c
|
2008-03-17 00:19:23 +00:00
|
|
|
target/coldfire/iaudio/m3/powermgmt-m3.c
|
2008-03-12 20:35:42 +00:00
|
|
|
target/coldfire/iaudio/m3/system-m3.c
|
2008-03-14 08:54:54 +00:00
|
|
|
target/coldfire/iaudio/m3/usb-m3.c
|
|
|
|
#ifndef BOOTLOADER
|
2009-06-12 18:53:44 +00:00
|
|
|
target/coldfire/iaudio/audio-iaudio.c
|
2008-03-14 08:54:54 +00:00
|
|
|
#endif
|
2008-03-12 20:35:42 +00:00
|
|
|
#endif /* IAUDIO_M3 */
|
|
|
|
|
2006-11-08 16:13:04 +00:00
|
|
|
#ifdef STUB
|
2010-05-06 21:04:40 +00:00
|
|
|
libc/sscanf.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* STUB */
|
2006-08-03 20:21:55 +00:00
|
|
|
|
2011-12-15 21:10:22 +00:00
|
|
|
#if defined(IRIVER_H300_SERIES) || defined(IRIVER_H100_SERIES)
|
2006-10-30 08:56:06 +00:00
|
|
|
target/coldfire/iriver/ata-iriver.c
|
2007-02-25 22:09:14 +00:00
|
|
|
target/coldfire/iriver/lcd-remote-iriver.c
|
2008-04-06 23:57:37 +00:00
|
|
|
target/coldfire/iriver/lcd-remote-as-iriver.S
|
2006-10-30 08:56:06 +00:00
|
|
|
target/coldfire/iriver/system-iriver.c
|
2007-11-10 19:14:01 +00:00
|
|
|
target/coldfire/iriver/fmradio_i2c-iriver.c
|
2011-12-15 21:10:22 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/coldfire/iriver/audio-iriver.c
|
|
|
|
target/coldfire/iriver/udacodec-iriver.c
|
|
|
|
#endif
|
|
|
|
#endif /* IRIVER_H300_SERIES || IRIVER_H100_SERIES */
|
|
|
|
|
|
|
|
#ifdef IRIVER_H300_SERIES
|
|
|
|
target/coldfire/pcf50606-coldfire.c
|
2007-02-28 13:20:36 +00:00
|
|
|
target/coldfire/iriver/h300/sw_i2c-h300.c
|
2006-10-30 08:56:06 +00:00
|
|
|
target/coldfire/iriver/h300/adc-h300.c
|
|
|
|
target/coldfire/iriver/h300/backlight-h300.c
|
|
|
|
target/coldfire/iriver/h300/button-h300.c
|
|
|
|
target/coldfire/iriver/h300/pcf50606-h300.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/coldfire/iriver/h300/lcd-as-h300.S
|
2006-11-08 16:13:04 +00:00
|
|
|
target/coldfire/iriver/h300/lcd-h300.c
|
2007-08-14 22:23:15 +00:00
|
|
|
target/coldfire/iriver/h300/power-h300.c
|
2007-08-17 06:45:18 +00:00
|
|
|
target/coldfire/iriver/h300/powermgmt-h300.c
|
2006-10-30 08:56:06 +00:00
|
|
|
target/coldfire/iriver/h300/usb-h300.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IRIVER_H300_SERIES */
|
2006-10-29 10:32:50 +00:00
|
|
|
|
2006-10-30 08:56:06 +00:00
|
|
|
#ifdef IRIVER_H100_SERIES
|
2008-02-03 18:15:39 +00:00
|
|
|
drivers/sw_i2c.c
|
2011-04-23 08:23:07 +00:00
|
|
|
target/coldfire/uart-coldfire.c
|
2006-10-30 08:56:06 +00:00
|
|
|
target/coldfire/iriver/h100/adc-h100.c
|
|
|
|
target/coldfire/iriver/h100/backlight-h100.c
|
|
|
|
target/coldfire/iriver/h100/button-h100.c
|
2006-11-08 16:13:04 +00:00
|
|
|
target/coldfire/iriver/h100/lcd-as-h100.S
|
2006-11-10 00:02:28 +00:00
|
|
|
target/coldfire/iriver/h100/lcd-h100.c
|
2007-08-14 22:23:15 +00:00
|
|
|
target/coldfire/iriver/h100/power-h100.c
|
2007-08-17 06:45:18 +00:00
|
|
|
target/coldfire/iriver/h100/powermgmt-h100.c
|
2006-11-13 23:21:54 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/coldfire/iriver/h100/spdif-h100.c
|
|
|
|
#endif
|
2006-10-30 08:56:06 +00:00
|
|
|
target/coldfire/iriver/h100/usb-h100.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IRIVER_H100_SERIES */
|
2006-08-23 17:30:51 +00:00
|
|
|
|
2011-12-15 21:10:22 +00:00
|
|
|
#if defined(IRIVER_H10) || defined(IRIVER_H10_5GB)
|
2006-08-03 20:21:55 +00:00
|
|
|
target/arm/iriver/h10/backlight-h10.c
|
|
|
|
target/arm/iriver/h10/button-h10.c
|
2007-11-11 16:00:33 +00:00
|
|
|
target/arm/iriver/h10/fmradio_i2c-h10.c
|
2006-08-03 20:21:55 +00:00
|
|
|
target/arm/iriver/h10/power-h10.c
|
2007-08-17 06:45:18 +00:00
|
|
|
target/arm/iriver/h10/powermgmt-h10.c
|
2011-12-15 21:10:22 +00:00
|
|
|
#endif /* IRIVER_H10 || IRIVER_H10_5GB */
|
|
|
|
|
|
|
|
#ifdef IRIVER_H10
|
|
|
|
target/arm/iriver/h10/lcd-h10_20gb.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/iriver/h10/lcd-as-h10.S
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IRIVER_H10 */
|
2006-08-12 08:01:54 +00:00
|
|
|
|
2006-08-19 19:21:17 +00:00
|
|
|
#ifdef IRIVER_H10_5GB
|
2006-11-08 16:13:04 +00:00
|
|
|
target/arm/iriver/h10/lcd-h10_5gb.c
|
|
|
|
#endif /* IRIVER_H10_5GB */
|
2006-08-19 19:21:17 +00:00
|
|
|
|
2006-08-12 08:01:54 +00:00
|
|
|
#ifdef GIGABEAT_F
|
2011-12-15 23:07:11 +00:00
|
|
|
drivers/lcd-memframe.c
|
2007-04-18 12:22:27 +00:00
|
|
|
target/arm/s3c2440/gigabeat-fx/ata-meg-fx.c
|
|
|
|
target/arm/s3c2440/gigabeat-fx/backlight-meg-fx.c
|
|
|
|
target/arm/s3c2440/gigabeat-fx/button-meg-fx.c
|
|
|
|
target/arm/s3c2440/gigabeat-fx/power-meg-fx.c
|
|
|
|
target/arm/s3c2440/gigabeat-fx/sc606-meg-fx.c
|
2008-03-30 06:06:43 +00:00
|
|
|
target/arm/s3c2440/gigabeat-fx/usb-meg-fx.c
|
2006-12-29 02:49:12 +00:00
|
|
|
#ifndef BOOTLOADER
|
2007-04-18 12:22:27 +00:00
|
|
|
target/arm/s3c2440/gigabeat-fx/pcm-meg-fx.c
|
2008-03-30 06:06:43 +00:00
|
|
|
target/arm/s3c2440/gigabeat-fx/powermgmt-meg-fx.c
|
|
|
|
target/arm/s3c2440/gigabeat-fx/wmcodec-meg-fx.c
|
2006-12-29 02:49:12 +00:00
|
|
|
#endif
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* GIGABEAT_F */
|
2006-08-31 19:19:35 +00:00
|
|
|
|
2007-09-21 15:51:53 +00:00
|
|
|
#ifdef GIGABEAT_S
|
2011-12-15 23:07:11 +00:00
|
|
|
drivers/lcd-memframe.c
|
2010-06-30 02:02:46 +00:00
|
|
|
target/arm/bits-armv6.S
|
2009-10-18 13:07:14 +00:00
|
|
|
target/arm/mmu-armv6.S
|
2010-04-09 01:21:53 +00:00
|
|
|
target/arm/imx31/ata-imx31.c
|
|
|
|
target/arm/imx31/avic-imx31.c
|
2009-03-22 02:13:27 +00:00
|
|
|
target/arm/imx31/ccm-imx31.c
|
2008-04-11 15:49:48 +00:00
|
|
|
target/arm/imx31/debug-imx31.c
|
2010-04-07 03:43:48 +00:00
|
|
|
target/arm/imx31/dvfs_dptc-imx31.c
|
2010-04-09 01:21:53 +00:00
|
|
|
target/arm/imx31/gpio-imx31.c
|
|
|
|
target/arm/imx31/i2c-imx31.c
|
2010-04-23 13:46:04 +00:00
|
|
|
target/arm/imx31/iomuxc-imx31.c
|
2010-04-09 01:21:53 +00:00
|
|
|
target/arm/imx31/mc13783-imx31.c
|
|
|
|
target/arm/imx31/mmu-imx31.c
|
2010-04-23 15:32:50 +00:00
|
|
|
target/arm/imx31/rolo_restart_firmware.S
|
2009-03-12 06:31:40 +00:00
|
|
|
target/arm/imx31/sdma-imx31.c
|
2010-04-09 01:21:53 +00:00
|
|
|
target/arm/imx31/spi-imx31.c
|
2011-04-23 08:23:07 +00:00
|
|
|
target/arm/imx31/uart-imx31.c
|
2010-04-09 01:21:53 +00:00
|
|
|
target/arm/imx31/gigabeat-s/adc-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/backlight-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/button-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/kernel-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/i2s-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/power-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/powermgmt-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/system-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/usb-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/wmcodec-gigabeat-s.c
|
2007-09-21 15:51:53 +00:00
|
|
|
#ifndef BOOTLOADER
|
2008-12-09 20:48:04 +00:00
|
|
|
target/arm/imx31/gigabeat-s/audio-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/fmradio-i2c-gigabeat-s.c
|
2009-01-23 20:55:17 +00:00
|
|
|
target/arm/imx31/gigabeat-s/headphone-gigabeat-s.c
|
2010-04-09 01:21:53 +00:00
|
|
|
target/arm/imx31/gigabeat-s/pcm-gigabeat-s.c
|
|
|
|
target/arm/imx31/gigabeat-s/timer-gigabeat-s.c
|
2007-09-21 15:51:53 +00:00
|
|
|
#endif
|
|
|
|
#endif /* GIGABEAT_S */
|
|
|
|
|
2008-04-24 20:08:28 +00:00
|
|
|
#if CONFIG_CPU == DM320
|
|
|
|
target/arm/tms320dm320/debug-dm320.c
|
|
|
|
target/arm/tms320dm320/dsp-dm320.c
|
|
|
|
target/arm/tms320dm320/i2c-dm320.c
|
2011-11-16 14:08:01 +00:00
|
|
|
#ifdef HAVE_SOFTWARE_I2C
|
|
|
|
drivers/generic_i2c.c
|
|
|
|
#endif
|
2008-04-24 20:08:28 +00:00
|
|
|
target/arm/tms320dm320/kernel-dm320.c
|
|
|
|
target/arm/tms320dm320/spi-dm320.c
|
|
|
|
target/arm/tms320dm320/system-dm320.c
|
|
|
|
target/arm/tms320dm320/timer-dm320.c
|
|
|
|
target/arm/tms320dm320/uart-dm320.c
|
|
|
|
#endif /* CONFIG_CPU == DM320 */
|
|
|
|
|
2007-09-20 04:46:41 +00:00
|
|
|
#ifdef MROBE_500
|
2011-02-06 20:17:15 +00:00
|
|
|
target/arm/tms320dm320/mrobe-500/crt0-board.S
|
2007-09-30 08:57:49 +00:00
|
|
|
target/arm/tms320dm320/mrobe-500/adc-mr500.c
|
|
|
|
target/arm/tms320dm320/mrobe-500/ata-mr500.c
|
|
|
|
target/arm/tms320dm320/mrobe-500/backlight-mr500.c
|
|
|
|
target/arm/tms320dm320/mrobe-500/button-mr500.c
|
2007-09-30 16:29:21 +00:00
|
|
|
target/arm/tms320dm320/mrobe-500/dm320codec-mr500.c
|
2007-09-30 08:57:49 +00:00
|
|
|
target/arm/tms320dm320/mrobe-500/lcd-mr500.c
|
2007-10-21 23:12:17 +00:00
|
|
|
#if defined(HAVE_REMOTE_LCD)
|
|
|
|
target/arm/tms320dm320/mrobe-500/lcd-remote-mr500.c
|
|
|
|
#endif
|
2007-09-30 16:29:21 +00:00
|
|
|
target/arm/tms320dm320/mrobe-500/pcm-mr500.c
|
|
|
|
target/arm/tms320dm320/mrobe-500/powermgmt-mr500.c
|
2007-09-30 08:57:49 +00:00
|
|
|
target/arm/tms320dm320/mrobe-500/power-mr500.c
|
|
|
|
target/arm/tms320dm320/mrobe-500/usb-mr500.c
|
2007-09-20 04:46:41 +00:00
|
|
|
#endif /* MROBE_500 */
|
|
|
|
|
2008-05-14 18:55:19 +00:00
|
|
|
#ifdef CREATIVE_ZVx
|
2011-12-16 23:40:39 +00:00
|
|
|
drivers/lcd-memframe.c
|
2008-04-24 20:08:28 +00:00
|
|
|
target/arm/tms320dm320/creative-zvm/adc-creativezvm.c
|
|
|
|
target/arm/tms320dm320/creative-zvm/ata-creativezvm.c
|
2008-05-05 15:47:26 +00:00
|
|
|
target/arm/tms320dm320/creative-zvm/dma-creativezvm.c
|
|
|
|
target/arm/tms320dm320/creative-zvm/lcd-creativezvm.c
|
2008-04-24 20:08:28 +00:00
|
|
|
target/arm/tms320dm320/creative-zvm/pcm-creativezvm.c
|
|
|
|
target/arm/tms320dm320/creative-zvm/pic-creativezvm.c
|
|
|
|
target/arm/tms320dm320/creative-zvm/power-creativezvm.c
|
|
|
|
target/arm/tms320dm320/creative-zvm/powermgmt-creativezvm.c
|
|
|
|
target/arm/tms320dm320/creative-zvm/usb-creativezvm.c
|
2008-05-14 18:55:19 +00:00
|
|
|
#endif /* CREATIVE_ZVx */
|
2008-04-24 20:08:28 +00:00
|
|
|
|
2013-11-18 20:07:02 +00:00
|
|
|
#if defined(CREATIVE_ZEN) || defined(CREATIVE_ZENXFI) || defined(CREATIVE_ZENMOZAIC) \
|
2014-01-05 14:20:41 +00:00
|
|
|
|| defined(CREATIVE_ZENV) || defined(CREATIVE_ZENXFISTYLE)
|
|
|
|
#ifndef BOOTLOADER
|
2013-11-19 20:39:10 +00:00
|
|
|
target/arm/imx233/fmradio-imx233.c
|
2013-12-02 19:09:56 +00:00
|
|
|
#endif
|
2013-10-21 22:30:43 +00:00
|
|
|
target/arm/imx233/creative-zen/backlight-zen.c
|
2013-11-18 15:08:53 +00:00
|
|
|
# if defined(CREATIVE_ZEN) || defined(CREATIVE_ZENXFI)
|
2014-06-22 10:55:41 +00:00
|
|
|
drivers/lcd-memframe.c
|
2013-10-21 22:30:43 +00:00
|
|
|
target/arm/imx233/creative-zen/lcd-zen.c
|
2013-11-18 15:08:53 +00:00
|
|
|
# elif defined(CREATIVE_ZENMOZAIC)
|
|
|
|
target/arm/imx233/creative-zen/lcd-zenmozaic.c
|
2013-11-18 20:07:02 +00:00
|
|
|
# elif defined(CREATIVE_ZENV)
|
|
|
|
target/arm/imx233/creative-zen/lcd-zenv.c
|
2014-01-05 14:20:41 +00:00
|
|
|
# elif defined(CREATIVE_ZENXFISTYLE)
|
|
|
|
target/arm/imx233/creative-zen/lcd-zenxfistyle.c
|
2013-11-18 15:08:53 +00:00
|
|
|
#endif
|
2013-10-21 22:30:43 +00:00
|
|
|
target/arm/imx233/creative-zen/button-zen.c
|
|
|
|
target/arm/imx233/creative-zen/debug-zen.c
|
|
|
|
target/arm/imx233/creative-zen/power-zen.c
|
|
|
|
target/arm/imx233/creative-zen/powermgmt-zen.c
|
|
|
|
#endif
|
|
|
|
|
2012-05-19 14:09:46 +00:00
|
|
|
#ifdef CREATIVE_ZENXFI2
|
2013-12-02 19:09:56 +00:00
|
|
|
#ifndef BOOTLOADER
|
2013-11-19 20:39:10 +00:00
|
|
|
target/arm/imx233/fmradio-imx233.c
|
2013-12-02 19:09:56 +00:00
|
|
|
#endif
|
2012-05-19 14:09:46 +00:00
|
|
|
target/arm/imx233/creative-zenxfi2/backlight-zenxfi2.c
|
|
|
|
target/arm/imx233/creative-zenxfi2/lcd-zenxfi2.c
|
|
|
|
target/arm/imx233/creative-zenxfi2/button-zenxfi2.c
|
|
|
|
target/arm/imx233/creative-zenxfi2/debug-zenxfi2.c
|
|
|
|
target/arm/imx233/creative-zenxfi2/powermgmt-zenxfi2.c
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef CREATIVE_ZENXFI3
|
2013-12-02 19:09:56 +00:00
|
|
|
#ifndef BOOTLOADER
|
2013-11-19 20:39:10 +00:00
|
|
|
target/arm/imx233/fmradio-imx233.c
|
2013-12-02 19:09:56 +00:00
|
|
|
#endif
|
2016-05-30 15:24:38 +00:00
|
|
|
target/arm/imx233/creative-zenxfi3/mpr121-zenxfi3.c
|
2012-05-19 14:09:46 +00:00
|
|
|
target/arm/imx233/creative-zenxfi3/backlight-zenxfi3.c
|
|
|
|
target/arm/imx233/creative-zenxfi3/lcd-zenxfi3.c
|
|
|
|
target/arm/imx233/creative-zenxfi3/button-zenxfi3.c
|
|
|
|
target/arm/imx233/creative-zenxfi3/debug-zenxfi3.c
|
|
|
|
target/arm/imx233/creative-zenxfi3/powermgmt-zenxfi3.c
|
|
|
|
#endif
|
|
|
|
|
2013-09-25 12:29:00 +00:00
|
|
|
#if defined(SONY_NWZE360) || defined(SONY_NWZE370)
|
2013-12-02 19:09:56 +00:00
|
|
|
#ifndef BOOTLOADER
|
2013-11-19 20:39:10 +00:00
|
|
|
target/arm/imx233/fmradio-imx233.c
|
2013-12-02 19:09:56 +00:00
|
|
|
#endif
|
2013-09-25 12:29:00 +00:00
|
|
|
target/arm/imx233/sony-nwz/backlight-nwz.c
|
|
|
|
target/arm/imx233/sony-nwz/button-nwz.c
|
|
|
|
target/arm/imx233/sony-nwz/debug-nwz.c
|
|
|
|
# if defined(SONY_NWZE360)
|
|
|
|
target/arm/imx233/sony-nwz/lcd-nwze360.c
|
|
|
|
target/arm/imx233/sony-nwz/powermgmt-nwze360.c
|
|
|
|
# elif defined(SONY_NWZE370)
|
|
|
|
target/arm/imx233/sony-nwz/lcd-nwze370.c
|
|
|
|
target/arm/imx233/sony-nwz/powermgmt-nwze370.c
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
2011-11-16 14:08:01 +00:00
|
|
|
#ifdef SANSA_CONNECT
|
2011-12-16 23:40:39 +00:00
|
|
|
drivers/lcd-memframe.c
|
2011-11-16 14:08:01 +00:00
|
|
|
target/arm/tms320dm320/sdmmc-dm320.c
|
|
|
|
target/arm/tms320dm320/sansa-connect/crt0-board.S
|
|
|
|
target/arm/tms320dm320/sansa-connect/lcd-sansaconnect.c
|
|
|
|
target/arm/tms320dm320/sansa-connect/adc-sansaconnect.c
|
|
|
|
target/arm/tms320dm320/sansa-connect/power-sansaconnect.c
|
2021-06-05 07:22:27 +00:00
|
|
|
target/arm/tms320dm320/sansa-connect/tnetv105_cppi.c
|
|
|
|
target/arm/tms320dm320/sansa-connect/tnetv105_usb_drv.c
|
2011-11-16 14:08:01 +00:00
|
|
|
target/arm/tms320dm320/sansa-connect/usb-sansaconnect.c
|
|
|
|
target/arm/tms320dm320/sansa-connect/avr-sansaconnect.c
|
2021-07-10 06:56:32 +00:00
|
|
|
target/arm/tms320dm320/sansa-connect/cryptomem-sansaconnect.c
|
2011-11-16 14:08:01 +00:00
|
|
|
target/arm/tms320dm320/sansa-connect/backlight-sansaconnect.c
|
|
|
|
target/arm/tms320dm320/sansa-connect/pcm-sansaconnect.c
|
2021-07-02 10:02:26 +00:00
|
|
|
target/arm/tms320dm320/sansa-connect/wifi-sansaconnect.c
|
2011-11-16 14:08:01 +00:00
|
|
|
target/arm/tms320dm320/dma-dm320.c
|
|
|
|
#endif /* SANSA_CONNECT */
|
|
|
|
|
2008-01-09 07:24:43 +00:00
|
|
|
#ifdef MROBE_100
|
2008-12-17 04:38:53 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
drivers/synaptics-mep.c
|
2009-07-26 14:26:14 +00:00
|
|
|
target/arm/olympus/mrobe-100/lcd-remote-mr100.c
|
2008-12-17 04:38:53 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2008-02-03 18:15:39 +00:00
|
|
|
drivers/sw_i2c.c
|
2008-01-09 07:24:43 +00:00
|
|
|
target/arm/olympus/mrobe-100/backlight-mr100.c
|
|
|
|
target/arm/olympus/mrobe-100/button-mr100.c
|
|
|
|
target/arm/olympus/mrobe-100/lcd-mr100.c
|
2008-04-07 21:14:29 +00:00
|
|
|
target/arm/olympus/mrobe-100/lcd-as-mr100.S
|
2008-01-09 07:24:43 +00:00
|
|
|
target/arm/olympus/mrobe-100/power-mr100.c
|
|
|
|
target/arm/olympus/mrobe-100/powermgmt-mr100.c
|
|
|
|
#endif /* MROBE_100 */
|
|
|
|
|
2006-10-05 10:58:51 +00:00
|
|
|
#ifdef IPOD_4G
|
|
|
|
target/arm/ipod/backlight-4g_color.c
|
|
|
|
target/arm/ipod/button-clickwheel.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_4G */
|
2006-10-05 10:58:51 +00:00
|
|
|
|
|
|
|
#ifdef IPOD_COLOR
|
|
|
|
target/arm/ipod/backlight-4g_color.c
|
|
|
|
target/arm/ipod/button-clickwheel.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/ipod/lcd-as-color-nano.S
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_COLOR */
|
2006-10-05 10:58:51 +00:00
|
|
|
|
|
|
|
#ifdef IPOD_NANO
|
|
|
|
target/arm/ipod/backlight-nano_video.c
|
|
|
|
target/arm/ipod/button-clickwheel.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/ipod/lcd-as-color-nano.S
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_NANO */
|
2006-10-05 10:58:51 +00:00
|
|
|
|
|
|
|
#ifdef IPOD_VIDEO
|
|
|
|
target/arm/ipod/backlight-nano_video.c
|
|
|
|
target/arm/ipod/button-clickwheel.c
|
2007-10-22 00:37:50 +00:00
|
|
|
target/arm/ipod/video/lcd-as-video.S
|
2007-02-25 13:11:02 +00:00
|
|
|
target/arm/ipod/video/lcd-video.c
|
2011-07-19 20:55:59 +00:00
|
|
|
#ifndef BOOTLOADER
|
2011-07-19 20:48:16 +00:00
|
|
|
target/arm/ipod/video/battery-video.c
|
2011-07-19 20:55:59 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_VIDEO */
|
2006-10-05 10:58:51 +00:00
|
|
|
|
|
|
|
#ifdef IPOD_3G
|
|
|
|
target/arm/ipod/3g/backlight-3g.c
|
2007-07-27 12:05:54 +00:00
|
|
|
target/arm/ipod/button-1g-3g.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_3G */
|
2006-10-05 10:58:51 +00:00
|
|
|
|
2007-07-26 23:02:37 +00:00
|
|
|
#ifdef IPOD_1G2G
|
2007-07-27 12:05:54 +00:00
|
|
|
target/arm/ipod/1g2g/backlight-1g2g.c
|
2007-08-17 06:45:18 +00:00
|
|
|
target/arm/ipod/1g2g/powermgmt-1g2g.c
|
2007-07-27 12:05:54 +00:00
|
|
|
target/arm/ipod/button-1g-3g.c
|
2007-07-26 23:02:37 +00:00
|
|
|
#endif /* IPOD_1G2G */
|
|
|
|
|
2011-12-16 00:03:32 +00:00
|
|
|
#if defined(IPOD_MINI) || defined(IPOD_MINI2G)
|
2006-10-05 10:58:51 +00:00
|
|
|
target/arm/ipod/backlight-mini1g_mini2g.c
|
2011-12-16 00:03:32 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef IPOD_MINI
|
|
|
|
target/arm/ipod/button-mini1g.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_MINI */
|
2006-10-05 10:58:51 +00:00
|
|
|
|
|
|
|
#ifdef IPOD_MINI2G
|
|
|
|
target/arm/ipod/button-clickwheel.c
|
2006-11-08 16:13:04 +00:00
|
|
|
#endif /* IPOD_MINI2G */
|
2006-11-09 22:58:35 +00:00
|
|
|
|
2010-02-05 12:40:25 +00:00
|
|
|
#ifdef SANSA_CLIPPLUS
|
2010-03-19 15:13:29 +00:00
|
|
|
target/arm/as3525/sansa-clipplus/lcd-clip-plus.c
|
2010-02-05 12:40:25 +00:00
|
|
|
target/arm/as3525/sansa-clipplus/button-clip.c
|
|
|
|
target/arm/as3525/sansa-clipplus/backlight-clip.c
|
|
|
|
#ifndef BOOTLOADER
|
2010-05-21 12:48:15 +00:00
|
|
|
target/arm/as3525/sansa-clipplus/powermgmt-clipplus.c
|
2010-04-05 12:17:11 +00:00
|
|
|
target/arm/as3525/sansa-clipplus/lcd-as-clip-plus.S
|
2010-02-05 12:40:25 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
2010-02-24 17:06:39 +00:00
|
|
|
#endif /* SANSA_CLIPPLUS */
|
2010-02-05 12:40:25 +00:00
|
|
|
|
2009-12-31 19:15:20 +00:00
|
|
|
#ifdef SANSA_CLIPV2
|
2010-03-19 15:13:29 +00:00
|
|
|
target/arm/as3525/sansa-clipv2/lcd-clipv2.c
|
2011-12-13 23:12:21 +00:00
|
|
|
target/arm/as3525/button-clip.c
|
2010-03-29 12:43:50 +00:00
|
|
|
target/arm/as3525/sansa-clipv2/backlight-clipv2.c
|
2009-12-31 19:15:20 +00:00
|
|
|
#ifndef BOOTLOADER
|
2010-05-08 14:53:41 +00:00
|
|
|
target/arm/as3525/sansa-clipv2/powermgmt-clipv2.c
|
2010-04-05 12:17:11 +00:00
|
|
|
target/arm/as3525/sansa-clipv2/lcd-as-clipv2.S
|
2009-12-31 19:15:20 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
|
|
|
#endif /* SANSA_CLIPV2 */
|
|
|
|
|
2008-10-19 14:11:01 +00:00
|
|
|
#ifdef SANSA_CLIP
|
2010-03-19 15:13:29 +00:00
|
|
|
target/arm/as3525/sansa-clip/lcd-clip.c
|
2011-12-13 23:12:21 +00:00
|
|
|
target/arm/as3525/button-clip.c
|
2008-12-02 19:50:31 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/arm/as3525/sansa-clip/powermgmt-clip.c
|
2010-04-05 12:17:11 +00:00
|
|
|
target/arm/as3525/sansa-clip/lcd-as-clip.S
|
2008-12-02 19:50:31 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
2008-10-19 14:11:01 +00:00
|
|
|
#endif /* SANSA_CLIP */
|
|
|
|
|
|
|
|
#ifdef SANSA_E200V2
|
|
|
|
target/arm/as3525/sansa-e200v2/lcd-e200v2.c
|
2009-06-22 22:41:21 +00:00
|
|
|
target/arm/as3525/button-e200v2-fuze.c
|
2008-11-01 22:05:35 +00:00
|
|
|
target/arm/as3525/backlight-e200v2-fuze.c
|
2010-01-06 23:41:36 +00:00
|
|
|
target/arm/as3525/dbop-as3525.c
|
2008-12-02 19:50:31 +00:00
|
|
|
#ifndef BOOTLOADER
|
2009-03-22 19:06:54 +00:00
|
|
|
target/arm/as3525/sansa-e200v2/powermgmt-e200v2.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/as3525/lcd-as-e200v2-fuze-fuzev2.S
|
2008-12-02 19:50:31 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
2008-10-19 14:11:01 +00:00
|
|
|
#endif /* SANSA_E200V2 */
|
|
|
|
|
2008-12-24 04:10:18 +00:00
|
|
|
#ifdef SANSA_C200V2
|
|
|
|
target/arm/as3525/sansa-c200v2/button-c200v2.c
|
|
|
|
target/arm/as3525/sansa-c200v2/backlight-c200v2.c
|
2010-01-06 23:41:36 +00:00
|
|
|
target/arm/as3525/dbop-as3525.c
|
2008-12-24 04:10:18 +00:00
|
|
|
#ifndef BOOTLOADER
|
2010-01-17 14:19:31 +00:00
|
|
|
target/arm/as3525/sansa-c200v2/powermgmt-c200v2.c
|
2008-12-24 04:10:18 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
|
|
|
#endif /* SANSA_E200V2 */
|
|
|
|
|
2008-11-10 09:27:40 +00:00
|
|
|
#ifdef SANSA_M200V4
|
|
|
|
target/arm/as3525/sansa-m200v4/button-m200v4.c
|
2008-12-02 19:50:31 +00:00
|
|
|
#ifndef BOOTLOADER
|
2008-12-13 15:57:41 +00:00
|
|
|
target/arm/as3525/sansa-m200v4/powermgmt-m200v4.c
|
2008-12-02 19:50:31 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
2008-11-10 09:27:40 +00:00
|
|
|
#endif /* SANSA_M200V4 */
|
2008-10-19 14:11:01 +00:00
|
|
|
|
2008-11-01 10:29:23 +00:00
|
|
|
#ifdef SANSA_FUZE
|
2009-06-22 22:41:21 +00:00
|
|
|
target/arm/as3525/button-e200v2-fuze.c
|
2010-05-27 23:32:38 +00:00
|
|
|
target/arm/as3525/sansa-fuze/lcd-fuzev1.c
|
2008-11-01 22:05:35 +00:00
|
|
|
target/arm/as3525/backlight-e200v2-fuze.c
|
2010-01-06 23:41:36 +00:00
|
|
|
target/arm/as3525/dbop-as3525.c
|
2008-12-02 19:50:31 +00:00
|
|
|
#ifndef BOOTLOADER
|
2009-06-20 14:29:21 +00:00
|
|
|
target/arm/as3525/sansa-fuze/powermgmt-fuze.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/as3525/lcd-as-e200v2-fuze-fuzev2.S
|
2008-12-02 19:50:31 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
2008-11-01 10:29:23 +00:00
|
|
|
#endif /* SANSA_FUZE */
|
|
|
|
|
2010-02-25 13:26:46 +00:00
|
|
|
#ifdef SANSA_FUZEV2
|
|
|
|
target/arm/as3525/sansa-fuzev2/lcd-fuzev2.c
|
2010-03-16 22:38:57 +00:00
|
|
|
target/arm/as3525/sansa-fuzev2/backlight-fuzev2.c
|
|
|
|
target/arm/as3525/sansa-fuzev2/button-fuzev2.c
|
2010-04-05 12:01:44 +00:00
|
|
|
target/arm/as3525/dbop-as3525.c
|
2010-02-25 13:26:46 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/arm/as3525/sansa-fuzev2/powermgmt-fuzev2.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/as3525/lcd-as-e200v2-fuze-fuzev2.S
|
2010-02-25 13:26:46 +00:00
|
|
|
#endif /* !BOOTLOADER */
|
|
|
|
#endif /* SANSA_FUZEV2 */
|
|
|
|
|
2011-05-01 13:02:46 +00:00
|
|
|
#ifdef SANSA_FUZEPLUS
|
2013-12-02 19:09:56 +00:00
|
|
|
#ifndef BOOTLOADER
|
2011-07-09 17:14:05 +00:00
|
|
|
drivers/generic_i2c.c
|
2013-11-19 20:39:10 +00:00
|
|
|
target/arm/imx233/fmradio-imx233.c
|
2013-12-02 19:09:56 +00:00
|
|
|
#endif
|
2011-07-09 17:14:05 +00:00
|
|
|
target/arm/imx233/sansa-fuzeplus/fmradio-i2c-fuzeplus.c
|
2011-05-01 13:02:46 +00:00
|
|
|
target/arm/imx233/sansa-fuzeplus/backlight-fuzeplus.c
|
|
|
|
target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c
|
|
|
|
target/arm/imx233/sansa-fuzeplus/button-fuzeplus.c
|
2011-07-23 11:45:22 +00:00
|
|
|
target/arm/imx233/sansa-fuzeplus/debug-fuzeplus.c
|
2012-03-15 13:58:15 +00:00
|
|
|
target/arm/imx233/sansa-fuzeplus/powermgmt-fuzeplus.c
|
2011-05-01 13:02:46 +00:00
|
|
|
#endif
|
|
|
|
|
2011-08-27 16:21:19 +00:00
|
|
|
#ifdef SANSA_CLIPZIP
|
|
|
|
target/arm/as3525/sansa-clipzip/lcd-clipzip.c
|
|
|
|
target/arm/as3525/sansa-clipzip/button-clipzip.c
|
|
|
|
target/arm/as3525/sansa-clipzip/backlight-clipzip.c
|
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/arm/as3525/sansa-clipzip/powermgmt-clipzip.c
|
|
|
|
#endif /* !BOOTLOADER */
|
|
|
|
#endif /* SANSA_CLIPZIP */
|
|
|
|
|
2008-01-14 22:04:48 +00:00
|
|
|
#ifdef COWON_D2
|
2011-12-16 23:40:39 +00:00
|
|
|
drivers/lcd-memframe.c
|
2008-07-15 21:32:20 +00:00
|
|
|
drivers/nand_id.c
|
2008-04-04 20:24:08 +00:00
|
|
|
drivers/pcf50606.c
|
2009-10-10 17:35:02 +00:00
|
|
|
drivers/pcf50635.c
|
2009-10-15 20:13:29 +00:00
|
|
|
drivers/tsc200x.c
|
2008-01-14 22:04:48 +00:00
|
|
|
target/arm/tcc780x/adc-tcc780x.c
|
|
|
|
target/arm/tcc780x/system-tcc780x.c
|
2009-06-24 07:37:11 +00:00
|
|
|
target/arm/tcc780x/kernel-tcc780x.c
|
2009-08-12 19:14:46 +00:00
|
|
|
target/arm/tcc780x/sd-tcc780x.c
|
2008-01-14 22:04:48 +00:00
|
|
|
target/arm/tcc780x/cowond2/button-cowond2.c
|
2009-10-15 20:13:29 +00:00
|
|
|
target/arm/tcc780x/cowond2/touchscreen-cowond2.c
|
2008-01-14 22:04:48 +00:00
|
|
|
target/arm/tcc780x/cowond2/lcd-cowond2.c
|
|
|
|
target/arm/tcc780x/cowond2/power-cowond2.c
|
|
|
|
target/arm/tcc780x/cowond2/powermgmt-cowond2.c
|
2008-04-04 20:55:58 +00:00
|
|
|
target/arm/tcc780x/cowond2/backlight-cowond2.c
|
2008-11-30 15:43:15 +00:00
|
|
|
target/arm/usb-tcc.c
|
2008-01-14 22:04:48 +00:00
|
|
|
#ifndef BOOTLOADER
|
2008-03-23 19:56:11 +00:00
|
|
|
target/arm/tcc780x/timer-tcc780x.c
|
2008-01-14 22:04:48 +00:00
|
|
|
target/arm/wmcodec-telechips.c
|
|
|
|
target/arm/tcc780x/debug-tcc780x.c
|
2008-09-06 17:50:59 +00:00
|
|
|
target/arm/pcm-telechips.c
|
2008-06-22 18:48:22 +00:00
|
|
|
target/arm/tcc780x/cowond2/audio-cowond2.c
|
2008-01-14 22:04:48 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif /* COWON_D2 */
|
2008-06-27 23:24:34 +00:00
|
|
|
|
2008-09-17 23:22:11 +00:00
|
|
|
#ifdef MEIZU_M6SL
|
2008-06-27 23:24:34 +00:00
|
|
|
target/arm/s5l8700/meizu-m6sl/lcd-m6sl.c
|
2008-09-11 18:18:40 +00:00
|
|
|
drivers/qt1106.c
|
2008-06-27 23:24:34 +00:00
|
|
|
#endif /* MEIZU_M6SL */
|
2008-07-14 15:03:10 +00:00
|
|
|
|
2008-09-17 23:22:11 +00:00
|
|
|
#ifdef MEIZU_M6SP
|
2010-01-14 20:16:03 +00:00
|
|
|
target/arm/s5l8700/backlight-meizu.c
|
|
|
|
target/arm/s5l8700/power-meizu.c
|
|
|
|
target/arm/s5l8700/meizu-m6sp/button-m6sp.c
|
2008-09-17 23:22:11 +00:00
|
|
|
target/arm/s5l8700/meizu-m6sp/lcd-m6sp.c
|
|
|
|
#ifndef BOOTLOADER
|
2010-01-14 20:16:03 +00:00
|
|
|
drivers/generic_i2c.c
|
|
|
|
drivers/rtc/rtc_s35390a.c
|
|
|
|
target/arm/s5l8700/audio-meizu.c
|
|
|
|
target/arm/s5l8700/ftl-meizu.c
|
|
|
|
target/arm/s5l8700/nand-meizu.c
|
|
|
|
target/arm/s5l8700/fmradio-i2c-meizu.c
|
|
|
|
target/arm/s5l8700/powermgmt-meizu.c
|
|
|
|
target/arm/s5l8700/usb-s5l8700.c
|
2008-09-17 23:22:11 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif /* MEIZU_M6SP */
|
|
|
|
|
|
|
|
#ifdef MEIZU_M3
|
2009-06-23 18:11:03 +00:00
|
|
|
target/arm/s5l8700/backlight-meizu.c
|
2008-09-17 23:22:11 +00:00
|
|
|
target/arm/s5l8700/meizu-m3/lcd-m3.c
|
|
|
|
drivers/qt1106.c
|
|
|
|
#ifndef BOOTLOADER
|
2009-06-28 17:43:04 +00:00
|
|
|
target/arm/s5l8700/udacodec-meizu.c
|
2008-09-17 23:22:11 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif /* MEIZU_M3 */
|
|
|
|
|
2009-07-12 22:16:51 +00:00
|
|
|
#ifdef IPOD_NANO2G
|
2009-10-02 23:04:30 +00:00
|
|
|
target/arm/ipod/button-clickwheel.c
|
2010-11-13 12:05:53 +00:00
|
|
|
target/arm/s5l8700/postmortemstub.S
|
2009-07-17 22:40:36 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/backlight-nano2g.c
|
2009-07-12 22:16:51 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/lcd-nano2g.c
|
2010-12-12 15:23:20 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/lcd-asm-nano2g.S
|
2009-10-02 23:45:53 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/powermgmt-nano2g.c
|
|
|
|
target/arm/s5l8700/ipodnano2g/power-nano2g.c
|
2009-10-04 15:02:40 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/ftl-nano2g.c
|
|
|
|
target/arm/s5l8700/ipodnano2g/nand-nano2g.c
|
2009-10-05 20:21:33 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/pmu-nano2g.c
|
|
|
|
target/arm/s5l8700/ipodnano2g/rtc-nano2g.c
|
2016-07-31 01:48:11 +00:00
|
|
|
target/arm/s5l8700/usb-s5l8701.c
|
2016-05-12 01:16:27 +00:00
|
|
|
#ifdef HAVE_SERIAL
|
|
|
|
target/arm/uc870x.c
|
|
|
|
target/arm/s5l8700/uart-s5l8701.c
|
|
|
|
target/arm/s5l8700/ipodnano2g/serial-nano2g.c
|
|
|
|
#endif
|
2010-03-11 13:51:24 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/arm/s5l8700/ipodnano2g/audio-nano2g.c
|
2011-11-16 10:25:43 +00:00
|
|
|
target/arm/s5l8700/ipodnano2g/piezo-nano2g.c
|
2010-03-11 13:51:24 +00:00
|
|
|
#endif
|
2009-07-12 22:16:51 +00:00
|
|
|
#endif
|
|
|
|
|
2011-01-02 23:16:27 +00:00
|
|
|
#ifdef IPOD_6G
|
|
|
|
target/arm/ipod/button-clickwheel.c
|
2018-06-12 09:19:24 +00:00
|
|
|
target/arm/s5l8702/ipod6g/storage_ata-6g.c
|
|
|
|
target/arm/s5l8702/ipod6g/backlight-6g.c
|
|
|
|
target/arm/s5l8702/ipod6g/powermgmt-6g.c
|
|
|
|
target/arm/s5l8702/ipod6g/power-6g.c
|
2011-01-02 23:16:27 +00:00
|
|
|
target/arm/s5l8702/kernel-s5l8702.c
|
|
|
|
target/arm/s5l8702/system-s5l8702.c
|
2016-02-05 01:02:02 +00:00
|
|
|
target/arm/s5l8702/timer-s5l8702.c
|
iPod Classic: s5l8702 GPIO interrupt controller.
This patch implements a simple API to use the external interrupt
hardware present on s5l8702 (GPIO interrupt controller). This
GPIOIC has been fully tested using emcore apps.
Code is based on openiBoot project, there are a few modifications
to optimize space considering we will only use two or three external
interrupts. The API compiles and works, but has been never used,
therefore probably will need some changes to the final version.
External interrupts are necessary for jack remote+mic controller
(see iAP Interface Specifiction: Headphone Remote and Mic System),
this controller is located at I2C bus address 0x72, there is a IRQ
line for remote button press/release events routed to GPIO E6. At
this moment, the functionallity of this controller has been
extensively tested using emcore, getting a lot of information about
how it works. Microphone is already working on RB, jack accessory
detection and button events are work in progress.
PMU IRQ line is also routed to GPIO F3, it signals many events:
holdswitch, usb plug, wall adapter, low battery... The use of PMU
interrupts is the orthodox way of doing things, at this moment
there is no work done in this direction, there are a lot of PMU
events and i think it is a matter of discursion what to do and how.
Change-Id: Icc2e48965e664ca56c9518d84a81c9d9fdd31736
2014-11-10 03:35:51 +00:00
|
|
|
target/arm/s5l8702/gpio-s5l8702.c
|
iPod Classic: introduce PL080 DMA controller driver
Motivation:
This driver began as a set of functions to help to test and
experiment with different DMA configurations. It is cumbersome,
time consuming, and leads to mistakes to handle LLIs and DMA
registers dispersed along the code.
Later, i decided to adapt an old DMA queue driver written in the
past for a similar (scatter-gather) controller, all task/queue
code is based on the old driver.
Finally, some cleaning and dmac_ch_get_info() function was added
to complete RB needs.
Description:
- Generic, can be used by other targets including the same
controller. Not difficult to adapt for other similar
controllers if necesary.
- Easy to experiment and compare results using different
setups and/or queue algorithms:
Multi-controller and fully configurable from an unique place.
All task and LLI management is done by the driver, user only
has to (statically) allocate them.
- Two queue modes:
QUEUE_NORMAL: each task in the queue is launched using a new
DMA transfer once previous task is finished.
QUEUE_LINK: when a task is queued, it is linked with the last
queued task, creating a single continuous DMA transfer. New
tasks must be queued while the channel is running, otherwise
the continuous DMA transfer will be broken.
On Classic, QUEUE_LINK mode is needed for I2S continuous
transfers, QUEUE_NORMAL is used for LCD and could be useful
in the future for I2C or UART (non-blocking serial debug) if
necessary.
- Robust DMA transfer progress info (peak meter), needs final
testing, see below.
Technical details about DMA progress:
There are comments in the code related to the method actually
used (sequence method), it reads progress without halting the
DMA transfer. Althought the datasheet does not recommend to do
that, the sequence method seems to be robust, I ran tests calling
dmac_ch_get_info() millions of times and the results were always
as expected (tests done at 2:1 CPU/AHB clock ratio, no other
ratios were tried but probably sequence method will work for any
typical ratio).
This controller allows to halt the transfer and drain the DMAC
FIFO, DMA requests are ignored when the DMA channel is halted.
This method is not suitable for playback because FIFO is never
drained to I2S peripheral (who raises the DMA requests). This
method probably works for capture, the FIFO is drained to memory
before halting.
Another way is to disable (stop) the playback channel. When the
channel is disabled, all FIFO data is lost. It is unknown how much
the FIFO was filled when it was cleared, SRCADDR counter includes
the lost data, therefore the only useful information is LINK and
COUNT, that is the same information disponible when using the
sequence method. At this point we must procced in the same way as
in sequence method, in addition the playback channel should be
relaunched (configure + start) after calculating real SRCADDR.
The stop+relaunch method should work, it is a bit complicated,
and not valid for all peripheral FIFO configurations (depending
on stream rate). Moreover, due to the way the COUNT register is
implemented in HW, I suspect that this method will fail when
source and destination bus widths doesn't match. And more
important, it is not easy to garantize that no sample is lost
here or there, using the sequence method we can always be sure
that playback is ok.
Change-Id: Ib12a1e2992e2b6da4fc68431128c793a21b4b540
2014-12-06 17:33:11 +00:00
|
|
|
target/arm/s5l8702/pl080.c
|
2014-12-06 17:37:09 +00:00
|
|
|
target/arm/s5l8702/dma-s5l8702.c
|
2015-09-25 23:35:15 +00:00
|
|
|
target/arm/s5l8702/clocking-s5l8702.c
|
2018-06-12 09:19:24 +00:00
|
|
|
target/arm/s5l8702/ipod6g/lcd-6g.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/s5l8702/ipod6g/lcd-asm-6g.S
|
2018-06-12 09:19:24 +00:00
|
|
|
target/arm/s5l8702/ipod6g/piezo-6g.c
|
2011-01-02 23:16:27 +00:00
|
|
|
#if 0 //TODO
|
|
|
|
target/arm/s5l8702/postmortemstub.S
|
|
|
|
#endif
|
2018-06-12 09:19:24 +00:00
|
|
|
target/arm/s5l8702/ipod6g/pmu-6g.c
|
|
|
|
target/arm/s5l8702/ipod6g/rtc-6g.c
|
|
|
|
target/arm/s5l8702/ipod6g/adc-6g.c
|
2016-02-05 01:02:02 +00:00
|
|
|
#if !defined(BOOTLOADER) || defined(HAVE_BOOTLOADER_USB_MODE)
|
2016-07-31 01:40:32 +00:00
|
|
|
target/arm/s5l8702/usb-s5l8702.c
|
2016-02-05 01:02:02 +00:00
|
|
|
#endif
|
2014-12-06 21:33:39 +00:00
|
|
|
#ifdef HAVE_SERIAL
|
2016-05-12 04:47:38 +00:00
|
|
|
target/arm/uc870x.c
|
2014-12-06 21:33:39 +00:00
|
|
|
target/arm/s5l8702/uart-s5l8702.c
|
2018-06-12 09:19:24 +00:00
|
|
|
target/arm/s5l8702/ipod6g/serial-6g.c
|
2014-12-06 21:33:39 +00:00
|
|
|
#endif
|
2011-01-02 23:16:27 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/arm/s5l8702/debug-s5l8702.c
|
|
|
|
target/arm/s5l8702/pcm-s5l8702.c
|
2018-06-12 09:19:24 +00:00
|
|
|
target/arm/s5l8702/ipod6g/audio-6g.c
|
|
|
|
target/arm/s5l8702/ipod6g/cscodec-6g.c
|
2016-02-04 23:48:03 +00:00
|
|
|
#else
|
|
|
|
target/arm/s5l8702/spi-s5l8702.c
|
2016-02-04 23:50:53 +00:00
|
|
|
target/arm/s5l8702/crypto-s5l8702.c
|
2016-02-04 23:49:33 +00:00
|
|
|
target/arm/s5l8702/nor-s5l8702.c
|
2016-02-05 01:02:02 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif /* IPOD_6G */
|
2011-01-02 23:16:27 +00:00
|
|
|
|
2011-05-30 21:10:37 +00:00
|
|
|
#if CONFIG_CPU == RK27XX
|
2013-03-31 19:57:53 +00:00
|
|
|
target/arm/rk27xx/audio-rk27xx.c
|
2011-05-30 21:10:37 +00:00
|
|
|
target/arm/rk27xx/kernel-rk27xx.c
|
|
|
|
target/arm/rk27xx/system-rk27xx.c
|
|
|
|
target/arm/rk27xx/backlight-rk27xx.c
|
|
|
|
target/arm/rk27xx/adc-rk27xx.c
|
|
|
|
target/arm/rk27xx/sd-rk27xx.c
|
|
|
|
target/arm/rk27xx/ftl-rk27xx.c
|
2011-09-06 12:39:37 +00:00
|
|
|
target/arm/rk27xx/nand-rk27xx.c
|
|
|
|
target/arm/rk27xx/usb-rk27xx.c
|
2011-10-17 10:32:19 +00:00
|
|
|
target/arm/rk27xx/lcdif-rk27xx.c
|
2012-03-02 15:29:42 +00:00
|
|
|
target/arm/rk27xx/rkw-loader.c
|
2011-09-06 12:39:37 +00:00
|
|
|
#ifndef BOOTLOADER
|
2012-03-02 15:28:33 +00:00
|
|
|
target/arm/rk27xx/timer-rk27xx.c
|
|
|
|
target/arm/rk27xx/rolo_restart.S
|
2011-09-06 12:39:37 +00:00
|
|
|
target/arm/rk27xx/pcm-rk27xx.c
|
|
|
|
target/arm/rk27xx/debug-rk27xx.c
|
|
|
|
#endif
|
2011-05-30 21:10:37 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(RK27_GENERIC)
|
|
|
|
target/arm/rk27xx/rk27generic/button-rk27generic.c
|
2011-09-06 12:39:37 +00:00
|
|
|
target/arm/rk27xx/rk27generic/powermgmt-rk27generic.c
|
|
|
|
target/arm/rk27xx/rk27generic/power-rk27generic.c
|
2011-10-17 10:32:19 +00:00
|
|
|
target/arm/rk27xx/rk27generic/lcd-rk27generic.c
|
2013-03-31 19:57:53 +00:00
|
|
|
target/arm/rk27xx/rk27generic/fmradio-i2c-rk27generic.c
|
2011-05-30 21:10:37 +00:00
|
|
|
#endif
|
|
|
|
|
2009-03-11 22:12:23 +00:00
|
|
|
#if CONFIG_CPU == JZ4732
|
2008-07-15 17:17:01 +00:00
|
|
|
target/mips/ingenic_jz47xx/ata-nand-jz4740.c
|
2008-11-05 00:24:46 +00:00
|
|
|
target/mips/ingenic_jz47xx/ata-sd-jz4740.c
|
2009-02-09 10:02:38 +00:00
|
|
|
target/mips/ingenic_jz47xx/debug-jz4740.c
|
2009-06-01 21:00:31 +00:00
|
|
|
target/mips/ingenic_jz47xx/fmradio-i2c-jz4740.c
|
2008-08-09 23:31:38 +00:00
|
|
|
target/mips/ingenic_jz47xx/kernel-jz4740.c
|
2009-01-27 00:38:58 +00:00
|
|
|
target/mips/ingenic_jz47xx/i2c-jz4740.c
|
2008-11-05 00:24:46 +00:00
|
|
|
target/mips/ingenic_jz47xx/lcd-jz4740.c
|
2008-07-14 15:03:10 +00:00
|
|
|
target/mips/ingenic_jz47xx/system-jz4740.c
|
2008-08-26 21:48:49 +00:00
|
|
|
target/mips/ingenic_jz47xx/usb-jz4740.c
|
2009-03-20 23:15:38 +00:00
|
|
|
target/mips/ingenic_jz47xx/timer-jz4740.c
|
2009-03-01 16:52:57 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/mips/ingenic_jz47xx/codec-jz4740.c
|
|
|
|
target/mips/ingenic_jz47xx/pcm-jz4740.c
|
2009-03-11 22:12:23 +00:00
|
|
|
#endif /* BOOTLOADER */
|
2008-07-15 17:17:01 +00:00
|
|
|
drivers/nand_id.c
|
2009-03-11 22:12:23 +00:00
|
|
|
#endif /* CONFIG_CPU == JZ4732 */
|
2008-07-14 15:03:10 +00:00
|
|
|
|
2018-06-28 10:24:26 +00:00
|
|
|
#if CONFIG_CPU == JZ4760B
|
|
|
|
target/mips/ingenic_jz47xx/dma_acc-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/ata-nand-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/ata-sd-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/debug-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/kernel-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/i2c-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/lcd-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/system-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/usb-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/timer-jz4760.c
|
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/mips/ingenic_jz47xx/codec-jz4760.c
|
|
|
|
target/mips/ingenic_jz47xx/pcm-jz4760.c
|
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
drivers/nand_id.c
|
|
|
|
#endif /* CONFIG_CPU == JZ4760B */
|
|
|
|
|
2021-02-27 22:08:58 +00:00
|
|
|
#if CONFIG_CPU == X1000
|
|
|
|
target/mips/ingenic_x1000/aic-x1000.c
|
2022-03-03 19:56:26 +00:00
|
|
|
target/mips/ingenic_x1000/boot-x1000.c
|
2021-02-27 22:08:58 +00:00
|
|
|
target/mips/ingenic_x1000/clk-x1000.c
|
|
|
|
target/mips/ingenic_x1000/debug-x1000.c
|
|
|
|
target/mips/ingenic_x1000/dma-x1000.c
|
|
|
|
target/mips/ingenic_x1000/gpio-x1000.c
|
|
|
|
target/mips/ingenic_x1000/i2c-x1000.c
|
|
|
|
target/mips/ingenic_x1000/kernel-x1000.c
|
|
|
|
target/mips/ingenic_x1000/lcd-x1000.c
|
|
|
|
target/mips/ingenic_x1000/nand-x1000.c
|
|
|
|
target/mips/ingenic_x1000/pcm-x1000.c
|
|
|
|
target/mips/ingenic_x1000/pwm-x1000.c
|
|
|
|
target/mips/ingenic_x1000/sfc-x1000.c
|
|
|
|
target/mips/ingenic_x1000/system-x1000.c
|
|
|
|
target/mips/ingenic_x1000/timer-x1000.c
|
2021-06-04 23:12:01 +00:00
|
|
|
#ifndef USB_NONE
|
2021-04-21 00:47:02 +00:00
|
|
|
target/mips/ingenic_x1000/usb-x1000.c
|
2021-06-04 23:12:01 +00:00
|
|
|
#endif
|
2021-02-27 22:08:58 +00:00
|
|
|
#if (CONFIG_STORAGE & (STORAGE_SD|STORAGE_MMC|STORAGE_ATA))
|
|
|
|
target/mips/ingenic_x1000/msc-x1000.c
|
|
|
|
#endif
|
|
|
|
#if (CONFIG_STORAGE & STORAGE_SD)
|
|
|
|
target/mips/ingenic_x1000/sd-x1000.c
|
|
|
|
#endif
|
2021-07-11 01:32:05 +00:00
|
|
|
#ifdef BOOTLOADER
|
|
|
|
target/mips/ingenic_x1000/installer-x1000.c
|
2021-05-11 12:28:43 +00:00
|
|
|
target/mips/ingenic_x1000/spl-start.S
|
2021-04-07 21:11:01 +00:00
|
|
|
target/mips/ingenic_x1000/spl-x1000.c
|
2021-05-11 12:28:43 +00:00
|
|
|
common/ucl_decompress.c
|
2021-07-11 01:32:05 +00:00
|
|
|
#endif
|
2022-01-11 13:58:03 +00:00
|
|
|
#if (defined(HAVE_X1000_ICODEC_PLAY) || defined(HAVE_X1000_ICODEC_REC)) \
|
|
|
|
&& !defined(BOOTLOADER)
|
|
|
|
drivers/audio/x1000-codec.c
|
|
|
|
#endif
|
2021-02-27 22:08:58 +00:00
|
|
|
#endif /* CONFIG_CPU == X1000 */
|
|
|
|
|
2009-06-20 10:54:13 +00:00
|
|
|
#if defined(ONDA_VX747) || defined(ONDA_VX747P) || defined(ONDA_VX777)
|
2009-03-09 21:26:39 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx747/backlight-onda_vx7X7.c
|
2008-07-14 15:03:10 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c
|
2009-01-27 00:38:58 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx747/power-onda_vx747.c
|
2009-03-11 22:12:23 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c
|
2009-03-09 21:26:39 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx747/speaker-onda_vx747.c
|
2009-06-20 10:54:13 +00:00
|
|
|
#endif /* ONDA_VX747 || ONDA_VX747P || ONDA_VX777 */
|
2008-09-05 15:09:40 +00:00
|
|
|
|
2009-03-11 22:12:23 +00:00
|
|
|
#ifdef ONDA_VX767
|
2009-03-09 21:26:39 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx747/backlight-onda_vx7X7.c
|
|
|
|
target/mips/ingenic_jz47xx/onda_vx767/button-onda_vx767.c
|
|
|
|
target/mips/ingenic_jz47xx/onda_vx767/lcd-onda_vx767.c
|
2009-03-11 22:12:23 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx767/power-onda_vx767.c
|
2009-03-09 21:26:39 +00:00
|
|
|
target/mips/ingenic_jz47xx/onda_vx767/sadc-onda_vx767.c
|
2009-03-11 22:12:23 +00:00
|
|
|
#endif /* ONDA_VX767 */
|
2009-03-30 12:20:47 +00:00
|
|
|
|
2018-06-28 10:24:26 +00:00
|
|
|
#if defined(XDUOO_X3)
|
|
|
|
target/mips/ingenic_jz47xx/xduoo_x3/backlight-xduoo_x3.c
|
|
|
|
target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c
|
|
|
|
target/mips/ingenic_jz47xx/xduoo_x3/power-xduoo_x3.c
|
|
|
|
target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c
|
|
|
|
#endif /* XDUOO_X3 */
|
|
|
|
|
2021-02-27 22:08:58 +00:00
|
|
|
#if defined(FIIO_M3K)
|
|
|
|
target/mips/ingenic_x1000/fiiom3k/audiohw-fiiom3k.c
|
|
|
|
target/mips/ingenic_x1000/fiiom3k/backlight-fiiom3k.c
|
|
|
|
target/mips/ingenic_x1000/fiiom3k/button-fiiom3k.c
|
|
|
|
target/mips/ingenic_x1000/fiiom3k/lcd-fiiom3k.c
|
|
|
|
target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c
|
2022-03-04 16:30:33 +00:00
|
|
|
target/mips/ingenic_x1000/spl-nand-x1000.c
|
2021-02-27 22:08:58 +00:00
|
|
|
#endif /* FIIO_M3K */
|
|
|
|
|
2021-05-23 16:30:58 +00:00
|
|
|
#if defined(SHANLING_Q1)
|
|
|
|
target/mips/ingenic_x1000/shanlingq1/audiohw-shanlingq1.c
|
|
|
|
target/mips/ingenic_x1000/shanlingq1/backlight-shanlingq1.c
|
|
|
|
target/mips/ingenic_x1000/shanlingq1/button-shanlingq1.c
|
|
|
|
target/mips/ingenic_x1000/shanlingq1/lcd-shanlingq1.c
|
|
|
|
target/mips/ingenic_x1000/shanlingq1/power-shanlingq1.c
|
2022-03-04 16:30:33 +00:00
|
|
|
target/mips/ingenic_x1000/spl-nand-x1000.c
|
2021-05-23 16:30:58 +00:00
|
|
|
#endif /* SHANLING_Q1 */
|
|
|
|
|
2021-06-26 17:07:11 +00:00
|
|
|
#if defined(EROS_QN)
|
|
|
|
target/mips/ingenic_x1000/erosqnative/audiohw-erosqnative.c
|
|
|
|
target/mips/ingenic_x1000/erosqnative/backlight-erosqnative.c
|
|
|
|
target/mips/ingenic_x1000/erosqnative/button-erosqnative.c
|
|
|
|
target/mips/ingenic_x1000/erosqnative/lcd-erosqnative.c
|
|
|
|
target/mips/ingenic_x1000/erosqnative/power-erosqnative.c
|
2022-03-04 16:30:33 +00:00
|
|
|
target/mips/ingenic_x1000/spl-nand-x1000.c
|
2021-06-26 17:07:11 +00:00
|
|
|
#endif /* EROS_QN */
|
|
|
|
|
2009-03-30 12:20:47 +00:00
|
|
|
#if defined(LYRE_PROTO1)
|
|
|
|
target/arm/at91sam/lyre_proto1/adc-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/backlight-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/button-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/crt0.S
|
|
|
|
target/arm/at91sam/lyre_proto1/debug-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/kernel-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/lcd-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/system-lyre_proto1.c
|
|
|
|
target/arm/at91sam/lyre_proto1/timer-lyre_proto1.c
|
|
|
|
#endif
|
2009-05-25 21:10:45 +00:00
|
|
|
|
2009-10-19 18:14:27 +00:00
|
|
|
#if defined(MINI2440)
|
2011-12-15 23:07:11 +00:00
|
|
|
drivers/lcd-memframe.c
|
2009-10-22 17:45:02 +00:00
|
|
|
target/arm/s3c2440/dma-s3c2440.c
|
|
|
|
target/arm/s3c2440/sd-s3c2440.c
|
|
|
|
target/arm/s3c2440/uart-s3c2440.c
|
2009-10-19 18:14:27 +00:00
|
|
|
target/arm/s3c2440/mini2440/backlight-mini2440.c
|
|
|
|
target/arm/s3c2440/mini2440/button-mini2440.c
|
|
|
|
target/arm/s3c2440/mini2440/led-mini2440.c
|
|
|
|
target/arm/s3c2440/mini2440/power-mini2440.c
|
2009-10-27 20:25:40 +00:00
|
|
|
target/arm/s3c2440/mini2440/touchscreen-mini2440.c
|
2009-10-19 18:14:27 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/arm/s3c2440/mini2440/powermgmt-mini2440.c
|
2009-10-26 18:16:58 +00:00
|
|
|
target/arm/s3c2440/mini2440/pcm-mini2440.c
|
2009-10-19 18:14:27 +00:00
|
|
|
#endif
|
|
|
|
#endif /* MINI2440 */
|
|
|
|
|
2011-12-15 21:56:52 +00:00
|
|
|
#if defined(SAMSUNG_YH820) || defined(SAMSUNG_YH920) || defined(SAMSUNG_YH925)
|
2009-05-25 21:10:45 +00:00
|
|
|
target/arm/samsung/akcodec-yh82x_yh92x.c
|
|
|
|
target/arm/samsung/button-yh82x_yh92x.c
|
|
|
|
target/arm/samsung/power-yh82x_yh92x.c
|
2011-12-15 21:56:52 +00:00
|
|
|
#endif /* SAMSUNG_YH820 || SAMSUNG_YH920 || SAMSUNG_YH925 */
|
|
|
|
|
|
|
|
#ifdef SAMSUNG_YH820
|
2009-05-25 21:10:45 +00:00
|
|
|
target/arm/samsung/yh820/backlight-yh820.c
|
|
|
|
target/arm/samsung/yh820/lcd-yh820.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/samsung/yh820/lcd-as-yh820.S
|
2009-05-25 21:10:45 +00:00
|
|
|
target/arm/samsung/yh820/powermgmt-yh820.c
|
|
|
|
#endif /* SAMSUNG_YH820 */
|
|
|
|
|
|
|
|
#ifdef SAMSUNG_YH920
|
|
|
|
target/arm/samsung/yh920/backlight-yh920.c
|
|
|
|
target/arm/samsung/yh920/lcd-yh920.c
|
2009-10-02 17:51:05 +00:00
|
|
|
target/arm/samsung/yh920/lcd-as-yh920.S
|
2009-05-25 21:10:45 +00:00
|
|
|
target/arm/samsung/yh920/powermgmt-yh920.c
|
2014-06-17 23:13:15 +00:00
|
|
|
target/arm/samsung/fmradio-yh92x.c
|
2009-05-25 21:10:45 +00:00
|
|
|
#endif /* SAMSUNG_YH920 */
|
|
|
|
|
|
|
|
#ifdef SAMSUNG_YH925
|
|
|
|
target/arm/samsung/yh925/backlight-yh925.c
|
|
|
|
target/arm/samsung/yh925/lcd-yh925.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/samsung/yh925/lcd-as-yh925.S
|
2009-05-25 21:10:45 +00:00
|
|
|
target/arm/samsung/yh925/powermgmt-yh925.c
|
|
|
|
#endif /* SAMSUNG_YH925 */
|
2009-07-29 20:42:02 +00:00
|
|
|
|
|
|
|
#ifdef SAMSUNG_YPS3
|
2009-08-01 14:58:52 +00:00
|
|
|
target/arm/s5l8700/yps3/button-yps3.c
|
2009-07-29 20:42:02 +00:00
|
|
|
target/arm/s5l8700/yps3/lcd-yps3.c
|
|
|
|
target/arm/s5l8700/yps3/fmradio-i2c-yps3.c
|
|
|
|
target/arm/s5l8700/yps3/backlight-yps3.c
|
2009-08-09 16:12:36 +00:00
|
|
|
target/arm/s5l8700/yps3/nand-yps3.c
|
2009-07-29 20:42:02 +00:00
|
|
|
target/arm/s5l8700/yps3/power-yps3.c
|
|
|
|
#endif /* SAMSUNG_YPS3 */
|
|
|
|
|
2010-01-18 19:05:20 +00:00
|
|
|
#ifdef PBELL_VIBE500
|
|
|
|
drivers/synaptics-mep.c
|
|
|
|
target/arm/pbell/vibe500/lcd-vibe500.c
|
|
|
|
target/arm/pbell/vibe500/button-vibe500.c
|
|
|
|
target/arm/pbell/vibe500/power-vibe500.c
|
|
|
|
target/arm/pbell/vibe500/backlight-vibe500.c
|
2022-10-13 15:03:53 +00:00
|
|
|
target/arm/pbell/vibe500/lcd-as-vibe500.S
|
2010-01-18 19:05:20 +00:00
|
|
|
target/arm/pbell/vibe500/powermgmt-vibe500.c
|
|
|
|
#endif
|
|
|
|
|
2011-12-15 20:39:55 +00:00
|
|
|
#if defined(MPIO_HD200) || defined(MPIO_HD300)
|
2011-12-15 20:59:05 +00:00
|
|
|
target/coldfire/wmcodec-coldfire.c
|
2010-11-12 21:52:29 +00:00
|
|
|
target/coldfire/mpio/system-mpio.c
|
|
|
|
target/coldfire/mpio/power-mpio.c
|
|
|
|
target/coldfire/mpio/backlight-mpio.c
|
|
|
|
target/coldfire/mpio/usb-mpio.c
|
|
|
|
target/coldfire/mpio/ata-mpio.c
|
|
|
|
target/coldfire/mpio/adc-mpio.c
|
2010-04-26 21:40:00 +00:00
|
|
|
#ifndef BOOTLOADER
|
|
|
|
target/coldfire/mpio/audio-mpio.c
|
2010-05-04 11:14:03 +00:00
|
|
|
target/coldfire/mpio/fmradio_i2c-mpio.c
|
2010-04-26 21:40:00 +00:00
|
|
|
#endif /* BOOTLOADER */
|
|
|
|
#endif
|
2010-08-02 20:34:47 +00:00
|
|
|
|
2011-12-15 20:45:03 +00:00
|
|
|
#ifdef MPIO_HD200
|
2011-12-15 20:39:55 +00:00
|
|
|
target/coldfire/mpio/hd200/button-hd200.c
|
|
|
|
target/coldfire/mpio/hd200/lcd-hd200.c
|
|
|
|
target/coldfire/mpio/hd200/lcd-as-hd200.S
|
|
|
|
target/coldfire/mpio/hd200/powermgmt-hd200.c
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef MPIO_HD300
|
2010-11-26 23:28:08 +00:00
|
|
|
target/coldfire/mpio/hd300/button-hd300.c
|
|
|
|
target/coldfire/mpio/hd300/lcd-hd300.c
|
|
|
|
target/coldfire/mpio/hd300/lcd-as-hd300.S
|
|
|
|
target/coldfire/mpio/hd300/powermgmt-hd300.c
|
2011-12-15 17:50:29 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(HM60X)
|
|
|
|
target/arm/rk27xx/hm60x/button-hm60x.c
|
|
|
|
target/arm/rk27xx/hm60x/powermgmt-hm60x.c
|
|
|
|
target/arm/rk27xx/hm60x/power-hm60x.c
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(HM801)
|
|
|
|
target/arm/rk27xx/hm801/button-hm801.c
|
|
|
|
target/arm/rk27xx/hm801/powermgmt-hm801.c
|
|
|
|
target/arm/rk27xx/hm801/power-hm801.c
|
2010-11-26 23:28:08 +00:00
|
|
|
#endif
|
2010-08-02 20:34:47 +00:00
|
|
|
|
2013-06-02 19:03:26 +00:00
|
|
|
#if defined(MA9) || defined(MA9C) || defined(MA8) || defined(MA8C)
|
2013-04-15 05:51:22 +00:00
|
|
|
target/arm/rk27xx/ma/button-ma.c
|
|
|
|
target/arm/rk27xx/ma/powermgmt-ma.c
|
|
|
|
target/arm/rk27xx/ma/power-ma.c
|
|
|
|
drivers/pca9555.c
|
|
|
|
target/arm/rk27xx/ma/pca9555-ma.c
|
|
|
|
target/arm/rk27xx/ma/audio-ma.c
|
|
|
|
#endif
|
|
|
|
|
2013-11-16 14:21:00 +00:00
|
|
|
#if defined(IHIFI760) || defined(IHIFI960)
|
|
|
|
target/arm/rk27xx/ihifi/button-ihifi.c
|
|
|
|
target/arm/rk27xx/ihifi/power-ihifi.c
|
|
|
|
#if defined(IHIFI760)
|
|
|
|
target/arm/rk27xx/ihifi/powermgmt-ihifi760.c
|
|
|
|
#else
|
|
|
|
target/arm/rk27xx/ihifi/powermgmt-ihifi960.c
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2018-06-29 20:09:28 +00:00
|
|
|
#if defined(IHIFI770) || defined(IHIFI770C) || defined(IHIFI800)
|
|
|
|
target/arm/rk27xx/ihifi2/button-ihifi.c
|
|
|
|
target/arm/rk27xx/ihifi2/power-ihifi.c
|
|
|
|
#if defined(IHIFI770)
|
|
|
|
target/arm/rk27xx/ihifi2/powermgmt-ihifi770.c
|
|
|
|
target/arm/rk27xx/ihifi2/audio-ihifi770.c
|
|
|
|
#elif defined(IHIFI770C)
|
|
|
|
target/arm/rk27xx/ihifi2/powermgmt-ihifi770c.c
|
|
|
|
target/arm/rk27xx/ihifi2/audio-ihifi770.c
|
|
|
|
#elif defined(IHIFI800)
|
|
|
|
target/arm/rk27xx/ihifi2/powermgmt-ihifi800.c
|
|
|
|
target/arm/rk27xx/ihifi2/audio-ihifi800.c
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2010-08-02 20:34:47 +00:00
|
|
|
#if (CONFIG_PLATFORM & PLATFORM_ANDROID)
|
2012-01-18 07:19:14 +00:00
|
|
|
target/hosted/kernel-unix.c
|
2012-01-19 06:59:28 +00:00
|
|
|
target/hosted/filesystem-unix.c
|
2012-01-20 18:21:20 +00:00
|
|
|
target/hosted/lc-unix.c
|
2010-08-02 20:34:47 +00:00
|
|
|
target/hosted/android/lcd-android.c
|
|
|
|
target/hosted/android/button-android.c
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
#ifdef DEBUG
|
|
|
|
target/hosted/android/debug-android.c
|
|
|
|
#endif
|
2010-08-02 20:34:47 +00:00
|
|
|
target/hosted/android/pcm-android.c
|
2010-09-01 23:36:15 +00:00
|
|
|
target/hosted/android/powermgmt-android.c
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
target/hosted/android/system-android.c
|
2010-11-12 21:04:13 +00:00
|
|
|
target/hosted/android/telephony-android.c
|
2010-08-16 20:12:06 +00:00
|
|
|
#ifdef APPLICATION
|
|
|
|
target/hosted/android/app/button-application.c
|
|
|
|
#endif
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
drivers/audio/android.c
|
2014-08-30 11:15:53 +00:00
|
|
|
#endif
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
|
|
|
|
#if defined(DX50) || defined(DX90)
|
|
|
|
drivers/lcd-memframe.c
|
|
|
|
target/hosted/kernel-unix.c
|
|
|
|
target/hosted/filesystem-unix.c
|
|
|
|
target/hosted/lc-unix.c
|
|
|
|
target/hosted/ibasso/audiohw-ibasso.c
|
|
|
|
target/hosted/ibasso/backlight-ibasso.c
|
|
|
|
target/hosted/ibasso/button-ibasso.c
|
2021-03-10 23:10:00 +00:00
|
|
|
target/hosted/power-linux.c
|
2014-08-30 11:15:53 +00:00
|
|
|
#ifdef DEBUG
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
target/hosted/ibasso/debug-ibasso.c
|
|
|
|
#endif
|
2015-01-30 21:47:30 +00:00
|
|
|
target/hosted/ibasso/governor-ibasso.c
|
iBasso DX50/DX90: Major code cleanup and reorganization.
Reorganization
- Separated iBasso devices from PLATFORM_ANDROID. These are now standlone
hosted targets. Most device specific code is in the
firmware/target/hosted/ibasso directory.
- No dependency on Android SDK, only the Android NDK is needed.
32 bit Android NDK and Android API Level 16.
- Separate implementation for each device where feasible.
Code cleanup
- Rewrite of existing code, from simple reformat to complete reimplementation.
- New backlight interface, seperating backlight from touchscreen.
- Rewrite of device button handler, removing unneeded code and fixing memory
leaks.
- New Debug messages interface logging to Android adb logcat (DEBUGF, panicf,
logf).
- Rewrite of lcd device handler, removing unneeded code and fixing memory leaks.
- Rewrite of audiohw device handler/pcm interface, removing unneeded code and
fixing memory leaks, enabling 44.1/48kHz pthreaded playback.
- Rewrite of power and powermng, proper shutdown, using batterylog results
(see http://gerrit.rockbox.org/r/#/c/1047/).
- Rewrite of configure (Android NDK) and device specific config.
- Rewrite of the Android NDK specific Makefile.
Misc
- All plugins/games/demos activated.
- Update tinyalsa to latest from https://github.com/tinyalsa/tinyalsa.
Includes
- http://gerrit.rockbox.org/r/#/c/993/
- http://gerrit.rockbox.org/r/#/c/1010/
- http://gerrit.rockbox.org/r/#/c/1035/
Does not include http://gerrit.rockbox.org/r/#/c/1007/ due to new backlight
interface and new option for hold switch, touchscreen, physical button
interaction.
Rockbox needs the iBasso DX50/DX90 loader for startup, see
http://gerrit.rockbox.org/r/#/c/1099/
The loader expects Rockbox to be installed in /mnt/sdcard/.rockbox/. If
/mnt/sdcard/ is accessed as USB mass storage device, Rockbox will exit
gracefully and the loader will restart Rockbox on USB disconnect.
Tested on iBasso DX50.
Compiled (not tested) for iBasso DX90.
Compiled (not tested) for PLATFORM_ANDROID.
Change-Id: I5f5e22e68f5b4cf29c28e2b40b2c265f2beb7ab7
2015-02-02 20:44:29 +00:00
|
|
|
target/hosted/ibasso/hostfs-ibasso.c
|
|
|
|
target/hosted/ibasso/lcd-ibasso.c
|
|
|
|
target/hosted/ibasso/pcm-ibasso.c
|
|
|
|
target/hosted/ibasso/power-ibasso.c
|
|
|
|
target/hosted/ibasso/powermgmt-ibasso.c
|
|
|
|
target/hosted/ibasso/sysfs-ibasso.c
|
|
|
|
target/hosted/ibasso/system-ibasso.c
|
|
|
|
target/hosted/ibasso/usb-ibasso.c
|
|
|
|
target/hosted/ibasso/vold-ibasso.c
|
|
|
|
target/hosted/ibasso/tinyalsa/mixer.c
|
|
|
|
target/hosted/ibasso/tinyalsa/pcm.c
|
|
|
|
#ifdef DX50
|
|
|
|
target/hosted/ibasso/dx50/audiohw-dx50.c
|
|
|
|
target/hosted/ibasso/dx50/button-dx50.c
|
|
|
|
#endif
|
|
|
|
#ifdef DX90
|
|
|
|
target/hosted/ibasso/dx90/audiohw-dx90.c
|
|
|
|
target/hosted/ibasso/dx90/button-dx90.c
|
2014-08-30 11:15:53 +00:00
|
|
|
#endif
|
2010-08-02 20:34:47 +00:00
|
|
|
#endif
|
2011-10-17 10:32:19 +00:00
|
|
|
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
#else /* defined(SIMULATOR) */
|
|
|
|
|
|
|
|
#ifdef WIN32
|
|
|
|
asm/mempcpy.c
|
|
|
|
target/hosted/filesystem-win32.c
|
2018-11-05 12:01:55 +00:00
|
|
|
#else /* !WIN32 */
|
Rewrite filesystem code (WIP)
This patch redoes the filesystem code from the FAT driver up to the
clipboard code in onplay.c.
Not every aspect of this is finished therefore it is still "WIP". I
don't wish to do too much at once (haha!). What is left to do is get
dircache back in the sim and find an implementation for the dircache
indicies in the tagcache and playlist code or do something else that
has the same benefit. Leaving these out for now does not make anything
unusable. All the basics are done.
Phone app code should probably get vetted (and app path handling
just plain rewritten as environment expansions); the SDL app and
Android run well.
Main things addressed:
1) Thread safety: There is none right now in the trunk code. Most of
what currently works is luck when multiple threads are involved or
multiple descriptors to the same file are open.
2) POSIX compliance: Many of the functions behave nothing like their
counterparts on a host system. This leads to inconsistent code or very
different behavior from native to hosted. One huge offender was
rename(). Going point by point would fill a book.
3) Actual running RAM usage: Many targets will use less RAM and less
stack space (some more RAM because I upped the number of cache buffers
for large memory). There's very little memory lying fallow in rarely-used
areas (see 'Key core changes' below). Also, all targets may open the same
number of directory streams whereas before those with less than 8MB RAM
were limited to 8, not 12 implying those targets will save slightly
less.
4) Performance: The test_disk plugin shows markedly improved performance,
particularly in the area of (uncached) directory scanning, due partly to
more optimal directory reading and to a better sector cache algorithm.
Uncached times tend to be better while there is a bit of a slowdown in
dircache due to it being a bit heavier of an implementation. It's not
noticeable by a human as far as I can say.
Key core changes:
1) Files and directories share core code and data structures.
2) The filesystem code knows which descriptors refer to same file.
This ensures that changes from one stream are appropriately reflected
in every open descriptor for that file (fileobj_mgr.c).
3) File and directory cache buffers are borrowed from the main sector
cache. This means that when they are not in use by a file, they are not
wasted, but used for the cache. Most of the time, only a few of them
are needed. It also means that adding more file and directory handles
is less expensive. All one must do in ensure a large enough cache to
borrow from.
4) Relative path components are supported and the namespace is unified.
It does not support full relative paths to an implied current directory;
what is does support is use of "." and "..". Adding the former would
not be very difficult. The namespace is unified in the sense that
volumes may be specified several times along with relative parts, e.g.:
"/<0>/foo/../../<1>/bar" :<=> "/<1>/bar".
5) Stack usage is down due to sharing of data, static allocation and
less duplication of strings on the stack. This requires more
serialization than I would like but since the number of threads is
limited to a low number, the tradoff in favor of the stack seems
reasonable.
6) Separates and heirarchicalizes (sic) the SIM and APP filesystem
code. SIM path and volume handling is just like the target. Some
aspects of the APP file code get more straightforward (e.g. no path
hashing is needed).
Dircache:
Deserves its own section. Dircache is new but pays homage to the old.
The old one was not compatible and so it, since it got redone, does
all the stuff it always should have done such as:
1) It may be update and used at any time during the build process.
No longer has one to wait for it to finish building to do basic file
management (create, remove, rename, etc.).
2) It does not need to be either fully scanned or completely disabled;
it can be incomplete (i.e. overfilled, missing paths), still be
of benefit and be correct.
3) Handles mounting and dismounting of individual volumes which means
a full rebuild is not needed just because you pop a new SD card in the
slot. Now, because it reuses its freed entry data, may rebuild only
that volume.
4) Much more fundamental to the file code. When it is built, it is
the keeper of the master file list whether enabled or not ("disabled"
is just a state of the cache). Its must always to ready to be started
and bind all streams opened prior to being enabled.
5) Maintains any short filenames in OEM format which means that it does
not need to be rebuilt when changing the default codepage.
Miscellaneous Compatibility:
1) Update any other code that would otherwise not work such as the
hotswap mounting code in various card drivers.
2) File management: Clipboard needed updating because of the behavioral
changes. Still needs a little more work on some finer points.
3) Remove now-obsolete functionality such as the mutex's "no preempt"
flag (which was only for the prior FAT driver).
4) struct dirinfo uses time_t rather than raw FAT directory entry
time fields. I plan to follow up on genericizing everything there
(i.e. no FAT attributes).
5) unicode.c needed some redoing so that the file code does not try
try to load codepages during a scan, which is actually a problem with
the current code. The default codepage, if any is required, is now
kept in RAM separarately (bufalloced) from codepages specified to
iso_decode() (which must not be bufalloced because the conversion
may be done by playback threads).
Brings with it some additional reusable core code:
1) Revised file functions: Reusable code that does things such as
safe path concatenation and parsing without buffer limitations or
data duplication. Variants that copy or alter the input path may be
based off these.
To do:
1) Put dircache functionality back in the sim. Treating it internally
as a different kind of file system seems the best approach at this
time.
2) Restore use of dircache indexes in the playlist and database or
something effectively the same. Since the cache doesn't have to be
complete in order to be used, not getting a hit on the cache doesn't
unambiguously say if the path exists or not.
Change-Id: Ia30f3082a136253e3a0eae0784e3091d138915c8
Reviewed-on: http://gerrit.rockbox.org/566
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2013-08-06 02:02:45 +00:00
|
|
|
target/hosted/filesystem-unix.c
|
|
|
|
#endif /* WIN32 */
|
|
|
|
target/hosted/sdl/load_code-sdl.c
|
|
|
|
#ifdef HAVE_SDL_THREADS
|
|
|
|
target/hosted/sdl/filesystem-sdl.c
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* !defined(SIMULATOR) */
|
2013-09-02 09:03:56 +00:00
|
|
|
|
2013-09-05 18:35:51 +00:00
|
|
|
#if defined(HAVE_TOUCHPAD) && !defined(HAS_BUTTON_HOLD)
|
2013-09-02 09:03:56 +00:00
|
|
|
drivers/touchpad.c
|
|
|
|
#endif
|
2013-12-04 16:06:17 +00:00
|
|
|
|
2021-06-11 15:22:12 +00:00
|
|
|
/* Hardware drivers */
|
|
|
|
#ifndef SIMULATOR
|
2021-03-23 15:42:54 +00:00
|
|
|
#ifdef HAVE_I2C_ASYNC
|
|
|
|
drivers/i2c-async.c
|
|
|
|
#endif
|
2022-01-09 16:03:30 +00:00
|
|
|
#ifdef HAVE_AXP_PMU
|
|
|
|
drivers/axp-pmu.c
|
2021-02-27 22:08:58 +00:00
|
|
|
#endif
|
2021-06-11 15:22:12 +00:00
|
|
|
#ifdef HAVE_FT6x06
|
|
|
|
drivers/ft6x06.c
|
|
|
|
#endif
|
2021-05-23 16:30:58 +00:00
|
|
|
#ifdef HAVE_CW2015
|
|
|
|
drivers/cw2015.c
|
|
|
|
#endif
|
2021-06-11 15:22:12 +00:00
|
|
|
#endif
|
2021-02-27 22:08:58 +00:00
|
|
|
|
2013-12-04 16:06:17 +00:00
|
|
|
/* firmware/kernel section */
|
|
|
|
#ifdef HAVE_CORELOCK_OBJECT
|
|
|
|
kernel/corelock.c
|
|
|
|
#endif
|
2014-04-24 08:09:18 +00:00
|
|
|
kernel/mrsw_lock.c
|
2013-12-04 16:06:17 +00:00
|
|
|
kernel/mutex.c
|
|
|
|
kernel/queue.c
|
|
|
|
#ifdef HAVE_SEMAPHORE_OBJECTS
|
|
|
|
kernel/semaphore.c
|
|
|
|
#endif
|
|
|
|
#if defined(HAVE_SDL_THREADS)
|
|
|
|
target/hosted/sdl/thread-sdl.c
|
|
|
|
#else
|
|
|
|
kernel/thread.c
|
|
|
|
#endif
|
2014-08-08 05:39:29 +00:00
|
|
|
kernel/thread-common.c
|
2013-12-04 16:06:17 +00:00
|
|
|
kernel/tick.c
|
|
|
|
#ifdef INCLUDE_TIMEOUT_API
|
|
|
|
kernel/timeout.c
|
|
|
|
#endif
|