Commit Graph

640044 Commits

Author SHA1 Message Date
Evoke Zhang
a67deede87 lcd: add mipi video mode non-burst support
PD#148909: lcd: add mipi video mode non-burst support

Change-Id: Id7247927b1f681f19a4a11802a040087fe6b658c
Signed-off-by: Evoke Zhang <evoke.zhang@amlogic.com>
2017-08-09 04:12:11 -07:00
Weiming Liu
e22abcfdc1 lcd: mipi init table load mistake
PD#148866: lcd: mipi init table load mistake

Change-Id: I50f75b4e252ebd49c82a8c80b2939fecdda2342d
Signed-off-by: Weiming Liu <weiming.liu@amlogic.com>
2017-08-09 03:51:42 -07:00
xingyu.chen
1a3bafc40a dts: replace the "voice" key with "power" key for axg
PD#147852: dts: replace the "voice" key with "power" key for axg

Change-Id: If565f833c5525e5bb3f1ae5989bd6021244f7b5c
Signed-off-by: xingyu.chen <xingyu.chen@amlogic.com>
2017-08-09 02:15:14 -07:00
Yun Cai
62f74f2d93 clk: update pcie pll config
PD#148744: update axg pcie pll config

Change-Id: I4adf79f40f70cd23427f018e7030aeaa9bd080c4
Signed-off-by: Yun Cai <yun.cai@amlogic.com>
2017-08-09 09:35:06 +08:00
liangzhuo.xie
e9c0461057 dts: add p212/p231 buildroot dts
PD#148743: solved the wifi loading wrong.

Change-Id: I3804b835b6bbe70677a8a5bc837b7a52fbaac15c
Signed-off-by: liangzhuo.xie <liangzhuo.xie@amlogic.com>
2017-08-08 00:58:06 -07:00
Lianghu Su
4e2e639e14 amlvideo: fix bad caps for driver amlvideo.
PD#148065: v4l_querycap error when buildroot linux 4.9 startup.

Change-Id: I5ff911f5e08e3d1e57476f84ca3d002a093b9724
Signed-off-by: Lianghu Su <lianghu.su@amlogic.com>
2017-08-07 23:58:45 -07:00
Guosong Zhou
15bef3df86 amlvideo2: fix amlvideo2 driver crash
PD#148065: fix amlvideo2 driver crash

Change-Id: Ie4a2af31332f33800c26547aeea800c514d50857
Signed-off-by: Guosong Zhou <guosong.zhou@amlogic.com>
2017-08-07 23:42:15 -07:00
Weiming Liu
f652dec4de bl: add bl_extern driver
PD#148374: bl: add bl_extern driver

Change-Id: I8019ab4c2d55c37e14f7b266166408fd5a5a58e3
Signed-off-by: Weiming Liu <weiming.liu@amlogic.com>
2017-08-07 13:56:14 +08:00
Alex Deng
17866ccad8 dts: add s400/s420 v03 dts
PD#148795: dts: add s400/s420 v03 dts

Change-Id: I1b8326646cc7562142b68c18d518a91868a9c2c6
Signed-off-by: Alex Deng <alex.deng@amlogic.com>
2017-08-07 10:49:00 +08:00
Jiamin Ma
664de66b7a secure_monitor: add secure storage and nand key support
PD#148390: this commit adds secure monitor driver

Change-Id: Iac0a9a36d141d19497165f35b39df099b2c9076a
Signed-off-by: Jiamin Ma <jiamin.ma@amlogic.com>
2017-08-04 02:47:11 -07:00
yi.zeng
8c44111fb0 mtd: nand: add nandkey and secure storge
PD#148390: mtd: nand: add nandkey and secure storage

Change-Id: I220688cd14d8bf16105871e0bf0b233591b1bd33
Signed-off-by: yi.zeng <yi.zeng@amlogic.com>
2017-08-03 22:58:15 -07:00
Weiming Liu
21d8381e74 dts: s400 adjust lcd reset
PD#147851: dts: s400 adjust lcd reset

Change-Id: Iab1627698b9de8698ba25fff8c552a5aec35a2b7
Signed-off-by: Weiming Liu <weiming.liu@amlogic.com>
2017-08-03 03:48:36 -07:00
Jiamin Ma
8287467a4b unifykey: add secure storage and nand key support
PD#148390: this commit fix two problems
1. the previews way to detect storage type is invalid
2. the previews define of max key size for nand and emmc
   is wrong

Change-Id: Ie7c05f3e0d85c2386177e196187f52786e0955f4
Signed-off-by: Jiamin Ma <jiamin.ma@amlogic.com>
2017-08-03 02:17:49 -07:00
Yueguie He
4ca918a555 dts: add a113x & a113d skt config
PD#148646: add a113x & a113d skt config

Change-Id: Id52e858fdb80b236dd504fba6c3ef6f47181d952
Signed-off-by: Yueguie He <yuegui.he@amlogic.com>
2017-08-03 00:12:46 -07:00
Yonghui Yu
b5e6195c5e mtd: nand: fix false ecc report on infopage
PD#147956: mtd: nand: fix false ecc report on infopage

Infopage must be programed with scrambled to fit romboot.
And all “0xff” page will be reported as uncorrectable falsely
with scramber on.
we have to exclude this by counting the zero byts.

Change-Id: I167491bee69444f64231a09e41d04bcd03f30d65
Signed-off-by: Yonghui Yu <yonghui.yu@amlogic.com>
2017-08-02 23:15:41 -07:00
jianxin.pan
ed157e73ad defconfig: meson32: enable LOCKUP detector
PD#141217: enable LOCKUP detector for meson32

Change-Id: I2a70e7b29ddc12a720704a4edf5d6334802263a5
Signed-off-by: jianxin.pan <jianxin.pan@amlogic.com>
2017-08-03 10:21:17 +08:00
Hualing Chen
a27d8ad898 dvb: modify dvb-frontend
PD#147721: dvb: modify dvb-frontend some struct and add dvb dts

1. add dvbs dvbt info at frontend
2. add blind cmd
3. add dvb dts

Change-Id: I22ab5284e646a17ae060f229bcf7c27ee5b6211f
Signed-off-by: Hualing Chen <hualing.chen@amlogic.com>
2017-08-01 04:59:59 -07:00
Victor Wan
121ca50c57 Merge branch 'android-4.9' into amlogic-4.9-dev 2017-08-01 18:38:14 +08:00
Xuhua Zhang
b63832bae3 i2c: add i2c auto test and fix i2c clk error.
PD#146534: add i2c auto test and fix i2c clk error.

1. add i2c auto test function form 50KHZ to 3.4MHZ.
2. fix i2c clk distortion when the clk go beyond 1MHZ.
3. fix i2c clk distortion when the clk less than 100KHZ.
4. fit for i2c T_low/T_higt time standard.
5. reduce i2c error log.

Change-Id: I2bb5598684848478aa18349b87eaac5bcc44065d
Signed-off-by: Xuhua Zhang <xuhua.zhang@amlogic.com>
2017-07-31 23:31:42 -07:00
Rongjun Chen
6041ed31a0 wifi: fix iptable forward cmd issue[1/1]
PD#147462: add some iptabe nat support to fix android NatController
cmd issue

Change-Id: Ia2e8e4f14898c5e3c6b2e2b61007260ff74db193
Signed-off-by: Rongjun Chen <rongjun.chen@amlogic.com>
2017-07-31 22:58:38 -07:00
Jianxin Pan
fe0ed6cf13 Merge "lcd: enable clkree gate" into amlogic-4.9-dev 2017-07-31 05:22:19 -07:00
Weiming Liu
cc700864fe lcd: enable clkree gate
PD#146437: lcd: enable clktree gate

Change-Id: I9fcc1b37ec291a27a169092a129663fbdab5aefa
Signed-off-by: Weiming Liu <weiming.liu@amlogic.com>
2017-07-31 20:04:30 +08:00
Yixun Lan
7ec3e25cd7 defconfig: fix coldboot_done too long,reduce /dev/pty* devices
PD#148403: fix coldboot_done too long,reduce /dev/pty* devices

with this change, boot from android
needle:/ # dmesg | grep ueventd
[ 3.657267@2] init: Starting service 'ueventd'...
[ 3.662364@0] ueventd: ueventd started!
[ 4.364547@2] ueventd: Coldboot took 0.70s. // prevous 1.44s

Change-Id: Iedf6b530bffb3aa6411f538e1c0dadb611dc616e
Signed-off-by: Yixun Lan <yixun.lan@amlogic.com>
2017-07-31 04:05:59 -07:00
Yun Cai
3261541e35 clk: add mipi enable and bandgap gate
PD#146437: axg: add mipi enable and bandgap gate and
	update clkmsr for cts_encl_clk

Change-Id: If14ede7ab0a0b649879153cb1089bec04c7412b2
Signed-off-by: Yun Cai <yun.cai@amlogic.com>
2017-07-31 10:24:30 +08:00
Jiamin Ma
d6950e214c unifykey: support both old and new unifykey format
PD#148057: for m8bb m200 platform, we have the latest linux kernel
and a relative old version uboot running on it. For some historic
resons, the unifykey data stored in emmc/nand has totally different
format, which means the key stored by old uboot cannot be fetched
out by new kernel. To solve this problem, we have to support both
the old and new unifykey dataformat in lasted kernel.

Change-Id: Ic70df6543466b345a5ff513bfaabfe4cfcf647ed
Signed-off-by: Jiamin Ma <jiamin.ma@amlogic.com>
2017-07-28 19:52:52 +08:00
liangzhuo.xie
7a0943a42e dts: gxl: add p231 buildroot dts.
PD#147281: P231 4.9 add wpe-launcher and chromium

Change-Id: Iba74fce849e86f71742526e4a6cf6b999084b2dd
Signed-off-by: liangzhuo.xie <liangzhuo.xie@amlogic.com>
2017-07-28 04:13:19 -07:00
Jian Hu
72d840c8f7 pwm: fix kernel crash using spinlock_t lock
PD#148269: fix kernel panic when hibenating

1.Using mutex lock instead of spinlock_t lock.
2.Clk_prepare_enable might sleep could not use
  spinlock_t lock.
3.Add spinlock_t lock for clock_mux.
4.Panic message:
	BUG: sleeping function called from invalid context at
	kernel/locking/mutex.c:97
	in_atomic(): 1, irqs_disabled(): 128, pid: 2501, name: sh
	Preemption disabled at:[   69.935889@1] [<ffffff80097af728>]
	meson_pwm_apply+0x48/0x398

Change-Id: Ib2f42c4d757d1bb4bd8e4df0f90f7924be2fa799
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
2017-07-28 03:36:15 -07:00
Xing Wang
6df60b00fe audio: fix tdm audio format
PD#146334: audio: fix tdm bclk and fclk revert and skew issue

Change-Id: I1dcb6f8559b3c04a2ddbb7c13a6115001c249c18
Signed-off-by: Xing Wang <xing.wang@amlogic.com>
2017-07-28 01:37:43 -07:00
jianxin.pan
44275f73b1 defconfig: disable LOCKUP detect for meson32/64_defconfig
PD#138714: disable LOCKUP detect
-CONFIG_LOCKUP_DETECTOR=y
-CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y

Change-Id: I74df363b34e6a2fa95cd0aa30485fd941764be09
Signed-off-by: jianxin.pan <jianxin.pan@amlogic.com>
Signed-off-by: Jiamin Ma <jiamin.ma@amlogic.com>
2017-07-28 14:36:58 +08:00
Yue Wang
817c44f524 usb: fix adb reboot panic.
PD#146539: usb: fix adb reboot panic.

Avoid kernel panic caused by race condition. For example,
1. In the ffs_epfile_io function, data buffer is allocated
for non-halt requests and the address of this buffer is
writed to usb controller registers.
2. After adb process be killed, data buffer is freed and
this memory is allocated for the other. But the address
is hold by the controller.
3. Adbd in PC is running. So, the controller receive the
data and write to this memory.
4. The value of this memory is modified by the controller.
This could cause the kernel panic.

To avoid this, during FunctionFS mount, we allocated the
data buffer for requests. And the memory resources has
been released in kill_sb.

Change-Id: Ie06fae8ce18ea553d71f4841458c3c3af096ff4b
Signed-off-by: Yue Wang <yue.wang@amlogic.com>
2017-07-27 19:21:44 -07:00
Peipeng Zhao
cae7e74f50 audio: disable analog mic on board S400
PD#148261: disable analog mic on board S400
	because new mic board will not connnect analog mic
        if enable analog mic, it will generate much i2c error

Change-Id: I0bc63dcdb2b4dbf47b740266008529490bcac937
Signed-off-by: Peipeng Zhao <peipeng.zhao@amlogic.com>
2017-07-27 16:49:23 +08:00
Xing Wang
a9438f3f2c audio: resume tdm mclk for revA
PD#147886: audio: resume tdm mclk for revA

Change-Id: I6365a9b218fd022ded746d183673f53ee70b6183
Signed-off-by: Xing Wang <xing.wang@amlogic.com>
2017-07-26 01:55:35 -07:00
Jian Hu
26fe46381c wifi: appending wifi dts
PD#146172: wifi: appending wifi dts

Change-Id: I0d208bda96192d6198e7cf959abb0dce6fe96a5f
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
2017-07-25 19:22:17 -07:00
Yue Wang
baf42f6dbb pcie: fix pcie power on timing.
PD#147564: pcie: fix pxie power on timing.

Change-Id: I28d39f0ed030f8886adecc9b575540c0ffc13716
Signed-off-by: Yue Wang <yue.wang@amlogic.com>
2017-07-25 02:38:01 -07:00
Weiming Liu
043ff0471e bl: update bl_pwm driver to adjust new api
PD#146172: bl: update bl_pwm driver to adjust new api

Change-Id: I8f1fa55e7276424086fe4f4e9dc011ccaa259740
Signed-off-by: Weiming Liu <weiming.liu@amlogic.com>
2017-07-24 22:24:38 -07:00
Qiufang Dai
1106482a52 PM/sleep: fine-tune meson legacy early_suspend/late_resume flow
PD#147988: PM / sleep: meson: fine-tune legacy early_suspend/late_resume flow
1. early_suspend/late_resume could be call via sysfs or pm notify.
2. enable remote wakesource irq for wakeup freeze mode.

Change-Id: Ic667e19b9262af2a2a5c3534bd3ab4e240a868be
Signed-off-by: Qiufang Dai <qiufang.dai@amlogic.com>
2017-07-24 19:11:44 -07:00
Shuai Li
00696a0ddc audio: fix dai-link multi-codec confs issue [1/1]
PD#147919: If more than one dai-link configure the codec prefix name,
tinymix shows only the last dai-link codec which has prefix-names.

This fix adds a for-loop to realloc confs for each dai-link setting.
Thus every prefix name will show in tinymix.

Change-Id: I347328a3329eb2bdba0e0b7e2295c75c8f3ec1e8
Signed-off-by: Shuai Li <shuai.li@amlogic.com>
2017-07-22 08:44:58 -07:00
Jian Hu
9875a0281d pwm: add new pwm driver initially
PD#146172: pwm: add new pwm driver

1.Reference to upstream, add meson pwm driver initially.
2.pwm driver Verify passed on axg.
3.config for wifi 32k using latest driver.
4.wifi 32k verified on gxl/gxm/axg.

Change-Id: Ie602c879cf348c979d6783f1b295574c2fd782f2
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
2017-07-21 01:13:44 -07:00
xingyu.chen
b6397a5f59 saradc/adc_keypad: reduce the probability bl30 fail to get race flag
PD#146381: saradc/adc_keypad: reduce the probability bl30 fail to get race flag

1. unify the way to obtain race flag with bl30
2. replace the irq mode with polling mode
3. delay adc key scan time by 25ms

Change-Id: If072ee0a0a62c55e9c671baee0d25d1647e29ad9
Signed-off-by: xingyu.chen <xingyu.chen@amlogic.com>
2017-07-21 00:31:18 -07:00
Jiyu Yang
b7a55c773f drm: dts include meson_drm
PD#147238: rm dep for ARCH_MESON, include meson_drm.dtsi

Change-Id: I08a973569d062338fc6084c55a765d08c2e6aaf5
Signed-off-by: Jiyu Yang <Jiyu.Yang@amlogic.com>
2017-07-20 04:18:14 -07:00
Jiyu Yang
340d8a0cba drm: add drm support
PD#147238: drm tempoperily bringup on 4.9

Change-Id: I3fa93b57404445985f5f3380f9b9a64161ff720a
Signed-off-by: Jiyu Yang <Jiyu.Yang@amlogic.com>
2017-07-20 19:12:59 +08:00
Neil Armstrong
4a8833fdc5 drm/meson: Fix plane atomic check when no crtc for the plane
PD#147238: enable DRM driver on kernel 4.9
When no CRTC is associated with the plane, the meson_plane_atomic_check()
call breaks the kernel with an Oops.

Change-Id: I9d31c405316460420c0ed56dfcb0fc4ef6f86938
Fixes: bbbe775ec5 ("drm: Add support for Amlogic Meson Graphic Controller")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2017-07-20 02:26:25 -07:00
Neil Armstrong
489d1291f2 drm/meson: Fix CVBS initialization when HDMI is configured by bootloader
PD#147238: enable DRM driver on kernel 4.9
When the HDMI output is configured by the bootloader, there is mismatch is the
pipeline configuration and the Vsync interrupt fails to trigger.

This commit disables the HDMI blocks in the probe phase.

Change-Id: Ibf7b6384e9d34f790bd87a5e6f34a93a2d274d7c
Fixes: bbbe775ec5 ("drm: Add support for Amlogic Meson Graphic Controller")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2017-07-20 02:08:56 -07:00
Neil Armstrong
1e10e99d7c drm/meson: Fix CVBS VDAC disable
PD#147238: enable DRM driver on kernel 4.9
This commit fixes the VDAC disabling register write values.

Change-Id: I5534a15e52730ee2a5b54d1aa82bbe59c2e01b50
Fixes: bbbe775ec5 ("drm: Add support for Amlogic Meson Graphic Controller")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2017-07-20 00:03:50 -07:00
Neil Armstrong
f3f89bcca8 drm: Add support for Amlogic Meson Graphic Controller
PD#147238: enable DRM driver on kernel 4.9
The Amlogic Meson Display controller is composed of several components :

DMC|---------------VPU (Video Processing Unit)----------------|------HHI------|
   | vd1   _______     _____________    _________________     |               |
D  |-------|      |----|            |   |                |    |   HDMI PLL    |
D  | vd2   | VIU  |    | Video Post |   | Video Encoders |<---|-----VCLK      |
R  |-------|      |----| Processing |   |                |    |               |
   | osd2  |      |    |            |---| Enci ----------|----|-----VDAC------|
R  |-------| CSC  |----| Scalers    |   | Encp ----------|----|----HDMI-TX----|
A  | osd1  |      |    | Blenders   |   | Encl ----------|----|---------------|
M  |-------|______|----|____________|   |________________|    |               |
___|__________________________________________________________|_______________|

VIU: Video Input Unit
---------------------

The Video Input Unit is in charge of the pixel scanout from the DDR memory.
It fetches the frames addresses, stride and parameters from the "Canvas" memory.
This part is also in charge of the CSC (Colorspace Conversion).
It can handle 2 OSD Planes and 2 Video Planes.

VPP: Video Post Processing
--------------------------

The Video Post Processing is in charge of the scaling and blending of the
various planes into a single pixel stream.
There is a special "pre-blending" used by the video planes with a dedicated
scaler and a "post-blending" to merge with the OSD Planes.
The OSD planes also have a dedicated scaler for one of the OSD.

VENC: Video Encoders
--------------------

The VENC is composed of the multiple pixel encoders :
 - ENCI : Interlace Video encoder for CVBS and Interlace HDMI
 - ENCP : Progressive Video Encoder for HDMI
 - ENCL : LCD LVDS Encoder
The VENC Unit gets a Pixel Clocks (VCLK) from a dedicated HDMI PLL and clock
tree and provides the scanout clock to the VPP and VIU.
The ENCI is connected to a single VDAC for Composite Output.
The ENCI and ENCP are connected to an on-chip HDMI Transceiver.

This driver is a DRM/KMS driver using the following DRM components :
 - GEM-CMA
 - PRIME-CMA
 - Atomic Modesetting
 - FBDev-CMA

For the following SoCs :
 - GXBB Family (S905)
 - GXL Family (S905X, S905D)
 - GXM Family (S912)

The current driver only supports the CVBS PAL/NTSC output modes, but the
CRTC/Planes management should support bigger modes.
But Advanced Colorspace Conversion, Scaling and HDMI Modes will be added in
a second time.

The Device Tree bindings makes use of the endpoints video interface definitions
to connect to the optional CVBS and in the future the HDMI Connector nodes.

HDMI Support is planned for a next release.

Change-Id: I72d50f54b4e7ab73d447cf664e959a3c43e58809
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2017-07-19 23:54:27 -07:00
Jiamin Ma
485b80c106 configs: disable hardlockup
PD#138714: disable hardlockup

Change-Id: I0b10bfdc65b0a99b8a9fe213b274cacfd16110f7
Signed-off-by: Jiamin Ma <jiamin.ma@amlogic.com>
2017-07-19 23:28:23 -07:00
Neil Armstrong
a1c56e75b3 dt-bindings: display: add Amlogic Meson DRM Bindings
PD#147238: enable DRM driver on Kernel4.9

Change-Id: I5a7e60857384de6690a08cc496163377c0b26b7a
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2017-07-19 23:18:48 -07:00
Victor Wan
c97a98830a Merge branch 'android-4.9' into amlogic-4.9-dev 2017-07-19 23:20:20 +08:00
Qiufang Dai
743c337830 clk: axg: fine-tune pll set_rate op [1/1]
PD#146411: if set_rate target rate equal to old rate, just skip.

Change-Id: I945fdf6f72c5fccc6e0e701fe8f50fba8458d99f
Signed-off-by: Qiufang Dai <qiufang.dai@amlogic.com>
2017-07-19 17:17:05 +08:00
Colin Cross
833babb39f Add BINDER_GET_NODE_DEBUG_INFO ioctl
The BINDER_GET_NODE_DEBUG_INFO ioctl will return debug info on
a node.  Each successive call reusing the previous return value
will return the next node.  The data will be used by
libmemunreachable to mark the pointers with kernel references
as reachable.

Bug: 28275695
Change-Id: Idbbafa648a33822dc023862cd92b51a595cf7c1c
Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: Martijn Coenen <maco@android.com>
2017-07-19 10:35:09 +02:00