<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Julien on Silicone&#39;s web</title>
		<link>https://silicone.homelinux.org/authors/julien/</link>
		<description>Recent content in Julien on Silicone&#39;s web</description>
		<generator>Hugo</generator>
		<language>fr</language>
		
		
		
		
			<lastBuildDate>Wed, 03 Oct 2018 21:30:22 +0100</lastBuildDate>
		
			<atom:link href="https://silicone.homelinux.org/authors/julien/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Inside an Open Source BIOS</title>
				<link>https://silicone.homelinux.org/2018/04/11/inside-an-open-source-bios/</link>
				<pubDate>Wed, 11 Apr 2018 12:00:37 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2018/04/11/inside-an-open-source-bios/</guid>
				<description>&lt;p&gt;&lt;em&gt;This post was originally published as &lt;a title=&#34;A look from behind the Open Source Bios&#34; href=&#34;https://blog.online.net/2018/04/10/a-look-from-behind-the-open-source-bios/&#34; target=&#34;_blank&#34;&gt;A look from behind the Open Source Bios&lt;/a&gt; on Scaleway’s blog.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;This is a followup post of &lt;a href=&#34;http://silicone.homelinux.org/2018/03/16/open-source-bios-at-scale/&#34; title=&#34;Open Source Bios at Scale&#34;&gt;Open Source Bios at Scale&lt;/a&gt; so you might what to read it first as this post will get more into details.&lt;/p&gt;&#xA;&lt;p&gt;As explained in the previous post our BIOS is build with three main components: &lt;a href=&#34;https://www.coreboot.org/&#34; rel=&#34;nofollow&#34;&gt;coreboot&lt;/a&gt;, Intel FSP and &lt;a href=&#34;http://www.tianocore.org/&#34; rel=&#34;nofollow&#34;&gt;TianoCore&lt;/a&gt;. We will describe here how those three parts are fitting together.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Open Source Bios at Scale</title>
				<link>https://silicone.homelinux.org/2018/03/16/open-source-bios-at-scale/</link>
				<pubDate>Fri, 16 Mar 2018 12:00:02 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2018/03/16/open-source-bios-at-scale/</guid>
				<description>&lt;p&gt;&lt;em&gt;This post is a summary of &lt;a title=&#34;Open Source Bios at Scale&#34; href=&#34;https://fosdem.org/2018/schedule/event/hwenablement_open_source_bios_at_scale/&#34; target=&#34;_blank&#34;&gt;my talk at FOSDEM’18&lt;/a&gt; and was originally posted on &lt;a title=&#34;Open Source Bios at Scale&#34; href=&#34;https://blog.online.net/2018/03/15/open-source-bios-at-scale/&#34; target=&#34;_blank&#34;&gt;Scaleway’s blog&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;At &lt;a href=&#34;https://scaleway.com&#34; rel=&#34;nofollow&#34;&gt;Scaleway&lt;/a&gt; we started to design our servers with the &lt;a href=&#34;https://www.scaleway.com/baremetal-cloud-servers&#34; rel=&#34;nofollow&#34;&gt;ARM C1&lt;/a&gt;.&lt;br&gt;&#xA;Later we switched to a x86 architecture to provide the &lt;a href=&#34;https://www.scaleway.com/baremetal-cloud-servers/&#34; rel=&#34;nofollow&#34;&gt;C2&lt;/a&gt; and &lt;a href=&#34;https://www.online.net/fr/serveur-dedie/dedibox-sc&#34; rel=&#34;nofollow&#34; hreflang=&#34;fr&#34;&gt;Dedibox SC2016&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;On x86 a BIOS is required to start the server. BIOS software got many legacy and backward compatible software to ensure a reliable behavior across many boards. I was in charge of the BIOS development for our new generation of x86 servers.&lt;/p&gt;&#xA;&lt;p&gt;This article presents technical choices we used during our development.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Raspberry Pi 3 as desktop computer</title>
				<link>https://silicone.homelinux.org/2017/03/05/raspberry-pi-3-as-desktop-computer/</link>
				<pubDate>Sun, 05 Mar 2017 17:25:45 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2017/03/05/raspberry-pi-3-as-desktop-computer/</guid>
				<description>&lt;p&gt;For about six months I’ve been using a Raspberry Pi 3 as my desktop computer at home.&lt;/p&gt;&#xA;&lt;p&gt;The overall experience is fine, but I had to do a few adjustments.&lt;br&gt;&#xA;First was to use KeePass, the second to compile gcc for cross-compilation (ie use &lt;a href=&#34;https://buildroot.org/&#34; title=&#34;buildroot&#34;&gt;buildroot&lt;/a&gt;).&lt;/p&gt;</description>
			</item>
			<item>
				<title> From gengo to polylang: updating the theme</title>
				<link>https://silicone.homelinux.org/2014/02/19/from-gengo-to-polylang-updating-the-theme/</link>
				<pubDate>Wed, 19 Feb 2014 23:28:32 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2014/02/19/from-gengo-to-polylang-updating-the-theme/</guid>
				<description>&lt;p&gt;So I postponed hacking a mode with multiple languages on the same page and decided to set polylang on my &lt;del&gt;production site&lt;/del&gt; (hem) my blog.&lt;/p&gt;&#xA;&lt;p&gt;But Gengo was using some customized template tags so the theme was adapted to it and this needed to be changed.&lt;/p&gt;&#xA;&lt;p&gt;With polylang it’s a lot simpler, all navigation is handled by filters, so only thing really custom had to be written:&lt;/p&gt;&#xA;&lt;p&gt;Basically my hacked version of &lt;code&gt;the_translations&lt;/code&gt; had to be ported. And to keep it simple it can even be part of the &lt;code&gt;functions.php&lt;/code&gt; file in the theme and use the &lt;a href=&#34;http://polylang.wordpress.com/documentation/documentation-for-developers/functions-reference/#pll_the_languages&#34; title=&#34;Polylang function reference pll_the_languages&#34;&gt;&lt;code&gt;pll_the_languages&lt;/code&gt;&lt;/a&gt; function.&lt;br&gt;&#xA;I want to display the other language title prefixed by “Language version” written in this language. As the &lt;em&gt;gettext&lt;/em&gt; like functions would only return strings in the current language, I hardcoded those strings, but adding them in Polylang admin “strings translation” would have been nice…&lt;br&gt;&#xA;So here is the code:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $translation_title=array(&#xA;    &amp;#39;en&amp;#39; =&amp;gt; &amp;#34;English version:&amp;#34;, &#xA;    &amp;#39;fr&amp;#39; =&amp;gt; &amp;#34;Version française&amp;amp;nbsp;: &amp;#34;);&#xA;function my_translations() {&#xA;    global $post;&#xA;    global $translation_title;&#xA;    $post_id=$post-&amp;gt;ID;&#xA;    if ( function_exists(&amp;#39;pll_the_languages&amp;#39;) ) {&#xA;        $translations = pll_the_languages(array(&amp;#39;post_id&amp;#39; =&amp;gt; $post_id, &amp;#39;hide_if_no_translation&amp;#39;=&amp;gt;1, &amp;#39;hide_current&amp;#39;=&amp;gt;1, &amp;#39;raw&amp;#39;=&amp;gt;1));&#xA;        if(!empty($translations)) {&#xA;            foreach($translations as $tr) {&#xA;                $trid=pll_get_post($post_id, $tr[&amp;#39;slug&amp;#39;]);&#xA;                ?&amp;gt;&amp;lt;li lang=&amp;#34;&amp;lt;?php echo esc_attr($tr[&amp;#39;slug&amp;#39;]);?&amp;gt;&amp;#34;&amp;gt;&amp;lt;?php echo $translation_title[$tr[&amp;#39;slug&amp;#39;]]; ?&amp;gt;&amp;lt;a hreflang=&amp;#34;&amp;lt;?php echo esc_attr($tr[&amp;#39;slug&amp;#39;]);?&amp;gt;&amp;#34; href=&amp;#34;&amp;lt;?php echo esc_url($tr[&amp;#39;url&amp;#39;]);?&amp;gt;&amp;#34; rel=&amp;#34;alternate&amp;#34;&amp;gt;&amp;lt;?php echo get_the_title($trid); ?&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&amp;lt;?php&#xA;            }&#xA;        }&#xA;    }&#xA;}&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Instead of porting the old theme, I did build a new one based on &lt;a href=&#34;https://wordpress.org/themes/twentytwelve&#34; title=&#34;Wordpress&amp;#39; Twenty Twelve theme&#34;&gt;WordPress’ Twenty Twelve&lt;/a&gt; updated with my previous header and dark color scheme.&lt;br&gt;&#xA;I also played with a few css3 features for more neon light effects 🙂&lt;/p&gt;&#xA;&lt;p&gt;And here it is !&lt;/p&gt;</description>
			</item>
			<item>
				<title>From gengo to polylang: importing data</title>
				<link>https://silicone.homelinux.org/2014/01/27/from-gengo-to-polylang-importing-data/</link>
				<pubDate>Mon, 27 Jan 2014 23:34:03 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2014/01/27/from-gengo-to-polylang-importing-data/</guid>
				<description>&lt;p&gt;As you might know, my blog is using &lt;a href=&#34;http://silicone.homelinux.org/projects/gengo/&#34;&gt;gengo&lt;/a&gt; to enable translations.&lt;/p&gt;&#xA;&lt;p&gt;But gengo is an old unmaintained plugin (I’m even running a custom version that I recently needed to fix again) so I’d like to migrate away.&lt;/p&gt;&#xA;&lt;p&gt;Recently, I studied the available options (thanks to &lt;a href=&#34;http://codex.wordpress.org/Multilingual_WordPress&#34; title=&#34;Multilingual WordPress&#34; target=&#34;_blank&#34;&gt;Multilingual WordPress&lt;/a&gt; page) and selected &lt;a href=&#34;http://polylang.wordpress.com/&#34; title=&#34;Polylang&#34; target=&#34;_blank&#34;&gt;Polylang&lt;/a&gt;. This one seams to be what Gengo could have been with a rewrite: no extra database tables but using WP3 custom taxonomies. (I can’t find the message but I remember Pixline telling this would be the way to go, so…).&lt;/p&gt;&#xA;&lt;p&gt;Anyway, I started to test Polylang, what it misses compared to Gengo, is the ability to really mix languages on the same page, so it will need some customizations before replacing Gengo here, but it will come.&lt;/p&gt;&#xA;&lt;p&gt;It’s only a few days layer that I found the &lt;a href=&#34;http://wordpress.org/plugins/wpml-to-polylang/&#34; title=&#34;WPML to Polylang&#34; target=&#34;_blank&#34;&gt;WPML to Polylang&lt;/a&gt; plugin.&lt;br&gt;&#xA;This basically triggered the development of &lt;a href=&#34;http://silicone.homelinux.org/git/gengo-to-polylang.git/&#34; title=&#34;Gengo to Polylang&#34; target=&#34;_blank&#34;&gt;Gengo to Polylang&lt;/a&gt; a plugin to import translations informations from Gengo to Polylang.&lt;/p&gt;&#xA;&lt;p&gt;It seams to work… I missed the Site Title and Tagline (but they are no longer translated on my blog so I don’t need it 😕 ) and I did take some shortcut for terms (tags &amp;amp; categories) that are the same in both languages.&lt;br&gt;&#xA;UPDATE 2014-02-04: I fixed that as it caused the tag archive to contain both english and french posts so… also fixed the Title and Tagline part.&lt;/p&gt;&#xA;&lt;p&gt;So if you still have a Gengo powered blog and want to migrate, the code could help you, but don’t just run it blindly, make a backup, setup a test instance and be prepared to hack the code ! You have been warned !&lt;/p&gt;</description>
			</item>
			<item>
				<title>Crée un CD d’installation d’une debian spécialisée</title>
				<link>https://silicone.homelinux.org/2013/06/18/cree-un-cd-dinstallation-dune-debian-specialisee/</link>
				<pubDate>Tue, 18 Jun 2013 18:16:21 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2013/06/18/cree-un-cd-dinstallation-dune-debian-specialisee/</guid>
				<description>&lt;p&gt;&lt;em&gt;Cet article a été rédigé a l’origine pour &lt;a href=&#34;http://linuxembedded.fr&#34; title=&#34;Le blog des technologies libres et embarquées&#34; target=&#34;_blank&#34;&gt;linuxembedded.fr&lt;/a&gt; : &lt;a href=&#34;http://www.linuxembedded.fr/2013/06/cree-un-cd-dinstallation-dune-debian-specialisee/&#34; title=&#34;Crée un CD d&#39;installation d&#39;une debian spécialisée&#34; target=&#34;_blank&#34;&gt;Crée un CD d’installation d’une debian spécialisée&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Parfois un système embarqué se résume à un serveur spécifique et quelques applicatifs. Dans ce cas l’utilisation d’une distribution standard peut être préférable à un &lt;em&gt;buildroot&lt;/em&gt; ou autre &lt;em&gt;openembedded&lt;/em&gt;. Ici nous avons fait le choix de &lt;em&gt;debian&lt;/em&gt; et nous voudrions avoir un CD d’installation complet de notre système.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Développement noyau sur e60</title>
				<link>https://silicone.homelinux.org/2011/04/03/developpement-noyau-sur-e60/</link>
				<pubDate>Sun, 03 Apr 2011 20:52:14 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2011/04/03/developpement-noyau-sur-e60/</guid>
				<description>&lt;p&gt;Comme j’ai accès à la &lt;a href=&#34;http://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/&#34;&gt;console série sur liseuse Samsung e60&lt;/a&gt; compilons un nouveau noyau linux.&lt;/p&gt;&#xA;&lt;p&gt;Le processeur de la liseuse e60 est un ARM, pour compiler le noyau pour ce processeur il nous faut une chaine de compilation croisée.&lt;br&gt;&#xA;La première option est d’utiliser celle fournie par samsung avec le reste des sources. A priori ça fonctionne mais utiliser des binaires de sources inconnue ne m’enchantait guerre.&lt;br&gt;&#xA;La seconde solution serait de recompiler la chaine nous même, c’est souvent la seule solutions pour des systèmes exotiques nécessitant quelques patchs.&lt;br&gt;&#xA;Ici, a bien regardé les fichiers de Samsung, les binutils viennent d’une version entre 2.17 et 2.18 (leur version est nommée 2.17.50 mais ne correspond pas tout à fait à se snapshot non plus…) mais il ne semble pas y avoir de patch ‘maison’. Quand a gcc j’ai pas pris le temps de vérifier.&lt;br&gt;&#xA;J’ai opté pour la &lt;a href=&#34;http://www.emdebian.org/crosstools.html&#34; hreflang=&#34;en&#34;&gt;chaine de compilation croisée du projet emdebian&lt;/a&gt; dans sa version lenny (Tout comme le propose &lt;a href=&#34;http://www.editions-diamond.com/opensilicium/index.php/edito-open-silicium-n%C2%B01&#34;&gt;le magazine Open Silicium n°1&lt;/a&gt; dans son article sur FriendlyARM).&lt;/p&gt;&#xA;&lt;h3 id=&#34;installation-de-la-chaine-de-compilation-croisée-sur-debian&#34;&gt;Installation de la chaine de compilation croisée sur debian&lt;/h3&gt;&#xA;&lt;p&gt;Tout d’abord les clef des l’archive:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#xA;sudo apt-get install emdebian-archive-keyring&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Ensuite nous ajoutons un fichier &lt;code&gt;/etc/apt/sources.list.d/emdebian.list&lt;/code&gt; avec le contenu suivant:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#xA;deb http://ftp.uk.debian.org/emdebian/toolchains lenny main&#xA;deb-src http://ftp.uk.debian.org/emdebian/toolchains lenny main&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Puis une mise à jours des liste des paquets afin d’installer les paquets nécessaires:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#xA;sudo apt-get update&#xA;sudo apt-get install libc6-armel-cross libc6-dev-armel-cross libstdc++6-armel-cross binutils-arm-linux-gnueabi gcc-4.3-arm-linux-gnueabi g++-4.3-arm-linux-gnueabi&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Voila, nous disposons maintenant d’une chaine de compilation croisée installée avec des paquets, donc facile à mettre à jour ou à désinstaller.&lt;/p&gt;&#xA;&lt;h3 id=&#34;les-sources-du-noyau&#34;&gt;Les sources du noyau&lt;/h3&gt;&#xA;&lt;p&gt;Samsung fournit une version modifiée du 2.6.29.4, en récupérant &lt;a href=&#34;http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fstable%2Flinux-2.6.29.y.git%3Ba%3Dsummary&#34;&gt;la branche git 2.6.29.y du noyau&lt;/a&gt;, j’ai rapidement vu que leur changement s’appliquait à la version 2.6.29.6 (dernière de cette branche).&lt;/p&gt;&#xA;&lt;p&gt;Afin de mieux trier les changements michel.s avait déjà séparé les changements de Samsung en plusieurs patchs (&lt;a href=&#34;http://code.google.com/p/e60-open/source/browse/#svn%2Fpatches%2Fkernel&#34;&gt;les patchs sur le projet e60-open&lt;/a&gt;). Après quelques essai j’ai concocté un fichier &lt;code&gt;series&lt;/code&gt; qui permet d’appliquer ces patchs avec &lt;code&gt;quilt&lt;/code&gt; ou mieux encore de des importer dans une branche git avec &lt;code&gt;git quiltimport&lt;/code&gt;. L’ordre que j’ai choisit permet en particulier de se débarrasser facilement des quelques patchs (les derniers).&lt;/p&gt;&#xA;&lt;p&gt;On notera dans ces patchs la présence de quelques fichiers binaires:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;fs/rfs/*.o&lt;/code&gt; une couche de journalisation propriétaire sur la fat. Si vous voulez mon avis, elle n’est pas nécessaire, après tout nous disposons de systèmes de fichiers journalisé libre, et linux est capable de monter autre chose que de la FAT par USB…&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;drivers/usb/gadget/file_storage.o&lt;/code&gt; le fichier &lt;code&gt;.c&lt;/code&gt; correspondant a de plus été retiré, la licence BSD/GPL de l’original autorise une distribution binaire (toutefois, je n’ai pas vérifié si Alan Stern est cité dans la doc) mais j’aurais bien apprécié que Samsung fournisse le source.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;u-boot&#34;&gt;U-Boot&lt;/h3&gt;&#xA;&lt;p&gt;Avant de compiler le noyau, il nous faut l’utilitaire &lt;code&gt;mkimage&lt;/code&gt; fourni par U-Boot. Ici, pas de chichis, nous compilons la version de U-Boot fournie par Samsung, et nous copions &lt;code&gt;tools/mkimage&lt;/code&gt; dans notre path (c’est la seule méthode d’installation que j’ai pu trouver).&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#xA;make smdkc100_config &#xA;make CROSS_COMPILE=arm-linux-gnueabi-&#xA;&#xA;cp tools/mkimage ~/bin/&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;compilation-de-linux&#34;&gt;Compilation de linux&lt;/h3&gt;&#xA;&lt;p&gt;Pour la configuration un des patch fourni un &lt;code&gt;.config&lt;/code&gt; qui est une copie de &lt;code&gt;config_rfs&lt;/code&gt; donc même sans appliquer ce patch, nous pouvons récupérer la config de samsung.&lt;/p&gt;&#xA;&lt;p&gt;Ensuite, on compile enfin !&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#xA;make CROSS_COMPILE=arm-linux-gnueabi- CFLAGS=&amp;#34;-march=armv4t -mtune=cortex-a8&amp;#34; CXXFLAGS=&amp;#34;-march=armv4t -mtune=cortex-a8&amp;#34; ARCH=arm uImage&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Nous pouvons charger notre noyau en suivant &lt;a href=&#34;http://code.google.com/p/e60-open/wiki/HowToTestAKernel&#34; hreflang=&#34;en&#34;&gt;la procédure de test de noyau du projet e60-open&lt;/a&gt; la commande pour changer le noyau sera alors&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#xA;sudo dnw arch/arm/boot/uImage&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Voila, ça marche ! Enfin presque, le noyau ne trouve pas ses modules. Ceux présents dans nos sources ne sont pas un vrai problème (mais le sujet d’un prochain article) en revanche les modules &lt;code&gt;/lib/modules/max14540.ko&lt;/code&gt; et &lt;code&gt;lib/modules/dhd.ko&lt;/code&gt; ne sont pas présent dans les sources alors qu’ils présentent une licence GPL au noyau.&lt;/p&gt;&#xA;&lt;h3 id=&#34;les-sources-manquants&#34;&gt;Les sources manquants&lt;/h3&gt;&#xA;&lt;p&gt;Le site &lt;a href=&#34;http://opensource.samsung.com/&#34; hreflang=&#34;en&#34;&gt;Samsung Open Source Release Center&lt;/a&gt; possède une interface pour les contacter, mais elle ne semble pas bien fonctionner (j’ai même booter mon netbook sous windows pour essayer avec IE8 sans succes!). En fouillant le &lt;a href=&#34;http://forum.hardware.fr/hfr/gsmgpspda/tablet/unique-samsung-ebook-sujet_22344_66.htm#para621535&#34;&gt;forum e60&lt;/a&gt; j’ai retrouvé leur adresse email et leur ai écrit, pas de réponse jusqu’à présent (pas même automatique…). Patience …&lt;/p&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion&lt;/h3&gt;&#xA;&lt;p&gt;Nous pouvons compiler le noyau de la liseuse e60 sans utiliser la chaine de compilation fournie par Samsung.&lt;br&gt;&#xA;Il reste du travail pour le changement des modules car ceux présent sur la liseuses sont compilé pour la version 2.6.29.4 du noyau et notre noyau refuse de les charger. (J’ai déjà fait quelques tests mais ça sera le sujet d’un prochain article.)&lt;br&gt;&#xA;Et surtout sans les sources manquants nous allons avoir du mal a exploiter au mieux notre liseuse e60.&lt;/p&gt;&#xA;&lt;p&gt;Mise à jours: Je viens de recevoir une réponse de Samsung, ils ont mis a jours leur archive. Il faut encore que je test ça.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Console série sur liseuse Samsung E60</title>
				<link>https://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/</link>
				<pubDate>Tue, 22 Mar 2011 16:36:25 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/</guid>
				<description>&lt;p&gt;Les bons plans Samsung de janvier avait déjà fait le tour du web, et je n’en reparlerais pas (sauf pour dire que j’en ai profiter pour acquérir une liseuse Samsung E60).&lt;/p&gt;&#xA;&lt;p&gt;Une communauté s’est formée autour d’un forum (&lt;a href=&#34;http://forum.hardware.fr/hfr/gsmgpspda/tablet/unique-samsung-ebook-sujet_22344_1.htm&#34;&gt;e60 sur hardware.fr&lt;/a&gt;) et d’un espace google code (&lt;a href=&#34;http://code.google.com/p/e60-open/&#34;&gt;e60-open&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;On y trouve pas mal d’infos et en particulier la &lt;a href=&#34;http://code.google.com/p/e60-open/wiki/SerialConsole&#34; hreflang=&#34;en&#34;&gt;console série&lt;/a&gt;. De mon coté je dispose d’un adaptateur USB vers série en LVTTL 3.3V (à base de FTDI FT2232C) donc j’ai opté pour la connexion sur R232 et R233. Or RDX (R232) est déjà connecté au circuit MAX232 qui converti les niveau LVTTL vers les niveaux série, et apparemment ce petit gars était plus fort que mon FTDI… J’ai donc retiré R232 et connecté mon FTDI à la palace. Restait à savoir quel pad de R232 allait vers le CPU… Coup de pot, le premier que j’ai essayé était le bon: le coté le plus proche de la batterie.&lt;/p&gt;&#xA;&lt;p&gt;Une petite photo de mes belles soudures :&lt;br&gt;&#xA;&lt;a href=&#34;https://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/e60-rs232-lvttl3.3.jpg&#34;&gt;&lt;img src=&#34;https://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/e60-rs232-lvttl3.3-detail.jpg&#34;&#xA;         srcset=&#34;https://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/e60-rs232-lvttl3.3-detail.jpg 400w, https://silicone.homelinux.org/2011/03/22/console-serie-sur-liseuse-samsung-e60/e60-rs232-lvttl3.3-detail-300x255.jpg 300w&#34;&#xA;         sizes=&#34;auto, (max-width: 400px) 100vw, 400px&#34;&#xA;         alt=&#34;mes belles soudures&#34; title=&#34;e60-rs232-lvttl3.3-detail&#34; width=&#34;400&#34; height=&#34;340&#34;&#xA;         class=&#34;alignnone size-full&#34;&#xA;         decoding=&#34;async&#34; fetchpriority=&#34;high&#34;&#xA;         loading=&#34;lazy&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Et voila, j’ai ensuite suivi la procédure pour &lt;a href=&#34;http://code.google.com/p/e60-open/wiki/HowToTestAKernel&#34; hreflang=&#34;en&#34;&gt;tester un kernel&lt;/a&gt; en chargeant le kernel fourni sur le SVN du projet. Et ça à marché (à ceci prêt que j’ai dû déchargé le module &lt;code&gt;secbulk&lt;/code&gt;, donc soit j’ai pas compris, soit il ne sert pas).&lt;/p&gt;&#xA;&lt;p&gt;Prochain épisode, compilation et test d’un noyau Linux.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Triage X Bugs of the Week (TXBW18)</title>
				<link>https://silicone.homelinux.org/2011/03/14/triage-x-bugs-of-the-week-txbw18/</link>
				<pubDate>Mon, 14 Mar 2011 11:17:27 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2011/03/14/triage-x-bugs-of-the-week-txbw18/</guid>
				<description>&lt;p&gt;Better later than never, I restarted to triage last week, here is the report for it.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://bugs.debian.org/526095&#34;&gt;#526095&lt;/a&gt; ping &amp;amp; close – KVM switch change makes mouse stop working.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://bugs.debian.org/495139&#34;&gt;#495139&lt;/a&gt; upstream – cleanlinks: warning in “find” usage.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://bugs.debian.org/550308&#34;&gt;#550308&lt;/a&gt; ping – x11-apps: xedit search dialog shows garbage.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://bugs.debian.org/555647&#34;&gt;#555647&lt;/a&gt; ping – x11-xserver-utils: xrandr -o left leaves xdm, after I logout, unresponsive, with no login prompt.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;In the mean time, Cyril has been triaging a lot of bugs see &lt;a href=&#34;http://blog.ikibiki.org/2011/03/04/DXN-7/&#34;&gt;Debian XSF News #7&lt;/a&gt;.&lt;br&gt;&#xA;But there are still 533 bugs to triage.&lt;/p&gt;&#xA;&lt;p&gt;Mike Hommey recently wrote about &lt;a href=&#34;http://glandium.org/blog/?p=1817&#34;&gt;graphs for the Debian Bug Tracking System&lt;/a&gt;. In particular there is now a per maintainer graph, so here it the &lt;a href=&#34;http://qa.debian.org/data/bts/graphs/by-maint/debian-x@lists.debian.org.png&#34;&gt;X Strike Force bug graph&lt;/a&gt; ! (Note: the graph does not filter out some bugs as we do on UDD.&lt;/p&gt;&#xA;&lt;p&gt;The X Strike Force (still) needs you !&lt;/p&gt;&#xA;&lt;p&gt;You can have a look at the &lt;a href=&#34;http://wiki.debian.org/XStrikeForce/BugClosingProcedure&#34;&gt;X Strike Force Bug Closing Procedure&lt;/a&gt; and check &lt;a rel=&#34;nofollow&#34; href=&#34;http://udd.debian.org/bugs.cgi?release=sid&amp;patch=ign&amp;pending=ign&amp;security=ign&amp;wontfix=ign&amp;upstream=ign&amp;forwarded=ign&amp;claimed=ign&amp;deferred=ign&amp;notmain=&amp;notsqueeze=&amp;base=&amp;standard=&amp;merged=ign&amp;done=ign&amp;outdatedsqueeze=&amp;outdatedsid=&amp;needmig=&amp;newerubuntu=&amp;fnewer=&amp;fnewerval=7&amp;xsf=1&amp;sortby=last_modified&amp;sorto=asc&amp;cseverity=1&amp;ctags=1&#34;&gt;XSF unstable bugs sorted by date&lt;/a&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Test comparatif de microSD</title>
				<link>https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/</link>
				<pubDate>Sat, 12 Mar 2011 22:39:59 +0100</pubDate>
				<guid>https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/</guid>
				<description>&lt;p&gt;Bon pour commencer, je n’ai pas demandé aux fabricants de m’offrir des cartes pour les tester, donc ce test est loin d’être exhaustif. En fait je ne compare que deux cartes !&lt;br&gt;&#xA;Voila mon frère et moi avons acheté quelques cartes microSD SDHC 16G : une de marque SanDisk et une de marque Kingstone. Nous avons choisi des marques pour être à peu près sûrs d’avoir des performances correctes.&lt;/p&gt;&#xA;&lt;h3 id=&#34;méthode-de-test&#34;&gt;Méthode de test&lt;/h3&gt;&#xA;&lt;p&gt;J’ai cherché à définir un protocole de test, copier des fichiers de différentes tailles… puis je suis tombé sur ce blog: &lt;a href=&#34;http://grigio.org/microsd_class_6_performance_benchmarks&#34; hreflang=&#34;en&#34;&gt;MicroSD class 6 Performance Benchmarks&lt;/a&gt;. Il propose d’utiliser un outil présent dans le bureau GNOME: &lt;code&gt;palimpsest&lt;/code&gt;.&lt;br&gt;&#xA;Bon alors cet outil ne veut pas tester la carte si il y détecte une table des partitions, le blog cité précédemment propose d’effacer toute la flash avec la commande suivante:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;dd if=/dev/zero of=/dev/sdb&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Brutaliser de la sorte une carte SD n’est peut être pas ce qu’il y a de mieux à faire. Surtout quand l’on sait que l’état « effacé » d’une flash est avec tous ses bits à 1, écrire 0 partout revient en fait à la remplir plus qu’à l’effacer…&lt;br&gt;&#xA;Mais bon j’y ai pas trop réfléchit quand j’ai fait le test, donc je suis parti la dessus:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sync; date; sudo time dd if=/dev/zero of=/dev/sdb; sync; date&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Les appels à &lt;code&gt;date&lt;/code&gt; permettent d’avoir une première estimation du temps d’écriture, en fait, &lt;code&gt;dd&lt;/code&gt; donne aussi quelques statistiques donc c’était pas nécessaire.&lt;/p&gt;&#xA;&lt;p&gt;Puis le test proprement dit:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;LANG=C palimpsest&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Attention au port USB utilisé pour le lecteur SDHC, si les traces du noyau (&lt;code&gt;dmesg&lt;/code&gt;) contiennent la ligne suivante, il faut trouver un autre port !&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;not running at top speed; connect to a high speed hub&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Bon, assez de blabla…&lt;/p&gt;&#xA;&lt;h3 id=&#34;les-résultats&#34;&gt;Les résultats&lt;/h3&gt;&#xA;&lt;h4 id=&#34;kingston-microsd-16g-sdhc-classe-4&#34;&gt;Kingston microSD 16G SDHC Classe 4&lt;/h4&gt;&#xA;&lt;p&gt;Résultats de &lt;code&gt;dd&lt;/code&gt;: 15997075456 octets (16 GB) copiés en 6491,87 s (1h48) soit 2,5 MB/s.&lt;/p&gt;&#xA;&lt;p&gt;Performance en lecture (courbe bleue):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Débit de lecture minimal: 18,6 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit de lecture maximal: 20,9 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit de lecture moyen: 18,9 MB/s&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Performance en écriture (courbe rouge):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Débit d’écriture minimal: 1,7 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit d’écriture maximal: 4,7 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit d’écriture moyen: 2,4 MB/s&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Temps d’accès moyen: 2,2ms (courbe verte)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/kingstone-16G.png&#34;&gt;&lt;img src=&#34;https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/kingstone-16G-graph.png&#34;&#xA;         srcset=&#34;https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/kingstone-16G-graph.png 400w, https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/kingstone-16G-graph-300x120.png 300w&#34;&#xA;         sizes=&#34;auto, (max-width: 400px) 100vw, 400px&#34;&#xA;         alt=&#34;kingstone microSD 16G - graphique de performance&#34; title=&#34;kingstone microSD 16G performance graph&#34; width=&#34;400&#34; height=&#34;160&#34;&#xA;         class=&#34;alignnone size-full&#34;&#xA;         decoding=&#34;async&#34; fetchpriority=&#34;high&#34;&#xA;         loading=&#34;lazy&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;sandisk-microsd-16g-sdhc-classe-4&#34;&gt;SanDisk microSD 16G SDHC Classe 4&lt;/h4&gt;&#xA;&lt;p&gt;Résultats de &lt;code&gt;dd&lt;/code&gt;: 15931539456 octets (16 GB) copiés en 4934,48 s (1h22) soit 3,2 MB/s&lt;/p&gt;&#xA;&lt;p&gt;Performance en lecture (courbe bleue):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Débit de lecture minimal: 20,6 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit de lecture maximal: 21,1 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit de lecture moyen: 21,0 MB/s&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Performance en écriture (courbe rouge):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Débit d’écriture minimal: 1,3 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit d’écriture maximal: 5,7 MB/s&lt;/li&gt;&#xA;&lt;li&gt;Débit d’écriture moyen: 2,4 MB/s&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Temps d’accès moyen: 1,6ms (courbe verte)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/SanDisk-16G.png&#34;&gt;&lt;img src=&#34;https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/SanDisk-16G-graph.png&#34;&#xA;         srcset=&#34;https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/SanDisk-16G-graph.png 400w, https://silicone.homelinux.org/2011/03/12/test-comparatif-de-microsd/SanDisk-16G-graph-300x120.png 300w&#34;&#xA;         sizes=&#34;auto, (max-width: 400px) 100vw, 400px&#34;&#xA;         alt=&#34;SanDisk microSD 16G - graphique de performance&#34; title=&#34;SanDisk microSD 16G performance graph&#34; width=&#34;400&#34; height=&#34;160&#34;&#xA;         class=&#34;alignnone size-full&#34;&#xA;         decoding=&#34;async&#34;&#xA;         loading=&#34;lazy&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion&lt;/h3&gt;&#xA;&lt;p&gt;Ces deux cartes se valent à peu prés, avec un léger avantage pour la carte SanDisk.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
