- 01 1月, 2016 1 次提交
-
-
由 Arnd Bergmann 提交于
The firmware driver can be a loadable module, but the power domain can only be built-in, so we get a build error in an allmodconfig kernel: :(.text+0x17e59c): undefined reference to `rpi_firmware_property' :(.text+0x17e51c): undefined reference to `rpi_firmware_get' :(.text+0x17e244): undefined reference to `rpi_firmware_property' This changes the dependency to only allow the power domain code to be enabled when the firmware driver is built-in. Other users of the firmware driver may still be loadable modules and not everyone needs the power domains, so we don't change the firmware code. Signed-off-by: NArnd Bergmann <arnd@arndb.de>
-
- 23 12月, 2015 1 次提交
-
-
由 Zhao Qiang 提交于
ls1 has qe and ls1 has arm cpu. move qe from arch/powerpc to drivers/soc/fsl to adapt to powerpc and arm Signed-off-by: NZhao Qiang <qiang.zhao@freescale.com> Signed-off-by: NScott Wood <scottwood@freescale.com>
-
- 22 12月, 2015 2 次提交
-
-
由 Lorenzo Pieralisi 提交于
The suspend() hook in the cpuidle_ops struct is always called on the cpu entering idle, which means that the cpu parameter passed to the suspend hook always corresponds to the local cpu, making it somewhat redundant. This patch removes the logical cpu parameter from the ARM cpuidle_ops.suspend hook and updates all the existing kernel implementations to reflect this change. Signed-off-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com> Acked-by: NDaniel Lezcano <daniel.lezcano@linaro.org> Reviewed-by: NLina Iyer <lina.iyer@linaro.org> Tested-by: NLina Iyer <lina.iyer@linaro.org> Tested-by: Jisheng Zhang <jszhang@marvell.com> [psci] Cc: Lina Iyer <lina.iyer@linaro.org> Cc: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Alexander Aring 提交于
This patch adds support for several power domains on Raspberry Pi, including USB (so it can be enabled even if the bootloader didn't do it), and graphics. This patch is the combined work of Eric Anholt (who wrote USB support inside of the Raspberry Pi firmware driver, and wrote the non-USB domain support) and Alexander Aring (who separated the original USB work out from the firmware driver). Signed-off-by: NAlexander Aring <alex.aring@gmail.com> Signed-off-by: NEric Anholt <eric@anholt.net> Reviewed-by: NUlf Hansson <ulf.hansson@linaro.org> Reviewed-by: NKevin Hilman <khilman@linaro.org>
-
- 18 12月, 2015 2 次提交
-
-
由 Paul Gortmaker 提交于
The Kconfig currently controlling compilation of this code is: drivers/soc/mediatek/Kconfig:config MTK_SCPSYS drivers/soc/mediatek/Kconfig: bool "MediaTek SCPSYS Support" ...meaning that it currently is not being built as a module by anyone. Lets remove the couple traces of modularity so that when reading the driver there is no doubt it is builtin-only. Since module_platform_driver() uses the same init level priority as builtin_platform_driver() the init ordering remains unchanged with this commit. Cc: Matthias Brugger <matthias.bgg@gmail.com> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Daniel Kurtz <djkurtz@chromium.org> Cc: Paul Gortmaker <paul.gortmaker@windriver.com> Cc: Olof Johansson <olof@lixom.net> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-mediatek@lists.infradead.org Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: NMatthias Brugger <matthias.bgg@gmail.com>
-
由 Sascha Hauer 提交于
The power domains are supplied by regulators. Add support for them so that the regulators are properly turned on before a domain is powered up and turned off when a domain is powered down. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Signed-off-by: NMatthias Brugger <matthias.bgg@gmail.com>
-
- 15 12月, 2015 2 次提交
-
-
由 Linus Walleij 提交于
The SoC driver needs a minor update to display the correct sysfs information for the PB11MPCore. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Andy Gross 提交于
This patch adds support for all current Qualcomm platforms which utilize RPM over SMD. This includes both MSM8916 and APQ8084. Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
- 09 12月, 2015 6 次提交
-
-
由 Bjorn Andersson 提交于
The WCNSS_CTRL SMD client is used for among other things upload nv firmware to a newly booted WCNSS chip. Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Arnd Bergmann 提交于
The qcom spm driver uses cpu_resume_arm(), which is not included in the kernel in all configurations: drivers/built-in.o: In function `qcom_cpu_spc': :(.text+0xbc022): undefined reference to `cpu_suspend' drivers/built-in.o: In function `qcom_cpuidle_init': :(.init.text+0x610c): undefined reference to `cpu_resume_arm' This adds a 'select' Kconfig statement to ensure it's always enabled. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Reviewed-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Arnd Bergmann 提交于
The newly added smp2p and smsm drivers cannot be loadable modules but depend on smem, which can be, and that causes a link error: drivers/built-in.o: In function `qcom_smp2p_intr': :(.text+0xa6e68): undefined reference to `qcom_smem_get' drivers/built-in.o: In function `qcom_smp2p_probe': :(.text+0xa7320): undefined reference to `qcom_smem_alloc' :(.text+0xa736c): undefined reference to `qcom_smem_get' drivers/built-in.o: In function `qcom_smsm_probe': :(.text+0xa7b34): undefined reference to `qcom_smem_get' This marks all the drivers as 'tristate' to make the Kconfig dependency resolution work properly. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Fixes: dbb04bd7122f ("soc: qcom: smp2p: Qualcomm Shared Memory Point to Point") Fixes: d7387fc6add4 ("soc: qcom: smsm: Add driver for Qualcomm SMSM") Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
Introduce the Qualcomm Shard Memory Point to Point driver. Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
This driver exposed the Qualcomm Shared Memory State Machine bits. Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
This implements a common API for handling and exposing SMP2P and SMSM state information. Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
- 08 12月, 2015 2 次提交
-
-
由 Masanari Iida 提交于
This patch fix multiple spelling typos found in various part of kernel. Signed-off-by: NMasanari Iida <standby24x7@gmail.com> Acked-by: NRandy Dunlap <rdunlap@infradead.org> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Russell King 提交于
Add support for legacy non-DT Dove to the PMU driver, so that we can transition the legacy support over. [gregory.clement@free-electrons.com: removed pm_genpd_poweroff_unused] Acked-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NGregory CLEMENT <gregory.clement@free-electrons.com>
-
- 03 12月, 2015 1 次提交
-
-
由 Dave Gerlach 提交于
Introduce a wkup_m3_ipc driver to handle communication between the MPU and Cortex M3 wkup_m3 present on am335x. This driver is responsible for actually booting the wkup_m3_rproc and also handling all IPC which is done using the IPC registers in the control module, a mailbox, and a separate interrupt back from the wkup_m3. A small API is exposed for executing specific power commands, which include configuring for low power mode, request a transition to a low power mode, and status info on a previous transition. Signed-off-by: NDave Gerlach <d-gerlach@ti.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 25 11月, 2015 1 次提交
-
-
由 Eddie Huang 提交于
If enable Mediatek 8173 SoC, it should also enable power domain driver. Otherwise access clk subsystem register will fail. Signed-off-by: NEddie Huang <eddie.huang@mediatek.com> Acked-by: NMatthias Brugger <matthias.bgg@gmail.com> Signed-off-by: NKevin Hilman <khilman@linaro.org>
-
- 24 11月, 2015 2 次提交
-
-
由 Michal Morawiec 提交于
Configure linking RAM for both queue managers also in case when only linking RAM 0 is specified in device tree. Currently hwqueue driver configures linking RAM(s) to be used cooperatively by the QMs (shared mode). Therefore if both queue managers are used then both must be configured with exactly the same linking RAM info (base address and size) independent of the number of linking RAM(s) specified in the device tree. For proper operation only one linking RAM is required and in most cases this can be internal one as long as it is able to handle the number of descriptors used in the system. Current driver code however skips configuration of second queue manager if second linking RAM is not specified. If the configuration for the QM2 is missing there will be a crash when it tries to push/pop descriptors from its queues. Signed-off-by: NMichal Morawiec <michal.1.morawiec.ext@nokia.com> Signed-off-by: NSantosh Shilimkar <ssantosh@kernel.org>
-
由 Murali Karicheri 提交于
When firmware image for PDSP firmware is absent in the file system the kernel boot with ramfs/nfs is stuck for 60 seconds being the the default timeout. request_firmware_direct() is to take care of such optional firmware loading and hence replace the call in the driver with this API. Signed-off-by: NMurali Karicheri <m-karicheri2@ti.com> Signed-off-by: NSantosh Shilimkar <ssantosh@kernel.org>
-
- 31 10月, 2015 1 次提交
-
-
由 Bjorn Andersson 提交于
With the removal of VLAIS the size was incorrectly changed to only cover the headers of the packet, resulting in "empty" requests being sent to the RPM. Correct this so the entire message is transfered. Fixes: 50e1b29b ("soc: qcom: smd: Remove use of VLAIS") Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Reviewed-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org> Signed-off-by: NOlof Johansson <olof@lixom.net>
-
- 16 10月, 2015 2 次提交
-
-
由 Heiko Stuebner 提交于
When we never got the the clock-reference, i.e. when IS_ERR(clk) is true, don't try to print the clock name via %pC as this of course produces a null-pointer-dereference in __clk_get_name(). Signed-off-by: NHeiko Stuebner <heiko@sntech.de> Reviewed-by: NCaesar Wang <wxt@rock-chips.com>
-
由 Arnd Bergmann 提交于
This fixes a build error when smem is enabled without hwspinlock: drivers/built-in.o: In function `qcom_smem_alloc': rockchip-efuse.c:(.text+0x7a3e4): undefined reference to `__hwspin_lock_timeout' rockchip-efuse.c:(.text+0x7a568): undefined reference to `__hwspin_unlock' drivers/built-in.o: In function `qcom_smem_remove': rockchip-efuse.c:(.text+0x7a5cc): undefined reference to `hwspin_lock_free' drivers/built-in.o: In function `qcom_smem_probe': rockchip-efuse.c:(.text+0x7a960): undefined reference to `hwspin_lock_request_specific' rockchip-efuse.c:(.text+0x7a988): undefined reference to `of_hwspin_lock_get_id' drivers/built-in.o: In function `qcom_smem_get': rockchip-efuse.c:(.text+0x7aa24): undefined reference to `__hwspin_lock_timeout' rockchip-efuse.c:(.text+0x7aafc): undefined reference to `__hwspin_unlock' Signed-off-by: NArnd Bergmann <arnd@arndb.de>
-
- 15 10月, 2015 15 次提交
-
-
由 Stephen Boyd 提交于
SMEM is a software construct built on top of a DDR reserved region and sometimes a device memory region called RPM message ram. Having the RPM message ram in the smem DT node's reg property leads to the smem node being located in different places depending on if the message ram is being used or not. Let's add a qcom specific property, qcom,rpm-msg-ram, and point to the device memory from the SMEM node via a phandle. As SMEM is a software construct, it really needs to reside at the root of the DT regardless of whether it's using the message ram or not. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
The BIT() was incorrectly inherited from family A and should not be used on family B where the state is denoted by an enum. Reported-by: NGeorgi Djakov <georgi.djakov@linaro.org> Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Tested-by: NGeorgi Djakov <georgi.djakov@linaro.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Julia Lawall 提交于
Device node iterators perform an of_node_put on each iteration, so putting an of_node_put before a continue results in a double put. A simplified version of the semantic match that finds this problem is as follows (http://coccinelle.lip6.fr): // <smpl> @@ expression root,e; local idexpression child; iterator i; @@ i(..., child, ...) { ... when != of_node_get(child) * of_node_put(child); ... * continue; } // </smpl> Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
Update the SMEM items for the second set of SMD channels, as these where incorrect. Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
Attempting to find room for a packet that's bigger than the fifo will never succeed and the calling process will be sleeping forever in the loop, waiting for enough room. So fail early instead. Reported-by: NCourtney Cavin <courtney.cavin@sonymobile.com> Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Reviewed-by: NAndy Gross <agross@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
The smd structures are always in little endian, but the smd driver is not capable of being used on big endian CPUs. Annotate the little endian data members and update the code to do the proper byte swapping. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
The smd rpm structures are always in little endian, but this driver is not capable of being used on big endian CPUs. Annotate the little endian data members and update the code to do the proper byte swapping. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
Usage of VLAIS prevents clang from compiling this file, and it also opens us to the possibility of allocating a large structure on the stack to the point that we blow past the limit of the kernel stack. Remove the VLAIS and allocate a structure on the heap with kmalloc so that we're safer and more clang friendly. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
We already have a function to do this and it silences some sparse warnings along the way. Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
The rx and tx channel info are laid out in memory next to each other, and there are two types of channel info structures, byte based and word based. We have 4 pointers to these info structures, when we really only need two to point to the different types of structures. Encapsulate the byte based and word based tx/rx structures in a "channel pair" structure that describes the layout of memory and reduces the number of pointers in the smd channel structure by two. Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
The contents of smem are always in little endian, but the smem driver is not capable of being used on big endian CPUs. Annotate the little endian data members and update the code to do the proper byte swapping. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
Passing a void ** almost always requires a cast at the call site. Instead of littering the code with casts every time this function is called, have qcom_smem_get() return a void pointer to the location of the smem item. This frees the caller from having to cast the pointer. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
When I make nconfig, having the SMEM option after the SMD option causes the configurator to get confused when I'm enabling and disabling these options. Let's move SMEM before SMD so there's a clear indented dependency chain. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Stephen Boyd 提交于
Don't set a pointer to NULL and then dereference it in the next line. Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Reviewed-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
由 Bjorn Andersson 提交于
Implement a id_table based driver maching mechanism for drivers that binds to fixed channels and doesn't need any additional configuration, e.g. IPCRTR and DIAG. Signed-off-by: NBjorn Andersson <bjorn.andersson@sonymobile.com> Signed-off-by: NAndy Gross <agross@codeaurora.org>
-
- 14 10月, 2015 2 次提交
-
-
由 James Liao 提交于
In kernel late init, it turns off all unused clocks, which needs to access subsystem registers such as VENC and VENC_LT. Accessing MT8173 VENC registers needs two top clocks, mm_sel and venc_sel. Accessing VENC_LT registers needs mm_sel and venclt_sel. So we need to keep these clocks on before accessing their registers. This patch keeps venc_sel / venclt_sel clock on when VENC / VENC_LT's power is on, to prevent system hang up while accessing its registeres. Signed-off-by: NJames Liao <jamesjj.liao@mediatek.com> Signed-off-by: NMatthias Brugger <matthias.bgg@gmail.com>
-
由 Murali Karicheri 提交于
acc channels are available only if accumulator PDSP is loaded and running in the SoC. As this requires firmware and user may not have firmware in the file system, make the accumulator queue support available in qmss driver optional. To use accumulator queus user needs to add firmware to the file system and boot up kernel. Signed-off-by: NMurali Karicheri <m-karicheri2@ti.com> Signed-off-by: NSantosh Shilimkar <ssantosh@kernel.org>
-