PD#162113: improve ap62x8 rx tput
The reason why wifi TCP rx throughtput lower than kernel3.14 are as flollows:
On K3.14, RX has more time to work in ISR, but on K4.9, RX has more time to
work in kernel ksoftirqd thread, however, ksoftirqd has a very low priority.
On K4.9, a commit from upstream caused this difference, then revert it.
Revert "softirq: Let ksoftirqd do its job"
This reverts commit 4cd13c21b2.
Change-Id: I094232dad5dfddbcd94c35ec42a5e3302ed52459
Signed-off-by: libo <bo.li@amlogic.com>
PD#166937:
not return errors when not find config.
will crashed on:
[ 9.478046@0] task: ffffffc05aea8d80 task.stack: ffffffc05a498000
[ 9.484090@0] PC is at configs_config2str+0x2c/0x240
[ 9.489001@0] LR is at configs_get_node_path_str+0x78/0xd4
[ 9.494433@0] pc : [<ffffff800982f8cc>] lr : [<ffffff80098311c8>]
pstate: 20000145
[ 9.501935@0] sp : ffffffc05a49baf0
[ 9.505386@0] x29: ffffffc05a49baf0 x28: ffffffc05a498000
Change-Id: Ia5985d3e5aa7aefecb6867e3d2ab29efc7592b9b
Signed-off-by: Zhi Zhou <zhi.zhou@amlogic.com>
PD#164751: dts: change all txlx/axg/g12a/g12b dts to use spicc upstream driver.
1. change to use the unified name "spicc0/1".
2. change axg compatible from "amlogic, spicc" to "amlogic,meson-axg-spicc"
to use upstream driver.
3. change txlx compatible from "amlogic, spicc" to "amlogic,meson-txlx-spicc"
to use upstream driver.
3. change g12a compatible from "amlogic, spicc" to "amlogic,meson-g12a-spicc"
to use upstream driver.
4. add node of "amlogic,meson-g12b-spicc" for g12b to use upstream driver.
Change-Id: I587127361fa2ada48332cc01857f2200709d597e
Signed-off-by: Sunny Luo <sunny.luo@amlogic.com>
PD#166884: optimize sd inval irq error,
when sd insert wifi running. wifi is data1.
Change-Id: I6de4f519d3bacec7d9ab4eec4fc9b0cfc6b5d07d
Signed-off-by: Nan Li <nan.li@amlogic.com>
PD#169687: pwm: meson: don't disable pwm when setting duty repeatedly
There is an abnormally low about 20ms,when setting duty repeatedly.
Because setting the duty will disable pwm and then enable.Delete
this operation now.
Change-Id: I4bca5e61b4782da3160c14d8c73cd913d7e21db3
Signed-off-by: bichao.zheng <bichao.zheng@amlogic.com>
PD#169639: hdmitx: fix a map size error when g12b return to trunk
Change-Id: If26755418cbed435533f8547f30859165b7518b2
Signed-off-by: Yi Zhou <yi.zhou@amlogic.com>
PD#168682: cec: modify the line check for g12a
Change-Id: Iad4b47e236f16313356dc9d719052c382311a913
Signed-off-by: hongmin hua <hongmin.hua@amlogic.com>
PD#168551: need to use unifykey to read/write efuse key
1.fix efuse config name to CONFIG_AMLOGIC_EFUSE
2.add correct efuse key read funciton
Change-Id: I415f1b68d5de090220b1bd96db299452af176626
Signed-off-by: Zhongfu Luo <zhongfu.luo@amlogic.com>
PD#164751: spicc: add dma and enhance features of axg/txhd/g12a/g12b.
1. fix TESTREG bits defination error;
2. fix cs-gpio error in slave setup;
3. reset fifo to avoid successive fifo error before tansfer;
4. add enhance feature of cs-preload delay control;
5. add auto io delay control;
6. add enhance feature of tt/ti delay control;
7. fix clk error which occurred certainly when sencond spicc added;
8. surpport both auto core clk and fixed core clk rate setting:
set dts "fixed_core_rate = <200000000(example)>" to use fixed
core rate. otherwise, to use auto core clk.
9. support loop-back mode;
10. support DMA transfer;
11. must delete 1000M from parent clk.
12. It will be wrong when enhance divider=2. we have to add a flag
CLK_DIVIDER_PROHIBIT_ZERO to shield against it.
Change-Id: I820a52e6d31d3fe2e3615a0f4c5a07c17d11914d
Signed-off-by: Sunny Luo <sunny.luo@amlogic.com>
PD# 169693
add region_code key to change wifi local
Change-Id: I60b52e82b69128a90fbd9f72f0de8b46ccd04e7e
Signed-off-by: Ting Wang <ting.wang@amlogic.com>
PD#169940: hdmirx: hdcp1.4 force OESS mode
Force OESS mode to fix Google Chromecast box
flashing black screen issue.
Change-Id: I1768f7b69ac1379166d88f605a4dcfab7a7044ea
Signed-off-by: yicheng shen <yicheng.shen@amlogic.com>
PD#169024: update g12b thermal ipa mode data for match power
Change-Id: Iedcb16cc9da2a47777456e041831ff60f0229c5a
Signed-off-by: Huan Biao <huan.biao@amlogic.com>
PD#168568: G12A need to support EFUSE burning
1.add child node amlogic_set in efuse
2.node amlogic_set support EFUSE pattern burning
Change-Id: Ie20a8b61678e351cf32418879d4b40228e1d365f
Signed-off-by: Zhongfu Luo <zhongfu.luo@amlogic.com>
PD#161475: ddr: fix overflow when ddr freq is high
Caculate of ddr freq will overflow if ddr freq is
over 1.5GHz, This commit fixed it.
Change-Id: Idc07b1022b52e3ec5c227c15afff1aaf21575ed7
Signed-off-by: tao zeng <tao.zeng@amlogic.com>
PD#165213:
This change can use some amlogic optimize on arm32
Change-Id: Ic364baab21431e83d9b224d0d6c58913404aed3c
Signed-off-by: tao zeng <tao.zeng@amlogic.com>
PD#168568: G12A need to support EFUSE burning
Change-Id: If85af608a03450ca5fc8557ea7d2c2c5f71fff09
Signed-off-by: Zhongfu Luo <zhongfu.luo@amlogic.com>
PD#169865: arm64: dts: g12a/g12b: correct i2c timeout interrupt number
I2c timeout interrupt number has changed since g12a SoC, the timeout
interrupt have not used in i2c controller driver, the function will
probably be added later.
Change-Id: I2aca009bacfda0bc2636e48032de71c9aa42cacb
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
PD#169594: hdmitx: update extcon_hdmi_audio after resume
Under some corner case, extcon_hdmi_audio maybe as 0.
Change-Id: I497b5f8538ffd329e1fee4fcc44c09944e77cf64
Signed-off-by: Zongdong Jiao <zongdong.jiao@amlogic.com>
PD#158474: hdmitx: add hdcp function in drm
1.update drm library files about hdcp
upstream (24557865c8)
2.add hdcp state machine
3.add hdcp 1.4
4.add hdcp 2.2
a) fix hdcp_tx22
b) add uevent for hdcp_tx22
Change-Id: If1254d2d42775ea45459b8e3072395f480bd6438
Signed-off-by: Yi Zhou <yi.zhou@amlogic.com>
PD#169274: dv: merge some dv code from 3.14, add a dolbyvision
bypass el define and metadata parser return val check.
Change-Id: I2a687d0e3187d1f56880508b4d4a3263edcdc071
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
PD#167574: perf_event: aml pmu interrupt issue fixup
amlogic arm pmu have a issue that all core's interrupts routes to
one gic SPI interrupt,
when some core raise a pmu interrupt(arm pmu counter overflow),
the global gic SPI interrupt will raise(default on cpu0),
and we can obtain core info which caused interrupt from
sys_cpu_status0 reg.
In global pmu interrupt handler we distinguish interrupts from other cpu,
then send a AML ipi interrupt and wait that cpu complete pmu interrupt.
Change-Id: I28ada689e5b94671c8cfb6189e46134c3c6804cd
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#168119: fix wrong init the clock overflow as 400MHZ for 805x
Change-Id: I26cd7c11c0aa026bc253bb40bf05ca96dac9555d
Signed-off-by: Brian Zhu <brian.zhu@amlogic.com>
PD#153299:
1. amports has v4l for video decoding implemented upstream.
2. Only the decoding of h264 has been implemented at the moment.
3. the maximun resolution supports 1080p currently.
4. it is nv12 that the canvas data format of the decoder output.
5. the detailed description can be referred to wiki.
wiki: Media/The_V4L2_Amvdec_Ports_Instructions
Change-Id: Ie19311e1f44ae53b491500be9903f3d82c83b800
Signed-off-by: Nanxin Qin <nanxin.qin@amlogic.com>
PD#164745
PD#168166
ANDROID: AVB error handler to invalidate vbmeta partition.
If androidboot.vbmeta.device is set and points to a device with vbmeta
magic, this header will be overwritten upon an irrecoverable dm-verity
error. The side-effect of this is that the slot will fail to verify on
next reboot, effectively triggering the boot loader to fallback to
another slot. This work both if the vbmeta struct is at the start of a
partition or if there's an AVB footer at the end.
This code is based on drivers/md/dm-verity-chromeos.c from ChromiumOS.
Example:
[ 0.000000] Kernel command line: rootfstype=ext4 init=/init console=ttyS0,115200 androidboot.console=ttyS0 androidboot.hardware=uefi_x86_64 enforcing=0 androidboot.selinux=permissive androidboot.debuggable=1 buildvariant=eng dm="1 vroot none ro 1,0 2080496 verity 1 PARTUUID=6779df46-78f6-4c69-bf53-59bb1fbf126b PARTUUID=6779df46-78f6-4c69-bf53-59bb1fbf126b 4096 4096 260062 260062 sha1 4f76354c86e430e27426d584a726f2fbffecae32 7e4085342d634065269631ac9a199e1a43f4632c 1 ignore_zero_blocks" root=0xfd00 androidboot.vbmeta.device=PARTUUID=b865935d-38fb-4c4e-b8b4-70dc67321552 androidboot.slot_suffix=_a androidboot.vbmeta.device_state=unlocked androidboot.vbmeta.hash_alg=sha256 androidboot.vbmeta.size=3200 androidboot.vbmeta.digest=14fe41c2b3696c31b7ad5eae7877d7d188995e1ab122c604aaaf4785850b91f7 skip_initramfs
[...]
[ 0.612802] device-mapper: verity-avb: AVB error handler initialized with vbmeta device: PARTUUID=b865935d-38fb-4c4e-b8b4-70dc67321552
[...]
[ 1.213804] device-mapper: init: attempting early device configuration.
[ 1.214752] device-mapper: init: adding target '0 2080496 verity 1 PARTUUID=6779df46-78f6-4c69-bf53-59bb1fbf126b PARTUUID=6779df46-78f6-4c69-bf53-59bb1fbf126b 4096 4096 260062 260062 sha1 4f76354c86e430e27426d584a726f2fbffecae32 7e4085342d634065269631ac9a199e1a43f4632c 1 ignore_zero_blocks'
[ 1.217643] device-mapper: init: dm-0 is ready
[ 1.226694] device-mapper: verity: 8:6: data block 0 is corrupted
[ 1.227666] device-mapper: verity-avb: AVB error handler called for PARTUUID=b865935d-38fb-4c4e-b8b4-70dc67321552
[ 1.234308] device-mapper: verity-avb: invalidate_vbmeta: found vbmeta partition
[ 1.235848] device-mapper: verity-avb: invalidate_vbmeta: completed.
[...]
Bug: 31622239
Test: Manually tested (other arch).
Change-Id: Idf6be32d6a3d28e15de9302aa26ad6a516d663aa
Signed-off-by: David Zeuthen <zeuthen@google.com>
Change-Id: I4b9229dbba3198ca55a00812e42762f424b59ec4
Signed-off-by: Mingyen Hung <mingyen.hung@amlogic.com>
Signed-off-by: Xindong Xu <xindong.xu@amlogic.com>
Signed-off-by: Matthew Shyu <matthew.shyu@amlogic.com>
PD#164751: clk: add CLK_DIVIDER_PROHIBIT_ZERO to prohibit value 0 of
register.
There is a possible error when spicc clk divider register value is 0.
It's easy and effective to resolve this problem with this flag.
Change-Id: I046f3ee6e35b98211a13be3390b847a5a75ec3c8
Signed-off-by: Sunny Luo <sunny.luo@amlogic.com>
PD#169014:
1. fix race condition in Aml HW crypto driver
A flag is added in irq handler for distinguishing
the source of interrupt since all crypto modules
share the same dma thread
2. Enable arm64 crypto
Arm64 crypto is synchronous and thus is able to
pass net cts tests for UDP
Change-Id: I2fe4f44a0b386e1e5d234d0ba07d17ffdc3224a7
Signed-off-by: Matthew Shyu <matthew.shyu@amlogic.com>
PD#158474: drm: Add Content Protection property
This patch adds a new optional connector property to allow userspace to enable
protection over the content it is displaying. This will typically be implemented
by the driver using HDCP.
The property is a tri-state with the following values:
- OFF: Self explanatory, no content protection
- DESIRED: Userspace requests that the driver enable protection
- ENABLED: Once the driver has authenticated the link, it sets this value
The driver is responsible for downgrading ENABLED to DESIRED if the link becomes
unprotected. The driver should also maintain the desiredness of protection
across hotplug/dpms/suspend.
If this looks familiar, I posted [1] this 3 years ago. We have been using this
in ChromeOS across exynos, mediatek, and rockchip over that time.
Changes in v2:
- Pimp kerneldoc for content_protection_property (Daniel)
- Drop sysfs attribute
Changes in v3:
- None
Changes in v4:
- Changed kerneldoc to recommend userspace polling (Daniel)
- Changed kerneldoc to briefly describe how to attach the property (Daniel)
Changes in v5:
- checkpatch whitespace noise
- Change DRM_MODE_CONTENT_PROTECTION_OFF to DRM_MODE_CONTENT_PROTECTION_UNDESIRED
Changes in v6:
- None
commit 24557865c8
Author: Sean Paul <seanpaul@chromium.org>
Date: Mon Jan 8 14:55:37 2018 -0500
Change-Id: Ief031a46681d88369454ebbc56ed0bb203258ab5
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Yi Zhou <yi.zhou@amlogic.com>