)]}'
{
  "commit": "e02db0aa3e1976ae4e23a66077d252a2f3ba74c7",
  "tree": "ed16439c89abca6be4770f654c7c458ff0f6512f",
  "parents": [
    "1451d1d88b9aa32ac9ee54180239e9b34b6f9e86"
  ],
  "author": {
    "name": "Michal Simek",
    "email": "monstr@monstr.eu",
    "time": "Mon Feb 08 16:41:38 2010 +0100"
  },
  "committer": {
    "name": "Michal Simek",
    "email": "monstr@monstr.eu",
    "time": "Fri Mar 23 09:28:19 2012 +0100"
  },
  "message": "microblaze: Handle TLB skip size dynamically\n\nThis patch fix the problem with rootfs on JFFS2 with early printk\nconsole turned on.\n\nThe origin version used TLB63 for temporary early printk mapping.\nThe code expect that kernel is not able to use all 64 TLB entries\ntill early printk console is remapped by ioremap. After that\ntemporary mapping on TLB63 is silently lost.\nThis expectation give the opportunity to have early console pretty\nearly.\n\nMicroblaze systems with JFFS2 rootfs with early printk console turned on\nused more than 64 TLB entries before kernel can remap early console.\nBased on that kernel does access to bad area because early printk mapping\nis rewritten.\n\nThis patch introduces tlb_skip variable which dynamically stores number\nof skipped TLB entries from the TLB0. skip_tlb\u003d2 means that TLB0 and TLB1\nshould be skipped.\n\nMICROBLAZE_TLB_SKIP defines how many TLB is skipped at the kernel start.\nThey can be used for user purpose.\n\nTLB 63 is used for temporary LMB mapping (MICROBLAZE_LMB_TLB_ID).\n\nAlso clean TLBLO when kernel starts.\n\nFor specific kernel sizes kernel can use just one TLB. Detect this case\nand use the second TLB for general purpose.\n\nChange _tlbia function to flush TLB entries from tlb_skip to TLB_SIZE.\n\nExport tlb_skip size through debugfs.\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5198de8b12245ed71c337522d8061c8fb49f42a2",
      "old_mode": 33188,
      "old_path": "arch/microblaze/include/asm/mmu.h",
      "new_id": "1f9edddf7f4b206917a6083fa92427fb51e1f729",
      "new_mode": 33188,
      "new_path": "arch/microblaze/include/asm/mmu.h"
    },
    {
      "type": "modify",
      "old_id": "742c247792ce16e3d9249841f12a5e3f40c21a97",
      "old_mode": 33188,
      "old_path": "arch/microblaze/kernel/early_printk.c",
      "new_id": "ec485876d0d0ec3ca14b005325320fd5c154eb59",
      "new_mode": 33188,
      "new_path": "arch/microblaze/kernel/early_printk.c"
    },
    {
      "type": "modify",
      "old_id": "49dd48f9e6ec6198b2254e44bc6b218aa92d12b8",
      "old_mode": 33188,
      "old_path": "arch/microblaze/kernel/head.S",
      "new_id": "98b17f9f904b5bdc2569ecf8b6040f64d210178e",
      "new_mode": 33188,
      "new_path": "arch/microblaze/kernel/head.S"
    },
    {
      "type": "modify",
      "old_id": "b7249f4215a2bbdd2078efefa5b567157f8cf931",
      "old_mode": 33188,
      "old_path": "arch/microblaze/kernel/hw_exception_handler.S",
      "new_id": "aa510f450ac61dad55929fcc8a0056a1a09e8ee8",
      "new_mode": 33188,
      "new_path": "arch/microblaze/kernel/hw_exception_handler.S"
    },
    {
      "type": "modify",
      "old_id": "c9090d7973f68099092dd1ea44d962678b1e640d",
      "old_mode": 33188,
      "old_path": "arch/microblaze/kernel/misc.S",
      "new_id": "1dafddeb8a0b51c0da0d709b1eb13c67420bd80d",
      "new_mode": 33188,
      "new_path": "arch/microblaze/kernel/misc.S"
    },
    {
      "type": "modify",
      "old_id": "a1fa2a5813bf002347cd8f25e9a38e706667b270",
      "old_mode": 33188,
      "old_path": "arch/microblaze/kernel/setup.c",
      "new_id": "e4f5956ee13c9fe3059a80222d9bf6424d1c8489",
      "new_mode": 33188,
      "new_path": "arch/microblaze/kernel/setup.c"
    }
  ]
}
