ddr frequency for 2GQ/~3A5/~3B4.
2. Add example code to specify wrlvl_dq_dly separately when enable ARB_LEVEL in 3a780e branch.
3. Modify the PMON print MC parameter format to print the address.
Change-Id: Ic240f2f9ddb0272883aba393d687b3e47abe51e7
the cause is the DMA request from 0xfe000000 ~ 0xff000000 is intercepted
and mistaken as MSI interrupt by the RS780E HT/PCI controller. Now exclude
this area for dma;
Change-Id: Ie8a61ee28d0b1d0ed23b2cfa5fa34fe820bbd56d
It displays in three plays:pmon bios, before pmon command line, `sysinfo mem` command. Now all of them are right.
Change-Id: I6eaf42f3df83a2603decf32cfea131a84f773374
Before if the pci device is not a multi-function device,it will still
initialize as a multi-function,Now fix it.
Target:Bonito3a780e Bonito3aserver Bonito3b780e Bonito3bserver
Bonito3c780e Bonito3cserver
Now we store arb leveled info seperately for each MC(up to 4 MC, tow 3A/B).
If the CLKSEL pin(DDR frequency) or DIMMs is changed, then we will do arb level
again.
Branch Bonito3a/b780e, Bonito3a/bserver, Bonito3a2h, Bonito2gq2h/780e is updated.
When the discrete graphic in COM21 slot,use it firstly
and the intergrate graphic can not work.
If nothing in pcie-slot(COM21),use the intergrate graphic.
pmon/cmds/bootparam.c: In this file, use the special->resource[0] to
pass the sharevram and vramsize to the kernel.And you must use special->resource[0]
to pass the two values.
NOTICE:
1, This function only work well for ati-card and nvida card do not be supportted.
Now,HD4500,HD4350 and HD5750 have been tested. They are OK.
2, When you open the CONFIG_UMA to use UMA modle in PMON, you can not use the discrete graphic.
Target:Bonito3a780e,Bonito3b780e,Bonito3c780e
Now the type 16 of smbios support Physical Memory Array and the type 17 of smbios
support Memory Device.
Targets: Bonito3aserver Bonito3a780e Bonito3b780e
Original code miss IDE DMA suport in configure file, now add and
enable the option.The bug as "http://www.loongson.org/dev/bugzilla
/show_bug.cgi?id=409" described won't appear any more. It pass test
on both ls3b780e and ls3bserver board.
Target:Bonito3b780e,Bonito3bserver
Before the time of scan "Del" button is too short,
resulted into set the bios of the interface.Now
extended the time of the scan "Del" button.But in
order to improve the bios of the start-up time,this
option is off by default.
Target:Bonito3a780e Bonito3aserver Bonito3b780e Bonito3bserver
Bonito3c780e Bonito2gq780e Bonito3a2h
Original code asume pci/pcie multi-function devices share the same
interrupt line, and assign the same irq number for multi-function.
Infatc, different irq line is used between pci/pcie multi-function
devices to speed up interrupt response. Now neighboure interrupt
line attached to PIC is used, new irq number is deliveried to
multi-function pci/pcie devices. It pass test on ls3a780e board
with a multi-function card which integrated video and HDA function.
NOTICE: assume interrupt route register(offset:0x3D) of multi-funciont
pci card is default configured.
Target:all
Original code didn't dump "t8" and "t9" regiser, but client programm
need to dump "t8" and "t9". Now the function is added, and pass test
on ls3b780e board. Thanks <wanghuandong@loongson.cn>
NOTICE: user should update its ejtag client programm on x86 to match
this patch by command "git clone git://10.2.5.27/ejtag.git",otherwise
incorrect value maybe got during dump some cp0 register.
Target:Bonito3a780e,Bonito3b780e,Bonito3aserver,Bonito3bserver,Bonito3c780e
Original code made a misstake which use "==" instead of "=" during
checking interrupt line register value, however it doesn't affect
system interrupt number routing. Now all the code is changed.
Target:Bonito3a780e,Bonito3b780e,Bonito3aserver,Bonito3bserver,Bonito3c780e
Original code use register "a0" to store ejtag address for dump tlb
registers, but "a0" hasn't been saved before it's used. Now use "t2"
instead of "a0", because "t2" has been saved in stack on x86 memory.
Thanks wanghuandong@loongson.cn
Target:Bonito3a780e,Bonito3b780e,Bonito3c780e,Bonito3aserver,Bonito3bserver
Original base address of frmabe buffer test is 0xb0000000, now change it to
be BONITO_PCILO_BASE_VA to match new pci mem space.
Target:Bonito3a780e,Bonito3b780e,Bonito3aserver,Bonito3bserver,Bonito3c780e
Before this patch, user has to test a lot of options to disable/enable
gpu driver, even some branch fail to pass compilation. Now all options
related with gpu driver selection is placed together. User can disable
or enable them together. It has passed compilation in all branches both
with gpu driver and without gpu driver support. It has pased test on in
ls3a780e branch in both mode with and without gpu driver.
Target:Bonito3a780e, Bonito3b780e, Bonito3c780e,Bonito3aserver,Bonito3bserver
Original code only support d(d8) m(m8) command, now change client and
server code to support byte/half word/word/double word access.
Test pass on ls3b780e board with latest ejtag tool client programm.
Target:all
Original code included "pcitlb.S" twice: one was in the debug code,
another was placed after tlb_init() was called. Now the on in debug
code is removed. This patch will make "start.S" looks more clear.
Thanks wanghuandong@loongson.cn
Target:Bonito3b780e
Orignal DDR params only supported 2 DIMMs in ls3b780e board, if number
of DIMMS used in ls3b780e board is larger than 2, system memory wasn't
stable. Now change DDR param to support 4 DIMMs. It pass stressapptest
with 4X2G DDR3 Kingston DIMMs at 264M Freq on latest ls3b chip.
Thanks wanghuandong@loongson.cn.
Target:Bonito3b780e
Original code can't set interrupt line register for pci device with
multi-function, it will lead interrupt missing in kernle. This patch
assigins a interrrupt number for every possible pci multi-function
devices like the first pci device with function number 0#. It passed
test with a multi-function vga card with addtional usb function.
Besides, add interrupt routing for pci/pcie device with bus nuber 3#.
Target:Bonito3a780e,Bonito3b780e,Bonito3c780e,Bonito3aserver
Before: when we return to PMON from BIOS window, the variable "bios_available" is zero, so we can not
set the time of BIOS window by USB keyboard.It causes the problem as Bug 245, 255, 256 described as
http://www.loongson.cn/dev/bugzilla/show_bug.cgi?id=245 showes,
http://www.loongson.cn/dev/bugzilla/show_bug.cgi?id=255 showes and
http://www.loongson.cn/dev/bugzilla/show_bug.cgi?id=256 showes.
Now: In the "cmd_main" function, handle the variable "bios_available", and remove the function
"autoinstall", now USB keyboard is OK.
Test: Boot into PMON interface, when enter "main" command again, we can set the time of BIOS window by
USB keyboard.
Targets: Bonito3a780e
2. Update ddr training code slightly.
3. Fix system total memory size diplay bug in main.c.
4. Fix the last patch missing Targets/Bonito3b780e/pci problem.
5. Fix a bug of save_ddrparam introduced by Macro defination.
6. Modify DDR param for 3B780e.
Targets: Bonito3b780e/All
Before: In 3b780e board, the cursor switch was not opened. It caused the problem
as Bug 211 described as http://10.2.5.24/dev/bugzilla/show_bug.cgi?id=211 showes.
Now: In Bonito.3b780e, add "option CONFIG_VIDEO_SW_CURSOR", now the cursor switch is opened.
Test: In 3b780e board, start to pmon state, you observe whether the cursor can display.
Targets: Bonito3b780e
Add function:
1.Remove redundant printf information of HT register and memory contoler register.
2.Add led lighting to show boot stage before entering initmips in start.S.
3.Replace base address of frame buffer during frame reading/writing test.
4.Enabe probe ddr3 by smbus in south bridge.
5.Add files to printf all L1X and L2X bar configuration on node0 and node1.
6.Add watchdog at fixing up L1Xbar and L2Xbar address.
7.Transfer the memory information of node1 and board information to kenel.
For files:
bootparam.h : structs to hold the interface.
bootparam.c : give the value to interface.
env.c : build this interface as an enviroment.
main.c : put the interface pointer into a2 register which will be passed
to the kernel.
Thanks sizhiying@loongson.cn
Signed-off-by: mengxiaofu <mengxiaofu@ict.ac.cn>
Now, ddr2/ddr3 can use the same codes and can be detected autoly.
Default:
ddr3 option has been open.So,you can use for ddr3-server.
If,you want to use ddr2:
you should close DDR3_DIMM option which is in "Targets/Bonito3aserver/conf/Bonito.3aserver" file.
Thanks chenxinke@ict.ac.cn and sizhiying@loongson.cn
Target:Bonito3aserver
Make softlink Bonito3b780e/pci to Bonito3a780e/pci.
For this, 3A and 3B can use the same pci configure.
Signed-off-by: mengxiaofu <mengxiaofu@ict.ac.cn>