Commit Graph

226 Commits

Author SHA1 Message Date
Liang Chen
a8bfdf7855 nvmem: rockchip-otp: enable ecc and ecc-check for rk3568
Change-Id: I1bc8880d7ba8c3236d51d6982bf3689063d907b9
Signed-off-by: Liang Chen <cl@rock-chips.com>
2021-02-08 17:19:57 +08:00
Finley Xiao
92b14c36c7 nvmem: rockchip-otp: Add support for rk3568-otp
This adds the necessary data for handling efuse on the rk3568.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ia74d77b68a6303223eaccdc08e882851a917f50f
2020-11-19 17:27:42 +08:00
Finley Xiao
30c2580e53 nvmem: rockchip-efuse: Add mutex lock for rk1808 efuse read
The rk1808 efuse read has some issues when several threads start to read
efuse through nvmem file node.

Thread1                                    thread2
1. timing_init
2.  write auto_ctrl
3.    delay                                  timing_init
4.      read status                            write auto_ctrl
5.        if error goto to timing_deinit         delay

The thread1 will read no finish bit and then goto error, the user will
see a "Input/Output Error".

The thread1 do timing deinit will cause thread2 halt on read status, and
the user will never success to do read efuse again.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I3f462afd844686aac153acc0c33215fbd96827a3
2020-10-23 09:05:51 +08:00
Sugar Zhang
0e5a994307 nvmem: rockchip-otp: Add write protection for oem zone
This patch reserved 16 bytes at the tail for write protection
and future extension.

+----------+------------------+--------------------------+
| TYPE     | RANGE(byte)      | NOTE                     |
+----------+------------------+--------------------------+
| system   | 0x000 ~ 0x0ff    | system info, read only   |
+----------+------------------+--------------------------+
| oem      | 0x100 ~ 0x1ef    | for customized           |
+----------+------------------+--------------------------+
| reserved | 0x1f0 ~ 0x1f7    | future extension         |
+----------+------------------+--------------------------+
| wp       | 0x1f8 ~ 0x1ff    | write protection for oem |
+----------+------------------+--------------------------+

+-----+    +------------------+
| wp  | -- | wp for oem range |
+-----+    +------------------+
| 1f8 |    | 0x100 ~ 0x11f    |
+-----+    +------------------+
| 1f9 |    | 0x120 ~ 0x13f    |
+-----+    +------------------+
| 1fa |    | 0x140 ~ 0x15f    |
+-----+    +------------------+
| 1fb |    | 0x160 ~ 0x17f    |
+-----+    +------------------+
| 1fc |    | 0x180 ~ 0x19f    |
+-----+    +------------------+
| 1fd |    | 0x1a0 ~ 0x1bf    |
+-----+    +------------------+
| 1fe |    | 0x1c0 ~ 0x1df    |
+-----+    +------------------+
| 1ff |    | 0x1e0 ~ 0x1ef    |
+-----+    +------------------+

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: If23bb8d77d684a3bff5797e35914c1f897c69fb0
2020-10-15 19:42:14 +08:00
Sugar Zhang
fd2a7f4f91 nvmem: rockchip-otp: Add magic-number for enable otp write func
This patch add magic for enable otp write func to avoid unexpected written.

e.g.:

echo 1380926283 > /sys/module/nvmem_rockchip_otp/parameters/rockchip_otp_wr_magic

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I0d2d5fe97de4f69f2a30142d62a21e17d818d98f
2020-10-15 19:34:13 +08:00
Tao Huang
48f4e7f7c2 Merge tag 'ASB-2020-09-05_4.19-stable' of https://android.googlesource.com/kernel/common
https://source.android.com/security/bulletin/2020-09-01
CVE-2020-0402
CVE-2020-0404
CVE-2020-0407

* tag 'ASB-2020-09-05_4.19-stable': (3616 commits)
  Linux 4.19.143
  ALSA: usb-audio: Update documentation comment for MS2109 quirk
  HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage()
  tpm: Unify the mismatching TPM space buffer sizes
  usb: dwc3: gadget: Handle ZLP for sg requests
  usb: dwc3: gadget: Fix handling ZLP
  usb: dwc3: gadget: Don't setup more than requested
  btrfs: check the right error variable in btrfs_del_dir_entries_in_log
  usb: storage: Add unusual_uas entry for Sony PSZ drives
  USB: cdc-acm: rework notification_buffer resizing
  USB: gadget: u_f: Unbreak offset calculation in VLAs
  USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb()
  USB: gadget: u_f: add overflow checks to VLA macros
  usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe()
  USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge
  USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D
  USB: quirks: Add no-lpm quirk for another Raydium touchscreen
  usb: uas: Add quirk for PNY Pro Elite
  USB: yurex: Fix bad gfp argument
  drm/amd/pm: correct Vega12 swctf limit setting
  ...

Change-Id: Iece02c55e9b3446bdda5dc7bdfbe3e310b2dbc83

Conflicts:
	arch/arm/boot/dts/rk322x.dtsi
	arch/arm64/boot/dts/rockchip/rk3399.dtsi
	arch/arm64/kernel/cpuinfo.c
	drivers/clk/clk.c
	drivers/clk/rockchip/clk-cpu.c
	drivers/clk/rockchip/clk-rk3228.c
	drivers/devfreq/governor_simpleondemand.c
	drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
	drivers/gpu/drm/drm_edid.c
	drivers/hid/usbhid/hid-core.c
	drivers/media/i2c/ov5695.c
	drivers/media/v4l2-core/v4l2-ioctl.c
	drivers/regulator/core.c
	drivers/thermal/cpu_cooling.c
	drivers/usb/core/quirks.c
	drivers/usb/dwc2/platform.c
	drivers/usb/dwc3/core.c
	drivers/usb/dwc3/core.h
	drivers/usb/dwc3/gadget.c
	drivers/usb/host/ehci-platform.c
	drivers/usb/storage/unusual_uas.h
	include/drm/drm_connector.h
	include/linux/clk-provider.h
	include/linux/devfreq.h
	include/linux/pci_ids.h
	kernel/power/wakeup_reason.c
	mm/memory.c
	mm/swapfile.c
2020-09-24 17:59:50 +08:00
Sugar Zhang
6f4194b6e8 nvmem: rockchip-otp: Add mutex for read/write
Change-Id: I4d8b1b3d8e4ad729d3beeccf2357342e45643676
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2020-09-10 15:06:15 +08:00
Sugar Zhang
c5151429e9 nvmem: rockchip-otp: Add support for oem zone write
The oem zone ranges from 256 to 511 bytes. userspace
can read/write the raw NVMEM file located at
/sys/bus/nvmem/devices/rockchip-otp0/nvmem

The rest of otp which ranging from 0 to 255 bytes is
used for system, it is protected by hardware, any writes
to this range will be ignored and not take effect.

e.g.

/#hexdump -C /sys/bus/nvmem/devices/rockchip-otp0/nvmem
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
*
00000100  ff ff ff ff ff ff ff ff  0f 0f 0f 0f 0f 0f 0f 0f
00000110  00 01 02 03 04 05 06 07  08 09 0a 0b 0c 0d 0e 0f
00000120  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
*
00000200

Change-Id: I3e222d87525887fd5a38aa724e97f2dd163345aa
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2020-09-10 15:06:15 +08:00
Tao Huang
ab3221eae8 nvmem: core: Call nvmem_init() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
rockchip_otp_module_init() depends on nvmem_init() to init nvmem_bus_type.
But rockchip_otp_module_init() and nvmem_init() are both in the same
subsys_initcall level.

Change-Id: I58bc66519fb76179be3e6a170048a67c0861b224
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2020-06-22 18:48:26 +08:00
Greg Kroah-Hartman
d8cc60ec42 This is the 4.19.128 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl7hNfEACgkQONu9yGCS
 aT5aTxAAtqnRa7AYVX4u/pXURNOTJ4pWjI0kL2P9GBncphzLWVuvJ2GgXg12L5ZO
 gqZww3Qha9XRYtx+6KBOnG6BaH+4xVhAh1SxbVxrpkfjwQTCd/+3kI6YszKxnKV8
 eg0lf8ZMaF9zZkEqlMUINASvQfS0yJu68VsiCKuJOTiakVBdxNbCKAxhzdcVat3w
 JKUYR3M+EF4kEgytL2qr0rhyiEKCOu7zf1KDgQvuqJDiB68gepsyRPDDJzO8ttDd
 NWxyTb0JPu19AVZjlAG+YhnFrQRKrhD+ToQ44t3ze3/TXZ2PqsgYa2MqvZDLBOEe
 JxGV+3k7BINlCoz/1T9wm9JJKTanvWAFd9URmxcqwZRKddcX2gumbzpObEQ/o/Xg
 I/AjXAcNV3jWSCeVXkiXe598RPvJpn65Khg8NBojUSTN0prZCwGw9BrISKtIWhT3
 CBjzaXfbCQjMgetMoChVQzHzVPIZ80VrX0QXFOy4mJ6qixKmLU6UZPE7IeGc2MT8
 okVN+QxCkKE5TKF0YTepT8MNiKdmphEIRG266V+wZn9546NB2iQRq+6TgvvPhtSh
 9q9e0Z37ynTHaYFAUYM9u5VEzaGB1+cuq1mz1RVLwfU6aFhw2pcsSzWeroWODGKO
 Fm8YbEOFXNb6riHlQrdUrOoZ7uHg4/m40lv0GM90l2BsMRqPrhY=
 =w9Sc
 -----END PGP SIGNATURE-----

Merge 4.19.128 into android-4.19-stable

Changes in 4.19.128
	devinet: fix memleak in inetdev_init()
	l2tp: add sk_family checks to l2tp_validate_socket
	l2tp: do not use inet_hash()/inet_unhash()
	net: usb: qmi_wwan: add Telit LE910C1-EUX composition
	NFC: st21nfca: add missed kfree_skb() in an error path
	vsock: fix timeout in vsock_accept()
	net: check untrusted gso_size at kernel entry
	USB: serial: qcserial: add DW5816e QDL support
	USB: serial: usb_wwan: do not resubmit rx urb on fatal errors
	USB: serial: option: add Telit LE910C1-EUX compositions
	iio: vcnl4000: Fix i2c swapped word reading.
	usb: musb: start session in resume for host port
	usb: musb: Fix runtime PM imbalance on error
	vt: keyboard: avoid signed integer overflow in k_ascii
	tty: hvc_console, fix crashes on parallel open/close
	staging: rtl8712: Fix IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK
	CDC-ACM: heed quirk also in error handling
	nvmem: qfprom: remove incorrect write support
	x86/cpu: Add a steppings field to struct x86_cpu_id
	x86/cpu: Add 'table' argument to cpu_matches()
	x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation
	x86/speculation: Add SRBDS vulnerability and mitigation documentation
	x86/speculation: Add Ivy Bridge to affected list
	uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned
	Revert "net/mlx5: Annotate mutex destroy for root ns"
	Linux 4.19.128

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: If3a899efc4809d24257107dd0016a97beb3cb6e9
2020-06-11 09:16:29 +02:00
Srinivas Kandagatla
f858a997ee nvmem: qfprom: remove incorrect write support
commit 8d9eb0d6d5 upstream.

qfprom has different address spaces for read and write. Reads are
always done from corrected address space, where as writes are done
on raw address space.
Writing to corrected address space is invalid and ignored, so it
does not make sense to have this support in the driver which only
supports corrected address space regions at the moment.

Fixes: 4ab11996b4 ("nvmem: qfprom: Add Qualcomm QFPROM support.")
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Cc: stable <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20200522113341.7728-1-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-06-10 21:35:00 +02:00
Finley Xiao
198e833164 nvmem: rockchip-otp: Add initialization for rv1126
Change-Id: I8cf5da4fc87927e140ac6cc9a7e0ec709908f1d9
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-05-25 18:20:37 +08:00
Finley Xiao
0b84208d4d nvmem: rockchip-otp: Add support for rv1126-otp
This adds the necessary data for handling efuse on the rv1126.

Change-Id: Id46ae2354674482ca1e2d69888acce3028f0f902
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-05-25 18:19:55 +08:00
Tao Huang
5572fc7fe8 nvmem: rockchip-otp: refactor rockchip_data
Add clocks and reg_read to rockchip_data, allow support more SoCs.

Change-Id: I45271d69dae808d741c953ce61b921b9a3d21202
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2020-05-09 14:51:50 +08:00
Finley Xiao
d821f78322 nvmem: rockchip-efuse: Update driver to use clk_bulk array APIs
Change-Id: I0489a992ed7edb3317b1b5a57522df3a5374cec2
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-05-09 14:08:55 +08:00
Finley Xiao
3758737250 nvmem: rockchip-otp: Add support to initialize otp when probe
Change-Id: I6ae99f68394787fc2e8e6868d788390f271073ed
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-05-09 10:30:14 +08:00
Srinivas Kandagatla
434446e794 BACKPORT: nvmem: core: add NVMEM_SYSFS Kconfig
Many nvmem providers are not very keen on having default sysfs
nvmem entry, as most of the usecases for them are inside kernel
itself. And in some cases read/writes to some areas in nvmem are
restricted and trapped at secure monitor level, so accessing them
from userspace would result in board reboots.

This patch adds new NVMEM_SYSFS Kconfig to make binary sysfs entry
an optional one. This provision will give more flexibility to users.
This patch also moves existing sysfs code to a new file so that its
not compiled in when its not really required.

Bug: 154188491
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Gaurav Kohli <gkohli@codeaurora.org>
Tested-by: Gaurav Kohli <gkohli@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit ae0c2d7255)
Signed-off-by: Will McVicker <willmcvicker@google.com>
[willmcvicker: resolved trivial merge conflicts]
Change-Id: I648edb8d43fc7c2437c415b999c41657a6d11554
2020-04-16 12:19:27 -07:00
Bartosz Golaszewski
e96a106255 UPSTREAM: nvmem: add support for cell info
Add new structs and routines allowing users to define nvmem cells from
machine code. This global list of entries is parsed when a provider
is registered and cells are associated with the relevant nvmem_device
struct.

A possible improvement for the future is to allow users to register
cell tables after the nvmem provider has been registered by updating
the cell list at each call to nvmem_(add|del)_cell_table().

Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit b985f4cba6)
Signed-off-by: Will McVicker <willmcvicker@google.com>
[willmcvicker: fix trivial merge conflicts]
Change-Id: I4070c4c5d12aa9f555e55ec1f5edccee6395ca7b
2020-04-16 12:19:27 -07:00
Bartosz Golaszewski
ea3f6572ec UPSTREAM: nvmem: remove the global cell list
Nvmem subsystem keeps a global list of cells that, for non-DT systems,
can only be referenced by cell name, which makes it impossible to have
more than one nvmem device with cells named the same.

This patch makes every nvmem device the owner of the list of its cells.
This effectively removes the support for non-DT systems, but it will
be reintroduced following a different approach in subsequent patches.

This isn't a problem as support for board files in nvmem is currently
broken anyway: any user that would try to get an nvmem cell from the
global cell list would remove the cell after the calling
nvmem_cell_put(). This can cause anything from a subsequent user not
being able to get the cell to double free errors if more users hold
reference to the same cell at the same time.

Fortunately there are no such users which allows us to rework this part.

Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit c7235ee3f4)
Signed-off-by: Will McVicker <willmcvicker@google.com>
[willmcvicker: fix trivial merge conflicts]
Change-Id: Ibedab956757f5eb94c3c6ff3a1476121624a9234
2020-04-16 12:19:26 -07:00
Bartosz Golaszewski
38697b7c72 UPSTREAM: nvmem: use kref
Use kref for reference counting. Use an approach similar to the one
seen in the common clock subsystem: don't actually destroy the nvmem
device until the last user puts it. This way we can get rid of the
users check from nvmem_unregister().

Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit c1de7f43bd)
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I4c05a0614255d72163b79526324e41dd4b0100ef
2020-04-16 12:19:26 -07:00
Bartosz Golaszewski
8c9e954cea UPSTREAM: nvmem: use list_for_each_entry_safe in nvmem_device_remove_all_cells()
Use the provided helper for iterating over list entries without having
to use the list_entry() macro.

Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 1852183e14)
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: Ied3a7cd16d39e1adf977a4f0ca9c3ce23ca080ef
2020-04-16 12:19:26 -07:00
Bartosz Golaszewski
9320809c47 UPSTREAM: nvmem: provide nvmem_dev_name()
Kernel users don't have any means of checking the names of nvmem
devices. Add a routine that returns the name of the nvmem provider.

This will be useful for future nvmem notifier subscribers - otherwise
they can't check what device is being added/removed.

Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit d7b9fd1669)
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: Iecea6bb4844e87eadd4225b08c789a58029438d9
2020-04-16 12:19:26 -07:00
Tao Huang
06a7fcfc9a Merge remote branch 'android-4.19' of https://android.googlesource.com/kernel/common
* android-4.19: (1190 commits)
  ANDROID: update the ABI xml representation
  ANDROID: GKI: Enable V4L2 hidden configs
  ANDROID: GKI: Enable CONFIG_BACKLIGHT_CLASS_DEVICE in gki_defconfig
  ANDROID: Incremental fs: Add INCFS_IOC_PERMIT_FILL
  ANDROID: Incremental fs: Remove signature checks from kernel
  ANDROID: Incremental fs: Pad hash blocks
  ANDROID: Incremental fs: Make fill block an ioctl
  ANDROID: Incremental fs: Remove all access_ok checks
  Linux 4.19.111
  batman-adv: Avoid free/alloc race when handling OGM2 buffer
  efi: Add a sanity check to efivar_store_raw()
  net/smc: cancel event worker during device removal
  net/smc: check for valid ib_client_data
  ipv6: restrict IPV6_ADDRFORM operation
  i2c: acpi: put device when verifying client fails
  iommu/vt-d: Ignore devices with out-of-spec domain number
  iommu/vt-d: Fix the wrong printing in RHSA parsing
  netfilter: nft_tunnel: add missing attribute validation for tunnels
  netfilter: nft_payload: add missing attribute validation for payload csum flags
  netfilter: cthelper: add missing attribute validation for cthelper
  ...

Conflicts:
	arch/arm64/configs/gki_defconfig
	arch/x86/configs/gki_defconfig
	drivers/devfreq/Kconfig
	drivers/dma-buf/dma-buf.c
	include/linux/usb/quirks.h
	kernel/sched/topology.c

Change-Id: Ibd305c952c16c253b34d822cf68c03f9ff5be7b3
2020-03-21 19:46:46 +08:00
Finley Xiao
9c60c6aa41 nvmem: rockchip-otp: Sync with upstream
Change-Id: I6d97becdeec650edddcd5ece6fe9d2e2b335e66b
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-03-13 15:52:34 +08:00
Finley Xiao
8b9f568f6e nvmem: rockchip-otp: Update driver to use reset array API
This patch also makes resets as optional.

Change-Id: I25c0be3e811fafad824dd9096a6b89b3fc7d4b47
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-03-02 18:47:14 +08:00
Finley Xiao
6ee23e43c9 nvmem: rockchip-otp: Update driver to use clk_bulk APIs
Change-Id: I684d95c617e87474843dff166e288602df9d10ad
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2020-03-02 18:47:14 +08:00
Srinivas Kandagatla
824a6c4cdf BACKPORT: nvmem: core: fix regression in of_nvmem_cell_get()
NVMEM DT support seems to be totally broken after
commit e888d445ac ("nvmem: resolve cells from DT at registration time")
Fix this!

Index used in of_nvmem_cell_get() to find cell is specific to
consumer, It can not be used for searching the cell in provider.
Use device_node instead of this to find the matching cell in device
tree case.

Fixes: e888d445ac ("nvmem: resolve cells from DT at registration time")
Reported-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Tested-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 0749aa25af
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[gkohli@codeaurora: Resolve trivial merge conflicts]
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
(cherry picked from commit 0749aa25af)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150014847
Change-Id: I856c6f71c7da7ab50966dabd700ae1513ea16fa6
2020-02-24 11:38:01 -08:00
Arnd Bergmann
630590db62 BACKPORT: nvmem: hide unused nvmem_find_cell_by_index function
nvmem_find_cell_by_index() is only called from inside an #ifdef,
so we get a build warning without CONFIG_OF:

drivers/nvmem/core.c:496:1: error: 'nvmem_find_cell_by_index' defined but not used [-Werror=unused-function]

Move it into the same #ifdef as the caller to avoid the warning.

Fixes: e888d445ac ("nvmem: resolve cells from DT at registration time")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 3c53e2352a
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[gkohli@codeaurora: Resolve trivial merge conflicts]
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
(cherry picked from commit 3c53e2352a)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150014847
Change-Id: I9259be4385810eeda4c4feebf1ebe9464228d6f8
2020-02-24 11:37:46 -08:00
Bartosz Golaszewski
0fc0aae624 BACKPORT: nvmem: resolve cells from DT at registration time
Currently we're creating a new cell structure everytime a DT user
calls nvmem_cell_get().

Change this behavior by resolving the cells during nvmem provider
registration and adding all cells to the provider's list. Make
of_nvmem_cell_get() just parse the phandle and look the cell up
in the relevant provider's list.

Don't drop the cell in nvmem_cell_put().

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: e888d445ac
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
(cherry picked from commit e888d445ac)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150014847
Change-Id: Ic1372c4179da11814f5622d4999c7c87e6c2986a
2020-02-24 11:37:00 -08:00
Tao Huang
ad61dfe590 Merge tag 'ASB-2020-02-05_4.19' of https://android.googlesource.com/kernel/common
https://source.android.com/security/bulletin/2020-02-01
CVE-2020-0030
CVE-2019-11599

* tag 'ASB-2020-02-05_4.19': (4206 commits)
  UPSTREAM: sched/fair/util_est: Implement faster ramp-up EWMA on utilization increases
  ANDROID: Re-use SUGOV_RT_MAX_FREQ to control uclamp rt behavior
  BACKPORT: sched/fair: Make EAS wakeup placement consider uclamp restrictions
  BACKPORT: sched/fair: Make task_fits_capacity() consider uclamp restrictions
  ANDROID: sched/core: Move SchedTune task API into UtilClamp wrappers
  ANDROID: sched/core: Add a latency-sensitive flag to uclamp
  ANDROID: sched/tune: Move SchedTune cpu API into UtilClamp wrappers
  ANDROID: init: kconfig: Only allow sched tune if !uclamp
  FROMGIT: sched/core: Fix size of rq::uclamp initialization
  FROMGIT: sched/uclamp: Fix a bug in propagating uclamp value in new cgroups
  FROMGIT: sched/uclamp: Rename uclamp_util_with() into uclamp_rq_util_with()
  FROMGIT: sched/uclamp: Make uclamp util helpers use and return UL values
  FROMGIT: sched/uclamp: Remove uclamp_util()
  BACKPORT: sched/rt: Make RT capacity-aware
  UPSTREAM: tools headers UAPI: Sync sched.h with the kernel
  UPSTREAM: sched/uclamp: Fix overzealous type replacement
  UPSTREAM: sched/uclamp: Fix incorrect condition
  UPSTREAM: sched/core: Fix compilation error when cgroup not selected
  UPSTREAM: sched/core: Fix uclamp ABI bug, clean up and robustify sched_read_attr() ABI logic and code
  UPSTREAM: sched/uclamp: Always use 'enum uclamp_id' for clamp_id values
  ...

Conflicts:
	drivers/char/random.c
	drivers/devfreq/devfreq.c
	drivers/gpu/drm/drm_fb_helper.c
	drivers/media/i2c/ov2680.c
	drivers/media/i2c/ov2685.c
	drivers/media/i2c/ov5670.c
	drivers/media/i2c/ov5695.c
	drivers/media/usb/uvc/uvc_driver.c
	drivers/mmc/host/cqhci.c
	drivers/spi/spi-rockchip.c
	drivers/usb/dwc2/params.c
	drivers/usb/dwc3/debugfs.c
	drivers/usb/dwc3/gadget.c
	drivers/usb/serial/usb_wwan.c
	include/linux/clk-provider.h
	include/linux/mfd/rk808.h
	kernel/cpu.c
	sound/usb/quirks.c

- Export symbol mm_trace_rss_stat on mm/memory.c for GPU drivers.
- Fix sound/usb/pcm.c for SNDRV_PCM_TRIGGER_SUSPEND.
- Enable DEBUG_FS which is not selected by TRACING.
- Disable of_devlink which broken boot. of_devlink is enabled by commit
  ba3aa33b8f ("ANDROID: of: property: Enable of_devlink by default").
- Add CLK_DONT_HOLD_STATE and CLK_KEEP_REQ_RATE to clk_flags
  on drivers/clk/clk.c.

Change-Id: I500ca1bbc735753f9c8251ed2ac8ad757d5a24a4
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2020-02-17 16:00:29 +08:00
Bryan O'Donoghue
3fda892563 nvmem: imx-ocotp: Change TIMING calculation to u-boot algorithm
[ Upstream commit 159dbaf57b ]

The RELAX field of the OCOTP block is turning out as a zero on i.MX8MM.
This messes up the subsequent re-load of the fuse shadow registers.

After some discussion with people @ NXP its clear we have missed a trick
here in Linux.

The OCOTP fuse programming time has a physical minimum 'burn time' that is
not related to the ipg_clk.

We need to define the RELAX, STROBE_READ and STROBE_PROG fields in terms of
desired timings to allow for the burn-in to safely complete. Right now only
the RELAX field is calculated in terms of an absolute time and we are
ending up with a value of zero.

This patch inherits the u-boot timings for the OCOTP_TIMING calculation on
the i.MX6 and i.MX8. Those timings are known to work and critically specify
values such as STROBE_PROG as a minimum timing.

Fixes: 0642bac7da ("nvmem: imx-ocotp: add write support")

Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
Suggested-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-01-27 14:50:58 +01:00
Bryan O'Donoghue
bb3da5e735 nvmem: imx-ocotp: Ensure WAIT bits are preserved when setting timing
[ Upstream commit 0493c4792b ]

The i.MX6 and i.MX8 both have a bit-field spanning bits 27:22 called the
WAIT field.

The WAIT field according to the documentation for both parts "specifies
time interval between auto read and write access in one time program. It is
given in number of ipg_clk periods."

This patch ensures that the relevant field is read and written back to the
timing register.

Fixes: 0642bac7da ("nvmem: imx-ocotp: add write support")

Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-01-27 14:50:58 +01:00
Lucas Stach
f8aae26fa6 nvmem: imx-ocotp: reset error status on probe
[ Upstream commit c33c585f1b ]

If software running before the OCOTP driver is loaded left the
controller with the error status pending, the driver will never
be able to complete the read timing setup. Reset the error status
on probe to make sure the controller is in usable state.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20191029114240.14905-6-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-31 16:35:37 +01:00
Srinivas Kandagatla
88e9f8198d nvmem: core: return error code instead of NULL from nvmem_device_get
[ Upstream commit ca6ac25cec ]

nvmem_device_get() should return ERR_PTR() on error or valid pointer
on success, but one of the code path seems to return NULL, so fix it.

Reported-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-20 18:46:31 +01:00
Tao Huang
70f1413e90 Merge remote branch 'android-4.19' of https://android.googlesource.com/kernel/common
* android-4.19: (2854 commits)
  ANDROID: move up spin_unlock_bh() ahead of remove_proc_entry()
  BACKPORT: arm64: tags: Preserve tags for addresses translated via TTBR1
  UPSTREAM: arm64: memory: Implement __tag_set() as common function
  UPSTREAM: arm64/mm: fix variable 'tag' set but not used
  UPSTREAM: arm64: avoid clang warning about self-assignment
  ANDROID: sdcardfs: evict dentries on fscrypt key removal
  ANDROID: fscrypt: add key removal notifier chain
  ANDROID: refactor build.config files to remove duplication
  ANDROID: Move from clang r353983c to r365631c
  ANDROID: gki_defconfig: remove PWRSEQ_EMMC and PWRSEQ_SIMPLE
  ANDROID: unconditionally compile sig_ok in struct module
  Linux 4.19.80
  perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization
  PCI: vmd: Fix config addressing when using bus offsets
  x86/asm: Fix MWAITX C-state hint value
  hwmon: Fix HWMON_P_MIN_ALARM mask
  tracing: Get trace_array reference for available_tracers files
  ftrace: Get a reference counter for the trace_array on filter files
  tracing/hwlat: Don't ignore outer-loop duration when calculating max_latency
  tracing/hwlat: Report total time spent in all NMIs during the sample
  ...

Conflicts:
	drivers/clk/rockchip/clk-mmc-phase.c
	drivers/gpu/drm/rockchip/rockchip_drm_vop.c
	drivers/regulator/core.c
	drivers/tty/serial/8250/8250_port.c
	drivers/usb/dwc3/core.h
	drivers/usb/dwc3/gadget.c
	drivers/usb/dwc3/gadget.h

Change-Id: I65599d770d6613caba14251b890fcfd1cfa0f100
2019-10-28 20:26:28 +08:00
Jean Delvare
96c08711fc nvmem: Use the same permissions for eeprom as for nvmem
commit e70d8b2873 upstream.

The compatibility "eeprom" attribute is currently root-only no
matter what the configuration says. The "nvmem" attribute does
respect the setting of the root_only configuration bit, so do the
same for "eeprom".

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Fixes: b6c217ab9b ("nvmem: Add backwards compatibility support for older EEPROM drivers.")
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20190728184255.563332e6@endymion
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-09-19 09:09:41 +02:00
Liang Chen
bacee35694 nvmem: rockchip-efuse: clear efuse timing after read
Clear efuse timing after read to avoid efuse misoperation.

Change-Id: I459d01af9c9a84ab6c621e5e5cf3f01213b4f7f9
Signed-off-by: Liang Chen <cl@rock-chips.com>
2019-08-08 18:54:54 +08:00
Tao Huang
fd0e3eb0c2 Merge remote branch 'android-4.19' of https://android.googlesource.com/kernel/common
* android-4.19: (3557 commits)
  ANDROID: kernel: cgroup: cpuset: Clear cpus_requested for empty buf
  ANDROID: kernel: cgroup: cpuset: Add missing allocation of cpus_requested in alloc_trial_cpuset
  Linux 4.19.53
  rtc: pcf8523: don't return invalid date when battery is low
  drm: add fallback override/firmware EDID modes workaround
  drm/edid: abstract override/firmware EDID retrieval
  x86/resctrl: Prevent NULL pointer dereference when local MBM is disabled
  x86/mm/KASLR: Compute the size of the vmemmap section properly
  x86/kasan: Fix boot with 5-level paging and KASAN
  x86/microcode, cpuhotplug: Add a microcode loader CPU hotplug callback
  RAS/CEC: Fix binary search function
  RAS/CEC: Convert the timer callback to a workqueue
  timekeeping: Repair ktime_get_coarse*() granularity
  USB: serial: option: add Telit 0x1260 and 0x1261 compositions
  USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode
  USB: serial: pl2303: add Allied Telesis VT-Kit3
  USB: usb-storage: Add new ID to ums-realtek
  USB: Fix chipmunk-like voice when using Logitech C270 for recording audio.
  usb: dwc2: host: Fix wMaxPacketSize handling (fix webcam regression)
  usb: dwc2: Fix DMA cache alignment issues
  ...

Conflicts:
	arch/arm/boot/dts/rk3288.dtsi
	drivers/bluetooth/hci_ldisc.c
	drivers/clk/clk-fractional-divider.c
	drivers/clk/rockchip/clk-rk3288.c
	drivers/gpu/drm/rockchip/rockchip_drm_vop.c
	init/main.c
	kernel/sched/fair.c

Change-Id: I8bcf9aad06fe9648fc2621bac8475a47be1212fb
2019-06-22 22:26:14 +08:00
Chen-Yu Tsai
1c2e974628 nvmem: sunxi_sid: Support SID on A83T and H5
[ Upstream commit da75b89097 ]

The device tree binding already lists compatible strings for these two
SoCs. They don't have the defect as seen on the H3, and the size and
register layout is the same as the A64. Furthermore, the driver does
not include nvmem cell definitions.

Add support for these two compatible strings, re-using the config for
the A64.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-06-15 11:54:07 +02:00
Jorge Ramirez-Ortiz
0412a88571 nvmem: core: fix read buffer in place
[ Upstream commit 2fe518fecb ]

When the bit_offset in the cell is zero, the pointer to the msb will
not be properly initialized (ie, will still be pointing to the first
byte in the buffer).

This being the case, if there are bits to clear in the msb, those will
be left untouched while the mask will incorrectly clear bit positions
on the first byte.

This commit also makes sure that any byte unused in the cell is
cleared.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-06-15 11:54:07 +02:00
Liang Chen
b2dabd05ec nvmem: rockchip-efuse: add support for rk1808-efuse
This adds the necessary data for handling efuse on the rk1808.

Change-Id: I78b66db1fdc22430ab93b07ad3c7cea3355a7f6e
Signed-off-by: Liang Chen <cl@rock-chips.com>
2019-05-13 18:04:42 +08:00
Liang Chen
2d697b2e8b nvmem: rockchip-efuse: add support for rk3128-efuse
This adds the necessary data for handling efuse on the rk3128.

Change-Id: Ieda973675ff959b3157bb4afe6e1dcdfac65506c
Signed-off-by: Liang Chen <cl@rock-chips.com>
2019-05-13 18:04:29 +08:00
Finley Xiao
eb0712d68f nvmem: rockchip-efuse: add support for rk3288 secure efuse
This adds the necessary data for handling secure efuse on the rk3288.
Need to use secure interface to access efuse when kernel is in no-secure
mode.

Change-Id: I1979f23ed8f85c9eb248de276b32adcbb165bd79
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2019-05-13 18:04:17 +08:00
Finley Xiao
6af4d023f1 nvmem: rockchip-efuse: add rk3368-efuse support
This adds the necessary data for handling efuse on the rk3368.
As efuse of rk3368 is secure, use secure interface to access efuse.

Change-Id: I72c29348b7744b232d75ab51c56dc7de0988c24e
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2019-05-13 16:50:27 +08:00
Finley Xiao
7e4c7b49f2 nvmem: rockchip-efuse: Change initcall to subsys
We will add a avs driver to adjust opp's voltage according to leakage.
As it need register a notifier before cpufreq starts, and make cpufreq
defer probe is probably not really easy, so avs should probe earlier
than cpufreq, efuse should probe earlier than avs.

Change-Id: I817aa44c3b34d2fdf44148e6b9649ceed76d8f1f
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2019-05-13 15:50:23 +08:00
Finley Xiao
dab2c42a76 nvmem: rockchip-otp: Add Rockchip OTP driver
Add simple read only driver for the OTP (One Time Programmable)
memory found on Rockchip SoCs.

Change-Id: I01c63dcacaf471ed7d06e0e8263a14e29af7fb0e
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2019-04-18 19:36:47 +08:00
Tao Huang
60a5825e9c Merge remote branch 'android-4.19' of https://android.googlesource.com/kernel/common
* android-4.19: (206154 commits)
  Linux 4.19.20
  cifs: Always resolve hostname before reconnecting
  md/raid5: fix 'out of memory' during raid cache recovery
  of: overlay: do not duplicate properties from overlay for new nodes
  of: overlay: use prop add changeset entry for property in new nodes
  of: overlay: add missing of_node_get() in __of_attach_node_sysfs
  of: overlay: add tests to validate kfrees from overlay removal
  of: Convert to using %pOFn instead of device_node.name
  mm: migrate: don't rely on __PageMovable() of newpage after unlocking it
  mm: hwpoison: use do_send_sig_info() instead of force_sig()
  mm, oom: fix use-after-free in oom_kill_process
  mm,memory_hotplug: fix scan_movable_pages() for gigantic hugepages
  oom, oom_reaper: do not enqueue same task twice
  mm/hugetlb.c: teach follow_hugetlb_page() to handle FOLL_NOWAIT
  kernel/exit.c: release ptraced tasks before zap_pid_ns_processes
  btrfs: On error always free subvol_name in btrfs_mount
  Btrfs: fix deadlock when allocating tree block during leaf/node split
  mmc: sdhci-iproc: handle mmc_of_parse() errors during probe
  platform/x86: asus-nb-wmi: Drop mapping of 0x33 and 0x34 scan codes
  platform/x86: asus-nb-wmi: Map 0x35 to KEY_SCREENLOCK
  ...

Conflicts:
	Documentation/devicetree/bindings/clock/rockchip,rk3399-cru.txt
	Documentation/devicetree/bindings/devfreq/event/rockchip-dfi.txt
	Documentation/devicetree/bindings/display/bridge/analogix_dp.txt
	Documentation/devicetree/bindings/display/rockchip/analogix_dp-rockchip.txt
	Documentation/devicetree/bindings/display/rockchip/dw_mipi_dsi_rockchip.txt
	Documentation/devicetree/bindings/display/rockchip/inno_hdmi-rockchip.txt
	Documentation/devicetree/bindings/display/rockchip/rockchip-lvds.txt
	Documentation/devicetree/bindings/media/i2c/ov2685.txt
	Documentation/devicetree/bindings/media/i2c/ov5695.txt
	Documentation/devicetree/bindings/media/i2c/ov7251.txt
	Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt
	Documentation/devicetree/bindings/phy/phy-rockchip-typec.txt
	Documentation/devicetree/bindings/phy/rockchip-dp-phy.txt
	Documentation/devicetree/bindings/phy/rockchip-emmc-phy.txt
	Documentation/devicetree/bindings/soc/rockchip/grf.txt
	Documentation/devicetree/bindings/sound/rockchip,pdm.txt
	Documentation/devicetree/bindings/timer/rockchip,rk-timer.txt
	Documentation/devicetree/bindings/usb/rockchip,dwc3.txt
	arch/arm/boot/dts/rk3036-kylin.dts
	arch/arm/boot/dts/rk3036.dtsi
	arch/arm/boot/dts/rk3228-evb.dts
	arch/arm/boot/dts/rk3229-evb.dts
	arch/arm/boot/dts/rk322x.dtsi
	arch/arm/boot/dts/rk3288-fennec.dts
	arch/arm/boot/dts/rk3288-firefly-reload.dts
	arch/arm/boot/dts/rk3288-miqi.dts
	arch/arm/boot/dts/rk3288-phycore-rdk.dts
	arch/arm/boot/dts/rk3288-phycore-som.dtsi
	arch/arm/boot/dts/rv1108.dtsi
	arch/arm64/boot/dts/rockchip/rk3328-evb.dts
	arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
	arch/arm64/boot/dts/rockchip/rk3328.dtsi
	arch/arm64/boot/dts/rockchip/rk3368-evb.dtsi
	arch/arm64/boot/dts/rockchip/rk3368-geekbox.dts
	arch/arm64/boot/dts/rockchip/rk3368-px5-evb.dts
	arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi
	arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi
	arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi
	arch/arm64/boot/dts/rockchip/rk3399.dtsi
	drivers/clk/rockchip/clk-ddr.c
	drivers/clk/rockchip/clk-half-divider.c
	drivers/clk/rockchip/clk-px30.c
	drivers/clk/rockchip/clk-rk3036.c
	drivers/clk/rockchip/clk-rk3128.c
	drivers/clk/rockchip/clk-rk3228.c
	drivers/clk/rockchip/clk-rk3328.c
	drivers/clk/rockchip/clk-rk3399.c
	drivers/clk/rockchip/clk-rv1108.c
	drivers/devfreq/event/rockchip-dfi.c
	drivers/gpu/drm/bridge/analogix/Kconfig
	drivers/gpu/drm/bridge/analogix/Makefile
	drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
	drivers/gpu/drm/bridge/analogix/analogix_dp_core.h
	drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c
	drivers/gpu/drm/bridge/dumb-vga-dac.c
	drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
	drivers/gpu/drm/rockchip/cdn-dp-core.c
	drivers/gpu/drm/rockchip/cdn-dp-core.h
	drivers/gpu/drm/rockchip/cdn-dp-reg.c
	drivers/gpu/drm/rockchip/cdn-dp-reg.h
	drivers/gpu/drm/rockchip/dw-mipi-dsi.c
	drivers/gpu/drm/rockchip/inno_hdmi.c
	drivers/gpu/drm/rockchip/inno_hdmi.h
	drivers/gpu/drm/rockchip/rockchip_lvds.c
	drivers/gpu/drm/rockchip/rockchip_vop_reg.c
	drivers/gpu/drm/rockchip/rockchip_vop_reg.h
	drivers/hid/hid-alps.c
	drivers/iio/light/vl6180.c
	drivers/leds/leds-is31fl32xx.c
	drivers/media/cec/cec-adap.c
	drivers/media/cec/cec-api.c
	drivers/media/cec/cec-notifier.c
	drivers/media/i2c/ov5647.c
	drivers/media/i2c/ov5695.c
	drivers/media/i2c/ov7251.c
	drivers/media/platform/rockchip/rga/rga.c
	drivers/media/rc/ir-imon-decoder.c
	drivers/media/rc/serial_ir.c
	drivers/media/spi/Kconfig
	drivers/media/spi/Makefile
	drivers/media/v4l2-core/v4l2-fwnode.c
	drivers/net/phy/rockchip.c
	drivers/phy/rockchip/Kconfig
	drivers/phy/rockchip/Makefile
	drivers/phy/rockchip/phy-rockchip-emmc.c
	drivers/phy/rockchip/phy-rockchip-inno-usb2.c
	drivers/phy/rockchip/phy-rockchip-typec.c
	drivers/phy/rockchip/phy-rockchip-usb.c
	drivers/pinctrl/pinctrl-rk805.c
	drivers/power/reset/reboot-mode.c
	drivers/soc/rockchip/grf.c
	drivers/usb/dwc3/dwc3-of-simple.c
	drivers/usb/gadget/udc/core.c
	include/drm/bridge/analogix_dp.h
	include/dt-bindings/clock/px30-cru.h
	include/dt-bindings/clock/rk3036-cru.h
	include/dt-bindings/clock/rk3128-cru.h
	include/dt-bindings/clock/rk3228-cru.h
	include/dt-bindings/clock/rk3328-cru.h
	include/dt-bindings/clock/rk3399-cru.h
	include/dt-bindings/power/px30-power.h
	include/dt-bindings/power/rk3036-power.h
	include/dt-bindings/power/rk3228-power.h
	include/media/cec-notifier.h
	include/soc/rockchip/rockchip_sip.h
	include/sound/hdmi-codec.h
	sound/soc/codecs/hdmi-codec.c
	sound/soc/rockchip/rockchip_pdm.c
	sound/soc/rockchip/rockchip_pdm.h

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-02-14 11:48:20 +08:00
Tao Huang
135b29c75f rk: revert to v4.4
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-02-10 00:33:21 +08:00
Liang Chen
e7daa24b40 nvmem: rockchip-efuse: add support for rk1808-efuse
This adds the necessary data for handling efuse on the rk1808.

Change-Id: I78b66db1fdc22430ab93b07ad3c7cea3355a7f6e
Signed-off-by: Liang Chen <cl@rock-chips.com>
2019-01-11 14:42:16 +08:00
Bartosz Golaszewski
1cddd3e45e nvmem: check the return value of nvmem_add_cells()
[ Upstream commit fa72d847d6 ]

This function can fail so check its return value in nvmem_register()
and act accordingly.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-11-13 11:08:35 -08:00