January 15, 2012

January 13, 2012

Fedora 15 uses a new system

#system-config-service

or
#cd /lib/services/system
#systemctl -disable servicefile*.service

or
# chkconfig servicename off

January 11, 2012

kerry's last patch

Kerry's last patch is about fixing the multipleVGA card.
Moving the set_vga_bridge_bits() down.

January 10, 2012

create italic font by fontcreator 6.2

1. get font.ttf.
2. launch the fontcreator 6.2
3. tools->Glyph transformer
select all.
efect -> italic
OK

Configure the coreboot build by local compiler

1. rm .xcompile
2. cd util/crossgcc/
ln -s xgcc xgcc-4.5.0
3. make menuconfig

June 22, 2011

The Ways to wake up Linux from S3

1. PS/2 keyboard.
To enable that, the PS/2 connector, SuperIO, southbridge must have standby power.
And the feature in the superio and southbridge should be enabled. We need to know
which event pin of SB the PME# from Superio is connected. Add
/* General event 3 */
Method(_L03) {
/* DBGO("\\_GPE\\_L00\n") */
Notify(\_SB.PWRB, 0x02) /* NOTIFY_DEVICE_WAKE */
}
in the _GPE.

2. USB Keyboard.
We need to know which pin belongs to the USB PME#.

3. Wakeup On Lan
There are some Wakeup On Lan tools. You should provide the MAC address of your board.

4. RTC on Lan
Use rtcwake. The day_alarm, month_alarm, century in FADT should point to the
CMOS Ram erea, instead of all 0s.

February 11, 2009

ACPI support in Coreboot

This is a great issue. I have put a lot energy into this. Now porting ACPI to SB700 is quite easy based on SB600 code. But I have the feeling that I have already forgot something. So I am gonna have to submit a new post to record the whole procedure.

What is Power Management? It is, adding some feature to make your system have the required performance and comsume the least power. Let's skip the boring history and cut to the chase, ACPI. We can go to ACPI spec. That is a whole picture. The goal of this post is to record some useful information in case that I would forgot.

ACPI set up a detailed profile of the whole system. It is provided by BIOS and used by OS. It is put in memory and OS probe it. ACPI uses tables to describe system information. Please go to ACPI spec "ACPI Software Programming Model". You can find the detailed table architecture of ACPI.

The Root table is point by RSDP, from which we can trace all the tables. Of all the tables, 2 are the most important, FADT and DSDT.

1. FADT has the ACPI hardware registers. ACPI hardware registers are defined in spec "ACPI Hardware Specification". They are often located in SB chipset. BIOS should allocate the IO spaces to them and write the IO address in FADT. So the OS can find them.

2. DSDT has the ASL code which describe the system.

(to be continue ...)

tip: (That is why I write this post)
1. Change the frequency of CPU.
orignal information comes from linux kernel Documatation.
linux-2.6.xx/Documentation/cpu-freq/user-guide.txt
All the cpufreq interface is located in
/sys/devices/system/cpu/cpu0/cpufreq/

2. Make the system powerdown or sleep.
bash> poweroff #power down the system.
bash> echo "standby" > /sys/power/state # S1
bash> echo "mem" > /sys/power/state #S3
bash> echo "disk" > /sys/power/state #S4

3. See the temperature of the CPU.
cat /proc/acpi/thermal_zone/XXXX/temperature.

4. See the interrupt infomation.
cat /proc/interrupts