summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-05-08arm64: rockchip: add rk3399-puma-spidev.dtspuma-release-4.4.120-2018-03-27Klaus Goger
This devicetree adds spidev nodes to the spi5 bus as enhancement to the rk3399-puma.dts. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2018-05-08spi: rockchip: configure gpios from cs-gpiosKlaus Goger
SPI core provides the functionality to have GPIO based chip selects but assumes that the pins are already configured by the platform. Configure GPIO style pins in rockchip_spi_setup so they can be used later on. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2018-05-08spi: Add Flag to Enable Slave Select with GPIO Chip Select.Thor Thayer
Some SPI masters require slave selection before the transfer can begin [1]. The SPI framework currently selects the chip using either 1) the internal CS mechanism or 2) the GPIO CS, but not both. This patch adds a new master->flags define to indicate both the GPIO CS and the internal chip select mechanism should be used. Tested On: Altera CycloneV development kit Compile tested for build errors on x86_64 (allyesconfigs) [1] DesignWare dw_apb_ssi Databook, Version 3.20a (page 39) Signed-off-by: Thor Thayer <tthayer@opensource.altera.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-05-08spi: rockchip: Set GPIO_SS flag to enable Slave Select with GPIO CSJeffy Chen
The rockchip spi still requires slave selection when using GPIO CS. Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> Reviewed-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-05-08arm64: dts: rockchip: set powerdomain for spi5 on rk3399Klaus Goger
Access to the spi5 peripheral when powered down halts the system rendering it unresponsive. Define the powerdomain in the rk3399.dtsi to prevent a shutdown when the peripheral is used. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2018-04-05Reduce SD IO Voltage to 3.0VKlaus Goger
The SD-Card IO rail on the RK3399 should not be operated higher than 3.15V. We reduce it to 3.0V. Note that the I/Os on the Qseven edge connector will still be 3.3V as expected. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2018-03-29Revert "spi: rockchip: set higher io driver when sclk higher than 24MHz"Jakob Unterwurzacher
Causes a kernel panic on the RK3399-Q7 "Puma". See https://github.com/rockchip-linux/kernel/issues/79 for details. This reverts commit 7e4349ec9d70dbcfe7f78125700d2685539ea1bd.
2018-03-29can: ucan: add driver for Theobroma Systems UCAN devicesJakob Unterwurzacher
The UCAN driver supports the microcontroller-based USB/CAN adapters from Theobroma Systems. There are two form-factors that run essentially the same firmware: * Seal: standalone USB stick ( https://www.theobroma-systems.com/seal ) * Mule: integrated on the PCB of various System-on-Modules from Theobroma Systems like the A31-µQ7 and the RK3399-Q7 ( https://www.theobroma-systems.com/rk3399-q7 ) The USB wire protocol has been designed to be as generic and hardware-indendent as possible in the hope of being useful for implementation on other microcontrollers. Signed-off-by: Martin Elshuber <martin.elshuber@theobroma-systems.com> Signed-off-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com> Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
2018-03-29rtc: isl1208: set uie_unsupportedJakob Unterwurzacher
The isl1208 emulation on puma / rk3399-q7 does not support interrupts at all, but has no way to announce that fact to the kernel. This causes problems in user-space: # hwclock -r -D [...] select() to /dev/rtc to wait for clock tick timed out...synchronization failed Set the uie_unsupported flag unconditionally in the driver until we get a way to configure it through a device tree property. Fixes the problems with hwclock. Signed-off-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
2018-03-29brcmfmac: sleep workaround for AP6255 "Gopher" Wifi moduleJakob Unterwurzacher
Disable sleep for now as the Gopher module does not seem to wake up again. Signed-off-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
2018-03-29drm/rockchip: increase vop selection message priorityJakob Unterwurzacher
As the VOPs have different capabilities, which vop was selected is usually interesting to the user. Signed-off-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
2018-03-29drm/rockchip: dw-hdmi: downgrade "failed to set" message to infoJakob Unterwurzacher
hdmi works fine, and looking at what properties are actually failing (see below) indicates that they are not essential. Downgrade the message level from "error" to "info". [ 10.545924] [drm:dw_hdmi_rockchip_set_property] failed to set rockchip hdmi connector property hdmi_color_depth_capacity [ 10.557993] [drm:dw_hdmi_rockchip_set_property] failed to set rockchip hdmi connector property hdmi_output_mode_capacity [ 10.570473] [drm:dw_hdmi_rockchip_set_property] failed to set rockchip hdmi connector property brightness [ 10.581221] [drm:dw_hdmi_rockchip_set_property] failed to set rockchip hdmi connector property contrast [ 10.591810] [drm:dw_hdmi_rockchip_set_property] failed to set rockchip hdmi connector property saturation [ 10.602415] [drm:dw_hdmi_rockchip_set_property] failed to set rockchip hdmi connector property hue [ 10.708193] rockchip-dp ff970000.edp: Link Training Clock Recovery success [ 10.717607] rockchip-dp ff970000.edp: Link Training success!
2018-03-29brcmfmac: add support for BCM43455 with modalias sdio:c00v02D0dA9BFJakob Unterwurzacher
BCM43455 is a more recent revision of the BCM4345. Some of the BCM43455 got a dedicated SDIO device ID which is currently not supported by brcmfmac. Adding the new sdio_device_id to brcmfmac is enough to get the BCM43455 supported because the chip itself is already supported (due to BCM4345 support in the driver). Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com> Reviewed-by: Andreas Färber <afaerber@suse.de> Tested-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Upstream commit a62a77881b1b6708ffeddd9bf0529494f7b199e3
2018-03-29ASoC: sgtl5000: Use normal VAG ramp to reduce pop noiseKlaus Goger
The slow downed ramp causes a higher voltage level at the turn off time generating an audible pop noise. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2018-03-29Input: add driver for Silead touchscreensRobert Dolca
This driver adds support for Silead touchscreens. It has been tested with GSL1680 and GSL3680 touch panels. It supports ACPI and device tree enumeration. Screen resolution, the maximum number of fingers supported and firmware name are configurable. Signed-off-by: Robert Dolca <robert.dolca@intel.com> Signed-off-by: Daniel Jansen <djaniboe@gmail.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: silead - remove some dead code buf[0] is an unsigned char. touch_nr is an int. The test for negative here doesn't make sense so I have removed it. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: silead - use devm_gpiod_get The silead code is using devm_foo for everything (and does not free any resources). Except that it is using gpiod_get instead of devm_gpiod_get (but is not freeing the gpio_desc), change this to use devm_gpiod_get so that the gpio will be properly released. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: silead_gsl1680 - document firmware-name, fix implementation The driver has supported touchscreen-fw-name to specify the firmware to load since it has been merged, but this was omitted from the dt-binding documentation. During review of adding touchscreen-fw-name to the binding documentation it was brought up that there is a standard property name called "firmware-name" for this, which should be used. Since there are no users of touchscreen-fw-name yet, this commit adds documentation of "firmware-name" to the dt-binding documentation and switches the driver over to use this. This commit also makes the driver add a "silead/" prefix to the firmware name from dt before calling request_firmware. That the firmware files are stored under /lib/firmware/silead under Linux is an implementation detail and does not belong in devicetree. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: silead_gsl1680 - use "silead/" prefix for firmware loading The silead touch-controller ICs use a different firmware per digitizer / tablet model. So there are going to be quite a few of then and they really should be under a separate subdir. This commit prefixes the default firmware names with "silead/" just like we are already doing for devicetree specified firmware names. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: silead - add OF device ID table The driver doesn't have a struct of_device_id table but supported devices are registered via Device Trees. This is working on the assumption that a I2C device registered via OF will always match a legacy I2C device ID and that the MODALIAS reported will always be of the form i2c:<device>. But this could change in the future so the correct approach is to have an OF device ID table if the devices are registered via OF. As pointed by Hans de Goede, there's no mssl1680 and this is just used in some ACPI systems to identify the gsl1680 chip. So isn't included in the OF device ID table since a DT should use the proper device name instead. Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: back-port silead.c: pos[i] handling/assignment Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Input: back-port silead.c: invert_x/y & swap_xy Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Input: silead: retry firmware load If we get ENOENT when trying to load the firmware, this can just mean that the rootfs is not mounted yet. Return EPROBE_DEFER so the probe is retried later. To prevent an infinite probe loop when the firmware does not exist at all, the retries are capped to 10. Signed-off-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
2018-03-29Remove .scmversion fileKlaus Goger
The empty .scmvesion file breaks the setlocalversion script. As we want to use CONFIG_LOCALVERSION_AUTO we delete the file. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2018-03-29arm64: rockchip: add dts + defconfig for RK3399-Q7 (Puma) SoMJakob Unterwurzacher
The RK3399-Q7 (Puma) is a system-on-module featuring the Rockchip RK3399 in a Qseven-compatible form-factor. RK3399-Q7 features: * CPU: ARMv8 64bit Big-Little architecture, * Big: dual-core Cortex-A72 * Little: quad-core Cortex-A53 * IRAM: 200KB * DRAM: 4GB-128MB dual-channel * eMMC: onboard eMMC * SD/MMC * GbE (onboard Micrel KSZ9031) Gigabit ethernet PHY * USB: * USB3.0 dual role port * 2x USB3.0 host, 1x USB2.0 host via onboard USB3.0 hub * Display: HDMI/eDP/MIPI * Camera: 2x CSI (one on the edge connector, one on the Q7 specified CSI ZIF) * NOR Flash: onboard SPI NOR * Companion Controller: onboard additional Cortex-M0 microcontroller * RTC * fan controller * CAN This dts describes includes all required peripherals for booting and basic functionality including eMMC, NOR, USB, Ethernet, HDMI output (with audio), I2C buses (including the RTC and fan controller features provided by the default companion controller firmware) and LED definitions. Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com> Signed-off-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
2018-03-27ASoC: rockchip: i2s: protect I2S_XFER_TXS/I2S_XFER_RXS with spin lockBinyuan Lan
fix bug error log: "rockchip-i2s ff070000.i2s: fail to clear". When the TX/RX have started, can not do 'clear operation'. Change-Id: Ia156144490a61f4fa9823b1313588e44688f4bce Signed-off-by: Binyuan Lan <lby@rock-chips.com>
2018-03-26arm64: dts: rockchip: enable tsadc module for rk3308-evb-10 boardRocky Hao
Change-Id: I8e8f0c47c9b68f6c6afb873c5efc11b97eccd403 Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2018-03-26arm64: rk3308_linux_defconfig: enable ROCKCHIP_THERMALRocky Hao
Change-Id: Ia05592f828b87c6e3ed63491b31f03cf31483782 Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2018-03-26phy: rockchip-inno-usb2: fix a clang warningWilliam Wu
This patch fix the following clang warning: [clang] drivers/phy/rockchip/phy-rockchip-inno-usb2.c:1458:2: warning: 3rd function call argument is an uninitialized value Change-Id: Ia4a556da346323e5bc081ff1bbf267911fcdc645 Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-03-26phy: rockchip-inno-usb2: open pre-emphasize for rk3308/rk3328William Wu
Open pre-emphasize in non-chirp state for rk3308 and rk3328 usb otg and host ports to increase HS slew rate. Change-Id: I16435d67b9994cef0fd5e6edbae00c41cc02c48b Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-03-26MALI: rockchip: upgrade bifrost DDK to r11p0-01rel0Zhen Chen
in addition, resolve all the conflicts; rename all the configs and macros that have a same name in midgard/; Change-Id: I93a7cf42301a3af43d593965a3eac7fc2aa8276c Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
2018-03-26drm/rockchip: rk312x vop: add dither configSandy Huang
Change-Id: Ide4fe3d269bbea919d469db91ac83a696988932c Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2018-03-26mfd: rk808: provide a dummy callback for pm_power_offJoseph Chen
RK8xx PMICs would do real power off in syscore shutdown, if "pm_power_off" is not assigned(e.g. PSCI is not enabled), we have to provide a dummy callback for it, otherwise there comes a halt in Reboot system call: if ((cmd == LINUX_REBOOT_CMD_POWER_OFF) && !pm_power_off) cmd = LINUX_REBOOT_CMD_HALT; This patch fix issue from: 94a7fc2 mfd: rk808: power off system in syscore shutdown Change-Id: I099236bbbd7fcb35fe483fb8f08936fd7a75d2db Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26power: rk816-battery: judge 'is_initialized' firstlyJoseph Chen
U-Boot fuel gauge may do ocv calibration which would update rsoc, and it would lead a wrong halt judgement for kernel fuel gauge driver. So we judege is_initialized firstly. Change-Id: Ifed343b85d3f7e7a42545fc57efe460338f30e17 Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26power: rk818-battery: judge 'is_initialized' firstlyJoseph Chen
U-Boot fuel gauge may do ocv calibration which would update rsoc, and it would lead a wrong halt judgement for kernel fuel gauge driver. So we judege is_initialized firstly. Change-Id: I2957c464dfde1dde4b7dd32778d373904209d575 Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26arm64: dts: rockchip: add opp-table for rk3308shengfei Xu
Change-Id: I025416244fe9e0340a77e25edab864325d96d821 Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-03-26rk: Makefile: CROSS_COMPILE use gcc-linaro-6.3.1-2017.05 if available on arm64Tao Huang
Change-Id: Ia51b77ffaf4a2ea2e3e73588917c0cf0ddd66d38 Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-26arm64: dts: rockchip: add more leds for rk3308-evb-10 boardZiyuan Xu
Change-Id: I311bfe33c27b6e4288b306a8e88d20d5e0e26f6e Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-03-26arm64: rk3308_linux_defconfig: enable all led trigger typesZiyuan Xu
Change-Id: Icf8ec0890ab93086075c102aec7f872410ca0e86 Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-03-26arm64: rk3308_linux_defconfig: add ext2 supportHans Yang
Change-Id: Ia115f944a3dc7c2d0cfcac3d887da40ab18d9166 Signed-off-by: Hans Yang <yhx@rock-chips.com>
2018-03-26arm64: configs: rk3308_linux_defconfig: enable SND_PROC_FSSugar Zhang
Change-Id: I8c55107df5ec417103deb7d6ab849120be2524b1 Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26arm64: dts: rk3308-evb-dmic-i2s: add i2s digital mic array soundSugar Zhang
Change-Id: If1d0d4325a2369da0ecf471a58b982c8a00f7f28 Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26arm64: configs: rk3308: enable dummy codec and multicodec soundSugar Zhang
Change-Id: I4385f2a5cf3ebb5b0b7a89835ce24c14cbb96831 Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26ASoC: rockchip: add support for multicodecs soundSugar Zhang
Change-Id: I77d3e9c10d03c2b8809c6d82b5268dba279ee6f0 Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26ASoC: codec: add dummy codec for rockchipSugar Zhang
Change-Id: I86cb74994d49178525e15b61b5056fd3995e904d Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26arm64: dts: rockchip: add i2s, pdm for rk3308Sugar Zhang
Change-Id: I9fdc000223ad2f5dbf69e31d67a5bc7b3bc4467d Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26arm64: configs: enable i2s/tdm for rockchip defconfigSugar Zhang
Change-Id: If8b4935dab761330693e11d24fb8197acbe97b08 Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26ASoC: rockchip: add support for rockchip i2s/tdm controllerSugar Zhang
This patch is add for rockchip i2s/tdm controller. Change-Id: I428e311402220ff14441c48e13fa51356ced46e8 Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26arm64: dts: rockchip: rk3308: Add pvtm nodeFinley Xiao
Change-Id: I8d31a58478281b7e16a7de2016e65ba4b8701c72 Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-03-26soc: rockchip: pvtm: Add support for RK3308 SoCsFinley Xiao
This adds the necessary data for handling pvtm on the rk3308. Change-Id: I54860da4aeea2c4c05fec717d73152a69d30a24f Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-03-26BACKPORT: FROMLIST: clk: rockchip: Fix wrong parent for SDMMC phase clock ↵Shawn Lin
for rk3228 commit c420c1e4db229a ("clk: rockchip: Prevent calculating mmc phase if clock rate is zero") catches one gremlin again for clk-rk3228.c that the parent of SDMMC phase clock should be sclk_sdmmc0, but not sclk_sdmmc. However, I don't like the name of sclk_sdmmc0, so I now rename it to be sclk_sdmmc. Change-Id: I1cf16aa1c639ce4776347b40a36bde241c800c03 Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> (cherry-picked from https://patchwork.kernel.org/patch/10298427/)
2018-03-26BACKPORT: FROMLIST: clk: rockchip: Fix wrong parents for MMC phase clock for ↵Shawn Lin
rk3328 commit c420c1e4db22 ("clk: rockchip: Prevent calculating mmc phase if clock rate is zero") catches some gremlins for clk-rk3328.c that the parents of MMC phase clock should be clk_{sdmmc, sdio, emmc}, but not sclk_{sdmmc, sdio, emmc}. Change-Id: I714d031e33dcbed120bd5c9c514f7a1d65446c18 Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> (cherry-picked from https://patchwork.kernel.org/patch/10298425/)
2018-03-24arm64: rk3308_linux_defconfig: remove px30 supportTao Huang
remove RK817/MIPI/CPU_PX30 Change-Id: I0ca1f705f9f5ce3ea5128728fb487f6aead9a905 Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-24arm64: dts: rockchip: fix rktimer irq for px30Tao Huang
Fixes: fd769fde5b4c ("arm64: dts: px30: support cpu/cluster idle") Change-Id: I1e95e21fa0304fe87ef7adba238e41294c5429cb Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-24arm64: dts: rockchip: fixup bluetooth configurationZiyuan Xu
The clk_rtc_32k is used as crystal input for wifi & bt device on rk3308-evb-v10 board, and it should be always enabled. Reivse the "BT,reset-gpio" to "BT,power-gpio" which the original is not correspond to BT_REG_ON. Change-Id: I210e5386d93fdd3004f483ab877e590f42e7ef83 Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-03-24arm64: dts: rockchip: reference fiq debugger for rk3308-evb-rev1 boardHuibin Hong
Change-Id: I665233589518a2640777303c71189e3f376d3b1f Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-24arm64: dts: rockchip: reference fiq debugger node for rk3308 fpgaHuibin Hong
Change-Id: Ib6fd9d2af2839e0806c6039da964ffc235d4ac9b Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-24arm64: dts: rockchip: Add fiq debugger node for rk3308Huibin Hong
Change-Id: Ie64336bd0046c1a5619e243775ed6807b0568118 Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>