Table of Contents

Apple MacBook Pro 13-Inch "Core i5" 2.5 / "Core i7 2.9" (Mid-2012)

Identifiers: Mid-2012 - MD101LL/A* (i5) - MD102LL/A (i7) - MacBookPro9,2 - A1278/2554*


Hardware

Year introduced June 11, 2012
CPU Intel(R) Core(TM) i5-3210M @ 2.50Ghz / i7-3520M @ 2.90Ghz (Ivy Bridge)
Ethernet Broadcom NetXtreme BCM57765 Gigabit Ethernet PCIe
Graphics Intel(R) HD Graphics 4000 (integrated GPU with 1.5GB shared memory)
Memory 4GB (or 8GB for the i7) RAM DDR3 @ 1600Mhz
Screen LED-backlit 13,3“ widescreen TFT active-matrix “glossy” @ 1280×800
Wireless Broadcom BCM4331 802.11a/b/g/n Dual-Band Wireless
Sound Cirrus Logic CS4206 (Internal Analog 3.1/2.0)

Support overview

Component Status Details
Graphics Graphical sessions ✔ Xorg works out of the box
Backlight (brightness) control :?: Requires asmc(4) and acpi_video(4) drivers
Input devices Keyboard backlight :?: Requires asmc(4) and acpi_video(4) drivers
Touchpad :?: Requires wsp(4) driver
Media keys Brightness keys :?: Requires sysutils/asmctl port
Volume keys :!: Doesn't work out of the box
Network Ethernet ✔ Works out of the box with bge(4) driver
Wi-Fi ✘ BCM4331's driver not ready yet
Other Battery ✔ Works out of the box
Bluetooth :!: Untested but detected
CD/DVD drive ✔ Works out of the box
Fan :?: Requires coretemp(4) and asmc(4) drivers
SD card reader ✔ Works out of the box
Suspend & resume :?: Requires sysctl hw.acpi.lid_switch_state=S3
Webcam :!: Untested but detected
Ports DisplayPort :!: Untested but detected
FireWire :!: Untested but detected
Thunderbolt ✘
USB ✔
Headphone jack ✔ Available on pcm1
Sound Speakers :?: Requires tweaking to power up the sub-woofer
Last update: 2021-06-13 12:58:27+0200

Tweaks on FreeBSD 12.x-RELEASE

Battery

# Enable powerd(8) at boot
powerd_enable="YES"

# powerd(8) flags
power_flags="-n min -a hiadaptive -b adaptive"

Fan control

sysctl dev.asmc.0.fan.0.minspeed=3200
# Setting fan speed based on current temperature
*	*	*	*	*	root	/opt/local/bin/asmcfan

Sound

% cat /dev/sndstat
FreeBSD Audio Driver (64bit 2009061500/amd64)
Installed devices:
pcm0: <Cirrus Logic CS4206 (Internal Analog 3.1/2.0)> on hdaa0  (1p:4v/1r:4v) default
pcm1: <Cirrus Logic CS4206 (Analog Headphones)> on hdaa0  (1p:1v/0r:0v)
pcm2: <Cirrus Logic CS4206 (Digital)> on hdaa0  (1p:1v/0r:0v)
No devices installed from userspace.
For multichannel input/output associations sequence
numbers encode channel pairs positions: 0 - Front, 1 -
Center/LFE, 2 - Back, 3 - Front Wide Center, 4 - Side.
Standard combinations are: (0) - Stereo; (0, 2), (0,
4) - Quadro; (0, 1, 2), (0, 1, 4) - 5.1; (0, 1, 2, 4)
- 7.1.
hint.hdaa.0.nid10.config="seq=0"
hint.hdaa.0.nid11.config="seq=1"
sysctl hw.snd.vpc_0db=1
# Enable equalizer in mixer applications for internal speakers (pcm0)
hint.pcm.0.eq=1

# Enable equalizer in mixer applications for analog headphones (pcm1)
hint.pcm.1.eq=1

# Enable equalizer in mixer applications for digital line (pcm2)
hint.pcm.2.eq=1

Suspend/Resume

hw.acpi.lid_switch_state=S3
hw.acpi.power_button_state=S3

Trackpad

  1. The atp(4) driver is old making the trackpad fuzzy. Use the more recent kernel driver wsp(4).
  1. Put the following on /etc/sysctl.conf:
hw.usb.wsp.enable_single_tap_clicks: 0
hw.usb.wsp.scr_hor_threshold: 20
hw.usb.wsp.pressure_tap_threshold: 120
hw.usb.wsp.pressure_untouch_threshold: 10
hw.usb.wsp.pressure_touch_threshold: 50
hw.usb.wsp.z_factor: 5
hw.usb.wsp.scale_factor: 12
hw.usb.wsp.debug: 1
  1. To make the trackpad working in Xorg, add this to /etc/sysctl.conf:
kern.evdev.rcpt_mask=3

Files