1.change the 1a pci dma window size from 192MB to 2GB,and start
address at 0x8000000
2.fix up the code of dma address convert for OHCI,sata,1a gmac
3.fix up the parameter of DMA64 option which be tranfered to kernel
Change-Id: I943e3aac77c4cdbd04bb6a28058a3f423b74b998
Target:LS2G1A
The speed of programming flash pmon is very slow,
because the south bridge 1A hasn't been stopped.
2.Modify sys/dev/usb/usb_storage.c
Fixup the ohci_storage code bug about pioneer DVD-ROM.
According to the Change-Id: Iba56042f1d3596aa40bd85e05c908c4b2663ecd8
and Change-Id: I11b499266503fbdb2091484e5e18e9372beecf40 from lixuefeng.
Change-Id: I76d536e9cf1a43beb0bf3e07d2ee66c681918de7
Target:LS2G1A
1.add reboot funtion by 2g gpio60 to be write low
2.add poweroff function by 1a s5 mode
3.add sata funtion
Change-Id: I09caeb9691d49024c7706ce8e7e6bbfafd9306a2
Target:LS2G1A
1:add Targets / Bonito2g1a director
2:add zloader .2 g1a director
3:add LOONGSON2G1A configure option
4:add start_2g1a.S and modify some config window
5:fixup some problem to support 2 g1a in start_2g1a.S
6:disable some funtions, then the pmon can run on command line
Change-Id: I19ee7a6d90c7efda3d6e986d12903da20ccc6ad5
Target:LS2G1A
the ohci_storage code will retry to load the initrd,which result in the spl value be changed to 7.
then the usb keyboard code will not respose the input from keyboard.
Change-Id: Iba56042f1d3596aa40bd85e05c908c4b2663ecd8
Target:2G5536
1.the Pioneer usb drive need about 30s to resume from sleeping, 10 times retry is
not enough for this unusual long time, just to entend to 30
2.when reading date from the Pioneer usb DVD-ROM,the host musb sent USB_STOR_TRANSPORT_GOOD
command to resume the DVD-ROM from sleeping
Change-Id: I11b499266503fbdb2091484e5e18e9372beecf40
Target:2G5536
1.Add Targets/Bonito2g5536 directory
2.Add zloader.2g5536 directory
3.Add Makefile.2g5536 file
4.Add usb and ps2 keyboard functions
5.Modify 2g5536 codes to support gcc4.4
6.Modify gmac code in sys/dev/gmac for net device
Change-Id: I73c343fb4b08a50cb515cd7cbefaf624b6065498
Target:2G5536
1. Read GPIO to get the board version.
2. when it can't get MAC address from eeprom,
a random MAC address will be used.
Change-Id: If334e94dbb3dcacfea6b2f91d874a228ef99d753
Signed-off-by: Liu Shaozong <liushaozong@loongson.cn>
Fill the uuid's last six bytes with the mac address.
Change-Id: I606745b2a5bda413d39c5ab2d3c6fc3b44fb3f9b
Signed-off-by: Liu Shaozong <liushaozong@loongson.cn>
Now ls3c2h platform support added, SPI flash/AHCI sata/Gmac/LPC/DC
are all OK, however there are still some work to do:
1.The command "ifaddr eth0" can't work, but "ifaddr syn0" works;
2.It hasn't been test with Dimms on con5 and con7;
3.CPU Frequency aren't calculated by RTC, it's fixed by program.
4.It cost ls3c a long time to wait Vide Ram intilized by ls2h, the
time should be shrunken largely.
Target: Bonito3c2h
Fix a bug of the 9260-8i RAID controller sometimes cannot adaptation.
Add a delay in PCI setup, it can rightly work. I think, it needs more
times to initialization itself in different versions firmware.
If have more than two verital device based RAID controller, the other
device cannot work except the last one.
In disk attach function, use the device_lookup macro, the other device
can working rightly.
Target: All
Now on 2GQ2H board you can judge NIC work mode is 100Mbps or 1000Mbps by
see network port led color display.(100Mbps LED is green 1000Mbps LED is
orange)
Target:Bonito2gq2h
Before: The timeout value for sata harddisk was 1000ms, that was too short for
some sata harddisks. It caused the problem as Bug 524 described as
http://www.loongson.org/dev/bugzilla/show_bug.cgi?id=524 showes.
Now: The timeout value is 2000ms, it is long enough for all sata harddisks.
Test: Disconnect power for 30s, then connect power and start up, repeat it for
20 times at least.
Targets: all
Original code can not read the correct id sometimes, now we delay a period of time before reading the id,
it is OK. The bug as "http://www.loongson.org/dev/bugzilla/show_bug.cgi?id=547" described
won't appear any more.
Targets: Bonito3b780e
Original code using the BMC, PMON can not boot into the graphical interface. Now we handle BMC's
built-in graphics card to make it go right branch.
Targets: Bonito3aserver
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
1.Previously adding the USB model, it will be happended that the OHCI driver
can not work normally in kernel. In this patch, it stops the ohci when
executing the command go.
2.Trim the file usb-ohci.c
Target: 3a+2h
Before on different board the NIC device symbols is
different,For example on 3a780e/3b780e the NIC device
symbol is "rte0" on 3aserver/3bserver the NIC device
symbol is "em0/em1" on 3a2h the NIC device symbol is
"syn0/syn1",Now unified the NIC device symbol as "eth".
when you use the command "ifaddr" "ifconfig" followed
by "eth0/eth1",On 3a780e/3b780e 3a2h use the command
"setmac" "readrom" "writerom" followed by "eth0/eth1"
but on 3aserver/3bserver direct use the command "setmac"
"readrom" "writerom".
Target:Bonito3a780e Bonito3b780e Bonito3aserver
Bonito3bserver Bonito3a2h
This patch adds a "setmac" command used to examine and set LS2H Gmac's
Mac address. This command puts the Mac address into the eeprom device.
When the pmon boots, Gmac reads Mac address from eeprom. By the way,
this patch also adds support for eeprom.
The patch is for bug 459 and bug 460
Target: 3a+2h
The ls2h.h head file defines all registers of LS2H. If you need to access
these registers, just include this file. In the file, it provieds four
macro defines to access the registers: read_reg_word, write_reg_word,
read_reg_byte and write_reg_byte, which access registers in word or byte.
Target: 3a+2h
1, Original code the CPU temperature is wrong, now we change reading mechanism of the CPU temperature.
2, Change the code position of initialization function "loongson_smbios_init" into the function "dbginit".
3, Add uuid support for smbios.
4, Optimization some details about smbios.
Targets: all
Original Gmac's Mac address is default value, can not be configured
manually. In this patch, Gmac obtain Mac address from environment value
"ethaddr".
Target: 3a+2h
Original only one gmac port syn0 can be used, the other syn1 is not
configured. In this patch, add confuguration for syn1, then gmac
port syn1 is normal.
Target: 3a+2h
Original code can't support ddr auto probe and training, Now ls2h
i2c controler0 is used to detect the DIMM information, and ddr auto
training can work now. It pass test with single 2G dimm and double
2G DIMM on two DDR controler.
Target:Bonito3a2h
1.when ohci1 has USB KBD and after bmc boot, pmon booting ,usb kbd can't work.
2.sb700_usb.c fixed usb hub can't work in systerm.
Targets: Bonito3aserver
When you use AST2050' VGA,you should open USE_BMC and VGA_BASE=0xb4000000 options.
Default:
rs780e vga option has been open:
USE_780E_VGA
VGA_BASE=0xbe000000
Targets: Bonito3aserver
Before: If we press the shuangfeiyan usb keyboard when the usb ohci
controller enumerate the usb devices, the usb keyboard could not work properly.
because the original code did not deal with the message from usb keyboard, so
it caused the problem as bug 382 described
http://10.2.5.24/dev/bugzilla/show_bug.cgi?id=382 shows.
Now: I add the handling code into the delay founction, so the message from the
usb keyboard can be dealed with immediately.
Test: Insert the shuangfeiyan usb keyboard, start up and press the keyboard before
the PMON command line, the keyboard can work properly.
Targets: All
1. the PHYSADDR(x) macro should be ((((long)(x))&0x1fffffff) | 0x80000000) but not ((((long)(x))&0x1fffffff) | 0x80000000a)
2. when scan sata port, it should scan two port but not one.
3. when set transfer mode of the harddisk, such as the dma mode, it should based on the information of the harddisk, but not a constant value.
4. when execute ahci_sata_rw_cmd_ext the command should be dma_read_ext and dma_write_ext but not dma_read and dma_write.
target: 3A + 2H
Original code scan every pci/pcie device and try to malloc pci memory
for them, and record every io/mem space window according pci bar. If
two video cards were registerd, the ordinary vga buffer space can't be
wroten, which lead integrated video card can't update and flush the
screen, as bugzilla:bug144 described. Because the max pci memory space
we can support is only 1G at this moment, pci memory allocation for
independtent video card is disable. If system pci memory is enlarged,
this code can be changed to support pci memory allocation for both video
card.
Target:Bonito3a780e,Bonito3b780e,Bontio3aserver,Bontio3bserver,Bonito3c780e
Now ohci usb mode support is added, both usb keyboard and usb disk
are ok. However, only DELL usb keyboard pass test. It's said this
is maybe becuase the usb signal is not very good.Thanks ZangJiading.
NOTICE:if BIOS option "INTERFACE_3A780E" is removed, usb keyboard
will fail to use, becuase some usb keyboard poll code won't be executed
if micro "INTERFACE_3A780E" isn't defined. By the way, the option
"INTERFACE_3A780E" has no relation with RS780E, it's used to mean
BIOS MENU and windows interface is enable.
Target:Bonito3a2h
1, This version currently supports the processor core, UART, I2C bus, DDR2 controller,
GMAC controller, NAND controller, interrupt controller, the LPC controller, SPI controller,
HDA controller, the RTC, Watchdog, the HT interface.
2, This version does not support media processors, GPU, Display Controller, SATA controller,
USB 2.0 controller, ACPI power management, PCIE interface.
3, If you want to fall back to the previous version, please use the following command:
"git clone http://10.2.5.28/gitweb/pmon-loongson3a+2h", then git reset to the place you want to reach.