Меню Рубрики

Samsung galaxy drivers for linux

Samsung galaxy drivers for linux

Итак, это мой мануал по сборке Linux для Спики. Строго говоря, тема относится только к этому аппарату, но будет полезна всем, кто хочет собрать Linux под свой смартфон.

90-100МБ, с запущенным Firefox 3.6 (две вкладки с ошибкой соединения)

50МБ.
Работает:

  • Экран
  • Xorg
  • Тачскрин
  • SD

Не работает:

  • Звук
  • Клавиатура (есть виртуальная)
  • Модем (даже самой звонилки нет)
  • Wi-Fi
  • Bluetooth
  • NAND
  • .

Стоит отметить, что большинство нерабочих вещей на самом деле работают, но не видятся системой. Ядро то стандартное.

Благодарности:
Список людей, которые прямо или косвенно помогли в портировании.
tom3q — за пофиксенный драйвер framebuffer’а
reali — за активную помощь

Сообщение отредактировал -WOLF- — 12.02.18, 23:56

Часть 1. Подготовка.

Что понадобится:
1) Galaxy Spica
2) Карточка памяти (я использую 1ГБ из комплекта)
3) Linux на ПК (можно Live CD или виртуалку). У меня установлена Mageia 1
4) Windows. Для прошивки.
5) Интернет, чем быстрее, тем лучше. Качать надо будет много.

Ставим crosstool.
Берём отсюда свежую CodeSourcery. Нам нужна GNU/Linux, лучше инсталлер.
Делаем скачанный файл исполняемым.

Подготовка.
Берём ядро от Android. Я брал стоковое ядро от самуснга Update2 (отсюда)
Для самсунговского ядра нужно скопировать содержимое папки delta в папку kernel с заменой. Аккуратнее, не перепутайте, внутри kernel есть ещё одна папка kernel, копировать надо в первую. Здесь папка kernel (котрая рядом с delta и modules) будет являться отправной точкой для всех путей.
Если берёте другие ядра, то вам не нужна initramfs, потому что сейчас она не используется.
На этом шаге вам понадобится патч фреймбуфера от tom3q. Если нет аккаунта на Самдроиде, то внизу сообщения есть версия 4 этого патча. 5я пока не совместима с 2D/3D дровами от Самса.
Применяем патч к ядру.
Теперь у фреймбуфера появилась поддержка косноли. НО, пока консоль будет пустой, нам надо ещё перевести вывод на неё. Для этого находим в файле kernel/arch/arm/kernel/setup.c строчку и комментируем:

//fb_class = class_create(THIS_MODULE, «graphics»);
//if (IS_ERR(fb_class)) <
printk(KERN_WARNING «Unable to create fb class; errno = %ld\n», PTR_ERR(fb_class));
fb_class = NULL;
//>
return 0;
>

Естественно, путь у вас будет другой.
На этом подготовка исходников ядра заканчивается.

Конфигурирование.
В качестве начальной настройки ядра можно взять конфиг из arch/arm/configs/ он называется spica_android_defconfig, а можно взять мой из аттача.
В дефолтном не забываем вырубить initramfs. И добавить Default kernel command string

В моём конфиге отключено всё, что содержит упоминание Android, исключая драйвер звуковухи.
Теперь можете конфигурировать ядро как захотите, только помните, что в нём не должно быть ни одного модуля . У нас же нет initramfs.

Сборка ядра.
Тут всё просто:

скрипт запаковывает ядро в архив, копирует на флешку и извлекает её. Потом я прошиваю ядро с нетбука. Если подправите пути, то и вам этот скрипт будет хорошо служить.
Прошивать надо как и другие прошивки, но только PDA.
Всё, на этом описани сборки ядра закончено.

Сообщение отредактировал -WOLF- — 26.02.12, 14:25

Супер! Поддерживаем всеми руками!
Тестеры точно уже есть)

Кстати если нужна помощь с удовольствием поможем чем сможем!)

Сообщение отредактировал reali — 23.01.12, 04:23

Дык там же в конфиге есть параметр, где можно прописать строку консоли и отключить бутлодерную консоль.

Y U NO USE OPENEMBEDDED? Ведь есть же SHR, с гуем для телефона, RIL. И система пакетов ipkg.
Также, на тебе initrd — http://www.kaa.org.ua/alex/rootfs.img.gz, там по дефолту телнет включается и usb0 присваивается адрес 10.8.0.2 — полезно для отладки, когда microsd не работает (как у меня на sgs2)

Знаю, но буду собирать с нуля, хотя, наверное, и сопру у них многое. Пакетным менеджером, скорее всего, будет rpm.

Для отладки удобнее грузиться с microSD с монолитным ядром. Меньше прошиваться надо.

Boot options —> Kernel command line type (Always use the default kernel command string)

Это только в новых ядрах, в том, что я собирал, такого ещё нет.

Что именно ты хочешь этим сказать? Я не собираюсь всё с нуля писать, я просто собираю систему.
В качестве оболочки, наверное, возьму что-нибудь на GTK. Может GPE.
rpm’ки из MeeGo я тоже хочу, в шапке ж написано
Впрочем, никто ж не запрещает тебе собирать на базе этой всё, что захочешь. Я не против, если будет выбор оболочек, только за, в этом и есть смысл.

Сообщение отредактировал -WOLF- — 23.01.12, 18:40

Я хочу сказать, что если есть готовое окружение для сборки пакетов, то надо пользоваться им, а не придумывать еще одно. Проще пару пакетов в апстрим закинуть, чем из апстрима руками все копировать и мучаться с совместимостью (имена пакетов, имена библиотек и симлинков на них внутри пакета). Ведь все пакеты уже есть в OE, тебе достаточно будет сделать пакеты с ядром и модулями для диалера и прочих демонов. Вот я в упор не понимаю, зачем некоторые так угорают по LFS и пишут свою систему инициализации — это же огромные грабли при апдейтах.

Кстати. GPE мертво, и никто его не пилит. Сейчас основной гуй SHR — E17, альтернативный — Aurora на qt4. Мне самому не нравится openembedded, я хочу юзать убунту/генту, но мне лень делать пакеты для актуальной версии freesmartphone (потому что сначала надо портировать все на ванильное ядро, загнать в апстрим и портировать из старого андроидного ядра драйвер модема).

В общем, рекомендую разобраться сначала с тем, какой протокол модема используется, как настраивать alsa для каждого сценария (звонок/музыка/блютус), какие фирмвари нужны, а потом взять образ SHR для близкого девайса (например, с самсунговским модемом, типа nexus s) и добиться работы иксов, модема, звука. Потом подготовить патчи для freesmartphone.org и интегрировать их (советую посещать #openmoko-cdevel во freenode, там всегда помогут с интеграцией и расскажут, что и как работает). Строго говоря, если работа модема и телефонные функции не интересны, можно забить на это все и использовать обычный «десктопный» дистрибутив.

В общем, я думаю, что внимание надо заострять на том, как собирать ядро, как портировать драйвера между версиями и как управлять железом (модем, wifi) из юзерспейса, какие есть демоны для телефонной периферии (сенсоры освещенности, гироскоп, акселлерометр). А в качестве дистрибутива выбрать стандартный — ubuntu/fedora/meego/OE, чтобы была большая база собранных пакетов, и где есть сообщество, занимающееся подготовкой пакетов и исправлением багов.

Источник

The Samsung Unified Linux Driver Repository

This site provides an apt (.deb) repository for installing the Samsung Unified Linux Driver (as of 2017, provided by HP) in a more user-friendly and less problematic way than downloading and installing directly from the Samsung website or using the installer that ships with printers. I simply repackage the drivers that Samsung provides for free, and am not involved in any way with development of them. The drivers are binary-only (no source code provided), and are only available for the Intel/AMD 32- and 64-bit platforms with limited ARM support (Android, Raspberry Pi, etc. only if «soft-float»).

See this announcement in the forums for a brief summary of why the driver is unlikely to work on a completely up-to-date Linux system, and why the issues will continue to get worse over time with no expected solution. For similar reasons, much of the information on this website is not necessarily helpful in getting your Samsung printer working and is out of date with no new approach that will work (as of August 2019). Due to steadily declining use of this resource both due to the gradual replacement of all Samsung printers and the issues arising with conflicts between the drivers and modern Linux systems, I do not intend to spend any time on updating the information or troubleshooting new problems. The one exception will be in the extremely unlikely event that HP releases an updated driver for these printers.

18 November 2018

The planned shut down is canceled. SULDR will remain active in its current form for at least a couple of more years, although I cannot promise that I will have time to perform updates or provide assistance in the forums. The forums will remain active for users to help each other.

8 July 2018

10 years old, the newest drivers available for download from the HP website work just as well, if possibly not quite as conveniently, as the repackaged versions here.

If anyone is interested in taking over some or all of this content, I am willing to assist in that process. Post in the forums expressing interest.

12 May 2018

Driver version 1.00.39 is available. This is the last version prepared by Samsung, and the first released by HP after the acquisition was completed.

14 May 2016

Updated key signing. This will cause a keyring package to be installed, and may cause a temporary warning about missing a signature until that package is installed. Instructions for setting up repository have been modified to reflect the new approach. The old samsungmfp-* packages have also been removed.

For older news, see below.

Setting Up the Repository

  1. If you performed any installations of the Unified Linux Driver performed using the Samsung installer, these must be completely removed before using the .debs in this repository. See the uninstallation information for your version of the driver.
  2. Do one of the following to enable the repository (all are equivalent).
    • Using the terminal:
      • To /etc/apt/sources.list (root/sudo access required to edit), add the line:
        deb https://www.bchemnet.com/suldr/ debian extra
      • Enter the following in a terminal (as root):
        bash -c ‘echo «deb https://www.bchemnet.com/suldr/ debian extra» >> /etc/apt/sources.list’
        Or if using sudo:
        sudo bash -c ‘echo «deb https://www.bchemnet.com/suldr/ debian extra» >> /etc/apt/sources.list’
    • Or using a graphical package manager (Synaptic, Ubuntu Software Center, etc.):
      • Edit the repository settings (e.g., Synpatic go to Settings -> Repositories) to add:
        deb https://www.bchemnet.com/suldr/ debian extra
      • Or if multi-line input is required:
        URI: https://www.bchemnet.com/suldr/
        Distribution: debian
        Section: extra

    IMPORTANT: The distribution and section must be entered exactly as above. Do not substitute the name of your own distribution, translate the words, or use a default section — it won’t work. I get hundreds of errors on the server each day from people who replace one or more of the terms above (especially Ubuntu users using the code name of their particular release).
    ALSO IMPORTANT (Ubuntu of any flavor, Mint based on Ubuntu, and other Ubuntu derivatives): Make sure that you add the repository as an «Additional Repository». Do not add as a «PPA», that will not work.

  • Refresh your repository listings:
    • On a terminal (as root):
      apt-get update
      Or if using sudo:
      sudo apt-get update
    • Or in a graphical manager, click the reload or refresh button. The suld-* packages should now appear in your list of available packages to install. You will likely see an error about unathenticated packages.
  • Install the repository key (last update: 24 Nov 2016) for the repository by installing the suldr-keyring package. This package will also automatically be installed if you install any driver file. Once it is installed and you refresh your repository listings again, you will not receive warnings about authentication.

    If you are unable to install the keyring package this way due to authentication errors, download it directly and then:

    • On a terminal (as root):
      dpkg -i suldr-keyring_2_all.deb
      Or if using sudo:
      sudo dpkg -i suldr-keyring_2_all.deb

    Then refresh the repository.

  • Selecting Packages to Install

    Acknowledgements

    Thanks to the many users, both in the original Ubuntu Forums thread and the current forums, who have provided feedback and helped with testing over the years. I don’t even know how many are still using this driver, but thanks to all of you. Particular users who have contributed solutions that I’ve incorporated into the repository packages or alternative solutions include hokiejp (eglibc 64-bit solution, for network scanning); gaboro (eglibc 32-bit solution testing for the same problem); Rodolfo Medina (ppd-only solution guide); tapanit (work-around for scanning across complex networks); n3ck and ezekiel_quacks (USB scanning work-around solutions); rlar (network scanning broadcast solution); vyvee (usblp fix); b1b1 (pdf to ps printing problems fix). Some of the solutions described in these web pages come from these individuals and may point to their original posts, but even those who solved problems that are now irrelevant have my thanks. More recently, angelnu and totally-king have developed the scripts in the suld-scantopc packages.

    Older News

    27 December 2015

    25 December 2015

    2 May 2015

    Release of packages for the 1.00.35 (March) drivers. This drops support for ARM and provides a huge number of updates to ppd files, including to several printers that had not been well supported for the past several versions. Actual binary changes appear to be minor.

    29 November 2014

    Release of packages for the 1.00.27 (August) and 1.00.29 (November) drivers. These appear to be very similar to the 1.00.21 driver, but there are subtle (and entirely untested by me) differences. I also resolved some issues with the 1.00.21 for a small number of printers impacted by the binary changes from 1.00.06 to 1.00.21; Samsung also fixed this issue with the 1.00.27 release.

    4 May 2014

    Release of packages for the new 1.00.21 driver. This is a minor update to the 1.00.06 series (see below) that adds support for a few additional printers, but also seems to change some of the binaries significantly. I have no idea if it is actually an improvement.

    6 October 2013

    Release of packages for the new 1.00.06 driver. These packages are marked as «driver2» to address the confusion associated with Samsung re-starting their version numbering. These packages should be treated as experimental at this stage — they have had precisely zero in-house testing, because I do not have a system to do more than ensure they install. The Configurator is no longer shipped by Samsung, and is not compatible with this version. So anyone who regularly uses the Configurator should not upgrade. Parallel port support has also been removed, and support for a few printers (beyond those already dropped in 4.01.17) was removed. The latest printers released from Samsung are supported by this driver. There is also limited support for the arm architecture. Specifically, the armel/soft float architecture. The arm drivers do not yet work with armhf/hard float. The new drivers work quite differently, and I will be updating the support content on this site as time allows to reflect the changes. As usual, post to the forums to share any experiences.

    Note that the 1.00.06 driver installer from Samsung seems to work fine, and there is currently no seriously compelling reasons to use this repository instead of Samsung’s installer (unless you want an alternate driver version or an easy install/uninstall system).

    15 May 2013

    Addition of the suld-scantopc and suld-scantopc-gui packages for enabling the push-to-scan feature of at least some Samsung multifunction printers. Consider these packages experimental, and share any issues in this thread.

    I have also completed a migration to a new web host, without any apparent major issues. But do let me know through the forums if something seems broken.

    3 May 2013

    Major website update and repository overhaul, as well as release of packages for the 4.01.17 driver. In particular, note that many packages (especially packages related to scanning) have been incorporated directly into the driver package, simplifying installation. Click here if more information is needed on changes to the repository. Also new is a list of printers supported by different driver versions.

    29 September 2012

    Driver packages updated. Driver versions 4.00.36 and 4.00.39 are now available.

    10 June 2012

    I have just launched new forums on this website to provide a mechanism to ask for help, provide feedback, etc. These will gradually replace the original Ubuntu Forums thread on this topic that was started way back in January 2007. (Update 27 May: the Ubuntuforums thread is now closed.) When you register, you will be asked to report a Linux version and printer type; this is to simplify my responses to threads, so I can at-a-glance remember the parameters for someone I am replying to.

    Источник

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Переключение раскладки клавиатуры mac os
  • Переключение раскладки ctrl shift mac os
  • Переключение раскладки alt shift mac os
  • Переключение рабочих столов в mac os
  • Переключение между рабочими столами mac os