Commit Graph

13145 Commits

Author SHA1 Message Date
Joseph Chen 07ea4f345b rockchip: param: fix bl32 enable flag not set when atags effect
Change-Id: I3a57dcdbd3e247fbe7f2230d70dd9687251cce0a
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-15 11:32:32 +08:00
Joseph Chen 644804ed62 rockchip: board: support enter download mode by hotkey
- ctrl+b: enter bootrom download mode, ('b': bootrom);
- ctrl+d: enter rockusb download mode; ('d': default download, ie. rockusb);

This patch provides convenience for download when rockusb/recovery-key is
absent or not work, or U-Boot early panic.

Change-Id: I7709183c645400f60af3d480f84f6e6887ddc20e
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-15 09:04:24 +08:00
Kever Yang 1feaf21adf rockchip: dts: rv1108: enable emmc
Enable emmc node.

Change-Id: I4ee5b078429e8e0686f301d03602e0875a613ee2
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-02-14 17:35:31 +08:00
Joseph Chen a059684b23 armv7: sleep.S: support other v7 cpu
Change-Id: Ib1b1cb973054c9faa6a11da8fc1ad7f1d5aec214
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-14 14:32:56 +08:00
Joseph Chen abf4f55116 armv7: sleep.S: rename _suspend_gd to __suspend_gd
Change-Id: I97911822c5616dbcbb3b28a156a3759f3b6b2af3
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-14 14:32:56 +08:00
Zhangbin Tong 0a5f26cb4b rockchip: dts: rk322x: enable nandc
Change-Id: I495bc11aa8db9f6a916aaad3c5dad40f4c07b8e2
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2019-02-14 09:06:23 +08:00
Joseph Chen d554a7b28e arm: interrupt: add stacktrace dump for all exceptions routine
show_regs() is called by all exceptions.

Change-Id: Iac271d8d7b5d42ed9cf3d8a860a17f8080acf3bc
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-13 10:17:47 +08:00
Joseph Chen 6aa65bb1ee armv7: add -funwind-tables compile option to support stacktrace
Change-Id: Icfa223397e05dcd42ea3c12275385104bf275213
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-13 10:04:11 +08:00
Joseph Chen d0df954bf3 arm: lib: add arm32/64 stacktrace support
This patch supports dump arm32/64 stacktrace as the format of raw
address info. The U-Boot symbol table is not available now, please
use ./scripts/stacktrace.sh script to parse stacktrace info with command:

    ./scripts/stacktrace.sh <file>       // stacktrace info file

Example on RK3399:
    Call trace:
     PC:   [< 00258a7c >]  dwc3_gadget_uboot_handle_interrupt+0xa0/0x5bc
     LR:   [< 002052f8 >]  usb_gadget_handle_interrupts+0x10/0x1c

    Stack:
           [< 00258a7c >]  dwc3_gadget_uboot_handle_interrupt+0xa0/0x5bc
           [< 0025bd6c >]  sleep_thread.isra.20+0xb0/0x114
           [< 0025cf58 >]  fsg_main_thread+0x2c8/0x1814
           [< 0020db58 >]  do_rkusb+0x250/0x338
           [< 00226a00 >]  cmd_process+0xac/0xe0
           [< 00212df4 >]  run_list_real+0x6fc/0x72c
           [< 00212f94 >]  parse_stream_outer+0x170/0x67c
           [< 002126e0 >]  parse_string_outer+0xdc/0xf4
           [< 00212bb0 >]  run_list_real+0x4b8/0x72c
           [< 00212f94 >]  parse_stream_outer+0x170/0x67c
           [< 00212698 >]  parse_string_outer+0x94/0xf4
           [< 00225f30 >]  run_command_list+0x38/0x90
           [< 00202d08 >]  rockchip_dnl_mode_check+0x4c/0xd4
           [< 00202db0 >]  setup_boot_mode+0x20/0xf0
           [< 00203010 >]  board_late_init+0x10/0x40
           [< 0027071c >]  initcall_run_list+0x44/0x80
           [< 00213d68 >]  board_init_r+0x20/0x24

The "dump_stack()" is available to trigger stacktrace.

Change-Id: Ib1423269dd255fa4a34231489cd3b7e6ddd22540
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-13 09:04:23 +08:00
Joseph Chen 5315192f60 rockchip: resource: add resource hdr magic validation
It fixes the dead loop issue of "bootrkp" command:
	......
	=Booting Rockchip format image=
	boot: invalid image tag(0x0)
	boot_rockchip_image ramdisk part boot read error
	bad resource image magic:
	DTB: rk-kernel.dtb
	invalid entry tag
	invalid entry tag
	invalid entry tag
	invalid entry tag
	......

Change-Id: Ia15f315eee94dce06800139ff547ebeee3847cae
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-12 17:40:24 +08:00
Elaine Zhang 5561190119 clk: rockchip: rk3288: add clk_set_default
support aclk_vio\hclk_vio clk setting.

Change-Id: Ie826c770670598161f22208f504d8762b8597811
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-02-01 16:17:34 +08:00
Joseph Chen 683a8d16be arm: interrupt: clean up registers show
Change-Id: I0ecb11c5e67cb7e0e95d3fcaad9220628fddbfc6
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-01 11:53:47 +08:00
Joseph Chen 9fa74d15b8 arm: vectors: irq context get svc_lr and svc_sp
Without this patch, the irq context get the irq_lr and irq_sp
which doesn't make any sense, what we need are svc_lr and svc_sp.

Change-Id: I4c07e3688e818cd4516824a78d57ff092fdbe2b9
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-01 11:53:47 +08:00
William Wu 294ad6176b rockchip: board: rework board usb init
Currently, usb 2.0 otg node was found by the compatible
"snps,dwc2" and the property "dr_mode". However, the
"dr_mode" isn't a necessary condition, more seriously,
if the dr_mode is set to "host" or "peripheral", we
will fail to get the otg node.

This patch finds otg node by the compatible "snps,dwc2"
for most of Rockchip SoCs supported only one DWC2 controller.
For RK3288, it supports two DWC2 controllers with the
same compatible "snps,dwc2", so we add another condition
(reg addr = 0xff580000) to get the otg node.

Change-Id: I16acbf3e8da9bec19b8ec0a331b9114cb5462ac0
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-01-31 17:55:14 +08:00
Jason Zhu 9136a2d39c rockchip: dts: px30/rk3326: add emmc hs200 support
Change-Id: I0080a12452dd7fa77b8b7fd26a61bc429b3cfa27
Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
2019-01-31 11:17:22 +08:00
Joseph Chen 98e497fd55 arm: arm32_macros: fix coding style
Change-Id: I736139237d184aa7a35c840ea0ed3214d7e47e44
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-30 17:57:45 +08:00
David Wu 81681b40b9 rockchip: dts: rv1108-evb: Fix gmac dts configuration
Add the phy regulator supply for rv1108-evb, and fix the
configuration of clock_in_out.

But the phy will init failed because the phy-reset pin is
the same as the mipi data pin.

Change-Id: I14b0accd083742ca6eb4ae6bec1139ef5ba65db0
Signed-off-by: David Wu <david.wu@rock-chips.com>
2019-01-30 11:39:48 +08:00
Elaine Zhang 524f26463d clk: rockchip: rk3066: print arm enter and init rate
Change-Id: Iaf4ffbb61830b7bb7cef31843f0e9b75c34d08ec
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-25 16:19:57 +08:00
Elaine Zhang 441bfb788a clk: rockchip: rk3188: print arm enter and init rate
Change-Id: I604c18050e8ccbbc9aa25ecd8f4379a877239d49
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-25 16:19:57 +08:00
Jason Zhu f17295bfb0 rockchip: rk3328: update sdmmc&emmc's clocks
Add the SCLK_EMMC_DRV and SCLK_EMMC_SAMPLE to clocks.

Change-Id: I3c633bd973bb1f5cafb98a295ded6cfae704382d
Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
2019-01-25 14:56:21 +08:00
Joseph Chen f36a2342cd rockchip: board: move charge display function to charge display uclass
Change-Id: Ib5143d8bd9beafc585438e57216f2b7c17932859
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:44:08 +08:00
Joseph Chen 6bc040a32c rockchip: resource: import sysmem to alloc fdt buffer
sysmem avoids memory block overlap with each other.

Change-Id: I0013c3d05c69e19286cf1c76f936a17eaab1db49
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen 4ec36d6839 rockchip: resource: add interface to get resource file size
clean up code and add comment for other interfaces.

Change-Id: Ibc64978d8db595c4fe76432faca77cdad9c949e6
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen 6929f85b13 rockchip: board: implement board_sysmem_reserve()
sysmem provides a mechanism to avoid memory block overlap with
each other.

Change-Id: I84796f4fd5b06283ca23e0ec9da9d0421701a957
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen 4892a977d7 rockchip: board: fix compile warning when atags is disabled
Change-Id: I494f06a715bf7b40c7f56a5ce3aabe1c63ee9bb0
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen 7c015044fd rockchip: boot_mode: use param_parse_bootdev() to get bootdev
Change-Id: I735471aa89502acfc647dbeeb4d487f1001ccad7
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen f0a9765fb1 rockchip: sdram: use common interface to get atf/optee memory info.
using param_parse_atf_mem() and param_parse_optee_mem().

Change-Id: I0d42f80ea4bac61efdc38a0be97c3f416ce90622
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen dbf8423e37 rockchip: add platform param parse interface to param.c
parse: atf/optee/bootdev and common reserved memory.

Change-Id: I829eb42370b217e567cdafe03de4dab6063aa251
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-24 15:33:12 +08:00
Joseph Chen 47ad810789 rockchip: rk1808: enable GICV3
Change-Id: I47a459e2408a7a56794cf7f72ff58a616100b7eb
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-23 21:17:03 +08:00
Elaine Zhang 92c6b64268 clk: rockchip: rk3128: print arm enter and init rate
Change-Id: I0be1752522a83a2d111870e5a8ac95f92bd7f9a5
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:55 +08:00
Elaine Zhang 3a1c76d931 clk: rockchip: rk3036: print arm enter and init rate
Change-Id: Ic9212c8a0f1d50006f7121957b8bd5f34d2622d9
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:26 +08:00
Elaine Zhang ec0307ef3a clk: rockchip: rk3288: print arm enter and init rate
Change-Id: I5a6d564a973111841df6b53a4df64a54f728e116
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:26 +08:00
Elaine Zhang 2401c256ec clk: rockchip: rk322x: print arm enter and init rate
Change-Id: Iab7034c8cef09908a99b5a1e396f6e015da350fb
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:26 +08:00
Elaine Zhang 093fdd9f5d clk: rockchip: rk3308: print arm enter and init rate
Change-Id: I6df66d7b5dda643dba49ee87c2a2c0544ddbcded
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:26 +08:00
Elaine Zhang f7913bc128 clk: rockchip: rk3328: print arm enter and init rate
Change-Id: I80ebeee0d6d8b151061d0bbb0d1d12070dcc6f98
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:26 +08:00
Elaine Zhang ae79bf6827 clk: rockchip: rk3368: print arm enter and init rate
Change-Id: Ib201cf442ce7398bbe8009ce9b7de9dc1f53c587
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 21:13:26 +08:00
Elaine Zhang 044bc79de9 clk: rockchip: rk3399: print arm enter and init rate
Change-Id: Ib5e3e0f9a3e1a5b535ec852e7c58966dc0db77cf
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 11:01:59 +08:00
Elaine Zhang dfce009693 clk: rockchip: px30: print arm enter and init rate
Change-Id: I0d2a1c6bb92397210314322fd147c4a8a6e81abd
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 11:01:59 +08:00
Elaine Zhang ed6f5d94b5 clk: rockchip: rk1808: print arm enter and init rate
Change-Id: I14f0b0c95b1367266fe9c64050a602ad58208d53
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-01-23 11:01:59 +08:00
Kever Yang 231617c5ab rockchip: update TPL_MAX_SIZE for rk3288
RK3288 sram size can be used for TPL is 32768

Change-Id: I1b0ae5209d97f59b53349f6787439090539a5ac0
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-01-23 09:36:35 +08:00
Jon Lin 8094aeb8cd clk: rockchip: rv1108: add NANDC and SFC clk init
Currently RV1108 run in 1.2G GPLL.
NANDC need 1200 / 8 div = 150MHz.
SFC need 1200 / 12 div = 100MHz.

Change-Id: Ia3f401b0cf13587209d0d68d76a9891dd3bcf990
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2019-01-22 17:06:35 +08:00
William Wu 933ae82de1 rockchip: dts: rk3399: add u-boot,dm-pre-reloc for usb2 phy
The usb vbus detection is depend on the usb2 phy driver.
This patch fix the usb vbus detection issue if there is
no valid kernel dtb, and make rockusb to enter download
mode successfully.

Change-Id: Icf86cfaf67e20f2368370eb2aedc4fa9d5777c50
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-01-15 10:24:38 +08:00
Tang Yun ping a2f7540398 rockchip: sdram: add ddr page size and bandwidth get interface
Change-Id: I05e0f32c7e8423843c7b874f8ff89e8e9d093390
Signed-off-by: Tang Yun ping <typ@rock-chips.com>
2019-01-11 14:31:29 +08:00
Tang Yun ping 6bce753f9d rockchip dmc: add ddr set rate interface
Change-Id: Ie3f5ac29621f1298a759daf44a1caf68d18b9a46
Signed-off-by: Tang Yun ping <typ@rock-chips.com>
2019-01-11 14:31:29 +08:00
Joseph Chen 6ff768feef common: add system boot time report
Change-Id: Id7db8f7f7e30719188403f92282ca17c6fe564d6
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-10 16:02:35 +08:00
Wyon Bi de867820fc rockchip: rk3288: scan sub-nodes of the syscon node
Change-Id: I74eec80993664173e57e0c03f662790cf9e66b5a
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2019-01-10 09:50:27 +08:00
Joseph Chen 5716d3430d rockchip: smccc: sync sip id definition from kernel
Change-Id: Iefc9baab29abe8ba23ad58e74a24b4b6d9bb85d1
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-01-08 15:01:43 +08:00
William Wu ab6f0fad65 rockchip: rk3399: set qos priority for perilp_nsp
This patch increase the qos priority of perilp_nsp from
2 to 3 for USB 3.0 controllers.

Change-Id: I813f9190cc894ac15452686aa68d187200be3888
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-01-04 18:23:24 +08:00
Kever Yang 64e35efeb2 rockchip: boot_mode: fix usb vbus check value
rockchip_u2phy_vbus_detect() may return negative number when driver
not implemented, only positive number means vbus available.

Change-Id: I06e9b36c7bbcdbb097abe204f4ff0318541ea869
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-01-03 11:53:45 +08:00
YouMin Chen 4652b3041d rockchip: dts: rk3399: add lpddr4 support
Change-Id: I5bf0d19a6ebbdbcfe3b00a6f3fdddeb6ab572826
Signed-off-by: YouMin Chen <cym@rock-chips.com>
2018-12-29 09:38:09 +08:00