Hi,
While executing reboot call on my ARMv7 board, the system hangs during
cpu_proc_fin() call.
Commenting out this line of code, the reboot works properly.
Index: mvlinux/arch/arm/mm/proc-v7.S
===================================================================
--- mvlinux.orig/arch/arm/mm/proc-v7.S 2012-08-15 14:12:50.396190110 +0900
+++ mvlinux/arch/arm/mm/proc-v7.S 2012-08-15 14:21:28.730760416 +0900
@@ -51,7 +51,7 @@
mrc p15, 0, r0, c1, c0, 0 @ ctrl register
bic r0, r0, #0x1000 @ ...i............
bic r0, r0, #0x0006 @ .............ca.
- mcr p15, 0, r0, c1, c0, 0 @ disable caches
+ #mcr p15, 0, r0, c1, c0, 0 @ disable caches
ldmfd sp!, {pc}
ENDPROC(cpu_v7_proc_fin)
is it a CPU_V7 specific issue?
Please provide your valuable input to fix the issue.
Any hint also..will help me in debugging further in this issue.
I have seen above fix in one of the linaro mailing list.
Regards,
koteswararao.
The following 2 patches add driver for S5K4ECGX sensor with embedded ISP SoC,
and minor v4l2 control API enhancement. S5K4ECGX is 5M CMOS Image sensor from Samsung
Changes since v3:
- used request_firmware to configure initial settings
- added parsing functions to read initial settings
- updated regulator API
- reduced preview setting tables by experiment
Changes since v2:
- added GPIO (reset/stby) and regulators
- updated I2C read/write, based on s5k6aa datasheet
- fixed set_fmt errors
- reduced register tables a bit
- removed vmalloc
Changes since v1:
- fixed s_stream(0) when it called twice
- changed mutex_X position to be used when strictly necessary
- add additional s_power(0) in case that error happens
- update more accurate debugging statements
- remove dummy else
Sangwook Lee (2):
v4l: Add factory register values form S5K4ECGX sensor
v4l: Add v4l2 subdev driver for S5K4ECGX sensor
drivers/media/video/Kconfig | 8 +
drivers/media/video/Makefile | 1 +
drivers/media/video/s5k4ecgx.c | 941 +++++++++++++++++++++++++++++++++++
drivers/media/video/s5k4ecgx_regs.h | 138 +++++
include/media/s5k4ecgx.h | 37 ++
5 files changed, 1125 insertions(+)
create mode 100644 drivers/media/video/s5k4ecgx.c
create mode 100644 drivers/media/video/s5k4ecgx_regs.h
create mode 100644 include/media/s5k4ecgx.h
--
1.7.9.5
Hello All
ARM have released a new version of Developer Studio 5 (DS-5) and we now
have a new version of the Gator component [1] to go with this which
needs updating in all Linaro kernel trees that will be part of the 12.08
release.
For those people maintaining kernel trees here is what this means...
- If your kernels are including the linux-linaro-core-tracking [2]
branch then you will get the new Gator version from this when it is
updated over the next couple of days. You don't need to do anything
except to make sure you are up to date with this branch before the 12.08
release.
- For Ubuntu kernels not including linux-linaro-core-tracking (and not
being released from the common linux-linaro branch) then you should
replace your existing Gator topic branch (or add one if it is missing).
This new topic branch can be created by pulling from the ARM Landing
Team's tree [3], we have three topic branches available for the last
three kernel versions...
tracking-armlt-gator (3.6-rc1)
3.5-armlt-gator-5.10
3.4-armlt-gator-5.10
The code in these branches is identical, they are just rebased onto
different Linux versions to make pulling easier.
- For Android kernels, if your kernel already includes the Gator topic,
then this should be updated as above. If it does not have the Gator
topic then chance are it is being included as a separate component in
the manifest file; in which case, there is nothing further which needs
doing as the git repo used for this has already been updated [4].
If anyone has any questions or if anything is unclear, please do
hesitate to contact me.
Note, for those people who have applied Mali driver patches to support
profiling by Gator: you don't need to modify those Mali patches, just
take the new version of Gator, this will still work OK.
Cheers
--
Tixy
[1] Gator is the ARM target device components for ARM's Streamline
Performance Analyzer which is part of their Developer Studio (DS-5).
http://www.arm.com/products/tools/software-tools/ds-5/streamline.php
[2]
http://git.linaro.org/gitweb?p=kernel/linux-linaro-tracking.git;a=shortlog;…
[3] git://git.linaro.org/landing-teams/working/arm/kernel.git
[4] http://git.linaro.org/gitweb?p=arm/ds5/gator.git;a=shortlog;h=refs/heads/an…
Hi,
If you don't build hardware packs, you can stop reading now.
Recently Linaro Image Tools added support for a new hardware pack
format, which offers some new features
(http://www.milo.name/2012/07/27/multiple-boards-bootloaders/). With
the addition of the V3 format we will shortly be marking V2 as
deprecated and finally getting rid of V1 support. There shouldn't be
any V1 hardware packs in use, so that shouldn't have any impact on
you. The transition to V3 may cause some alarm, but don't worry, there
is a converter tool which converts V2 metadata into V3 form and you
can them rebuild the hardware pack. We don't have a tool to convert
hardware packs once they have been built, but if one is needed it
shouldn't be difficult to provide.
Please let me know dropping V1 support is going to cause any problems
and any requirements for a V2 to V3 hardware pack converter.
--
James Tunnicliffe
Greetings,
The linux-linaro-core-tracking tree (llct, see
http://git.linaro.org/gitweb?p=kernel/linux-linaro-tracking.git;a=summary for
some more details) is planned to be moved to v3.6-rc1 (or v3.6-rc2 if it
is out) early next week.
There will be more updates to llct as long as new -rc's are out.
And this llct tree will be the base for the 12.08 linux-linaro release.
Most of the current llct topics need updating for that:
* topic svenkatr/ufs-for-linux-linaro :
just 1 conflict, but there are newer commits by the topic owner in
the kernel.org tree. Please update the topic
* topic amitdanielk/thermal_exynos4_imx6_work :
3 conflicts
* topic android_jstultz/linaro-android-3.5-jstultz-rebase
11 conflicts. This has been already discussed with the topic owner.
We will both work on moving the current topic to v3.6.
* topic arm_soc/testing/multiplatform
198 conflicts.
Arnd, I don't see the multiplatform code in the current kernel.org
tree. Could you please update me on the status of this effort?
And if we want to keep the multiplatform topic in the llct tree,
your help (updated or new branch for this topic) is needed.
* topic ll_quantal/linaro-ubuntu-sauce
9 conflicts
* topic perf antipov/linaro
2 conflicts. Looks like they are due to changes in the upstream.
Dmitry, could you please rebase your topic branch over to
v3.6-something (v3.6-rc1, current kernel.org tree, etc)?
Just overwrite the existing topic branch (the earlier versions are
saved in linux-linaro-tracking.git each time they are used for the
llct updates, and could be reused later if needed).
* topic big-LITTLE-MP-v4 b_L_mp/big-LITTLE-MP-v4
3 conflicts
Let me know if there are obsoleted topics.
And new topics are welcomed as usual :)
Please note, that llct is for generic topics, not the board specific
ones. I'll get to linux-linaro tree (which has board specific topics)
right after llct is moved to v3.6-rc*.
Thanks,
Andrey
Hi Andrew/Rui,
As discussed with Rui Zhang, I dropped the patch for new trip type
THERMAL_TRIP_STATE_INSTANCE and made the necessary state magnagement changes
in cpufreq cooling functions. Also I fixed all the review comments suggested
by Andrew. If any other changes please let me know.
This patchset introduces a new generic cooling device based on cpufreq that
can be used on non-ACPI platforms. As a proof of concept, we have drivers for
the following platforms using this mechanism now:
* Samsung Exynos (Exynos4 and Exynos5) in the current patchset.
* TI OMAP (git://git.linaro.org/people/amitdanielk/linux.git omap4460_thermal)
* Freescale i.MX (git://git.linaro.org/people/amitdanielk/linux.git imx6q_thermal)
The is a small change in cpufreq cooling registration APIs, so a minor change is
needed for OMAP and Freescale platforms.
Thanks,
Amit Daniel
Changes since V3:
* Dropped the concept of using new trip type THERMAL_TRIP_STATE_INSTANCE as
discussed with Rui Zhang. This requires adding some state management logic
in cpufreq cooling implementation.
* Many review comments suggested by Andrew Morton
* More documentation added in cpufreq cooling codes.
Changes since V2:
*Added Exynos5 TMU sensor support by enhancing the exynos4 tmu driver. Exynos5 TMU
driver was internally developed by SangWook Ju <sw.ju(a)samsung.com>.
*Removed cpuhotplug cooling code in this patchset.
*Rebased the patches against 3.4-rc6 kernel.
Changes since V1:
*Moved the sensor driver to driver/thermal folder from driver/hwmon folder
as suggested by Mark Brown and Guenter Roeck
*Added notifier support to notify the registered drivers of any cpu cooling
action. The driver can modify the default cooling behaviour(eg set different
max clip frequency).
*The percentage based frequency replaced with absolute clipped frequency.
*Some more conditional checks when setting max frequency.
*Renamed the new trip type THERMAL_TRIP_STATE_ACTIVE to
THERMAL_TRIP_STATE_INSTANCE
*Many review comments from R, Durgadoss <durgadoss.r(a)intel.com> and
eduardo.valentin(a)ti.com implemented.
*Removed cooling stats through debugfs patch
*The V1 based can be found here,
https://lkml.org/lkml/2012/2/22/123http://lkml.org/lkml/2012/3/3/32
Changes since RFC:
*Changed the cpu cooling registration/unregistration API's to instance based
*Changed the STATE_ACTIVE trip type to pass correct instance id
*Adding support to restore back the policy->max_freq after doing frequency
clipping.
*Moved the trip cooling stats from sysfs node to debugfs node as suggested
by Greg KH greg(a)kroah.com
*Incorporated several review comments from eduardo.valentin(a)ti.com
*Moved the Temperature sensor driver from driver/hwmon/ to driver/mfd
as discussed with Guenter Roeck <guenter.roeck(a)ericsson.com> and
Donggeun Kim <dg77.kim(a)samsung.com> (https://lkml.org/lkml/2012/1/5/7)
*Some changes according to the changes in common cpu cooling APIs
*The RFC based patches can be found here,
https://lkml.org/lkml/2011/12/13/186https://lkml.org/lkml/2011/12/21/169
Brief Description:
1) The generic cooling devices code is placed inside driver/thermal/* as
placing inside acpi folder will need un-necessary enabling of acpi code. This
codes is architecture independent.
2) This patchset adds generic cpu cooling low level implementation through
frequency clipping. In future, other cpu related cooling devices may be added
here. An ACPI version of this already exists (drivers/acpi/processor_thermal.c)
. But this will be useful for platforms like ARM using the generic
thermal interface along with the generic cpu cooling devices. The cooling
device registration API's return cooling device pointers which can be easily
binded with the thermal zone trip points. The important APIs exposed are,
a)struct thermal_cooling_device *cpufreq_cooling_register(
struct freq_clip_table *tab_ptr, unsigned int tab_size)
b)void cpufreq_cooling_unregister(struct thermal_cooling_device *cdev)
3) Samsung exynos platform thermal implementation is done using the generic
cpu cooling APIs and the new trip type. The temperature sensor driver present
in the hwmon folder(registered as hwmon driver) is moved to thermal folder
and registered as a thermal driver.
All this patchset is based on Kernel version 3.4-rc6
A simple data/control flow diagrams is shown below,
Core Linux thermal <-----> Exynos thermal interface <----- Temperature Sensor
| |
\|/ |
Cpufreq cooling device <---------------
TODO:
*Will send the DT enablement patches later after the driver is merged.
Amit Daniel Kachhap (5):
thermal: Add generic cpufreq cooling implementation
hwmon: exynos4: Move thermal sensor driver to driver/thermal
directory
thermal: exynos5: Add exynos5 thermal sensor driver support
thermal: exynos: Register the tmu sensor with the kernel thermal
layer
ARM: exynos: Add thermal sensor driver platform data support
Documentation/hwmon/exynos4_tmu | 81 ---
Documentation/thermal/cpu-cooling-api.txt | 60 ++
Documentation/thermal/exynos_thermal | 52 ++
drivers/hwmon/Kconfig | 10 -
drivers/hwmon/Makefile | 1 -
drivers/hwmon/exynos4_tmu.c | 514 --------------
drivers/thermal/Kconfig | 20 +
drivers/thermal/Makefile | 4 +-
drivers/thermal/cpu_cooling.c | 483 +++++++++++++
drivers/thermal/exynos_thermal.c | 956 ++++++++++++++++++++++++++
include/linux/cpu_cooling.h | 99 +++
include/linux/platform_data/exynos4_tmu.h | 83 ---
include/linux/platform_data/exynos_thermal.h | 100 +++
13 files changed, 1773 insertions(+), 690 deletions(-)
delete mode 100644 Documentation/hwmon/exynos4_tmu
create mode 100644 Documentation/thermal/cpu-cooling-api.txt
create mode 100644 Documentation/thermal/exynos_thermal
delete mode 100644 drivers/hwmon/exynos4_tmu.c
create mode 100644 drivers/thermal/cpu_cooling.c
create mode 100644 drivers/thermal/exynos_thermal.c
create mode 100644 include/linux/cpu_cooling.h
delete mode 100644 include/linux/platform_data/exynos4_tmu.h
create mode 100644 include/linux/platform_data/exynos_thermal.h